基于HBase的工业大数据存储实战物品现场总线传输介质探究
随着工业4.0时代的到来,工业互联网和企业的智能化、信息化都将不断推进,传统的工业实时数据库和关系数据库已经难以完全胜任工业大数据的存储,以HBase为代表的NoSQL数据库正在蓬勃发展,其完全分布式特征、高性能、多副本和灵活的动态扩展等特点,使得HBase在工业大数据的存储上拥有强大的优势,打破了流程工业生产中的数据壁垒效应,促进了生产水平和管理水平的大幅提升。本期格物汇,就来给大家介绍HBase数据库及格创东智相关实战案例。
了解HBase
HBase是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统。它利用Hadoop HDFS作为其文件存储系统,将海量数据处理成结构化形式,从而实现快速查询与高效分析。与Google Bigtable相比,虽然两者都是基于Bigtable设计,但有显著差异:前者采用Apache Hadoop生态系统,而后者依赖于Google自家的技术栈。
与传统数据库不同,HBASE具备以下优势:
线性扩展,可以通过节点增加来支持更大的数据量。
数据以hdfs上的文件形式存储,有良好的备份机制。
通过zookeeper协调服务访问速度快捷。
实战案例
为了展示HBase在人工智能场景下的应用,我们以某半导体显示企业为例。该公司面板特征管理团队需要设计一个能够快速查找面板特征系统。在这个过程中,他们发现现有的MySQL+OSS方案存在两个主要问题:
MySQL表无法有效地管理大量行数,每个组可能包含从1到10000张面板,这导致查询时需要频繁访问MySQL和OSS。
MySQL不支持动态列,因此同一组内面的所有面板必须分散保存在不同的行中。
针对这些挑战,大数据团队决定使用HBASE进行优化。首先,他们认识到这种场景非常适合使用动态列能力,因为每个群组可以包含各种数量的小文件。此外,由于这些小文件是随机读取且具有高度稀疏性,所以MOB(Medium-Sized Object)功能也非常合适,它提供了低延迟、小对象读写的一致性检索能力以及易扩展性的好处。
最后,大数据团队重新设计表结构,将群组ID设置为RowKey,并打开MOB功能。当创建名为“glass”的表时,该属性被启用,如下所示:
create 'glass', {NAME=>'c', IS_MOB=>true, MOB_THRESHOLD=>2048}
这使得该表能够有效地处理小型对象,同时保持良好的查询性能。在实际操作中,只需一次写入即可完成所有操作,无需再次扫描或访问其他资源。这极大地提高了整个查询过程的大规模并发处理能力,并减少了成本开销,对于需要高速访问频率较低但又要求低延迟的小型对象来说尤其有利。此外,在复杂查询场景下,比起直接使用云端对象存储,使用基于HBASE建模的小型对象还能获得10倍以上性能提升。