我正在构建一个需要大量数据处理和分析(同时处理大量文件)的应用程序。
我打算为此使用 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/