数据集成是数据仓库建设中的重要一环,把需要处理的历史数据、实时数据集中到分布式分析型数据库中,通常这个过程是持续不断的,并且它的性能会直接影响到数据库系统的整体性能。
1、数据加载
GBase 8a MPP Cluster数据加载是通过sql语句发送加载任务,直接传输底层数据文件实现的。所以使用方便且性能高。用于同构或异构数据库导出的数据文件高效输入GBase 8a集群库内。
GBase 8a集群的加载原理见图1所示。
图1 GBase 8a集群的加载原理
GBase 8a MPP Cluster需加载的数据文件可以是平文本、avro/orc、压缩格式(gzip、snnapy、lzo)中的任意格式,建议放在独立的服务器上作数据源,GBase 8a从数据源拉取数据,数据源可以根据需要选择配置kafka、hdfs、ftp、sftp、http、S3中的一种或多种服务,以及GBase 专用的gbfs服务。
以上服务加载性能无显著影响和差别。可根据服务的安全性、已有环境的便利性和复用性选择合适的数据源服务:
• kafka和hdfs为集群,规模较大,数据文件分片存储且有备份,支持kerberos认证,数据文件安全性较高;
• ftp、sftp、http服务搭建简单,sftp比ftp更加安全;
• S3一般见于云环境;
• gbfs是以安全为前提考虑,不使用公共服务,GBase提供的专用服务。
具体如图2所示。
图2 加载功能概览
2、数据导出
GBase 8a MPP Cluster的数据需要发给应用或者迁往他处时,可以使用数据导出功能。导出功能与加载功能对应,功能支持情况如图3所示,可以根据业务需要选择合适的导出模式。
图3 导出功能概览
3、流式、实时数据加载入库方案
在网银、手机银行广泛使用的今天,银行账务、信贷等业务的数据实时性监控和OLAP分析等需求也成为必须的基本需求,实时数据仓库能够实时地处理和分析数据,使得数据仓库中的数据是最新的、最准确的,并且可以实时响应用户的查询和分析需求,与传统的数据仓库相比,实时数据仓库更加注重数据的实时性和对业务的实时响应能力。
流式数据包含实时的需求,流式数据指数据源源不断的流进,如用户行为数据流、机器数据流。流式数据需要实时入库处理,如果处理的效率低于数据流入的速度,就会产生数据积压,使系统性能下降等问题。
GBase 8a 产品提供了实时、流式数据的应用方案:
实时数仓构建方案
GBase 8a产品的实时数仓应用解决方案如图4所示,使用自研ETL工具或者第三方ETL工具(开源/商用)搭建实时以及流式通道。
图4 GBase 8a实时数仓部署架构图
可以根据实时性要求选择不同的ETL工具。GBase 8a 产品支持的ETL工具见表1所示。
表1 ETL工具分类表
对于实时、流式数据的读取,GBase 8a MPP Cluster提供的两种工具具体介绍如下:
1)GBase 8a集群内置的Kafka Consumer,用于实时接收来自kafka集群的数据;
2)GBLoad Server工具,用于接收API(jdbc)传来的流式数据。
Kafka Consumer 消费数据实时入库
图5 Kafka Consumer功能概览
GBLoad_Server工具流式数据攒批入库
图6 GBLoad_Server功能概览
4、DBLINK跨集群数据访问
GBase 8a集群的应用程序可以通过DBLINK访问外部数据源,如下场景中可以使用DBLINK:
• 同构/异构数据源的数据需使用业务sql抽取到8a集群中;
• 8a集群内数据需使用业务sql推送到其他同构/异构集群;
• 同构/异构数据源的数据需使用业务sql互访及关联运算。
DBLink功能概览如图7所示。
图7 DBLink功能概览
本文系转载,版权归原作者所有,
转载自公众号 GBASE数据库 ,如若侵权请联系我们进行删除!
《行业指标体系白皮书》下载地址:https://www.dtstack.com/resources/1057/?src=bbs
《数据治理行业实践白皮书》下载地址:https://www.dtstack.com/resources/1001/?src=bbs
《数栈V6.0产品白皮书》下载地址:https://www.dtstack.com/resources/1004/?src=bbs
想了解或咨询更多有关袋鼠云大数据产品、行业解决方案、客户案例的朋友,浏览袋鼠云官网:https://www.dtstack.com/?src=bbs
同时,欢迎对大数据开源项目有兴趣的同学加入「袋鼠云开源框架钉钉技术群」,交流最新开源技术信息,群号码:30537511,项目地址:https://github.com/DTStack