|
@@ -0,0 +1,41 @@
|
|
|
+from odps import ODPS
|
|
|
+import pandas as pd
|
|
|
+
|
|
|
+
|
|
|
+def get_odps_instance(project):
|
|
|
+ odps = ODPS(
|
|
|
+ access_id='LTAIWYUujJAm7CbH',
|
|
|
+ secret_access_key='RfSjdiWwED1sGFlsjXv0DlfTnZTG1P',
|
|
|
+ project=project,
|
|
|
+ endpoint='http://service.cn.maxcompute.aliyun.com/api',
|
|
|
+ )
|
|
|
+ return odps
|
|
|
+
|
|
|
+if __name__ == '__main__':
|
|
|
+ project = 'pai_algo'
|
|
|
+ odps = get_odps_instance(project)
|
|
|
+ table = 'pai_temp_flow_1p2ujuopb682ktq1h6_node_uxam9b0n7k2v11i9rz_outputTable'
|
|
|
+ num = 10
|
|
|
+ try:
|
|
|
+ # 要查询的 SQL 语句
|
|
|
+ sql = f'select * from {table} limit {num}'
|
|
|
+ # 执行 SQL 查询
|
|
|
+ with odps.execute_sql(sql).open_reader() as reader:
|
|
|
+ # 查询数量小于目标数量时 返回空
|
|
|
+ if reader.count < num:
|
|
|
+ print("error")
|
|
|
+ # 获取字段名称
|
|
|
+ column_names = reader.schema.names
|
|
|
+ # 获取查询结果数据
|
|
|
+ data = []
|
|
|
+ for record in reader:
|
|
|
+ record_list = list(record)
|
|
|
+ numbers = []
|
|
|
+ for item in record_list:
|
|
|
+ numbers.append(item[1])
|
|
|
+ data.append(numbers)
|
|
|
+ # 将数据和字段名称组合成 DataFrame
|
|
|
+ df = pd.DataFrame(data, columns=column_names)
|
|
|
+ print(df)
|
|
|
+ except Exception as e:
|
|
|
+ print(f"发生错误: {e}")
|