Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Scala 卡桑德拉火花连接器数据丢失_Scala_Cassandra_Apache Spark_Datastax - Fatal编程技术网

Scala 卡桑德拉火花连接器数据丢失

Scala 卡桑德拉火花连接器数据丢失,scala,cassandra,apache-spark,datastax,Scala,Cassandra,Apache Spark,Datastax,最近,我们使用了一些统计数据。 重复的查询在每次执行时都会重新出现不同的结果 背景:我们在3节点cassandra集群中有大约112K条记录。该表具有名为guid的单个分区键UUID列,并且没有集群键列 这是我定义用来检查损失的简单的guid提取器: val guids = sc.cassandraTable[UUID]("keyspace","contracts").select("guid") 接下来,我多次将数据提取到本地集合中 val gss = List.fill(20)(Set(g

最近,我们使用了一些统计数据。 重复的查询在每次执行时都会重新出现不同的结果

背景:我们在3节点cassandra集群中有大约112K条记录。该表具有名为
guid
的单个分区键
UUID
列,并且没有集群键列

这是我定义用来检查损失的简单的
guid
提取器:

val guids = sc.cassandraTable[UUID]("keyspace","contracts").select("guid")
接下来,我多次将数据提取到本地集合中

val gss = List.fill(20)(Set(guids.collect():_*))
val gsall = gss reduce (_ | _)
val lost = gss map (gsall &~ _ size)
结果
丢失
列表(59707067692666835807790700564206911687670387914656265766937711673746836727312)

因此,我们每个查询都有
6,17±0,47%
数据丢失

这可能是卡桑德拉、火花或连接器的问题吗?在每种情况下,是否存在某种配置方法来防止这种情况发生?

我已经阅读并了解到,阅读一致性水平可以而且应该针对这种情况进行设置。 申报后

implicit val readConf = ReadConf.fromSparkConf(sc.getConf).copy(
    consistencyLevel = ConsistencyLevel.ALL)
我得到了稳定的结果。

我已经阅读并了解到,在这种情况下,阅读一致性水平可以也应该设置。 申报后

implicit val readConf = ReadConf.fromSparkConf(sc.getConf).copy(
    consistencyLevel = ConsistencyLevel.ALL)
我得到了稳定的结果