猪和python(pig and python)

Python 真是无处不在国内.

pig 0.9后python作为嵌入式语音,采用Jython解释器使用python2.5特征,此接口是最上层org.apache.pig.scripting.Pig
首先python脚本将一些Pig Latin译。然后将在Python中定义的变量传递给它,最后运行它。

1) Pig.compile 或compilefromFile 对代码进行预编译
2)Bind 方法将控制流中的变量绑定到Pig Latin脚本中的变量,会返回一个BoundScript对象
3)针对BoundScript对象,能够调用runSingle方法来运行他,返回一个pigStat对象,假设在绑定过程中pig对象绑定到了一组包括參数的map,就要调用run方法了,相同返回一个pigStats对象。

用户编写的UDF的一个单独的实例会被构建并运行在每一个map或reduce的任务中,构造器參数是一种传递信息给用户UDF的方式。

python与pig的类型相应

int number
long number
float number
double number
chararray string
bytearray string
map dictionary
tuple tuple
bag list oftuples

pig 的载入函数是基于hadoop的InputFormat创建的,基类是loadFunc,LoadFunc 的默认实现是针对HDFS的,pig 提供了prepareToRead 方法为载入函数提供了初始化自己的一个途径。一旦用户的载入函数实现了getSchema 方法,那么Load语句就不再须要定义他们的模式了。

同理。存储函数式基于Hadoop的OutoutFormat构建的。接受的是Pig的Tuple,然后依据输出个好事创建健-值对后写入存储中,基类是storeFunc,Pig会在每一个map或reduce 任务调用存储函数prepareToWrite办法。PutNext它是存储功能的核心方法。

版权声明:本文博主原创文章。博客,未经同意不得转载。

时间: 2024-12-28 15:28:30

猪和python(pig and python)的相关文章

猪与蟒(pig and python)

pig 0.9以后将python作为嵌入式支持语音,使用Jython解释器利用python2.5的功能,这个接口的最上层是org.apache.pig.scripting.Pig首先python脚本会对一段Pig Latin脚本进行编译,然后将在Python中定义的变量传递给它,最后执行它. 1) Pig.compile 或compilefromFile 对代码进行预编译2)Bind 方法将控制流中的变量绑定到Pig Latin脚本中的变量,会返回一个BoundScript对象3)针对Bound

【Python系列】Python自动发邮件脚本

缘起 这段时间给朋友搞了个群发邮件的脚本,为了防止进入垃圾邮件,做了很多工作,刚搞完,垃圾邮件进入率50%,觉得还不错,如果要将垃圾邮件的进入率再调低,估计就要花钱买主机了,想想也就算了,先发一个月,看看效果再拓展吧. 脚本主要是通过Python写的,调的smtplib库,这些是基础,大家在网上一搜一大堆,今天主要给大家讲解下如何避免进入垃圾邮件系统,以及整个系统搭建时的一些思想.可能刚搞Python不久,有很多可能是错误的写法望大家提出来哈~ 配置 CentOS7.0系统 Python 3.4

Python 一、Python基础

一.编程语言简介 1.高级语言与低级语言 一般来讲高级语言和低级语言有一下特点: 高级语言:实现效率高,执行效率低,对硬件的可控性弱,目标代码大,可维护性好,可移植性好 低级语言:实现效率低,执行效率高,对硬件的可控性强,目标代码小,可维护性差,可移植性差 我们都知道CPU运行的是二进制指令,所有的语言编写的程序最终都要翻译成二进制代码,但是为什么实现会有以上众多差异呢?下面以C语言为高级语言代表,汇编语言为低级语言代表来解释一下. 越低级的语言,形式上越接近机器指令,汇编语言就是与机器指令一一

Python学习之--python概要

1 Python的优点 Python语言类库齐全,语法简洁,而且在linux上自带安装,在处理大数据以及自动化方面有其独有的特点.2 Python的解释器 Python解释器用来解释python代码,比较流行的python解释器有:   CPython, 使用C解释器,将python源码解释为.pyc文件(字节码)   JPython, 使用java解释器,将python源码解释为java识别的字节码   IronPython, 使用c#解释器解释为c#识别的字节码   PyPy,解释器解释为字

Python总结:Python基础(一)

Python之路[第二篇]:Python基础(一) 入门知识拾遗 一.作用域 对于变量的作用域,执行声明并在内存中存在,该变量就可以在下面的代码中使用. 1 2 3 if 1==1:     name = 'wupeiqi' print  name 下面的结论对吗? 外层变量,可以被内层变量使用 内层变量,无法被外层变量使用 二.三元运算 1 result = 值1 if 条件 else 值2 如果条件为真:result = 值1如果条件为假:result = 值2 三.进制 二进制,01 八进

搭建Python环境与Python文件类型

Linux环境 - 大多Linux发行版均默认安装了Python环境. - 输入Python可启动Python交互模式 - 程序编辑推荐使用VIM Windows环境 - 可下载安装Python的msi包直接安装 - 自带Python的GUI开发环境 - 开发工具很多 # Linux交互界面 [[email protected] ~]# python Python 2.6.6 (r266:84292, Jan 22 2014, 09:37:14) [GCC 4.4.7 20120313 (Red

【Python 1】Python核心编程(第二版)导读

第一章 欢迎来到Python世界 什么是Python Python的起源 Python的特点 下载Python 安装Python 运行Python Python文档 比较Python(与其它语言的比较) 其它实现 第二章 Python起步 介绍 输入/输出 注释 操作符 变量与赋值 Python类型 缩进 循环与条件 文件 错误 函数 类 模块 第三章 Python基础 语句和语法 变量赋值 标识符和关键字 基本风格指南 内存管理 第一个Python程序 第四章 Python对象 Python对

Python 构造函数、 Python 析构函数、Python 垃圾回收机制

构造函数与析构函数 构造函数: 用于初始化类的内容部状态,Python提供的构造函数式 __init__(); __init__()方法是可选的,如果不提供,Python 会给出默认的__init__方法 一般数据的获取需要定义的get和set方法 析构函数: 用于释放对象占用的资源,Python 提供的析构函数式__del__(); __del__()也是可选的,如果不提供,则Python 会在后台提供默认析构函数 如果要显式的调用析构函数,可以使用del关键字,方式如下: del对象名 垃圾

python大法之一-python是什么,及安装

个人独立博客http://www.xbman.cn 出处:http://www.xbman.cn/article/2 常言说得好会一技走遍天下.今天开始记录分享一下python的相关知识,算是对自己学习的总结. 第一篇 python是什么,及python安装 Python是一种计算机程序设计语言.运维的童鞋们要知道这个和shell可不一样(魏先森被面试的经常问到这个问题.)python是正统的编程语言,和java,php一样.由荷兰人Guido van Rossum(龟叔)于1989年发明,第一