在 cassandra 系统表中有没有办法检查计数?我们在哪里可以检查最新插入的元数据?

Is there way in cassandra system tables check the counts ? where we can check the meta data of latest inserts?

我正在使用 oracle 到 cassandra 的迁移工具,我想在其中维护一个验证 table 列 oracle count 和 cassandra count ,这样我就可以验证迁移作业,在 cassandra 中有什么办法系统维护最近 executed/inserted 查询计数 ?特定 table 的总数? cassandra 系统 tables 中有任何地方存储吗?如果是的话是什么?如果不是请建议一些方法来设计数据迁移的验证框架。

在cassandra中有没有办法,在我们可以读取计数而不是执行计数的任何系统table中获取最新的查询插入记录计数和table的总计数(* ) 在 tables 上查询? cassandra 是否在内部任何地方维护计数?如果是这样,我们可以在哪里检查最新插入的元数据,即哪个系统 tables?

Cassandra 是分布式系统,没有地方可以收集每个表的计数。您可以从 system.size_estimates 中获得一些估计值,但它只会说每个范围的分区数及其大小。

对于您要求的框架,您可能需要开发自定义 Spark 代码(最简单的方法)来执行行计数和其他检查。 Spark 针对有效数据访问进行了高度优化,可能比编写自定义代码更可取。

此外,在迁移过程中,考虑使用大于ONE的一致性级别来确保至少有多个节点确认写入数据。虽然,这取决于您的迁移作业的数据量和时间要求。