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

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

本方案采用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)'"
相关文章
|
10月前
|
存储 监控 算法
117_LLM训练的高效分布式策略:从数据并行到ZeRO优化
在2025年,大型语言模型(LLM)的规模已经达到了数千亿甚至数万亿参数,训练这样的庞然大物需要先进的分布式训练技术支持。本文将深入探讨LLM训练中的高效分布式策略,从基础的数据并行到最先进的ZeRO优化技术,为读者提供全面且实用的技术指南。
926 2
|
数据采集 存储 NoSQL
基于Scrapy-Redis的分布式景点数据爬取与热力图生成
基于Scrapy-Redis的分布式景点数据爬取与热力图生成
1125 67
|
SQL 关系型数据库 PostgreSQL
【YashanDB 知识库】从 PostgreSQL 迁移到 YashanDB 如何进行数据行数比对
【YashanDB 知识库】从 PostgreSQL 迁移到 YashanDB 如何进行数据行数比对
|
JSON 分布式计算 DataX
【YashanDB知识库】使用DataX工具迁移yashan数据到maxcompute
本文介绍使用崖山适配的DataX工具进行数据库迁移的方法,包括单表迁移和批量表迁移。单表迁移需配置json文件并执行同步命令;批量迁移则通过脚本自动化生成json配置文件并完成数据迁移,最后提供数据比对功能验证迁移结果。具体步骤涵盖连接信息配置、表清单获取、json文件生成、数据迁移执行及日志记录,确保数据一致性。相关工具和脚本简化了复杂迁移过程,提升效率。
|
SQL Oracle 关系型数据库
【YashanDB知识库】从PostgreSQL迁移到YashanDB如何进行数据行数比对
本文介绍了通过Oracle视图`v$sql`和`v$sql_plan`分析SQL性能的方法。首先,可通过`plan_hash_value`从`v$sql_plan`获取SQL执行计划,结合示例展示了具体查询方式。文章还创建了一个UDF函数`REPEAT`用于格式化输出,便于阅读复杂执行计划。最后,通过实例展示了如何根据`plan_hash_value`获取SQL文本及其内存中的执行计划,帮助优化性能问题。
【YashanDB知识库】分布式LSC表修改字段
本文来自YashanDB官网,介绍了一种间接修改分布式LSC表字段的方法。通过重命名原表为备份表、重建新表调整字段长度、使用bulkload方式快速导入数据、验证记录数并删除备份表等步骤,实现将字段`area_name`从VARCHAR2(60)修改为VARCHAR2(100)。此方法高效且适用于分布式环境下的表结构调整。
|
Java 数据库连接
【YashanDB知识库】Springboot启动找不到崖山jdbc驱动的问题处理
本文来自YashanDB官网,主要解决SpringBoot应用启动时出现“找不到崖山JDBC驱动”的问题,尽管lib目录下已有yashandb-jdbc-1.6.9.jar文件。错误信息显示`java.lang.ClassNotFoundException: com.yashandb.jdbc.Driver`。解决方案为:通过`which java`等命令定位Java安装路径,将驱动jar包复制到JRE的`lib/ext`目录下,最后重启应用即可。
|
SQL 测试技术 数据库
【YashanDB知识库】IMP跨网络导入慢问题
问题现象:290M数据,本地导入2分钟,跨机导入耗时显著增加(最高30分钟)。 原因分析:`imp`逐条SQL通过网络传输至yashanDB执行,交互频繁导致性能下降。 影响版本:客户测试环境22.2.8.3。 解决方法:将导入文件上传至与yashanDB同机后使用`imp`,减少网络延迟。 经验总结:优化`imp`工具,支持直接上传文件至服务器端执行,降低网络依赖。
|
监控 数据库
【YashanDB 知识库】ycm 托管数据库时报错 OM host ip:127.0.0.1 is not support join to YCM
在托管数据库时,若 OM 的 IP 被设置为 127.0.0.1,将导致无法托管至 YCM,并使数据库失去监控。此问题源于安装时修改了 OM 的监听 IP。解决方法包括:将 OM 的 IP 修改为本机实际 IP 或 0.0.0.0,同时更新 env 文件及 yasom 后台数据库中的相关配置。经验总结指出,应避免非必要的后台 IP 修改,且数据库安装需遵循规范,不使用仅限本机访问的 IP(如 127.0.0.1)。

热门文章

最新文章