2

在我的 lambda 架构中,我正在讨论是使用 HDFS 还是 Cassandra 来存储我的不可变数据。我需要 Cassandra 来处理在线请求等,所以它是技术堆栈的强制性部分。现在,如果没有必要,我不想将新工具 (HDFS) 引入堆栈。所以我的问题是,如果我不使用 HDFS 并使用 Cassandra 来托管我的不可变数据,我会缺少什么。

编辑:

我了解 HDFS 是分布式文件系统,而 Cassandra 是 NoSQL DB。尽管如此,两者都支持数据复制,都支持高吞吐量写入。此外,Cassandra 支持低潜在数据检索。那么我是否正确地说 HDFS 不会为我提供太多提升?

4

2 回答 2

0

据我了解,您正试图澄清您的 Lambda 架构的服务层。如果是这样,您希望将批处理视图和实时视图存储到数据库中。据我了解,您的批处理层中没有 Hadoop 集群。并且您的批处理视图尚未在 HDFS 中完成。此时,您的架构位于 HDFS 之外。HBase 是建立在 Hadoop 文件系统之上的分布式面向列的数据库。它是一个开源项目,可水平扩展。如果您不想要 hadoop 集群,请省略 HBase。Cassandra 是分布式 NoSQL 数据库(面向列),它在 Hadoop 集群和 HDFS 之外工作。如果我正确理解您的架构和需求,我认为 Cassandra 最适合您。

此外,您可以从此链接获得有关 Lambda 架构的快速信息; http://artofbigdata.blogspot.com.tr/2016/01/lambda-architecture.html

于 2016-02-05T10:58:34.830 回答
0

HDFS 支持不同的文件格式进行存储。例如,序列文件、Avro 和 Parquet 等。这样您就可以选择适合您的应用程序需要的文件格式。

另请注意,您可以使用类似 SQL 的查询有效地读取数据。

因此,在 HDFS over Cassandra 中可以使用不同的数据模型来托管数据。

于 2015-11-19T08:58:13.630 回答