首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PySpark HiveContext误差

PySpark HiveContext误差
EN

Stack Overflow用户
提问于 2015-10-08 06:44:30
回答 2查看 2.5K关注 0票数 2

我试图使用以下命令使用PySpark刷新表分区。我可以发出任何其他SQL命令,但是MSCK REPAIR TABLE给我带来了问题。

代码:

代码语言:javascript
复制
conf = SparkConf().setAppName("PythonHiveExample")\
                  .set("spark.executor.memory", "3g")\
                  .set("spark.driver.memory", "3g")\
                  .set("spark.driver.cores", "2")\
                  .set("spark.storage.memoryFraction", "0.4")
sc = SparkContext(conf=conf)
sqlContext = HiveContext(sc)
sqlContext.sql("MSCK REPAIR TABLE testdatabase.testtable;")

错误:

文件"/usr/hdp/2.3.0.0-2557/spark/python/pyspark/sql/context.py",行488,在sql返回DataFrame(self._ssql_ctx.sql(sqlQuery),self)文件"/usr/hdp/2.3.0.0-2557/spark/python/lib/py4j-0.8.2.1-src.zip/py4j/java_gateway.py",行538中,在"/usr/hdp/2.3.0.0-2557/spark/python/lib/py4j-0.8.2.1-src.zip/py4j/protocol.py",call文件第300行中,在get_return_value py4j.protocol.Py4JJavaError中:调用o43.sql时发生了错误。::org.apache.spark.sql.AnalysisException:在';‘近’10‘处缺少EOF;第1行pos 41

NewError:

代码语言:javascript
复制
            py4j.protocol.Py4JJavaError: An error occurred while calling o43.sql.
            : org.apache.spark.sql.AnalysisException: missing EOF at 'MSCK' near 'testdatabase'; line 1 pos 17
                    at org.apache.spark.sql.hive.HiveQl$.createPlan(HiveQl.scala:254)
                    at org.apache.spark.sql.hive.ExtendedHiveQlParser$$anonfun$hiveQl$1.apply(ExtendedHiveQlParser.scala:41)
                    at org.apache.spark.sql.hive.ExtendedHiveQlParser$$anonfun$hiveQl$1.apply(ExtendedHiveQlParser.scala:40)
                    at scala.util.parsing.combinator.Parsers$Success.map(Parsers.scala:136)
                    at scala.util.parsing.combinator.Parsers$Success.map(Parsers.scala:135)
                    at scala.util.parsing.combinator.Parsers$Parser$$anonfun$map$1.apply(Parsers.scala:242)
                    at scala.util.parsing.combinator.Parsers$Parser$$anonfun$map$1.apply(Parsers.scala:242)
EN

回答 2

Stack Overflow用户

发布于 2016-06-12 04:58:23

我目前正在使用Spark1.6,下面的语句正在为我更新带有蜂窝转移的分区。

sqlContext.sql("alter table schema.table_name add partition (key = value )")

票数 0
EN

Stack Overflow用户

发布于 2017-12-22 10:13:43

您可以尝试以下命令:

代码语言:javascript
复制
ALTER TABLE table_name ADD PARTITION 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33008437

复制
相关文章

相似问题

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