【starrocks学习】之将hive表数据同步到starrocks
目录
一、确认环境
二、创建StarRocks表
三、导出Hive表数据
四、将数据导入StarRocks
1.使用Broker Load
2.使用Stream Load
五、验证数据
六、注意事项
一、确认环境
确保Hive和StarRocks都已正确安装并运行。
二、创建StarRocks表
在StarRocks中创建与Hive表结构一致的表。
CREATE TABLE starrocks_table (
column1 INT,
column2 STRING,
...
) ENGINE=OLAP
DUPLICATE KEY(column1)
DISTRIBUTED BY HASH(column1) BUCKETS 10;
三、导出Hive表数据
将Hive表数据导出为StarRocks支持的格式,如Parquet或ORC。
INSERT OVERWRITE DIRECTORY '/path/to/export'
STORED AS PARQUET
SELECT * FROM hive_table;
四、将数据导入StarRocks
使用StarRocks的Broker Load
或Stream Load
将数据导入。
1.使用Broker Load
LOAD LABEL label_name
(
DATA INFILE("hdfs://path/to/export/*")
INTO TABLE starrocks_table
)
WITH BROKER "broker_name"
(
"username"="hdfs_user",
"password"="hdfs_password"
)
PROPERTIES
(
"timeout" = "3600"
);
2.使用Stream Load
curl --location-trusted -u user:password -T /path/to/export/file -XPUT http://starrocks_fe_host:http_port/api/starrocks_db/starrocks_table/_stream_load
五、验证数据
查询StarRocks表,确认数据已正确导入。
SELECT * FROM starrocks_table LIMIT 10;
SELECT count(*) FROM starrocks_table ;
六、注意事项
-
数据类型:确保Hive和StarRocks表的数据类型兼容。
-
性能优化:根据数据量调整导入参数,如并发度和超时时间。
-
权限:确保有足够的权限访问HDFS和StarRocks。
通过这些步骤,可以将Hive表数据同步到StarRocks。