0

我计划旋转我的开发集群以进行基础设施监控应用程序的趋势分析,我计划使用 Spark 构建以分析故障趋势,并使用 Cassandra 来存储传入数据和分析数据。考虑从大约 25000 台机器/服务器(可能是不同服务器上的相同应用程序集)收集性能矩阵。我期望每台机器的性能矩阵大小为 2MB/秒,我计划将其推送到具有时间戳的 Cassandra 表中,服务器作为主键和应用程序以及一些重要的矩阵作为集群键。我将在此存储信息之上运行 Spark 作业,以进行性能矩阵故障趋势分析。

谈到这个问题,考虑到上述情况,我需要多少个节点(机器)以及 CPU 和内存方面的配置来启动我的集群。

4

1 回答 1

2

Cassandra 需要一个精心规划的数据模型才能让事情顺利运行。在您拥有大型数据集并发现您可能会更好地重新安排数据模型之前,花时间在这个阶段进行计划是非常值得的!

“一般”的经验法则是根据查询来塑造模型,同时注意避免诸如非常大的行、大的删除、批处理等可能会带来很大的性能损失的事情。

这些文档为您可能会发现有用的规划测试提供了一个良好的开端。我还建议使用Cassandra 压力工具。您可以使用它将性能测试推送到您的 Cassandra 集群中,以检查延迟和任何性能问题。您也可以使用自己的架构,我个人认为这非常有用!

如果您使用的是 AWS 等基于云的硬件,那么扩展/缩减相对容易,看看什么最适合您。你不需要在 Cassandra 上扔大硬件,水平扩展比垂直扩展更容易。

我假设您也将数据拉回用于分析方面的单独 Spark 集群,因此这些节点将运行普通的 Cassandra(硬件规格较少)。但是,如果您使用的是 Datastax Enterprise 版本(您可以在其中以 spark“模式”运行节点),那么您将需要更强大的硬件以及 spark 驱动程序、执行程序等所需的额外负载。另一个很好的文档链接是 DSE硬件建议

于 2017-07-19T13:01:50.233 回答