【问题标题】:unable load data into hive using pyspark无法使用 pyspark 将数据加载到配置单元中
【发布时间】:2020-03-26 04:52:11
【问题描述】:

无法通过 jupyter notebook 使用 pyspark 将数据写入 hive。

给我下面的错误

Py4JJavaError:调用 o99.saveAsTable 时出错。 : org.apache.spark.sql.AnalysisException: java.lang.RuntimeException: java.lang.RuntimeException: 无法实例化 org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient;

注意这些步骤已经尝试过:

  1. 将hdfs-site.xml、core-site.xml复制到hive的/conf中
  2. 删除了 metasotore_db 并使用下面的 cmd 再次创建 $HIVE_HOME/bin/schematool –initschema –dbtype derby

【问题讨论】:

  • from pyspark import SparkContext, SparkConf from pyspark.sql import SparkSession, HiveContext SparkContext.setSystemProperty("hive.metastore.uris", "thrift://localhost:10000") sparkSession = SparkSession.builder。 appName("example-pyspark-read-and-write").getOrCreate() data = [('First', 1), ('Second', 2), ('Third', 3), ('Fourth', 4), ('Fifth', 5)] df = sparkSession.createDataFrame(data) df.show() # 写入Hive df.write.saveAsTable('example'
  • 这段代码我试过并给了我错误:org.apache.spark.sql.AnalysisException: java.lang.RuntimeException: java.lang.RuntimeException: Unable to instantiate

标签: apache-spark hadoop pyspark hive


【解决方案1】:

您是否使用 spark-submit 来运行您的脚本? 你也应该像这样添加->“.enableHiveSupport()”:

spark = SparkSession.builder \
    .appName("yourapp") \
    .enableHiveSupport() \
    .getOrCreate()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-07-27
    • 2015-05-03
    • 1970-01-01
    • 1970-01-01
    • 2016-10-11
    • 1970-01-01
    相关资源
    最近更新 更多