【YashanDB知识库】手工迁移Doris数据到崖山分布式

本文内容来自YashanDB官网,原文内容请见 https://www.yashandb.com/newsinfo/7253739.html?templateId=1718516

本方案采用csv文件格式进行数据的导出和导入。具体步骤如下:

通过sql语句将Doris表导出成csv文件

注:导出到本地文件时需要先在fe.conf中配置enable_outfile_to_local=true并重启fe节点

\-- Doris默认查询超时时长为3600秒,此处改大,防止查询时间不够

set query\_timeout = 36000;

 -- 设置支持并发导出 

set enable\_parallel\_outfile = true;

\-- 导出条数默认限制为200条,需要改大 

\-- 因为崖山和Doris对null值处理的不同(Doris的null值导出为\\N),Date和数字类型为null时需要转换(Date类型为null时需要转成空串,数字类型为null时需要转成0) 

select nvl(user\_id, 0), nvl(dt, ‘’), city, nvl(age, 0), nvl(sex, 0), nvl(last\_visit\_date, ‘’), nvl(cost, 0), nvl(max\_dwell\_time, 0), nvl(min\_dwell\_time, 0)

select nvl(user\_id, 0), nvl(dt, ‘’), city, nvl(age, 0), nvl(sex, 0), nvl(last\_visit\_date, ‘’), nvl(cost, 0), nvl(max\_dwell\_time, 0), nvl(min\_dwell\_time, 0) from example\_db.example\_tbl\_agg1 LIMIT 1000000000

INTO OUTFILE "file:///data/example\_tbl\_agg1/result\_"

FORMAT AS CSV

PROPERTIES

(

"column\_separator" = "|", -- 列分隔符改成|,防止数据中也存在默认的分隔符逗号

"line\_delimiter" = "\\n"

);

在崖山分布式上创建表

CREATE TABLE IF NOT EXISTS example_db.example_tbl_agg1

(

user_id BIGINT NOT NULL,

dt DATE NOT NULL,

city VARCHAR(20),

age SMALLINT,

sex TINYINT,

last_visit_date DATE,

cost BIGINT,

max_dwell_time INT,

min_dwell_time INT

) order by(user_id) partition by hash(user_id) partitions auto;

通过yasldr将Doris导出的csv文件导入到崖山分布式

yasldr example_db/example_db@127.0.0.1:1688 batch_size=4032 senders=9 control_text="'LOAD DATA OPTIONS(DEGREE_OF_PARALLELISM=16,ENABLE_BULK=TRUE) INFILE '/data/example_tbl_agg1/result_2ec7ec4eeae74a66-a094b4f43cd3a482_0.csv' WITH EMBEDDED FIELDS TERMINATED BY '|' INTO TABLE EXAMPLE_DB.EXAMPLE_TBL_AGG1(USER_ID,DT,CITY,AGE,SEX,LAST_VISIT_DATE,COST,MAX_DWELL_TIME,MIN_DWELL_TIME)'"
posted @   YashanDB  阅读(3)  评论(0编辑  收藏  举报
编辑推荐:
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· DeepSeek 解答了困扰我五年的技术问题
阅读排行:
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 实操Deepseek接入个人知识库
· 易语言 —— 开山篇
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
点击右上角即可分享
微信分享提示