我使用Spark将2100万条记录插入到Cassandra表中。spark作业大约需要一个小时,并成功插入所有记录,但在最后阶段(62/63)挂起。
我的Spark属性:
spark.driver.memory 10g
spark.executor.cores 1
spark.executor.instances 40
spark.executor.memory 4g将记录插入到Cassandra并在最后阶段挂起的代码行-
raw_data_final.rdd.saveToCassandra("marketing_dev1", "offer_detail_11", writeConf = WriteConf(ttl = TTLOption.perRow("ttl")))如何在不挂起最后阶段的情况下成功退出spark作业?
发布于 2018-06-23 04:31:44
这似乎是一个数据倾斜的问题。请粘贴您的代码以供进一步分析。
请检查是否在Cassandra中插入了行。我怀疑是否会有任何插入发生。
除此之外,提供您的样本数据,并检查您是否提供了任何将均匀划分数据的分区列
发布于 2018-06-23 07:28:36
这是因为我有一个记录,其中一个键列的值为null。删除该记录后,我的工作成功了。
https://stackoverflow.com/questions/50995065
复制相似问题