CREATE FILE
您可以使用 CREATE FILE 语句创建文件。创建文件后,该文件将被上传并持久化到 StarRocks 中。在一个数据库中,只有管理员用户才能创建和删除文件,所有具有访问数据库权限的用户都可以使用属于该数据库的文件。
提示
此操作需要 SYSTEM 级别的 FILE 权限。您可以按照GRANT中的说明授予此权限。
基本概念
File:指在 StarRocks 中创建和保存的文件。创建文件并将其存储在 StarRocks 中后,StarRocks 会为该文件分配一个唯一的 ID。您可以根据数据库名称、catalog 和文件名查找文件。
语法
CREATE FILE "file_name" [IN database]
[properties]
参数
参数 | 必需 | 描述 |
---|---|---|
file_name | 是 | 文件的名称。 |
database | 否 | 文件所属的数据库。如果您未指定此参数,则此参数默认为您在当前会话中访问的数据库的名称。 |
properties | 是 | 文件的属性。下表描述了 properties 的配置项。 |
properties
的配置项
配置项 | 必需 | 描述 |
---|---|---|
url | 是 | 可以从中下载文件的 URL。仅支持未经身份验证的 HTTP URL。文件存储在 StarRocks 中后,不再需要该 URL。 |
catalog | 是 | 文件所属的类别。您可以根据您的业务需求指定一个 catalog。但是,在某些情况下,您必须将此参数设置为特定的 catalog。例如,如果您从 Kafka 加载数据,StarRocks 会从 Kafka 数据源中的 catalog 中搜索文件。 |
MD5 | 否 | 用于检查文件的消息摘要算法。如果您指定此参数,StarRocks 会在文件下载后检查该文件。 |
示例
- 在名为 kafka 的类别下创建一个名为 test.pem 的文件。
CREATE FILE "test.pem"
PROPERTIES
(
"url" = "https://starrocks-public.oss-cn-xxxx.aliyuncs.com/key/test.pem",
"catalog" = "kafka"
);
- 在名为 my_catalog 的类别下创建一个名为 client.key 的文件。
CREATE FILE "client.key"
IN my_database
PROPERTIES
(
"url" = "http://test.bj.bcebos.com/kafka-key/client.key",
"catalog" = "my_catalog",
"md5" = "b5bb901bf10f99205b39a46ac3557dd9"
);