distributed=true属性在ingest from query场景未生效问题咨询
你对distributed=true属性的运行逻辑存在误解,当前返回2条操作记录属于正常现象,不能代表分布式配置未生效。
操作记录条数说明
.show operations的返回条目数和集群工作节点数、分布式子任务数没有直接对应关系:
- NodeId为空的记录是异步操作的根记录,用于追踪整个导入任务的总状态,所有带
async参数的命令都会生成该条记录 - 带
KENGINE000001NodeId的记录是导入任务的协调节点记录,分布式导入的子任务状态不会作为.show operations的独立顶级条目返回
验证分布式导入是否生效的方法
你可以通过以下两种方式确认distributed=true是否正常生效:
- 任务完成后执行
.show table mytable extents,查看新生成的数据分片(extent)是否分布在多个不同NodeId的工作节点上,若仅分布在单个节点才代表分布式配置未生效 - 执行
.show operations <你的OperationId> details,查看返回的详情字段中是否标注分布式模式已启用,以及是否存在多分片并行处理的记录
补充说明
distributed=true的作用是将导入任务拆分出的多个数据分片,并行写入不同的工作节点,这些底层子任务的运行状态不会单独展示在.show operations的基础查询结果中,你当前观测到的现象是完全正常的。
内容的提问来源于stack exchange,提问作者Dhiraj
相关产品推荐
相关产品推荐

