机器学习PAI如果我想本地查某个表的某个分区的状态,
我看到pyodps可以这样。
instance = o.get_instance('2016042605520945g9k5pvyi2')
instance.status
但是我如何知道某个表某个分区的instances id呢?
而且odps.list_instances() 得到的instances id 与dataworks运维里查的不一样。
odps.list_instances() 的结果是前面数字,后面字母。
dataworks运维里查的只有一串数字
可以参考下
import datetime
import sys
from odps import ODPS
def getdate(beforeOfDay):
today = datetime.datetime.now()
# 计算偏移量
offset = datetime.timedelta(days=-beforeOfDay)
# 获取想要的日期的时间
re_date = (today + offset).strftime('%Y%m%d')
return re_date
signal_table = '{table_name}'
round = 60
sec = 300
day = getdate(1)
print(day)
import time
while round > 0:
t = o.get_table(signal_table)
exist = t.exist_partition('day=%s.done'%(day))
if exist:
print("found partition %s.done"%(day))
sys.exit(0)
print(time.asctime( time.localtime(time.time()) ),",can not found partition %s.done"%(day))
time.sleep(sec)
print("can not found partition %s.done"%(day))
sys.exit(1),此回答整理自钉群“【EasyRec】推荐算法交流群”
要查看某个表某个分区的实例ID,您可以使用以下方法:
pyodps
库。如果没有,请使用以下命令安装:pip install pyodps
from odps import ODPS
# 替换为您的ODPS项目名称、访问密钥和默认数据库名称
access_id = 'your_access_id'
access_key = 'your_access_key'
project = 'your_project_name'
default_db = 'your_default_db'
# 创建ODPS对象并连接到您的帐户
odps = ODPS(access_id, access_key, project, default_db)
# 获取实例列表
instances = odps.list_instances()
# 打印实例列表
for instance in instances:
print(instance)
请注意,odps.list_instances()
返回的实例ID可能与DataWorks运维界面中的实例ID不同。这是因为这两个系统可能使用了不同的命名约定或存储方式。在这种情况下,您需要仔细检查实例列表以找到与您感兴趣的表和分区相关的实例。
要查询特定表特定分区的状态,你可以使用 odps.get_table_partition_instances(table_name, partition)
函数来获取该分区的所有实例,然后遍历每个实例并查询其状态。
对于 odps.list_instances()
和 DataWorks 中显示的不同ID格式,我推测这可能是因为它们是从不同的源获取信息并使用不同的命名约定。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
人工智能平台 PAI(Platform for AI,原机器学习平台PAI)是面向开发者和企业的机器学习/深度学习工程平台,提供包含数据标注、模型构建、模型训练、模型部署、推理优化在内的AI开发全链路服务,内置140+种优化算法,具备丰富的行业场景插件,为用户提供低门槛、高性能的云原生AI工程化能力。