首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >配置单元上下文无法识别pyspark -AnalysisException中的临时表:“未找到表”

配置单元上下文无法识别pyspark -AnalysisException中的临时表:“未找到表”
EN

Stack Overflow用户
提问于 2016-04-07 03:55:07
回答 2查看 2.4K关注 0票数 2

我使用的是在本地模式下运行的pyspark (1.6.1)。我有一个来自csv文件的数据帧,我需要添加dense_rank()列。我知道sqlContext不支持窗口函数,但是HiveContext支持。

代码语言:javascript
运行
复制
hiveContext = HiveContext(sc)
df.registerTempTable("visits")
visit_number = hiveContext.sql("select store_number, "
                               "dense_rank() over(partition by store_number order by visit_date) visit_number "
                               "from visits")

我得到了错误: AnalysisException: U‘’Table found: visits;

出现warning: WARN ObjectStore:无法获取数据库默认值,返回NoSuchObjectException后

在阅读了前面的问题之后,我尝试将conf/hivedefaults.xml中的ConnectionURL更改为hive目录的确切位置,但没有成功。

有人在这个问题上吗?

谢谢!

EN

回答 2

Stack Overflow用户

发布于 2016-04-07 19:58:50

结果:删除SQLContext并只使用HiveContext,一切工作正常。

票数 1
EN

Stack Overflow用户

发布于 2016-04-07 04:17:23

您应该在registerTempTable之前创建DataFrame

代码语言:javascript
运行
复制
MyDataFrame <- read.df(sqlContext, CsvPath, source = "somthing.csv", header = "true")

在那之后:

代码语言:javascript
运行
复制
registerTempTable(MyDataFrame, "visits")
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36461119

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档