hadoop - 带有 NOSQL/Hadoop 的企业数据仓库 - "NO RDBMS"

标签 hadoop voltdb nosql

是否有使用 NOSQL/Hadoop 解决方案设计的 EDW(企业数据仓库)系统?

我知道有连接到 HDFS 子系统的 PDW 系统(MS PDW polybase、Greenplum hawq 等)。这些是专有的硬件和软件解决方案,并且在规模上很昂贵。我正在寻找一个带有 NOSQL 或 Hadoop 的解决方案,最好是开源的企业数据仓库解决方案。如果您实现了任何经验,我想听听您的任何经验。再说一遍,我并不是在寻找任何类型的专有 RDBMS 作为此 EDW 解决方案的参与者。

我在互联网上做了一些研究,虽然它是可能的(Impala 是一个可能的选择)但没有看到任何人真正完全使用 NOSQL 或 Hadoop 实现。

如果您做过此类事情,我想听听您是如何设计的,以及您的业务分析师使用了哪些不同的工具等...如果您能分享您在整个过程中的经验,我们将不胜感激。

更新中.... VoltDb 和 NEOdb(它们不是真正的 RDBMS)怎么样,但它们声称它们可以更大程度地支持 ANSI SQL。

最佳答案

在 Hadoop 之上构建 EDW 时,您将面临的第一个问题是其存储不可更新,因此您应该忘记 SQL UPDATE 和 DELETE 命令。

其次,构建在 Hadoop 之上的解决方案的维护成本通常要高出数倍。更昂贵的专家,更复杂的调试(比较调试 Hive 查询中的问题与调试 Oracle 中的 SQL 查询问题 - 后者会更容易)。

第三,Hadoop 通常会为您置于其上的任何类型的工作负载提供更少的并发性和更高的延迟。

鉴于所有这些,您为什么认为 DWH 仅针对 Facebook、Yahoo、Ebay、LinkedIn 等真正的大企业构建在 Hadoop 之上?因为它做起来并不那么简单,而在实现时,它比任何专有解决方案都更具可扩展性和可定制性。

因此,如果您明确决定继续使用 Hadoop 或任何其他 NoSQL 解决方案来构建 DWH,我建议您这样做:

  1. 使用 Hadoop HDFS 作为数据存储的基础
  2. 使用 Flume 将数据加载到 HDFS
  3. 将 Hive 与 Tez 一起用于繁重的 ETL 作业
  4. 为分析师提供 Impala 作为 SQL 查询接口(interface)
  5. 将 Spark 作为分析人员的高级工具提供
  6. 使用 Ambari 一起管理和配置所有工具

这些工具一起将满足您的大部分需求

关于hadoop - 带有 NOSQL/Hadoop 的企业数据仓库 - "NO RDBMS",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25646107/

相关文章:

mysql - 您可以浏览正在运行的 VoltDB 数据库吗?

database - voltdb中使用了哪些数据结构

voltdb - VoltDB 中的连接池

nosql - NoSQL 中的多对多关系

java - MapWritable 用新添加的键替换所有现有键 - Hadoop MapReduce 2.6.4

apache - Tez 在 HDP 2.1 上崩溃

javascript - 在nodejs for循环中插入语句?

mongodb - mongodb 的唯一 ID

python - 压缩的 Hadoop 序列文件 Python

python - 当我尝试以朴素的贝叶斯分类器形式https://github.com/muatik/naive-bayes-classifier我得到错误