Hadoop 用于实时应用的Hbase

Hadoop 用于实时应用的Hbase,hadoop,hbase,lambda-architecture,bigdata,Hadoop,Hbase,Lambda Architecture,Bigdata,我想为预测性维护构建一个实时应用程序。 我考虑在Phoenix上使用Hbase。Phoenix在HBase上提供SQL层 我读到Hbase对于像1亿行加++这样的大数据很有用。 但我的应用程序数据目前没有数据。如果开始时只有少量数据,Hbase数据库将如何反应? HBase是实时web应用程序的良好解决方案吗 我想要一个类似lambda架构的系统。用于批处理和流式处理。 HDFS顶部的HBase是我的OLTP和OLAP系统吗 因为lambda体系结构具有批处理和速度层。我可以在HDFS中使用HB

我想为预测性维护构建一个实时应用程序。 我考虑在Phoenix上使用Hbase。Phoenix在HBase上提供SQL层

我读到Hbase对于像1亿行加++这样的大数据很有用。 但我的应用程序数据目前没有数据。如果开始时只有少量数据,Hbase数据库将如何反应? HBase是实时web应用程序的良好解决方案吗

我想要一个类似lambda架构的系统。用于批处理和流式处理。 HDFS顶部的HBase是我的OLTP和OLAP系统吗

因为lambda体系结构具有批处理和速度层。我可以在HDFS中使用HBase数据进行批处理并将结果保存回HBase吗


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

HBase的选择通常基于以下几点:

成交量:数百万比千万好

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

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

更具体地说:

它最适合web应用程序,因为它具有快速的随机读取查询。但这只提供了非常好的行键设计。这涉及到提前规划结束查询并设计行键。如果您也有基于时间的数据,并且您的查询严重依赖于它,那么在行键设计中需要特别小心。简而言之,你应该避免热点。一些信息

除此之外,可以使用HBase筛选器选择其他列的值,但选择很少,并且可能无法保证web应用程序的响应时间

此外,如果数据集(行)的列数可变,并且查询中不需要所有列,那么HBase也是最佳选择

HBase中的服务器(区域)故障切换是可能的,因此您的数据将是安全的

它可以用于批处理和流式处理。当然,流式传输是大数据堆栈中最好的一种。然而,这也取决于你的流媒体管道-如卡夫卡,火花流或风暴等

既然您提到了Phoenix,我想您可能希望坚持使用HBase的sql视图—这可能会给您提供更好的选择。然而,在核心,行键设计仍然是HBase性能的核心