greenlum数据库笔记.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
greenlum数据库笔记

greenplum数据库笔记 greenplum笔记 一般地,greenplum的每个segment节点对应一个网口NIC,一个物理CPU,一个磁盘控制器,以便同机器的多个segment之间互不影响。 greenplum的备份,提供了gp_dump做并行备份,master和segment节点同时执行备份操作,另外gp_crondump会定期执行备份操作; 支持PostgreSQL的pg_dump和pg_dumpall命令,但是其将所有的数据写成一个文件保存在master上,使用受限。 (在白皮书的第21章节备份与恢复有详细描述) 在master节点的$MASTER_DATA_DIRECTORY目录下,pg_hba.conf文件保存了主机远程访问策略;postgresql.conf文件配置了数据库运行的参数。 greenplum数据库的启动gpstart,关闭gpstop,重启gpstop -r,强制关闭gpstop -f ,修改参数后不重启DB加载参数gpstop -u ,仅启动mastergpstart -m; 在master节点修改postgresql.conf文件,想所有segment同时修改postgresql.conf文件的操作是: gpssh -f ~/seg_hosts echo parameter=value | cat - /gpdata/p*/*/postgresql.conf -------------------------------------------------------------------------------------------------------------- 用greenplum实现mapreduce: INPUT部分将输入拆分成(key,value)对儿,送给MAP部分;MAP部分将其生成新的(key,output_list)对儿, 然后送给reduce部分;由reduce部分安照key分组运算得到结果。 比如INPUT的输入时text文件,输出是(NULL,行),MAP的输出是(单词,个数), REDUCE的输出是(单词,汇总个数)。 输入的数据可以是多种文件格式的文件以及数据库中的数据,MAP和REDUCE部分的函数自定义, REDUCE也可以用内置的函数,OUTPUT可以写入数据库、标准输出或文件。注意,在编程时,INPUT的结果只有列的概念,而没有key的概念, 以行为单位发送给每个MAP,在MAP中定义的输出的key才是真正的key,REDUCE正是靠这个key执行操作的, 当然REDUCE也可以声明KEYS都包括哪些入参。 详细的,INPUT函数的源的关键词可以是FILE/GPFDIST/TABLE/QUERY/EXEC,如果没指定COLUMNS,那么默认认为整个文件只有一列。 MAP函数的输入和输出都是key/value形式的text类型,除非指定PARAMETERS和RETURNS声明,LANGUAGE声明了用perl还是python语言, 如果一次MAP函数会有多个返回值就用yield,否则要声明MODE为SINGLE, 返回注意yield的用法(执行到此返回,下次执行函数时从yield的下一句开始执行,可用来循环追加数据列表)。 另外,gpmapreduce命令可以通过-k参数指定key值,作为map的入参key。 REDUCE有一些内置函数,比如IDENTITY/SUM/AVG/COUNT/MIN/MAX,这些内置函数的入参名称是key和value。 REDUCE实现与MAP实现相比略微复杂,因为它需要考虑将多条返回记录合并, 因此需要在REDUCE函数里面定义一次迁移(TRANSITION)函数,还需要定义FINALIZE函数,初始化参数INITIALIZE, 以及可选的合并函数CONSOLIDATE。每个REDUCE的输入对应一个迁移,为了记录当前迁移的位置,迁移函数需要定义变量state, 由INITIALIZE赋初值,每次TRANSITION的返回值就是下一次TRANSITION的state输入,进行按key分类的每个key下所有输入的迁移, 当最后一条输入在迁移中处理完后,将state值传递给FINALIZE函数,触发FINALIZE工作,返回多个结果。 REDUCE的参数一般还是key/value,而传给迁移函数的参数一般是state/value。 可选函数CONSOLIDATE的作用是将多个state合并为一个。REDUCE的输出不仅可以是标准输出,还可以是数据库表TABLE或文件FILE。 要是往数

文档评论(0)

word.ppt文档 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档