探索BI系统搭建的必要性与AI技术的应用潜力
765
2022-05-29
背景
Hadoop的诞生是划时代的数据变革,但关系型数据库时代的存留也为Hadoop真正占领数据库领域埋下了许多的障碍。对SQL(尤其是PL/SQL)的支持一直是Hadoop大数据平台在替代旧数据时代亟待解决的问题。Hadoop对SQL数据库的支持度一直是企业用户最关心的诉求点之一,也是他们选择的Hadoop平台的重要标准。
Hadoop开源技术具有高扩展性,实际生产环境已经可以支持部署几千个 物理节点,提供PB级数据分析能力,支持运行在通用廉价的x86 Linux服 务器上,数据存储在内置盘上,且无商业软件license费用;Hadoop通过技术能力(sql支持,MR内存计算,MPP)的演进以及众多 非传统关系型数据库厂商的支持,正在从最初的只处理低价值低密度数 据的批处理型任务,向中等价值数据的分析处理任务演进。
融合
大数据生态与MPPDB传统数据库的融合方案有以下两种:
(1)远程查询方案,以关系型数据库作为集成节点,将查询发送给Hadoop,并接收Hadoop的计算结果,查询分析在Hadoop平台完成,采用这种方式的厂商有 Oracle,Teradata,SQL Server等;
(2)查询引擎直接访问HDFS数据方案,分析由传统数据库引擎完成,代表产品有PIVOTAL HAWQ,IBM BigSQL 3.0等。
出于性能考虑GaussDB(DWS)选择的是第二种方案。CN将任务分解下发至各个DN,以实现节点间并行,使得调度计算节点更靠近数据存储节点。
特点
支持多DN并发查询;支持和本地多表join;支持analyze收集统计信息;格式支持丰富,易扩展。
使用
用户通过建立外部服务器Server(外部服务器是存储HDFS集群信息、OBS服务器信息或其他同构集群信息的载体)
-- 创建HDFS_Server。 CREATE hdfs_server FOREIGN DATA WRAPPER HDFS_FDW OPTIONS ( address '10.10.0.100:25000,10.10.0.101:25000', hdfscfgpath '/opt/hadoop_client/HDFS/hadoop/etc/hadoop', type'HDFS' );
创建Foreign Table在GaussDB(DWS)数据库内部定义对应的HDFS/OBS数据源上结构化数据表的结构。
-- 建立不包含分区列的HDFS外表,表关联的HDFS server为hdfs_server,表region对应的HDFS服务器上的文件格式为‘orc’,在HDFS文件系统上对应的文件目录为'/user/hive/warehouse/mppdb.db/region_orc11_64stripe/'。 CREATE FOREIGN TABLE region ( R_REGIONKEY INT4, R_NAME TEXT, R_COMMENT TEXT)SERVER hdfs_serverOPTIONS( FORMAT 'orc', encoding 'utf8', FOLDERNAME '/user/hive/warehouse/mppdb.db/region_orc11_64stripe/' )DISTRIBUTE BY roundrobin;
查看外表
-- 查看外表。 SELECT * FROM pg_foreign_table WHERE ftrelid='region'::regclass; ftrelid | ftserver | ftwriteonly | ftoptions ---------+----------+-------------+------------------------------------------------------------------------------ 16510 | 16509 | f | {format=orc,foldername=/user/hive/warehouse/mppdb.db/region_orc11_64stripe/} (1 row)
本章简单介绍了GaussDB(DWS)通过外表访问HDFS/OBS上的文件,下一篇中将介绍SQL On Hadoop系统分类,以及业内主流的SQL On Hadoop系统,如HIve、Impala、HAWQ等。
数据仓库服务 GaussDB(DWS) Gauss AP EI企业智能
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。