我在Glue / Athena中注册了一个数据集,名为my_db.table
。我可以通过Athena查询它,一切似乎都很正常。
我尝试在Glue作业中使用此表,但收到以下相当不透明的错误消息:
py4j.protocol.Py4JJavaError: An error occurred while calling o54.getCatalogSource.
: java.lang.Error: No classification or connection in my_db.table
字符串
这似乎表明Glue无法看到我的表的目录条目,或者无法使用该条目中的信息,但我没有比这更进一步的可见性。
有没有人遇到过这个错误,是什么原因导致的?
2条答案
按热度按时间yrdbyhpb1#
错误消息实际上很好地描述了问题--被查询的表没有分类。
通过Glue创建的表注册为分类-
csv
、parquet
、orc
、avro
、json
。请参阅使用Athena创建AWS Glue作业的表。我通过Athena“手动”创建的表没有分类。请参阅下面的Glue 'tables'页面的屏幕截图。
x1c 0d1x的数据
解决方案很简单:在
CREATE TABLE
脚本的末尾,用户必须像这样附加一个classification
属性字符串
现在,该表在Glue界面中有一个分类,并且可以通过Glue作业访问。
x7rlezfr2#
需要在您创建的表中添加分类。要通过UI添加分类,请执行以下步骤:
1.去胶水桌:
的数据
1.点击编辑表格并添加它,如图所示: