zl程序教程

您现在的位置是:首页 >  大数据

当前栏目

《Hadoop实战手册》一1.10 在Greenplum外部表中使用HDFS

hadoopHDFS 实战 手册 外部 表中 GreenPlum 1.10
2023-09-11 14:17:44 时间

本节书摘来异步社区《Hadoop实战手册》一书中的第1章,第1.10节,作者: 【美】Jonathan R. Owens , Jon Lentz , Brian Femiano 译者: 傅杰 , 赵磊 , 卢学裕 责编: 杨海玲,更多章节内容可以访问云栖社区“异步社区”公众号查看。

1.10 在Greenplum外部表中使用HDFS

Greenplum是一个并行数据库,数据的存储与查询基于一个或多个PostgreSQL实例。它补充了Hadoop,提供对大数据的实时或准实时访问,它还支持使用HDFS文件作为外部表。外部表是一个处理Greenplum集群之外数据很好的解决方案。由于外部表访问首先要消耗网络带宽,所以与Greenplum集群内的数据相比,它应该存储那些访问相对不频繁的数据。本节将介绍如何创建只读的外部表和可读写的外部表。

准备工作
在本节假定你使用的Hadoop版本为CDH3。

运行一个Greenplum实例,确认它能够访问Hadoop集群。相关信息可以查看http://www.greenplum.com/products/greenplum-database

按照下面的方式配置Greenplum。

gp_hadoop_target_version设置为cdh3u2。 gp_hadoop_home设置为$HADOOP_HOME的完整路径。

在Greenplum集群的每个节点上都需要安装1.6以上(包含1.6)版本的Java。

操作步骤
创建HDFS上weblogs文件的一个外部表:

CREATE EXTERNAL TABLE weblogs( 

 md5 text, 

 url text, 

 request_date date, 

 request_time time, 

 ip inet 

LOCATION (gphdfs:// NAMENODE_HOST : NAMENODE_PORT /data/weblogs/

weblog_ entries.txt) 

FORMAT TEXT (DELIMITER \t);

工作原理
Greenplum本地支持并行地将HDFS上的数据加载到数据库中。当一个查询需要访问表weblog_entries.txt时,该文件会被加载为Greenplum的一个临时表,然后执行对该临时表的查询。等到查询结束以后再将该表丢弃。

更多参考
Greenplum也支持对外部表的写操作。这需要在创建表的时候指定写关键字:

CREATE WRITABLE EXTERNAL TABLE weblogs( 

 md5 text, 

 url text, 

 request_date date, 

 request_time time, 

 ip inet 

LOCATION (gphdfs:// NAMENODE_HOST : NAMENODE_PORT /data/weblogs/

weblog_ entries.txt) 

FORMAT TEXT (DELIMITER \t);

更多的信息可以查看Greenplum管理员手册,见http://media.gpadmin.me/wp-content/uploads/2011/05/GP-4100-AdminGuide.pdf


《Hadoop MapReduce实战手册》一导读 本书目标是帮助读者学会处理大型的复杂数据集。本书虽从简单的例子开始,但仍然可以看到深入的内容。这是一本简单的一站式指南,传授如何完成复杂的事情。它以一种简单而直接的方式呈现了90个攻略,给出了一步步的指导和真实环境的应用示例。
异步社区 异步社区(www.epubit.com)是人民邮电出版社旗下IT专业图书旗舰社区,也是国内领先的IT专业图书社区,致力于优质学习内容的出版和分享,实现了纸书电子书的同步上架,于2015年8月上线运营。公众号【异步图书】,每日赠送异步新书。