MaxCompute auto increment PythonUDF

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
简介:

 有一些时候需要生成一个自增的id,以便能和mysql的表对应进行同步。参考了相关文档,写了一个python版的udf。

# coding=utf-8
from odps.udf import annotate
@annotate("*->bigint")
class AutoIncrement(object):
    count=0
    def evaluate(self,*args):
        base =0
        if len(args)==1 and isinstance(args[0],(int,long)) and args[0]>=0 :
            base=args[0]
        self.count=self.count+1
        return self.count+base

  这个方法接受变长的参数,参数可以用来指定auto increment开始的值。当且仅当传入参数的个数为1,并且是大于等于0的int或者long才会生效。


转自临栏

相关实践学习
简单用户画像分析
本场景主要介绍基于海量日志数据进行简单用户画像分析为背景,如何通过使用DataWorks完成数据采集 、加工数据、配置数据质量监控和数据可视化展现等任务。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
目录
相关文章
|
SQL 存储 缓存
数据库必知词汇:AUTO INCREMENT(自增)字段
在数据库中,我们通常希望在每次插入新记录时,自动地创建主键字段的值。此时,我们可以在表中创建一个AUTO INCREMENT字段。注意设置自增字段时,字段类型必须为Int型,一般都用来作为主键。
2393 0
|
1月前
|
关系型数据库 MySQL Linux
AUTO_INCREMENT
AUTO_INCREMENT
35 2
|
SQL 关系型数据库 MySQL
MySQL 使用 AUTO_INCREMENT 关键字
MySQL 使用 AUTO_INCREMENT 关键字
105 0
|
SQL 关系型数据库 MySQL
AUTO INCREMENT 字段
AUTO INCREMENT 字段
63 0
|
存储 缓存 算法
PolarDB-X 中的 AUTO_INCREMENT 兼容性
分布式系统和分布式数据库中,有哪些实现全局唯一 ID 的典型方案?在满足了全局唯一的要求后,如何在分布式数据库中兼容 MySQL AUTO_INCREMENT 特性?PolarDB-X 是怎样做到兼容 AUTO_INCREMENT 功能,又能保持高性能水准的?本文将揭示这些细节。
1361 1
|
关系型数据库 索引
|
关系型数据库 索引