当您使用 Apache Iceberg REST 目录端点创建和管理表时,Lakehouse 运行时目录会强制执行存储位置、权限和安全强化规则。这些规则可帮助您隔离底层存储路径、防止命名冲突,并将表注册限制为授权管理员。
表位置
表路径必须嵌套在父命名空间路径(例如 gs://{namespace_path}/.../{table_name})中。强制执行此限制条件是为了帮助提高安全性和目录强化。
表路径的行为变更:请注意,生成的表位置(在其中创建 metadata/ 文件夹)会自动附加一个随机字符串作为后缀,以防止冲突并提高安全性:
- 如果未提供具体位置,则生成的位置为
gs://{namespace_path}/{table_name}/{random_suffix}。 - 如果提供了特定位置(例如
gs://{namespace_path}/.../{table_name}),则生成的位置为gs://{namespace_path}/.../{table_name}/{random_suffix}。
表注册权限
多存储桶和单存储桶目录都需要 biglake.tables.register 权限才能注册表。此权限仅限于 BigLake Admin (roles/biglake.admin) 角色,以确保只有管理员才能执行表注册。