tongchenkeji 发表于:2023-11-30 12:05:340次点击 已关注取消关注 关注 私信 大数据计算MaxCompute如果先设置*,B就不会自动出现在package里是么?[阿里云] 暂停朗读为您朗读 大数据计算MaxCompute如果先设置*,但是手动移除了一个表A,那么后续加个表B,B就不会自动出现在package里是么? 「点点赞赏,手留余香」 赞赏 还没有人赞赏,快来当第一个赞赏的人吧! 海报 阿里云# MaxCompute2748# 云原生大数据计算服务 MaxCompute3255# 分布式计算2827# 大数据1264
小周sirAM 2023-12-3 11:41:58 2 在MaxCompute中,如果你设置了*来表示所有的表,并且手动移除了一个表A,那么后续添加一个新的表B时,这个新的表B不会自动出现在之前设置的Package里。你需要重新更新Package以包含新添加的表B。 通常,如果你想让某个Package自动包含所有当前项目下的表(包括未来可能添加的新表),你可以在创建或更新Package时使用通配符(*)。然而,一旦你手动修改了Package的内容,比如移除了表A,那么系统就不再会自动跟踪项目的变更,除非你再次明确地指定要包含所有的表(即使用*)。 因此,在你的场景下,如果你想让新添加的表B自动出现在Package里,你应该执行以下操作: 更新Package,使其包含所有的表: ADD * TO PACKAGE my_package; 这样,任何未来添加到该项目空间的新表都会自动被包含在这个Package里。 请注意,这种做法可能会导致Package变得很大,特别是当项目中有大量表或者数据量非常大的时候。为了更好地控制Package的大小和内容,你可以考虑只包含那些实际需要使用的表。
没有测试过。 按照原理是会的。
因为package不是快照,会随着底层数据变化而变化。,此回答整理自钉群“MaxCompute开发者社区2群”
在MaxCompute中,如果你设置了
*
来表示所有的表,并且手动移除了一个表A,那么后续添加一个新的表B时,这个新的表B不会自动出现在之前设置的Package里。你需要重新更新Package以包含新添加的表B。通常,如果你想让某个Package自动包含所有当前项目下的表(包括未来可能添加的新表),你可以在创建或更新Package时使用通配符(
*
)。然而,一旦你手动修改了Package的内容,比如移除了表A,那么系统就不再会自动跟踪项目的变更,除非你再次明确地指定要包含所有的表(即使用*
)。因此,在你的场景下,如果你想让新添加的表B自动出现在Package里,你应该执行以下操作:
这样,任何未来添加到该项目空间的新表都会自动被包含在这个Package里。
请注意,这种做法可能会导致Package变得很大,特别是当项目中有大量表或者数据量非常大的时候。为了更好地控制Package的大小和内容,你可以考虑只包含那些实际需要使用的表。