gpt4 book ai didi

hadoop - 实时应用的Hbase

转载 作者:可可西里 更新时间:2023-11-01 14:27:29 25 4
gpt4 key购买 nike

我想构建一个用于预测性维护的实时应用程序。我考虑过将 Hbase 与 Phoenix 一起使用。 Phoenix 在 HBase 上提供了 SQL 层。

我读到 Hbase 非常适合大数据,例如 1 亿行 plus++。但是我的应用程序数据目前没有数据。如果一开始只有少量数据,Hbase数据库会如何 react ?HBase 是实时 Web 应用程序的良好解决方案吗?

我想要一个类似 lambda 架构的系统。用于批处理和流处理。HDFS 之上的 HBase 会是我的 OLTP 和 OLAP 系统吗?

由于 lambda 架构具有 Batch 和 Speed 层。我可以将 HDFS 中的 HBase 数据也用于 Batch 并将结果保存回 Hbase 吗?

总的来说,我想知道 HBase 是否是构建实时 Web 应用程序的好解决方案,也可以进行分析。

最佳答案

HBase 的选择一般基于以下几点:

数量:数百万和数十亿优于数万和数百万

特性:当您不需要事务、二级索引和一些 RDBMS 特性时

硬件:确保您有足够的硬件用于区域服务器。它涉及大量维护

更具体:

由于其快速的随机读取查询,它最适合 Web 应用程序。但这只带有非常好的行键设计。这涉及您提前计划好最终查询并设计行键。如果您还有基于时间的数据并且您的查询严重依赖它,则需要特别注意行键设计。简而言之,您应该避免热点。一些信息here

除此之外,可以使用 HBase 过滤器按其他列值进行选择,但选择很少,并且可能无法保证 Web 应用程序的响应时间。

此外,如果您的数据集(行)的列数可变,并且您不需要查询中的所有列,HBase 再次成为最佳选择

服务器(区域)故障转移在 HBase 中是可能的——因此您的数据将是安全的。

它既可以用于批处理,也可以用于流式处理。当然,对于流式传输,它是大数据堆栈中最好的。然而,这也取决于您的流媒体管道——例如 kafka、spark streaming 或 storm 等。

既然你提到了 Phoenix,我假设你可能想要坚持使用 HBase 的 sql View ——这可能会给你更好的选择。然而在核心,行键设计仍然是 HBase 性能的核心

关于hadoop - 实时应用的Hbase,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40957891/

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