tispark中的isEmpty作用是什么

IMG_2270.HEIC (2.1 MB)
在sparkshell 里面执行了demo中的例子从hive里面取了1亿行数据加载到tidb里面
可以看到在spark的jobs里面有很多isEmpty job 任务数很低 前三分钟都在进行这个工作 请教一下这个任务的功能是什么 还有优化空间吗?

1 个赞

这个是缓存更新的收集器,用于累积缓存失效事件,并使驱动节点更容易决定何时更新其 PD 缓存,应该忽略就好。目前有啥影响吗?

1 个赞

参考:TiSpark数据写入过程解析(源码解析)
这里面的时序图中说了判空操作都是干了啥,目前来看都是必要的一些操作。

2 个赞

在一次加载过程中有6个isEmpty 3个count耗时30分钟以上,
操作是一个43亿行的hive表和1亿行的tidb表join结果写回tidb 结果估计有2亿行 就是请教一下有没有优化的空间 spark 有144个核心