创建DLI表关联CSS
功能描述
使用CREATE TABLE命令创建DLI表并关联CSS上已有的表。
Spark跨源开发场景中直接配置跨源认证信息存在密码泄露的风险,优先推荐您使用DLI提供的跨源认证方式。
跨源认证简介及操作方法请参考跨源认证简介。
前提条件
创建DLI表关联CSS之前需要创建跨源连接。管理控制台操作请参考增强型跨源连接。
语法格式
1 2 3 4 5 6 7 8 9 10 11 12 |
CREATE TABLE [IF NOT EXISTS] TABLE_NAME( FIELDNAME1 FIELDTYPE1, FIELDNAME2 FIELDTYPE2) USING CSS OPTIONS ( 'es.nodes'='xx', 'resource'='type_path_in_CSS', 'pushdown'='true', 'strict'='false', 'batch.size.entries'= '1000', 'batch.size.bytes'= '1mb', 'es.nodes.wan.only' = 'true', 'es.mapping.id' = 'FIELDNAME'); |
关键字
参数 |
描述 |
---|---|
es.nodes |
CSS的连接地址,需要先创建跨源连接,管理控制台操作请参考增强型跨源连接。 创建增强型跨源连接后,使用CSS提供的"内网访问地址",格式为"IP1:PORT1,IP2:PORT2"。 |
resource |
指定在CSS关联的资源名,用"/index/type"指定资源位置(可简单理解index为database,type为table,但绝不等同)。
说明:
|
pushdown |
CSS的下压功能是否开启,默认为“true”。包含大量IO传输的表在有where过滤条件的情况下能够开启pushdown降低IO。 |
strict |
CSS的下压是否是严格的,默认为“false”。精确匹配的场景下比pushdown降低更多IO。 |
batch.size.entries |
单次batch插入entry的条数上限,默认为1000。如果单条数据非常大,在bulk存储设置的数据条数前提前到达了单次batch的总数据量上限,则停止存储数据,以batch.size.bytes为准,提交该批次的数据。 |
batch.size.bytes |
单次batch的总数据量上限,默认为1mb。如果单条数据非常小,在bulk存储到总数据量前提前到达了单次batch的条数上限,则停止存储数据,以batch.size.entries为准,提交该批次的数据。 |
es.nodes.wan.only |
是否仅通过域名访问es节点,默认为false。使用css服务提供的原始内网IP地址作为es.nodes时,不需要填写该参数或者配置为false。 |
es.mapping.id |
指定一个字段,其值作为es中Document的id。
说明:
|
es.net.ssl |
连接安全CSS集群,默认值为false |
es.certificate.name |
连接安全CSS集群,使用的跨源认证信息名称。跨源认证信息创建方式请参考《数据湖探索用户指南》>《跨源认证》。 |
batch.size.entries和batch.size.bytes分别对数据条数和数据量大小进行限制。
示例
1 2 3 4 5 6 7 8 |
CREATE TABLE IF NOT EXISTS dli_to_css (doc_id String, name string, age int) USING CSS OPTIONS ( es.nodes 'to-css-1174404703-LzwpJEyx.datasource.com:9200', resource '/dli_index/dli_type', pushdown 'false', strict 'true', es.nodes.wan.only 'true', es.mapping.id 'doc_id'); |