gpt4 book ai didi

Hadoop 2.7、Spark、Hive、JasperReports、Sqoop - 架构

转载 作者:可可西里 更新时间:2023-11-01 16:50:33 25 4
gpt4 key购买 nike

首先,这不是一个寻求帮助以逐步部署以下组件的问题。我要问的是关于应该如何设计架构的建议。我打算做的是使用现有数据开发一个报告平台。以下是我通过研究收集的数据。

我有一个包含大量记录的现有 RDBMS。所以我正在使用

  • Scoop - 将数据从 RDBMS 提取到 Hadoop
  • Hadoop - 存储平台
  • Hive - 数据仓库
  • Spark - 因为 Hive 更像是批处理 Hive 上的 Spark 会加快速度
  • JasperReports - 生成报告。

我所知道的是部署了一个 Hadoop 2 集群,如下所示

  • 192.168.X.A - 名称节点
  • 192.168.X.B - 第二个名称节点
  • 192.168.X.C - 从站 1
  • 192.168.X.D - 从站 2
  • 192.168.X.E - 从站 3

我的问题是

  • 我应该在哪个节点部署 Spark? A 或 B,鉴于我想支持故障转移。这就是为什么我在 B 上配置了一个单独的名称节点。
  • 我应该在每个实例上部署 Spark 吗?工作节点应该是谁?
  • 我应该在哪个节点部署 Hive?有没有比 Hive 更好的替代品?
  • 我应该如何连接 JasperReports?去哪里?要 Hive 还是 Spark?

请告诉我一种合适的架构设计方式?请提供详细的答案。

请注意,如果您能提供任何类似性质的技术指南或案例研究,那将非常有帮助。

最佳答案

你已经想通了!我所有的回答都只是一般性意见,可能会根据数据、要执行的操作风格而发生巨大变化。另外,问题暗示此类操作的数据和结果对任务至关重要,我是这么认为的。

Spark on Hive will speed up things

不一定正确。轶事证据,this post (by cloudera) , 证明恰恰相反。实际上有一个相反的方向,即 Hive on Spark .

In which node should I deploy Spark? A or B, Given that I want to support fail-over. That's why I have a separate namenode configured on B. Should I deploy Spark on each and every instances? Who are the worker nodes should be?

当然 - 在大多数情况下。设A或B为master,其余皆为worker节点。如果您不想在您的体系结构中出现 SPOF,请参阅 high availability section of spark documentation ,需要一些额外的工作。

Is there a better alternative to Hive?

这个既是主观的又是特定于任务的。如果 SQL 查询感觉很自然并且适合任务,还有 Impala由 Cloudera 推广,它声称性能和数量级比 Hive 快。但在 Apache Hadoop 生态系统中有点陌生。使用 Spark - 如果您擅长输入一些 python 或 scala - 您可以进行类似 SQL 的查询,同时仍然享受这些语言提供的表达能力。

How should I connect JasperReports? And to where? To Hive or Spark?

不知道这个。

关于Hadoop 2.7、Spark、Hive、JasperReports、Sqoop - 架构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33635234/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com