我想编写一个应用程序,它能够从大型生产系统的监控数据中生成报告并启用交互式数据分析(类似 OLAP)。(我知道,前面有一些有问题的权衡决定,但我们暂时将它们放在一边。)
我确定了基本技术堆栈的以下可能性:
- Hadoop:用于分布式文件系统和 MapReduce 框架
- 数据库:HBase 或 Cassandra 以启用随机读取
- 分析:用于高级分析的 Hive 或 Pig
根据我的研究,我倾向于认为 Hadoop/HBase/Hive 将是最常见的组合。但这只是基于一些论坛问题和产品演示。
其他人可以分享他对这个问题的一般看法吗?
或者更具体地回答以下问题:
- 一般来说,HBase 是否比 Cassandra 更适合大数据分析(写入与读取性能)?
- 使用数据库值得还是我应该直接在 Hadoop 上找到我的分析层?
- 哪些数据库/分析工具组合是最“自然”的?
- 我错过了什么很酷的东西吗?