日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

如何使用PyODPS讀寫MaxCompute表數據

DSW實例中,當您想要讀取MaxCompute表的數據時,可以使用PyODPS來實現。本文介紹如何使用PyODPS讀取MaxCompute表數據。

前提條件

在開始執行操作前,請確認您已經完成以下準備工作:

  • 已開通MaxCompute,詳情請參見開通MaxComputeDataWorks。

  • 用戶賬號已有MaxCompute項目操作權限。如果您使用主賬號登錄DSW實例,則無需授權。如果您使用的為RAM賬號,可以參考如下授權步驟。

    操作步驟

    1. 使用主賬號登錄MaxCompute控制臺,在左上角選擇地域。

    2. 在左側導航欄選擇工作區 > 項目管理

    3. 項目管理頁面,單擊目標項目操作列的管理

    4. 角色權限頁簽,找到role_project_dev,單擊成員管理,添加對應RAM賬號。

    更多MaxCompute權限管理,可參見通過控制臺管理用戶權限

  • 安裝PyODPS環境前,您可先查看下Python的版本,建議Python版本為3.6及以上版本,不建議使用2.7及以下版本。

操作步驟

您可以使用PyODPSMaxComputeDesigner中的數據進行通信。PyODPS是阿里云提供的Python SDK,詳情請參見PyODPS開發文檔。

  1. 安裝PyODPS。

    DSWTerminal中,執行如下命令。

    pip install pyodps
  2. 執行如下命令檢查安裝是否成功。若無返回值和報錯信息表示安裝成功。

    python -c "from odps import ODPS"
  3. 如果您使用的Python不是系統默認的Python版本,安裝完PIP后,您可以執行如下命令進行Python版本切換。

    /home/tops/bin/python3.7 -m pip install setuptools>=3.0
    #/home/tops/bin/python3.7為安裝的python路徑
  4. 通過SQL讀取MaxCompute數據。

    import numpy as np
    import pandas as pd
    import os
    
    from odps import ODPS
    from odps.df import DataFrame
    # 建立鏈接。
    o = ODPS(
        os.getenv('ALIBABA_CLOUD_ACCESS_KEY_ID'),
        os.getenv('ALIBABA_CLOUD_ACCESS_KEY_SECRET'),
        project='your-default-project',
        endpoint='your-end-point',
    )
    
    # 讀取數據。
    sql = '''
    SELECT  
        *
    FROM
        your-default-project.<table>
    LIMIT 100
    ;
    '''
    query_job = o.execute_sql(sql)
    result = query_job.open_reader(tunnel=True)
    df = result.to_pandas(n_process=1) #n_process配置可參考機器配置,取值大于1時可以開啟多線程加速。

    其中:

    • ALIBABA_CLOUD_ACCESS_KEY_IDALIBABA_CLOUD_ACCESS_KEY_SECRET:為您阿里云賬號的AccessKey ID和 AccessKey Secret,為防止賬號信息泄漏,建議您將AccessKey配置為環境變量。

    • your-default-projectyour-end-point:需替換為您設置的默認項目名稱與Endpoint信息,各地域的Endpoint請參見Endpoint。

    關于如何使用PyODPSMaxCompute表進行其他操作(例如寫入數據),詳情請參見。

相關文檔

DSW提供了SQL File功能,支持您通過SQL語句的方式對有查詢權限的MaxCompute數據源進行快速的數據查詢,具體操作,請參見使用SQL File查詢MaxCompute。