【 使用环境 】测试环境
【 OB or 其他组件 】
【 使用版本 】OceanBase4.3
【问题描述】采用单副本的demo库,导入较大的数据,使用工具是mydumper,对比了下mysql导入比OB快百倍。服务器是16c+64G
导入前调整了下面参数
ALTER SYSTEM SET minor_compact_trigger=2;
ALTER SYSTEM SET major_compact_trigger=10;
ALTER SYSTEM SET freeze_trigger_percentage=10;
ALTER SYSTEM SET memstore_limit_percentage=40;
ALTER resource unit sys_unit_config max_cpu = 12 ,min_cpu = 12;
ALTER resource unit sys_unit_config memory_size=‘38G’;
ALTER SYSTEM SET compaction_mid_thread_score=10;
【复现路径】问题出现前后相关操作
【附件及日志】推荐使用OceanBase敏捷诊断工具obdiag收集诊断信息,详情参见链接
可以参考下这个 GitHub - mydumper/mydumper: Official MyDumper Project
可以尝试下使用obdumper和obloader
命令行选项-OceanBase 导数工具-OceanBase文档中心-分布式数据库使用文档
我是想从mysql迁移到OB,原来mysql是通过mydumper导出的,想通过myloader导入到OB,结果对比了下myloader导入到OB和mysql,同样的配置和文件,导入速度相差太大了,不知道是不是自己的OB库没有调整到位还是这个工具适配的不太好?请问下使用myloader导入大量数据到OB,OB是否有啥参数可以调整的,OB的版本是最新的4.3,使用单副本,demo集群。上面也按官方的调整了一些参数,但是好像不太理想
可以试下oms迁移工具
是不是导入到 sys 租户了?
obloader并发导入到你自己的业务租户里
旧环境mysql是mydumper导出的包,可以用obloader导入吗?
OMS是在线环境的数据迁移,由于我们需要过滤数据,OMS可以对源mysql库数据进行多表关联过滤数据,然后入库到目标OB库吗?
obloader的jvm参数改了么?
嗯,这个怎么说?demo的只有一直sys租户,我没额外新建租户,就调整了租户的参数,就调整了 下面的参数进行导入:
__min_full_resource_pool_memory: 1073741824
system_memory: 2124M
cpu_count: 16
datafile_size: 20480M
datafile_maxsize: 4192000M
datafile_next: 20480M
log_disk_size: 1433600M
和
ALTER SYSTEM SET minor_compact_trigger=2;
ALTER SYSTEM SET major_compact_trigger=10;
ALTER SYSTEM SET freeze_trigger_percentage=10;
ALTER SYSTEM SET memstore_limit_percentage=40;
这些参数。是否不能使用sys租户导入?还是有另外的参数需要优化呢。源库是mysql,已经使用mydumper导出数据,正在使用myloader导入,查看导入OB比导入mysql慢太多了
用的不是obloader呢,使用第三方开源工具,myloader。因为源库是mysql,有过滤导出,已经导出好压缩sql文件,obloader也可以导入么?
你需要新建一个 业务租户 (mysql类型)用于测试。
sys 租户是 OB 内部用,不适合存储业务数据。
sys 租户的资源给到4C6G 就差不多,剩余的资源都给业务租户。
好的,多谢,后面我重试下,但是这个会影响数据的插入导入速度吗?刚开始插入速度很快,吃了内存也很快,后面就比较慢了,因为free内存比较少了,差不多后面基本都是每秒1000-2000条数据插入速度
sys 租户是内部租户,有其特殊性。不适合业务读写。换业务租户后会不一样。
你换成业务租户后,测试期间 同时观察 OB 的监控(看 OCP 里租户性能监控)。根据监控继续分析。
sys组合和普通租户这个上面具体的区别是啥啊?是因为sys租户自己的写入量就很大了影响的么