前期准备
获取aksk和projectid
如果已经拥有aksk不需要再获取
点击新增访问密钥
自动会下载一个文件,里面包含了aksk,就是rsa的公钥和私钥
在API凭证页面获取当前使用区域的projectid。例如我在上海一使用,那么就获取上海一的projectid
获取region和DLI endpoint信息
DLI endpoint信息可以从下面的页面获取
https://support.huaweicloud.com/api-dli/dli_02_0176.html
例如我想使用的上海一那么endpoint就是 dli.cn-east-3.myhuaweicloud.com
region就是cn-east-3
使用moxing接口访问dli数据
创建两个文件 aksk.py mox_dli_demo.py
aksk.py内容如下。其中<YOUR-OWN-AK>和<YOUR-OWN-SK>是前面获取的aksk。之所以这里面要分成两个文件,是因为aksk和密码效力等同,因此独立出来,不要将aksk上传到自己的代码库中
import os
os.environ.pop('CREDENTIAL_PROFILES_FILE', None)
os.environ['ACCESS_KEY_ID']="<YOUR-OWN-AK>"
os.environ['SECRET_ACCESS_KEY']="<YOUR-OWN-SK>"
mox_dli_demo.py内容如下,其中<YOUR-OWN-PROJECTID>是你自己在前期准备获得的projectid
import os
import aksk
os.environ['DLI_REGION']="cn-east-3"
os.environ['DLI_ENDPOINT_URL']="dli.cn-east-3.myhuaweicloud.com"
os.environ['DLI_PROJECT_ID']="<YOUR-OWN-PROJECTID>"
import moxing as mox
print(mox.lake.list_queues())
print(mox.lake.list_databases())
print(mox.lake.list_tables(db_name='<your-own-db>'))
from moxing.framework.dli import data_io
results = data_io.run_sql(db_name='<your-own-db>', queue_name='default', sql_cmd='select * from <your-own-table> limit 10')
for r in results:
print(r)