ByteHouse 云数仓版支持访问湖仓一体分析服务 LAS 上的 ByteLake 1.0/2.0 以及 Managed Hive表。
此功能仅在 ByteHouse 云数仓版引擎 2.0.4 以上版本支持,使用前请前往“ ByteHouse 控制台 - 租户管理 - 基本信息” 确认所使用的 ByteHouse 云数仓集群引擎版本。
我们可以通过 ByteHouse CLI 工具连接并创建外表。
下图例子,建立一个火山Las上表名为uk_price_paid
的外表,使用时不需要指定列名和类型,ByteHouse会读取元数据自动推断。
CREATE TABLE [IF NOT EXISTS] <数据库名>.uk_price_paid ENGINE = CnchLas('{plb地址}', '<las侧数据库名>', '<las侧数据表名>') SETTINGS endpoint = '{endpoint地址}', // las 的 endpoint连接地址 region = '{region值}', // las 所在 region ak_id = 'AKLTMjU3ZTYzOG********yMGE0ZmJiZjc2ODkxZWMxY2Q', // LAS 账户的 Access Key ak_secret = 'WlRkak56Ump**********sT0RCaU9UQm1NREV4WkRWaU1HWQ=='// LAS 账户的 Secret Access Key
请根据 las 所在区域填写火山 plb 地址、所在region,以及对应的 endpoint 地址:
LAS 所在区域 | plb 地址 | region 值 | endpoint 地址 |
---|---|---|---|
华北2(北京) | thrift://100.96.4.11:48869 | cn-beijing | 100.96.4.84:80 |
华东2(上海) | thrift://100.96.4.31:48869 | cn-shanghai | 100.96.4.33:80 |
华南1(广州) | thrift://100.96.4.30:48869 | cn-guangzhou | 100.96.4.35:80 |
ak_id, ak_secret: LAS用户可以通过火山引擎的 密钥管理 页面获取到 Access Key 和 Secret Access Key。
当然,在建外表时也可以指定列名和类型,一般不推荐。
CREATE TABLE [IF NOT EXISTS] <数据库名>.uk_price_paid ( uuid Nullable(String), price Nullable(Int32), ) ENGINE = CnchLas('thrift://111.62.122.160:48869', '<las侧数据库名>', 'las侧数据表名') SETTINGS endpoint = '100.96.4.84:80', region = 'cn-beijing', ak_id = 'AKLTMjU3ZTYzOG********yMGE0ZmJiZjc2ODkxZWMxY2Q', ak_secret = 'WlRkak56Ump**********sT0RCaU9UQm1NREV4WkRWaU1HWQ=='
例如,查询前文所建的uk_price_paid
的外表的建表语句。
SHOW CREATE TABLE <数据库名>.uk_price_paid
可以通过 DROP TABLE
来删除ByteHouse中的外表,但不会删除Las上的原表。