全部產品
Search
文件中心

:MaxCompute資料來源建表語句說明

更新時間:Jul 13, 2024

建表語句

假設資料表表名為test_maxcompute_table,那麼done表表名為test_maxcompute_table_done。

#1.建立資料表:
CREATE TABLE IF NOT EXISTS test_maxcompute_table
(
  pk_id Bigint ,
  cate_id Bigint ,
  vector_array string 
)
PARTITIONED by 
(
  ds STRING
);

#2.建立資料表分區:
alter table test_maxcompute_table  add if not exists partition (ds="20230423");

#3.建立done表
create table test_maxcompute_table_done (attribute string) partitioned by (ds string);

#4.建立done表分區
alter table test_maxcompute_table_done  add if not exists partition (ds="20230423");


#5.在資料表中插入資料
insert into test_maxcompute_table partition (ds='20230423') select 1,'12345','xxx,xxx,xxx,xx....';

#6.done表中插入資料
insert into table ecom_table_done partition (ds="20230423") select '{"swift_start_timestamp":1682179200}';
說明

引擎支援的MaxCompute 表欄位類型有:STRING 、BOOLEAN、DOUBLE、BIGINT、DATETIME;

授權語句

表許可權,在配置MaxCompute 資料表時需要登入OpenSearch的帳號對該表有相應的許可權(describe,select,download,欄位的label許可權)。

-- 添加帳號(該帳號為操作引擎執行個體的帳號)
add user ****@aliyun.com;

-- 給該帳號賦相應的表許可權
GRANT describe,select,download ON TABLE table_xxx TO USER ****@aliyun.com
GRANT describe,select,download ON TABLE table_xxx_done TO USER ****@aliyun.com

-- 由於MaxCompute開啟了欄位許可權校正,導致拉取資料的時候無法訪問高許可權的欄位,表索引build不出來,碰到這種情況需要授權給帳號欄位層級的存取權限。
-- 給整個Project統一授權
SET LABEL 3 to USER ****@aliyun.com

-- 給單表授權
GRANT LABEL 3 ON TABLE table_xxx(col1, col2) TO ****@aliyun.com

MaxCompute資料來源相關參數尋找

image

參數

是否必填

說明

資料來源類型

選擇“MaxCompute”

資料來源名稱

長度限制為30個字元,有且只能有數字、字母、底線

project

MaxCompute的資料開發頁面可查看

image

說明

如果是標準版模式:

image

需要在專案名後加_dev,比如zy_ts_test >zy_ts_test_dev

accessKeyId

在帳號管理下可查看

image

accessKeySecret

table

資料表表名

分區

資料表分區,例如:ds=20230423,ds表示分區名