我可以从glueContext的胶水作业中读取在glue数据目录中定义的表。但是,如果我想使用hiveContext读取完全相同的表,则会收到一条错误消息,说明它找不到该表。
在我看来,HiveContext无法访问胶水数据目录。
您知道在胶水作业配置中插入什么(编辑作业->作业参数-> "--conf“)以确保HiveContext能够在胶水数据目录中找到和访问表吗?
我想执行以下代码:
# import libs
from pyspark.context import SparkContext
from pyspark.sql.functions import *
from pyspark.sql.types import *
from pyspark.sql import HiveContext
# create sparkContext and HiveContext
sc = SparkContext()
hc = HiveContext(sc)
# read table from glue data catalogue
df = hc.table('glue_db.glue_table').persist()上面的代码返回以下错误消息:
glue_db.glue_table;;\n'UnresolvedRelation pyspark.sql.utils.AnalysisException: U“未找到表或视图:
glue_db.glue_table\n”
我试过火花版本的火花2.2和火花2.4
事先非常感谢!
发布于 2020-02-25 10:12:26
尝尝这个
from awsglue.context import GlueContext
glueContext = GlueContext(sc)
spark = glueContext.spark_session
df= spark.sql(“select * from glue.table”)或者直接从创建你的火花会话开始,完全绕过胶水。
只要您选中了允许胶水目录用作蜂巢亚稳态的框。
https://stackoverflow.com/questions/60154646
复制相似问题