`
zhangbaoming815
  • 浏览: 149921 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
阅读更多

Writing Python UDFs

 

1.write python script:

@outputSchema("word:chararray")
def helloworld():  
  return 'Hello, World'

@outputSchema("word:chararray,num:long")
def complex(word):
  return str(word),len(word)

@outputSchemaFunction("squareSchema")
def square(num):
  return ((num)*(num))

@schemaFunction("squareSchema")
def squareSchema(input):
  return input

# No decorator - bytearray
def concat(str):
  return str+str
 

 

2.register python script as myFcuns:

register './Desktop/test.py' using jython as myFuncs;

 

3.use the python script:

python_records =foreach records generate myFuncs.helloworld(),myFuncs.square(4),myFuncs.complex('data');

 

4.check data:

dump python_records;

 

5.analyse:

outputSchema – 定义一种 pig 能解析的自定义函数模式

outputFunctionSchema – 定义可传入参数的函数,根据用户传入的参数觉得返回的值,这个需要函数能接受泛型参数

schemaFunction – 这种函数不会在 pig 中注册

 

6. 实际应用,使用 square 函数:

python_records =foreach records generate name,myFuncs.square(age),sex;

分享到:
评论

相关推荐

    pig-game-python:亲猪游戏

    首先,Python是广泛使用的高级编程语言,以其简洁易读的语法和丰富的库资源而受到开发者喜爱。在"亲猪游戏"中,Python的`random`模块被用来生成骰子的随机数值,模拟实际游戏中的不确定因素。例如,`random.randint...

    SpringCloud集成Python-1017

    而Python,作为一门广泛使用的编程语言,尤其在Web服务领域有着强大的影响力。本项目"SpringCloud集成Python-1017"展示了如何将这两者结合,实现跨语言的微服务协作。 首先,SpringCloud Finchley.SR1是2018年的一...

    pig源码0.15版

    这包括了对Java和Python UDF的支持,以及如何将UDF集成到Pig Latin语句中进行数据转换和处理。 3. **数据类型和Schema**: 在Pig 0.15中,数据类型和Schema系统是数据处理的基础。源码揭示了如何定义、验证和操作...

    pig-0.7.0.tar.gz

    用户可以通过编写Java代码或使用其他语言(如Python或JavaScript)来扩展Pig的功能。 4. **性能提升**:通过优化执行引擎,Pig 0.7.0在处理大数据时的性能得到了显著提升,尤其是在处理大量数据的Join操作时。 5. ...

    pig官方基础教程

    此外,Pig中的大小写使用也有特别的含义,大写通常代表系统提供的元素,而小写代表用户提供的元素。 接着,教程会罗列Pig的保留关键字。保留关键字是一些在Pig中具有特定意义的词,不能用作变量名或函数名。例如,...

    buy_pig_plan_python-master.zip

    "买猪计划"是一个使用Python编写的项目,其主要目标可能是为了实现自动化或者数据分析相关的任务。根据提供的文件列表,我们可以推测这个项目包含以下几个关键部分: 1. **.gitignore**: 这是一个版本控制系统Git的...

    基于Python的Peppa Pig面部关键点检测设计源码

    该项目是一款基于Python的Peppa Pig面部关键点检测设计源码,包含50个文件,涵盖34个Python源文件、3个GIF动画文件、2个Markdown文件、2个ONNX模型文件、1个Git忽略文件、1个CFF字体文件、1个LICENSE许可文件、1个...

    python包管理工具pip-6.0.7

    在Python中,"包"是一个组织代码的方式,它允许我们将相关的模块(也就是Python文件)放在一起,形成一个可重用的代码库。这些包通过Python的import语句可以在不同的项目中被导入和使用。 pip作为Python的包管理器...

    Programming Pig(pig编程).pdf

    此外,Pig还支持用户自定义函数(UDF),这使得Pig可以扩展使用Java、Python、JavaScript等其他语言编写的函数,从而执行更复杂的数据处理任务。这为Pig提供了极大的灵活性和强大的处理能力。 最后,由于Pig与...

    如何将python文件打包成exe文件

    首先,我们需要将需要打包的 Python 文件放在系统用户下面,然后在 cmd 中使用命令 pyinstaller -F 文件名.py。例如,如果我们的 Python 文件名为 pig_peppa.py,可以使用 pyinstaller -F pig_peppa.py。如果是 GUI ...

    python hadoop

    通过内嵌JPython,可以在Pig脚本中直接调用Python代码,实现如PageRank等复杂的算法。 5. **JPython MapReduce框架Pydoop等**:Pydoop是一个Python接口,用于Hadoop的MapReduce,它允许开发者使用Python编写...

    使用Python的HadoopHadoop with Python

    通过这本简明的书,您将学习如何将Python与Hadoop分布式文件系统(HDFS),MapReduce,Apache Pig平台和Pig Latin脚本以及Apache Spark集群计算框架一起使用。

    pig-0.9.2.tar.gz

    1. **解压**:首先,你需要在Linux终端中使用`tar`命令解压文件。命令可能是`tar -zxvf pig-0.9.2.tar.gz`,这会创建一个名为`pig-0.9.2`的目录,包含所有解压后的文件。 2. **进入目录**:解压后,通过`cd pig-...

    pig.exe,python画小猪佩奇

    用python画的小猪佩奇,然后打包成.exe文件,可以直接在无python环境的电脑中运行。

    Programming Pig Dataflow Scripting with Hadoop 2nd EditionPDF

    书中可能会讲解如何创建Java或Python的UDF,以及如何在Pig脚本中调用它们。 8. **案例研究与实战项目**:为了巩固理论知识,书中可能会包含实际案例,让读者学习如何解决特定的数据处理问题,并提供完整的Pig脚本...

    使用 python 操作大数据的各种组件.zip

    本教程将探讨如何使用Python操作大数据的各种组件,帮助你更好地理解和应用这些技术。 1. **Pandas**: Pandas是Python中用于数据分析的核心库,提供DataFrame数据结构,可以方便地进行数据清洗、转换和分析。它还...

    Python实现Pig Latin小游戏实例代码

    本文研究的主要是Python实现pig Latin小游戏的简单代码,具体介绍如下。 Pig Latin是一个语言游戏。 步骤: 1.让用户输入一个英文单词 2.确保用户输入一个有效单词 3.将单词转换成Pig Latin 4.显示转换结果 一、...

Global site tag (gtag.js) - Google Analytics