gpmapreduce
按照YAML规范文档中的定义运行Greenplum的MapReduce作业。
注意: gpmapreduce 已被弃用。gpmapreduce数据库的下一个主版本(6.x)中将删除gpmapreduce和相关的YAML规范。请转而使用其他查询格式,例如SQL或过程语言扩展。
概要
gpmapreduce -f yaml_file [dbname [username]]
[-k name=value | --key name=value]
[-h hostname | --host hostname] [-p port| --port port]
[-U username | --username username] [-W] [-v]
gpmapreduce -x | --explain
gpmapreduce -X | --explain-analyze
gpmapreduce -V | --version
gpmapreduce -h | --help
先决条件
在运行此程序之前,需要执行以下操作:
- 用户必须在YAML文件中定义用户的MapReduce作业。有关Greenplum MapReduce规范的信息,请参阅Greenplum数据库参考指南。
- 用户必须是Greenplum数据库超级用户才能运行使用不可信Perl或Python编写的MapReduce作业。
- 用户必须是Greenplum数据库超级用户才能运行带有EXEC和FILE输入的MapReduce作业。
- 用户必须是Greenplum数据库超级用户才能运行带有GPFDIST输入的MapReduce作业,除非用户具有适当的权限。有关更多信息,请参阅Greenplum数据库参考指南。
描述
MapReduce是由Google开发的用于在商用服务器阵列上处理和生成大型数据集的编程模型。Greenplum MapReduce允许熟悉MapReduce范式的编程人员编写map和reduce函数,并将它们提交给Greenplum数据库并行引擎处理。
为了使Greenplum能够处理MapReduce函数,需要在YAML文档中定义函数,然后将其传递到Greenplum MapReduce程序gpmapreduce,以供Greenplum数据库并行引擎执行。Greenplum系统负责分布输入数据、在一组机器上执行程序、处理机器故障以及管理所需的机器间通信。
选项
-f yaml_file
必须。包含Greenplum MapReduce作业定义的YAML文件。请参阅Greenplum数据库参考指南。
-? | —help
显示帮助,然后退出。
-V | —version
显示版本信息,然后退出。
-v | —verbose
显示详细输出。
-x | —explain
不运行MapReduce作业,而是生成解释计划。
-X | —explain-analyze
运行MapReduce作业并生成解释 - 分析计划。
-k | —keyname=value
设置一个YAML变量。需要一个数值。如果未指定变量名称,则默认为“key”。
连接选项
-h host | —host host
指定运行Greenplum的Master数据库服务器的机器的主机名。 如果未指定,则从环境变量PGHOST读取或默认为localhost。
-p port | —port port
指定Greenplum的Master数据库服务器正在侦听连接的TCP端口。 如果未指定,则从环境变量PGPORT读取或默认为5432。
-U username | —username username
要连接的数据库角色名称。如果未指定,则从环境变量PGUSER读取或默认为当前系统用户名。
-W | —password
强制口令提示。
示例
运行my_yaml.txt中定义的MapReduce作业,并连接到数据库mydatabase:
gpmapreduce -f my_yaml.txt mydatabase
另见
Greenplum数据库参考指南中的Greenplum MapReduce规范。