Spark sql操做Hive

這裏說的是最簡便的方法,經過Spark sql直接操做hive。前提是hive-site.xml等配置文件已經在Spark集羣配置好。sql

 val logger = LoggerFactory.getLogger(SevsSpark4.getClass)apache

  def main(args: Array[String]): Unit = {
     val sparkconf = new SparkConf().setAppName("sevs_spark4")
      .set("HADOOP_USER_NAME", getProp("hbase.hadoop.username"))
      .set("HADOOP_GROUP_NAME", getProp("hbase.hadoop.groupname"))
        //  .setMaster("local")app

       val spark = SparkSession
      .builder()
      .appName("sevs spark sql")
     .config(sparkconf)
      .enableHiveSupport()
      .getOrCreate()maven

    // For implicit conversions like converting RDDs to DataFrames
    import spark.implicits._ide

//讀Hive示例    oop

val df = spark.sql("select field1,field2 from table1")
    df.show(1)
    val count = df.count
    logger.error(s"數據量={} ################",count)ui


//寫hive示例   spa

 val wf = spark.sql("insert into table1 values ('1','201812')")
    logger.error("ending sql hive#################")
  }xml

 

maven依賴以下:hadoop

     <dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-sql_2.11</artifactId>
            <version>2.1.0</version>
            <scope>provided</scope>
        </dependency>

  <dependency>

         <groupId>org.apache.spark</groupId>

         <artifactId>spark-hive_2.11</artifactId>

         <version>2.1.0</version>

         <scope>provided</scope>

      </dependency>

相關文章
相關標籤/搜索