Apache spark 读取查询期间的Cassandra故障

Apache spark 读取查询期间的Cassandra故障,apache-spark,cassandra,Apache Spark,Cassandra,我有一个Cassandra表,有大约500列和主键((userId,version,shredId),rowId),其中shredId用于将数据均匀地分布到不同的分区中。表还有一个默认的TTL,即数据过期2天,因为数据用于实时聚合。压缩策略是TimeWindowCompactionStrategy 工作流程是: 将数据写入输入表(保持一致性) 运行spark聚合(在具有相同userId和version的行上) 将聚合数据写入输出表 但当数据量变大时,我在读查询过程中遇到了Cassandra失败;

我有一个Cassandra表,有大约500列和主键
((userId,version,shredId),rowId)
,其中
shredId
用于将数据均匀地分布到不同的分区中。表还有一个默认的TTL,即数据过期2天,因为数据用于实时聚合。压缩策略是TimeWindowCompactionStrategy

工作流程是:

  • 将数据写入输入表(保持一致性)
  • 运行spark聚合(在具有相同
    userId
    version
    的行上)
  • 将聚合数据写入输出表
  • 但当数据量变大时,我在读查询过程中遇到了
    Cassandra失败;更具体地说,一旦一个分区中有超过210行,读取查询就会失败


    如何调整数据库并更改属性以解决此问题?

    经过调查和研究,发布的错误是由于为某些空列插入了空值。这会创建大量墓碑,并最终导致查询超时