hadoop - 同时使用HBase做小数据集和大数据分析?

标签 hadoop hbase hdfs

我正在构建一个需要大量数据处理和分析(同时处理大量文件)的应用程序。

我打算为此使用 Hadoop(Map-reduce、Hbase(HDFS 文件系统))。

同时我有一些小的数据集,比如用户设置、应用程序用户列表、支付信息和其他可以在任何 RDMS 数据库(如 sql 或 Mongo)上轻松管理的数据集。

有时它可能只有很少的由 Hadoop 计算的聚合和分析数据,但这些数据也不是那么大。

我的问题是我是否应该选择 2 个数据库,如 Mysql/Mongo 来存储小数据集和 HBase 来存储大数据集?

或者我的 HBase 可以高效地完成这两项工作?

最佳答案

My opinion you cant compare apple with banana. Hbase 是无模式的,来自 CAP theorem , CP是hbase的主要关注点。

CA 用于 RDBMS。请看我的回答。 RDBMS 具有这些属性,具有架构、集中式、支持连接、支持 ACID、支持参照完整性。

Hbase 是无架构的,分布式的,不支持连接,没有对 ACID 的内置支持。

现在您可以根据您的要求决定使用哪个。

希望这对您有所帮助!

关于hadoop - 同时使用HBase做小数据集和大数据分析?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37920009/

相关文章:

java - 在 hadoop 中对没有 .gz 扩展名的文件使用 gzip 输入编解码器

hadoop - java.lang.NoClassDefFoundError:org/apache/hadoop/security/authorize/RefreshAuthorizationPolicyProtocol

java - 如何在 HBase 客户端应用程序中抑制 INFO 日志?

hadoop - CloudStore 与 HDFS

hadoop - 如果我使用 S3 而不是 HDFS,是否仍然需要 Namenode?

twitter - 多个水槽Twitter代理

java - 如何让 Hadoop 客户端在安全 (Kerberos) 集群中使用正确的凭据

java - 由于不可序列化的对象,Spark 作业失败

java - MapReduce 权限 0700 错误

hadoop - Spark 流 : HDFS