如何解决在不更改底层镶木地板文件的情况下重命名 AWS 粘合表列名
我有一个具有以下结构的镶木地板文件
column_name_old |
---|
第一次 |
第二个 |
我正在将此文件抓取到 AWS 胶水中的表中,但是在架构表中我希望表结构如下不更改镶木地板文件中的任何内容
column_name_new |
---|
第一次 |
第二个 |
我尝试使用 boto3 更新表结构
col_list = js['Table']['StorageDescriptor']['Columns']
for x in col_list:
if isinstance(x,dict):
x.update({'Name': x['Name'].replace('column_name_old','column_name_new')})
它可以工作,因为我可以看到 Glue 目录中更新的表结构,但是当我使用新列名查询表时,我没有得到任何数据,因为表结构和分区文件之间的映射似乎丢失了.
这种方法是否可行,或者我必须更改镶木地板文件本身?如果有可能我做错了什么?
解决方法
您可以创建映射到其他值的列名称的视图。 我相信更改列名会破坏元目录。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。