gpt4 book ai didi

hadoop - 在 hadoop 中实时处理非常大的数据集

转载 作者:可可西里 更新时间:2023-11-01 15:02:27 26 4
gpt4 key购买 nike

我正在尝试了解如何构建大数据解决方案。我有 400TB 数据的历史数据,每小时插入 1GB 数据。

由于数据是 secret 的,我正在描述示例场景,数据包含银行分行中所有事件的信息。每小时,当新数据插入(无更新)到 hdfs 时,我需要查找关闭的贷款数量、创建的贷款数量、过期的帐户数量等(要执行大约 1000 次分析)。分析涉及处理全部 400TB 的数据。

我计划使用 hadoop + spark。但有人建议我使用 HBase。通读所有文档,我无法找到明显的优势。

对于将增长到 600TB 的数据,最好的处理方式是什么
1. MR用于分析,impala/hive用于查询
2. 用于分析和查询的Spark
3. HBase + MR 分析查询

提前致谢

最佳答案

关于 HBase:

HBase 是一个建立在 HDFS 之上的数据库。 HBase 使用 HDFS 来存储数据。基本上,HBase 将允许您更新记录、进行版本控制和删除单个记录。 HDFS 不支持文件更新,因此 HBase 引入了一些你可以考虑的“虚拟”操作,并在你向它请求数据时合并来自多个源(原始文件、删除标记)的数据。此外,作为键值存储的 HBase 正在创建索引以支持按键选择。

您的问题:

在这种情况下选择技术时,您应该考虑要对数据执行的操作:Impala 上的单一查询(使用 Avro 架构)可能比 MapReduce(更不用说 Spark)快得多。当涉及缓存时,Spark 在批处理作业中会更快。

您可能熟悉 Lambda 架构,如果不熟悉,请了解一下。对于我现在可以告诉你的,你提到的第三个选项(仅限 HBase 和 MR)不会很好。我没有尝试 Impala + HBase,所以我不能说任何关于性能的事情,但是 HDFS(纯文件)+ Spark + Impala(使用 Avro)对我有用:Spark 正在为预定义查询做报告(在那之后,数据存储在 objectFiles 中——不是人类可读的,但速度非常快),用于自定义查询的 Impala。

希望至少能有所帮助。

关于hadoop - 在 hadoop 中实时处理非常大的数据集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29074124/

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