【问题标题】:how to read all row from very huge table in cassandra?如何从cassandra中非常大的表中读取所有行?
【发布时间】:2016-02-10 09:43:41
【问题描述】:

我有一个 Cassandra 集群,在同一个数据中心有两个节点,replica_factor=2。大约 1.5 亿个表格,并且不断增加,我需要每天一次读取进程并更新 Cassandra 中的相应行。

  • 有没有更好的方法来做到这一点?

  • 有没有办法将所有行划分为并行块并由某个线程处理每个块?

  • Cassandra 版本:2.2.1

  • java版本:openjdk 1.7

【问题讨论】:

    标签: java cassandra-2.0 datastax-java-driver


    【解决方案1】:

    您应该看看 Spark。使用Spark Cassandra Connector 允许您从多个 Spark 节点读取 Cassandra 数据,这些节点可以额外部署在 Cassandra 节点或单独的集群中。通过运行 Spark 作业并行读取、处理和写回数据,该作业也可以安排为每日执行。

    随着您的数据量不断增长,查看Spark Streaming 可能也很有意义,它允许您根据新数据不断处理和更新您的数据。这将防止重新处理相同的数据一遍又一遍,但这当然取决于您的用例是否适合您。

    【讨论】:

      猜你喜欢
      • 2011-04-10
      • 2017-03-16
      • 2022-06-14
      • 2013-07-13
      • 2013-01-10
      • 1970-01-01
      • 2020-05-28
      • 2016-02-17
      • 2012-12-15
      相关资源
      最近更新 更多