两个互信集群怎么实时同步两者的hbase数据库中的数据
发布网友
发布时间:2022-04-21 02:09
我来回答
共1个回答
热心网友
时间:2022-04-09 08:14
HBase是一个分布式的存储系统,可以很容易在廉价PC上搭建其大规模存储系统,用于存储海量数据,这使得HBase适合于作为站点数据统计工具的存储系统。
1)对于实时数据的统计,HBase能够提供较低延迟的读写访问,承受高并发的访问请求;而对于历史数据的统计,HBase则可以被视为一个巨大的Key-Value存储系统,用于存储各个网站上历史的访问信息,用于做离线的数据分析与报表生成。
2)对于像PV、UV、IP这样需要求累加计算的操作(求SUM/AVG),由于要对HBase表中相关记录进行扫描求和计算,所以如果被统计站点的数据量很大的话,使用HBase来做可能会保证不了很快的响应速度。也就是说,从前端发出一个查询请求到最终结果的响应,时间会比较长(超过1秒或更长)。对于这个问题,将在第3节进行讨论。
3)对于像站点访客流水信息这样的实时数据展示,则比较适合于使用HBase来做,只要我们设计了合理的key,那么在根据key取单条访问记录时响应速度会很快。
下面是一个使用HBase作为存储系统的结构示意图:
其中,HBase服务端就是指HBase集群,应用程序分别通过入库端与查询端对HBase进行写操作与读操作。
从HBase应用角度来看,可以分为两个不同的方向:
1)第一种方向,将HBase视为一个可靠可用的容量巨大的Key-Value存储系统,使用HBase的作用很简单,就是将其作为一个黑匣子来使用,按照之前设计好的表结构来存储具有稀疏结构的数据。基于这种思路,如果HBase无法完全满足业务的需求,就在应用程序层次做一些设计或者优化工作,以最终满足业务的需求。
2)第二种方向,由于HBase是开源的,所以可以对HBase本身机制进行完善与扩展,最终形成一个能够满足业务需要的稳定可用的HBase版本。追问这怎么弄啊?明确点儿呗!