cassandra - Janus Graph 后端 cassandra 与 Bigtable

标签 cassandra janusgraph bigtable

我计划使用 Janusgraph 来构建我们团队处理的不同用途的图表,我看到 janus 图表可以选择使用 BigTable 或 Cassandra 作为存储后端。我正在使用 JanusGraph 寻找关于哪个后端更优化/性能更好的建议(我主要谈论节点的 2 跳邻居上的 gremlin 查询性能)。

我知道性能是非常主观的,并且会根据数据大小/图形连接性和用例而有所不同,因此最好的方法是亲自尝试,我正计划这样做。但是有没有其他人做过类似的性能比较?这里有关于存储后端的一般性建议吗?

最佳答案

你是对的,性能是:

  • 主观
  • 很大程度上取决于数据大小

我可以告诉你,我也做过这个练习。为此,我认为分享来自 DB-Engines.com 的比较很重要.

就性能而言,我最关注的是每个人如何处理一致性。作为一般规则,强制执行更高级别一致性的数据库通常不得不牺牲性能。

  • BigTable == 强一致性
  • Cassandra == 最终一致

其他值得考虑的因素是 BigTable 将您限制在 Google Cloud (GCP) 上。如果您不想通过网络损失性能,您还需要为数据局部性支付 GCP 上更多 (Janus) 实例的费用。

就原始 DB-Engine“分数”而言,Cassandra 目前为 114.112,而 BigTable 仅为微不足道的 3.582。这些分数每个月都会发生变化,但总的来说,这表明 Cassandra 周围有一个非常更强大的社区。同样,Cassandra 在该站点上有 18182 个问题,而 BigTable 只有 449 个。最重要的是,获得支持和问题答案会容易得多。

仅仅基于社区的潜在力量,Cassandra 是更好的选择。

过去几年在 Cassandra 上支持 JanusGraph,我可以告诉你,总体来说它很可靠。困难往往与批量数据加载有关。但除此之外,一切似乎都进展顺利。

关于cassandra - Janus Graph 后端 cassandra 与 Bigtable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67910867/

相关文章:

cassandra - DSE Cassandra 3.x 删除操作

docker - 在同一图上绑定(bind)两个实例 Janusgraph 时出错

export - 从 Google Cloud Bigtable 导出数据时出错

elasticsearch - 索引创建成功,但不会重新索引新数据

go - 如何从 GoLang 应用程序连接到 Bigtable 模拟器?如何使用它?

java - BigTable 与 noSQL

cassandra - Cassandra 中的总行数

Node.js cassandra 连接超时

mongodb - 在谈论 MongoDB 与 Cassandra 时, "Document-oriented"与键值是什么意思?

Janusgraph 0.3.0 Tinkerpop 3.3.3 java - 使用 GryoMessageSerializerV3d0 添加 Edge 后出现序列化错误