详情页标题前

阿里云云原生大数据计算服务 MaxComputePyODPS节点实现避免将数据下载到本地-云淘科技

详情页1

本文为您介绍PyODPS如何避免将数据下载到本地

背景信息

PyODPS提供了多种方便下载数据到本地的方法。因此,在设备允许的情况下,可以把数据下载到本地处理,然后再上传至MaxCompute。但是这种操作非常低效,数据下载到本地进行处理,无法使用MaxCompute的大规模并行能力。当数据量大于10
MB时,不建议进行本地数据处理。常见的将数据下载到本地的操作如下:

  • Head、Tail和To_pandas方法的调用。通常,可以调用head、tail方法返回少量数据进行数据探查,当数据量较大时,建议调用Persisit方法,将数据直接保存在MaxCompute中。详情请参见执行。
  • 在表或SQL实例上直接执行Open_reader方法获取表数据。当数据量大时,建议使用PyODPS DataFrame(从MaxCompute表创建)和MaxCompute
    SQL来处理数据,以替代本地数据处理这种比较低效的方式。

示例代码

将一份JSON串数据按Key-Value对展开成一行,示例代码如下。

  • 本地测试,通过head()方法返回少量数据进行测试。
    In [12]: df.head(2)
                   json
    0  {"a": 1, "b": 2}
    1  {"c": 4, "b": 3}
    
    In [14]: from odps.df import output
    
    In [16]: @output(['k', 'v'], ['string', 'int'])
        ...: def h(row):
        ...:     import json
        ...:     for k, v in json.loads(row.json).items():
        ...:         yield k, v
        ...:   
    
    In [21]: df.apply(h, axis=1).head(4)
    
       k  v
    0  a  1
    1  b  2
    2  c  4
    3  b  3
  • 线上生产,通过persist()方法将结果存回MaxCompute表。
    In [14]: from odps.df import output
    
    In [16]: @output(['k', 'v'], ['string', 'int'])
        ...: def h(row):
        ...:     import json
        ...:     for k, v in json.loads(row.json).items():
        ...:         yield k, v
        ...:   
    
    In [21]: df.apply(h, axis=1).persist('my_table')

内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家

阿里云企业补贴进行中: 马上申请

腾讯云限时活动1折起,即将结束: 马上收藏

同尘科技为腾讯云授权服务中心。

购买腾讯云产品享受折上折,更有现金返利:同意关联,立享优惠

转转请注明出处:https://www.yunxiaoer.com/159703.html

(0)
上一篇 2023年12月10日
下一篇 2023年12月10日
详情页2

相关推荐

  • 阿里云RDS数据库创建与释放全球多活数据库集群-云淘科技

    本文介绍如何创建和释放RDS全球多活数据库集群。 前提条件 已授权全球多活数据库集群访问云资源。 当前阿里云账户中的余额必须大于等于100元。 已创建RDS MySQL实例,后续用作中心节点。创建方式,请参见快速创建RDS MySQL实例。 说明 目前仅支持位于华东1(杭州)、华东2(上海) 、华北1(青岛)、华北2(北京)、华北3(张家口)、华南1(深圳)…

    2023年12月9日
  • 阿里云大数据开发治理平台 DataWorksHDFS数据源-云淘科技

    HDFS是一个分布式文件系统,为您提供读取和写入HDFS双向通道的功能,本文为您介绍DataWorks的HDFS数据同步的能力支持情况。 支持的版本 目前不支持阿里云文件存储HDFS版。 使用限制 离线读 使用HDFS Reader时,请注意以下事项: 由于连通默认资源组到HDFS的网络链路比较复杂,建议您使用独享数据集成资源组完成数据同步任务。您需要确保您…

  • 大数据计算MaxCompute的dataworks中有没有一个条件判断的节点? -云小二-阿里云

    大数据计算MaxCompute的dataworks中有没有一个条件判断的节点?就是判断某一个表中的数据大于多少条,然后再执行后边的调度。 以下为热心网友提供的参考意见 参考https://help.aliyun.com/zh/dataworks/user-guide/configure-a-branch-node?spm=a2c4g.11186623.0.0…

    阿里云 2023年12月13日
  • 信息流广告,信息流部分建议宽度830px,只针对默认列表样式,顺序随机
  • 阿里云日志服务SLS云监控-云淘科技

    您可以通过阿里云云监控服务来监控日志服务的写入流量、总体QPS、服务状态等指标,获取日志服务的使用情况。同时您可以通过创建报警规则,对日志采集、Shard资源使用等异常进行监控。 前提条件 RAM用户查看云监控指标,需要主账户为其授予云监控只读(AliyunCloudMonitorReadOnlyAccess)或读写(AliyunCloudMonitorFu…

    2023年12月10日
  • 请问试用大数据计算MaxCompute500CU,这该怎么评估?-云小二-阿里云

    请问试用大数据计算MaxCompute500CU,pai使用线性回归训练maxcompute里500w的数据,显示资源不够,重试好几次都是这样。我也不知道会使用大概多少资源,开个50cu的包月的是不是大材小用了,这该怎么评估? 以下为热心网友提供的参考意见 MaxCompute的500cu*h抵扣包是抵扣按量计费部分,资源不应该有限制。 ,此回答整理自钉群“…

    阿里云 2023年12月24日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
本站为广大会员提供阿里云、腾讯云、华为云、百度云等一线大厂的购买,续费优惠,保证底价,买贵退差。