工业现场总线在HBase大数据存储中的应用实战物品追踪与管理
随着工业4.0时代的到来,工业互联网和企业的智能化、信息化都将不断推进,传统的工业实时数据库和关系数据库已经难以完全胜任工业大数据的存储,以HBase为代表的NoSQL数据库正在蓬勃发展,其完全分布式特征、高性能、多副本和灵活的动态扩展等特点,使得HBase在工业大数据的存储上拥有强大的优势,打破了流程工业生产中的数据壁垒效应瓶颈,可以促进工业生产水平和生产管理水平提升。本期格物汇,就来给大家介绍HBase数据库及格创东智相关实战案例。
了解HBase
HBase是一个高可靠性、高性能、面向列、可伸缩的大规模分布式存储系统。它利用Hadoop HDFS作为其文件存储系统,并且可以通过MapReduce进行海量数据处理。与Google Bigtable不同,HBase使用Zookeeper作为协同服务,而不是Chubby。
与传统数据库相比,HBASE具备多重优势:1)线性扩展,可以通过增加节点进行支撑;2)数据存储在hdfs上,备份机制健全;3)通过zookeeper协调访问速度快。
HBase实战案例
为了更好地介绍HBase在人工智能场景下的应用,本文以某半导体显示企业为案例,分析了如何利用HBase设计快速查找面板特征系统。
该公司业务场景中有很多面板相关特征数据,每张面板数据约3.2k字节,这些面板又被分成很多组,每个面板特征属于某个组。现有的业务需求主要包括根据组ID查找所有面的以及根据组ID+面板ID查找某个面的具体数据。
原有方案是MySQL+OSS,但由于每个群集包含玻璃数量巨大(1~10000),导致MySQL表中需要大量行来保存相同群集中玻璃对应关系。此外,由于查询过程涉及链式操作,从MySQL读取大量行,再到OSS获取特征,这种查询方式非常耗时(10秒左右)。
HBASE解决方案
针对以上问题,大型团队采用了以下策略:
使用动态列功能支持万亿行百万列。
利用版本控制记录所有修改历史。
引入MOB(Medium-SizedObject)功能适用于小文件(1k~10MB),如图片短视频文档等,有低延迟读写强一致检索能力强易扩展等关键能力。
结合两大查询需求,将群集ID作为Rowkey,在创建表时打开MOB功能:
create 'glass', {NAME=>'c', IS_MOB=>true, MOB_THRESHOLD=>2048}
这样我们就可以用一个名为“glass”的表替代之前三张表,并且能够实现较好的查询效率。此外,由于使用的是对象存储云而非直接使用对象存储,我们能获得更低延迟尤其是在复杂查询场景下性能提升显著,同时成本按流量请求次数计费,更适合高并发吞吐场景,对于访问频率低的情况也有更多优惠。