- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想对 HDFS 中的数据进行一些“近实时”数据分析(类似 OLAP)。
我的研究表明,与 Apache Hive 相比,上述三个框架具有显着的性能提升。有人对其中任何一个有实际经验吗?不仅涉及性能,还涉及稳定性?
最佳答案
Hive 和 Impala 或 Spark 或 Drill 之间的比较有时对我来说听起来不合适。开发 Hive 和这些工具背后的目标是不同的。 Hive 从来都不是为了实时、内存处理而开发的,而是基于 MapReduce。它是为离线批处理之类的东西而构建的。最适合当您需要长时间运行的作业来执行数据密集型操作(例如对非常大的数据集进行联接)时。
另一方面,这些工具的开发考虑了实时性
。当您需要查询不是很大的数据时,可以选择它们,这些数据可以实时装入内存。我并不是说您不能使用这些工具对 BigData 运行查询,但恕我直言,如果您对 PB 级数据运行实时查询,您就会突破极限。
您经常会看到(或读到)某个特定公司拥有数PB 的数据,并且他们成功地满足了客户的实时需求。但实际上,这些公司大多数时候并没有查询他们的全部数据。因此,重要的是适当的规划,何时使用什么
。我希望您能明白我想要表达的观点。
回到你的实际问题,在我看来,目前很难提供合理的比较,因为大多数项目还远未完成。它们还没有准备好投入生产,除非您愿意自己做一些(或者可能很多)工作。而且,对于每个项目都有特定于该特定项目的特定目标。
例如
,Impala 的开发是为了利用现有的 Hive 基础设施,这样您就不必从头开始。它使用与 Hive 相同的元数据。其目标是在现有 Hadoop 仓库之上运行实时查询。而 Drill 的开发目的是不仅仅是 Hadoop
项目。并为我们提供跨多个大数据平台(包括MongoDB、Cassandra、Riak和Splunk)的分布式查询能力。 Shark 与 Apache Hive 兼容,这意味着您可以使用与通过 Hive 相同的 HiveQL 语句来查询它。不同之处在于,Shark 返回结果的速度比 Hive 上运行的相同查询快 30 倍。
Impala 目前表现不错,有些人一直在使用它,但我对其余的 2 个工具没有那么有信心。所有这些工具都很好,但只有在您在数据上尝试这些工具后才能进行公平的比较并满足您的加工需求。但根据我的经验,Impala 是目前最好的选择。我并不是说其他工具不好,而是它们还不够成熟。但是,如果您希望将它与已经运行的 Hadoop 集群(例如 Apache 的 hadoop)一起使用,您可能需要做一些额外的工作,因为几乎每个人都将 Impala 作为 CDH 功能使用。
注意:所有这些内容仅基于我的经验。如果您发现错误或不适当的内容,请告诉我。欢迎提出意见和建议。我希望这能回答您的一些疑问。
关于apache-spark - 快速 Hadoop 分析(Cloudera Impala vs Spark/Shark vs Apache Drill),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17290397/
是否可以在 impala 中同时执行多个查询?如果是,impala 是如何处理的? 最佳答案 我当然会自己做一些测试,但我无法执行多个查询:我正在使用 Impala 连接,并从 .sql 文件中读取查
我一直在寻找使用 Hortonworks 2.1 安装可用的 Storm,但为了避免在 Cloudera 安装(其中包含 Spark)之外安装 Hortonworks,我试图找到一种在 Clouder
正常情况下,我可以show partitions 在 hive 中。但是当它是 Parquet 表时,hive 无法理解它。我可以转到 hdfs 并检查目录结构,但这并不理想。有没有更好的方法来做到这
我想知道用于停止和启动 cloudera CDH5.2 集群的命令行。 原因,我正在编写一个自动化脚本来运行一些基准测试,并希望在开始每个基准测试之前停止和启动集群。 我已经看到停止 CDH 集群并不
由于嵌入式 PostgreSQL 数据库的问题,我无法访问 Cloudera Manager UI。 Web UI 向我显示: HTTP ERROR 500 Problem accessing /cm
我最近下载了 Cloudera CDH 5.3,现在我需要访问 HUE Web UI 门户。当我提供属于 Cloudera admin/admin 的默认用户名和密码时,它不起作用。我现在无法登录 H
我有两台装有 CentOS 6.5 的 PC client86-101.aihs.net 80.94.86.101 client86-103.aihs.net 80.94.86.103 clouder
当我显示表格时,我在 Impala 中看到一个表格“测试”; 我想复制“test”表,使其完全相同,但命名为“test_copy”。我可以执行 impala 查询来执行此操作吗?如果没有,我该怎么做?
如何在不使用 Cloudera 管理器的情况下在 100 节点集群上安装 Cloudera CDH?在集群中的每个节点上手动安装和配置 CDH 是一项艰巨的任务。使用哪些工具和技术来自动化生产中的任务
我启动了cloudera-scm-agent,但它失败了。我看到来自 /opt/cm-5.7.0/log/cloudera-scm-agent 的日志。它说 /opt/cm-5.7.0/lib64/c
我正在使用 ubuntu 12.04 64 位,我成功地安装并运行了单节点示例 hadoop 程序。 我在我的 ubuntu 上安装 cloudera 管理器时出现以下错误 Refreshing re
我已经关注了这里的博客(如下所述)并下载了包裹并按照要求放置。请告诉我是否有人已安装以及步骤。 (https://www.cloudera.com/documentation/spark2/lates
我正在尝试使用 Cloudera Manager 3.7.x 在具有 RHEL 5.5 的集群上安装 CDH3U5。但是由于以下错误,安装失败 - Error Downloading Packages
我正在尝试在 Ubuntu 12.04 LTS(64 位)中使用 Cloudera Manager 安装 CDH5。我正在按照 Cloudera link 中提到的步骤进行操作.我无法为安装 CDH5
我正在使用 Cloudera Quickstart VM 5.3.0(在 Windows 7 上的 Virtual Box 4.3 中运行)并且我想学习 Spark(在 YARN 上)。 我启动了 C
Cloudera 声称拥有快速启动方法。我注意到这对我不起作用。 当我调用 Spark-shell 时,我得到: ... WARN metastore.ObjectStore: Version inf
我有cloudera 5.7,我也有Cloudera Manager。 在目录/etc/hadoop下,我看到了三个子目录。 /etc/hadoop/conf /etc/hadoop/conf.clo
我是 Docker 和 Hadoop 系统的新手。我已经在 Ubuntu 16.04 中安装了 Docker,并在一个新的 Docker 容器中运行来自 Cloudera 的 Hadoop 镜像。但是
我必须区分 Cloudera 包裹过程和编写 cooking 书或厨师的食谱以在集群中安装包。 因此,我正在寻找 Parcel 与 Chef 之间的优势和劣势,反之亦然。 最佳答案 如果您使用的是 C
我对 impala 中的数据局部性有疑问,假设我有 10 个数据节点的集群(每个数据节点上都有 impalad),如果我在 impala 中执行查询 SELECT * FROM big_table w
我是一名优秀的程序员,十分优秀!