Apache spark Spark SQL与Spark上的配置单元

Apache spark Spark SQL与Spark上的配置单元,apache-spark,hive,apache-spark-sql,spark-dataframe,Apache Spark,Hive,Apache Spark Sql,Spark Dataframe,Spark SQL和Spark上的配置单元之间的差异。 我正在阅读spark和sql的文档,并试图理解spark sql和spark上的HIVE之间的区别 考虑这样一种情况,当我启动spark会话时,没有任何明显的配置单元支持,例如复制hive site.xml,然后在我的spark程序中保存一个表,数据和元数据将存储在哪里。spark是否会创建一个新的Hive元存储(如derby) 考虑一个例子,当我启动一个spark会话时,它支持配置单元,例如复制hive ste.xml并使spark知道现

Spark SQL和Spark上的配置单元之间的差异。 我正在阅读spark和sql的文档,并试图理解spark sql和spark上的HIVE之间的区别

  • 考虑这样一种情况,当我启动spark会话时,没有任何明显的配置单元支持,例如复制
    hive site.xml
    ,然后在我的spark程序中保存一个表,数据和元数据将存储在哪里。spark是否会创建一个新的Hive元存储(如derby)
  • 考虑一个例子,当我启动一个spark会话时,它支持配置单元,例如复制
    hive ste.xml
    并使spark知道现有配置单元。然后,如果我将表持久化,数据和元数据将存储在我现有的配置单元元存储中,数据将存储在HDFS的仓库目录中
  • 如果我通过将执行引擎属性更改为Spark来运行配置单元,那么它与上面提到的案例2相同吗
  • 谢谢

  • 当您启动spark会话时,数据可以存储在S3或HDFS中。如果您不显式地创建配置单元会话,它不会固有地创建配置单元会话

  • 如果使用“saveastable”子句引用配置单元表,则为“是”。数据将在HDFS中持久化。请记住,如果您删除HDFS实例(如在EMR中),表将与其数据一起删除

  • 对问题3没有把握

  • 当您启动spark会话时,数据可以存储在S3或HDFS中。如果您不显式地创建配置单元会话,它不会固有地创建配置单元会话

  • 如果使用“saveastable”子句引用配置单元表,则为“是”。数据将在HDFS中持久化。请记住,如果您删除HDFS实例(如在EMR中),表将与其数据一起删除


  • 对于问题3不确定

    如果您在没有配置单元支持的情况下初始化Spark,那么它将根本不使用metastore。蜂巢对于Spark来说并不重要,因为它有自己的独立目录。关于2,实际上没有可比性。如果您在没有配置单元支持的情况下初始化Spark,那么它根本不会使用metastore。蜂巢对于Spark来说并不重要,因为它有自己的独立目录。关于2,没有真正的可比性。