gpmapreduce
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规范。