HTAP数据库系列 | 实时流计算场景下如何选择数据库?

随着大数据的快速发展,业务场景变得越来越复杂,以往以离线式的批处理框架 MapReduce 已经不能满足业务需要,大量的场景需要实时的数据处理结果来进行统计、分析、决策 ,结果大都以报表或者数据可视化系统来呈现,期望能够快速的分析数据的价值,数据实时处理能提供更快的响应速度,从数据中挖掘有价值的信息。

通常在一个典型的实时计算框架中包含三大部分,由输入流、实时计算引擎、输出存储组成,在计算框架的选择上,各有千秋,可以通过大数据平台组件的优化组合来搭建一个实时计算框架,经过实时计算结果的可以选择不同方式落地数据。下图是大数据环境下的较为典型的流计算应用架构。
HTAP数据库系列 | 实时流计算场景下如何选择数据库?_第1张图片
在这个应用架构中,不难看出经过Spark Streaming 计算后的数据落地可以流向HDFS、 Dadabase 、也可以流向Dashboards 等。

这些生态圈数据存储组件中,可以包括HDFS、非结构化的数据库HBASE、非关系型数据库HIVE、关系型数据库MYSQL 、或者内存数据库Redis等,参考如下所示:
HTAP数据库系列 | 实时流计算场景下如何选择数据库?_第2张图片
那么究竟如何通过上述组合来选择合适的落地数据库呢?
先让我们来简单回顾下这些存储数据库各自的优势和缺陷,参考如下所示:
HTAP数据库系列 | 实时流计算场景下如何选择数据库?_第3张图片
从这张对比图不难看出这些基于存储的数据库各有其自己的优势和缺陷,Hbase 属于 NO SQL ,虽然适合于高并发查询,但它不直接支持SQL 查询,HIVE 数据库 更适合批处理大量数据,无法实现联机事务处理(OLTP),MYSQL 属于传统的 RDS, 其系统的扩展性较差,不适合海量数据大批量处理,Redis 属于内存数据库系统, 过分依赖于内存计算, 系统的扩展性和安全性较差。

那么是否有一款数据库既能支持离线分析处理 (OLAP),又能支持在线实时访问(OLTP)?

答案是确定的,存在,就是HTAP数据库

它能很好地解决这些问题,并且帮助实现实时计算数据快速落地,并很好地对接前端进行的可视化展示,提供业务人员决策分析等。

天云依托金融行业多年的实施经验成功研发HUBBLE(HTAP) 数据库,该数据库是基于大数据Hadoop 平台环境开发的,它与生态圈结合紧密,通过生态圈Sqoop、Flume、Kafka、Hive等组件,数据可以非常方便的录入到HUBBLE中,同时HUBBLE的数据也可以通过MR、Spark等批处理作业进行分析计算存储等。
HTAP数据库系列 | 实时流计算场景下如何选择数据库?_第4张图片
以下是某商业银行实时流水交易业务可视化展示项目的案例分享,该项目中使用了Kafka 和SPARK Streaming流式处理框架,在该框架中成功地引入了天云数据自主研发的HTAP HUBBLE 数据库引擎, 在大数据环境下通过和Kafka,SPARK Streaming 等组件的深度融合,成功地实现了对互联网用户交易报文数据的实时采集,经过一系列的处理之后,最终有HTAP 数据库提供数据可视化展示, 达到了预期功能目标。

Hubble 数据据接入流式计算框架数据处理流程:
HTAP数据库系列 | 实时流计算场景下如何选择数据库?_第5张图片
Hubble始终把性能稳定放在第一位的,同时将使HUBBLE在流式处理功能方面为用户提供更多更好的的体验,坚信能给用户提供更好的数据库服务。

你可能感兴趣的:(数据库)