本文为您介绍如何使用PyODPS或dswmagic读写MaxCompute表数据。

PyODPS

您可以使用PyODPS与MaxCompute或PAI-Studio中的数据进行通信。PyODPS是阿里云提供的Python SDK,详情请参见PyODPS开发文档

  1. 安装PyODPS。
    在PAI-DSW的Terminal中,执行如下命令。
    pip install --user pyodps
  2. 读取MaxCompute表数据(以MaxCompute特定项目下的某表前10行数据为例)。
    from odps import ODPS
    from odps.df import DataFrame
    o = ODPS('<your_AccessKey_ID>', '<your_AccessKey_Secret>',project='<your_MaxCompute_project>', endpoint='http://service-all.ext.odps.aliyun-inc.com/api')
    users = DataFrame(o.get_table('<your_table_name>'))
    print(users.head(10))
    需要根据实际情况修改以下参数。
    参数 描述
    <your_AccessKey_ID> 阿里云的AccessKey ID。
    <your_AccessKey_Secret> 阿里云的AccessKey Secret。
    <your_MaxCompute_project> MaxCompute项目名称。
    http://service-all.ext.odps.aliyun-inc.com/api 华东2(上海)GPU M40实例和华北2(北京)预付费P100实例的Endpoint。其他地域的Endpoint为http://service.cn.maxcompute.aliyun.com/api
    <your_table_name> MaxCompute表名。

dswmagic

dswmagic是PAI-DSW封装的Notebook魔法命令,加载该魔法命令后,可以编写SQL语句,读取MaxCompute表数据。

  1. 进入PAI-DSW开发环境。
    1. 登录PAI控制台
    2. 在左侧导航栏,选择模型开发和训练 > DSW-Notebook建模
    3. 在页面左上方,选择使用服务的地域。
    4. Notebook建模服务页面的搜索框,输入实例名称或实例ID关键字,搜索实例。
    5. 单击需要打开的实例操作列下的打开
  2. 创建.ipynb文件。
    1. 在PAI-DSW开发环境的上方菜单栏,选择File > New > Notebook
    2. Select Kernel对话框,选择内核版本,并单击SELECT
  3. 加载dswmagic
    1. 输入如下加载命令。
      %load_ext dswmagic
    2. 单击页面上方的运行图标,运行命令。
  4. 配置Cell类型为sql
    .ipynb文件,新增Cell,并为其选定SQL编辑器,该Cell自动切换至SQL编辑模式。切换cell
  5. 配置数据源和Endpoint。
    1. 单击New DataSource右侧的加号。
    2. Config DataSource对话框,配置参数。
      参数 描述
      AccessKey ID 阿里云的AccessKey ID。
      AccessKey Secret 阿里云的AccessKey Secret。
      ProjectName MaxCompute表所在的项目。
      Endpoint
      • 华北2(北京)P100服务器和华东2(上海)M40服务器的Endpoint:http://service-all.ext.odps.aliyun-inc.com/api。
      • 其他地域服务器的Endpoint:http://service.cn.maxcompute.aliyun.com/api。
    3. 单击Submit
    4. New DataSource列表,选择已配置的数据源。
  6. 编写及运行SQL语句。
    1. 编写SQL语句,示例如下。
       SELECT * FROM <your_project>.<your_table> LIMIT 100;
      其中<your_project>为MaxCompute项目名称,<your_table>为MaxCompute项目下的表名,都需要根据实际情况修改。
    2. 单击页面上方的运行图标,运行SQL语句。运行SQL