`
jewel0516
  • 浏览: 12310 次
  • 性别: Icon_minigender_2
  • 来自: 北京
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

MaxCompute Studio使用心得系列6——一个工具完成整个Python UDF开发

 
阅读更多

2017/12/20 北京云栖大会上阿里云MaxCompute发布了最新的功能Python UDF,万众期待的功能终于支持啦,我怎么能不一试为快,今天就分享如何通过Studio进行Python udf开发。

前置条件

了解到,虽然功能发布,不过还在公测阶段,如果想要使用,还得申请开通:https://page.aliyun.com/form/odps_py/pc/index.htm。这里我就不介绍申请开通具体流程了。

环境准备

MaxCompute Studio支持Python UDF开发,前提需要安装python, pyodps和idea的python插件。

  1. 安装Python:可以Google或者百度搜索下如何安装。
  2. 安装pyodps:可以参考python sdk文档的安装步骤。即,在 Python 2.6 以上(包括 Python 3),系统安装 pip 后,只需运行下 pip install pyodps,PyODPS 的相关依赖便会自动安装。
  3. Intellij IDEA中安装Python插件。搜索Python Community Edition插件并安装
    image
  4. 配置studio module对python的依赖。

    • File -> Project structure,添加python sdk:
      image
    • File -> Project structure,添加python facets:
      image
    • File -> Project structure,配置module依赖python facets:
      image

开发Python UDF

环境都准备好后,既可在对应依赖的module里创建进行python udf开发。

新建python脚本。

右键 new | MaxCompute Python,弹框里输入脚本名称,选择类型为python udf:

image

生成的模板已自动填充框架代码,只需要编写UDF的入参出参,以及函数逻辑:
image

本地调试

代码开发好后,可以在Studio中进行本地调试。Studio支持下载表的部分sample数据到本地运行,进行debug,步骤如下:

  1. 右键python udf类,点击”运行”菜单,弹出run configuration对话框。UDF|UDAF|UDTF一般作用于select子句中表的某些列,此处需配置MaxCompute project,table和column(元数据来源于project explorer窗口和warehouse下的example项目):
    image
  2. 点击OK后,通过tunnel自动下载指定表的sample数据到本地warehouse目录(若之前已下载过,则不会再次重复下载,否则利用tunnel服务下载数据。默认下载100条,如需更多数据测试,可自行使用console的tunnel命令或者studio的表下载功能)。下载完成后,可以在warehouse目录看到下载的sample数据。这里用户也可以使用warehouse里的数据进行调试,具体可参考java udf开发中的关于本地运行的warehouse目录”部分)。
    image
  3. 然后本地运行框架会根据指定的列,获取data文件里指定列的数据,调用UDF本地运行。
    image

注册发布Python UDF

  1. 代码调试好后,将python脚本添加为MaxCompute的Resource:
    image

注意此处选择的MaxCompute project必须是已经申请开通python udf的project。

  1. 注册python 函数:
    image
  2. 在sql脚本中编辑MaxCompute sql试用python udf:
    image

原文地址:http://click.aliyun.com/m/40729/

分享到:
评论

相关推荐

    Maxcompute UDF函手动打包以及注册.doc

    Maxcompute UDF 函数打包和注册详解 在大数据处理中,Maxcompute UDF 函数是非常重要的一部分,它...这些知识点对开发者来说非常重要,因为它们能够帮助开发者更好地使用Maxcompute UDF 函数,提高开发效率和质量。

    MaxCompute大数据生态集成和开发工具.pdf

    总而言之,MaxCompute 2.0构建了一个开放且全面的大数据生态,它与各种开源工具和语言的深度集成,以及强大的开发工具支持,使其成为企业级大数据处理的优选平台。无论是在数据迁移、分析还是开发效率上,MaxCompute...

    利用VC++ UDF Studio编译调试UDF简介.pdf

    利用VC++ UDF Studio编译调试UDF简介 在本文中,我们将介绍如何使用VC++ UDF Studio编译调试UDF。UDF(User Defined Function...VC++ UDF Studio是一款非常有用的工具,可以大大简化UDF的编译调试过程,提高开发效率。

    MaxCompute开发利器Studio薛明.pdf

    主要用于MaxCompute平台的开发和使用,它为开发者提供了一个集数据管理、SQL开发、UDF(User-Defined Function,用户自定义函数)开发等多功能于一体的开发工具。以下是对MaxComputeStudio相关知识点的详细解读: 1...

    python_fluent冷凝udf_fluent_fluentudf_fluent冷凝_udf_

    在实际操作中,"u=2755159330,1381860386&fm=26&gp=0.jpg"可能是一个示例的截图,展示了UDF代码或模拟结果。而"新建文本文档.txt"可能包含了Python UDF的源代码或相关说明。 总的来说,Python Fluent UDF为FLUENT...

    Fluent udf 向导for Visual Studio

    本工具是集新建,编写,编译UDF工程于一身的Visual Studio工具 功能如下:(支持最新的12.1.2和稳定的6.3.26两个版本) 1.在VS2005或2008中编写、调试UDF,便于查找错误。 2.用Fluent编译UDF,经常出现“找不到文件”...

    fluent UDF手册-工具.zip_fluent_udf_udf 手册_udf手册

    在“第6章.doc”中,可能详细介绍了UDF在实际问题中的应用,例如如何创建一个自定义的湍流模型或者实现特定的源项。这部分内容可能涵盖了以下知识点: 1. **自定义源项**:UDF可用于添加新的源项,比如化学反应源项...

    万台集群性能优化方法——MaxCompute性能优化实践.pdf

    MaxCompute,原名ODPS,是阿里巴巴集团及阿里云的核心大数据计算服务,它是一个超大规模、低成本、高并发的分布式计算平台。此平台主要负责99%的数据存储和95%的计算任务,支撑了阿里巴巴内部包括阿里妈妈、天猫、...

    修改udf,vc++udf 安装包。

    总的来说,VC++ UDF Studio 2022 R1 SP5 学术版为C++开发者提供了一个集成的环境,用于开发、测试和优化UDF,尤其适合教育和研究领域。通过深入理解和熟练运用这个工具,开发者能够更高效地实现UDF,提升软件的功能...

    udf使用心得,吐血推荐

    本文将深入探讨UDF的使用心得,分享在实际应用中的经验与技巧。 1. **UDF的基本概念** - UDF分为两种类型:内联表值函数(Inline Table-Valued Function, ITVF)和标量值函数(Scalar-Valued Function, SVF)。...

    Hive UDF开发

    例如,下面是一个简单的Hello World UDF示例: ```java package udf; import org.apache.hadoop.hive.ql.exec.UDF; public class HelloUDF extends UDF { public String evaluate(String str) { try { return ...

    阿里云可用python udf 第三方jieba包 已编译whl 并修改为zip后缀和前缀名

    阿里云可用python udf 第三方jieba包 已编译whl 并修改为zip后缀和前缀名。 省去编译时间 def __init__(self): import sys reload(sys) sys.setdefaultencoding('utf-8') sys.path.insert(0, 'work/cp37-cp37m-...

    NX5.0(C#)二次开发--UDF操作

    UDF是UG NX中的一个重要特性,允许用户自定义形状、行为和属性,以创建独特的设计元素。这些特性可以被封装成可重复使用的模块,提高设计效率和灵活性。在C#中实现UDF操作主要涉及以下几个步骤: 1. **环境设置**:...

    Abaqus-Python开发使用指南_pythonabaqus_ABAQUS_abaquspython_Abaqus-Pyth

    这篇“Abaqus-Python开发使用指南”将深入介绍如何利用Python进行Abaqus的开发和应用。 首先,让我们从“Pythonabaqus”这个标签开始。Abaqus的Python接口允许用户编写自定义的脚本来控制模型的创建、求解过程以及...

    UDF文件系统资料汇总——协议、资料、源码

    这可能是对UDF标准的实现,或者是一个用于读取和写入UDF格式的库。通过阅读源代码,开发者可以更深入地了解UDF的实际操作,包括解析元数据、处理文件I/O、错误检测与恢复等关键功能。 这些资料对于IT专业人士,尤其...

    MYSQL的UDF开发的测试程序

    MySQL的UDF(User Defined Function)开发是数据库系统中一种...总之,MySQL UDF的开发是一个结合数据库理论与编程技术的过程,通过这个测试程序,开发者能够深入理解UDF的工作原理,并提升在实际应用中的开发技能。

    fluent14 udf manual

    - **后处理** —— 提供了一系列用于数据后处理的API,如`cell_loop`和`face_loop`等。 #### 四、UDF示例解析 手册中提供了丰富的UDF示例,包括但不限于: - **自定义边界条件** —— 如温度分布、速度分布等。 ...

    VC++ Udf Studio 2021 R1 SP2(Academic).zip

    **VC++ Udf Studio 2021 R1 SP2...总的来说,VC++ Udf Studio 2021 R1 SP2(Academic) 是一个为学术环境量身定制的C++开发工具,它不仅提供了完整的开发环境,还特别关注了UDF的开发,有助于提升教学和学习效果。

    中文教程(VC++ Udf Studio).pdf

    VC++ UDF Studio 是一个功能强大的编程工具,能够与 Fluent 结合使用,实现复杂的模拟计算和数据分析。 VC++ UDF Studio 2021R1 教程 VC++ UDF Studio 2021R1 是一个基于 Visual Studio 的编程环境,支持 Windows...

    hive UDF需要jar包

    Hive UDF是Hive提供的一个强大特性,它允许用户创建自己的函数来处理数据。这些函数可以是单行输入单行输出的UDF,多行输入单行输出的UDF(UDAF,User Defined Aggregation Function),或者多行输入多行输出的UDTF...

Global site tag (gtag.js) - Google Analytics