spark的hive操作和常见的bug

package hive

import org.apache.spark.SparkConf
import org.apache.spark.sql.SparkSession

object HiveDome {
  def fun1(): Unit = {
    val conf = new SparkConf().setAppName("hive")
    val spark = SparkSession.builder().appName("hive").config(conf).enableHiveSupport().getOrCreate()

    import spark.sql
    //创建件hive表
    sql("create table if not exists user(id int,value String) row format delimited fields terminated by ‘,‘")
    sql("load data local inpath ‘/user.log‘ into table user")  //这里不能写成user.txt文件,会出现乱码

//    sql("select * from user").show()
//    sql("select count(*) from user").show()
//
//    val sqlDF = sql("select key,value from user where key<10 order BY key")
//    import spark.implicits._    //隐式转化
//    val stringDS = sqlDF.map { case org.apache.spark.sql.Row(id: Int, value: String) => s"key:$id,value:$value" }
//    stringDS.show()

    sql("select value,id from user").write.mode("overwrite")
     .saveAsTable("spark_hive_test1")

    spark.stop()
  }

  def main(args: Array[String]): Unit = {
    fun1()
  }
}

写完之后在idea 打成jar包,将jar包写到liunx下的根目录下

然后配置环境

1.把hive的配置 hive-site.xml 复制到 spark/conf
    cp /usr/hive/apache-hive-2.3.3-bin/conf/hive-site.xml   /usr/spark/spark-

2.1.1-bin-hadoop2.7/conf/

2.把mysql的驱动jar放入到 spark/spark-2.1.1-bin-hadoop2.7/jars/
    mysql-connector-java-5.1.38.jar

3.修改spark-env.sh文件
    export SPARK_CLASSPATH=$SPARK_CLASS:$SPARK_HOME/jars/mysql-connector-java-5.1.38.jar

4.在集群上执行
    spark-submit --master spark://zhiyou01:7077 --class 类名的全称    --total-executor-cores 2 --executor-memory 512m /jar包路径

如果不配置环境会出现以下错误

Exception in thread "main" java.lang.UnsupportedOperationException: loadTable is not implemented

常见bug:

1>[code=java]org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.ipc.StandbyException): Operation category READ is not supported in state standby

原因:

2>io错误,说是hdfs下的user.log不存在

原因:我在创建

原文地址:https://www.cnblogs.com/han-guang-xue/p/10041150.html

时间: 2024-10-24 18:45:36

spark的hive操作和常见的bug的相关文章

hadoop、spark、hive、solr、es与YDB在车辆即席分析上的对比分析

自2012年以来,公安部交通管理局在全国范围内推广了机动车缉查布控系统(简称卡口系统),通过整合共享各地车辆智能监测记录等信息资源,建立了横向联网.纵向贯通的全国机动车缉查布控系统,实现了大范围车辆缉查布控和预警拦截.车辆轨迹.交通流量分析研判.重点车辆布控.交通违法行为甄别查处及侦破涉车案件等应用.在侦破肇事逃逸案件.查处涉车违法行为.治安防控以及反恐维稳等方面发挥着重要作用. 随着联网单位和接入卡口的不断增加,各省市区部署的机动车缉查布控系统积聚了海量的过车数据.截至目前,全国32个省(区.

常见的bug

常见bug 一. Android系统功能测试设计的测试用例: a.对所测APP划分模块 b.详细列出每个模块的功能点(使用Xmind绘制功能图) c.使用等价类划分.边界值.场景法等对各功能点编写测试用例(考虑中断功能测试用例) d.执行测试之后,反思总结补充相关用例 二. 1)未按需求实现bug.... 2)开发实现时遗漏备选流...备选流bug; 3)性能问题,性能不过关(开发实现时不做性能保证) 4)数据错误: 5)修改A功能影响到B功能不能正常用: 6)数据存储错误: 7)多个操作结合在

spark 整合 hive

spark-shell 整合 hive ------------------------------------------------------------------------------------------------------------------------------- 1.将 hive/conf/hive-site.xml 拷贝到 spark/conf 下 (目前只是在spark的master节点112,执行以下针对hive-site.xml 和各种jar的  操作,分

Spark 整合hive 实现数据的读取输出

实验环境: linux centOS 6.7 vmware虚拟机 spark-1.5.1-bin-hadoop-2.1.0 apache-hive-1.2.1 eclipse 或IntelJIDea 本次使用eclipse. 代码: import org.apache.spark.SparkConf; import org.apache.spark.api.java.JavaSparkContext; import org.apache.spark.sql.DataFrame; import o

QT环境搭建常见的bug解决 --&gt;ld: cannot find –lbootstrap 错误

常见错误列表 一.编译arm环境的时候: ./configure -prefix $HOME/Qtenv/arm -embedded arm-nomake docs -nomake demo -nomake examples 1.configure完成之后,make出现问题:/usr/bin/ld: cannot find –lbootstrap 错误 解决方法:提示找不到bootstrap库,而实际的qt中是由这个库的,就在src/tools/bootstrap/目录下,可以通过如下命令手动编

HIVE 0.11版本的bug

HIVE 0.11版本的bug 两次{{group by}}的bug  https://issues.apache.org/jira/browse/HIVE-5149 SELECT key, COUNT(*) FROM ( SELECT key, value, COUNT( * ) FROM src GROUP BY key, value ) a GROUP BY key; 特点是两次 group by ,外层字段少于内层,2次集合函数.可以把中间的查询做成临时表回避这个bug HIVE 0.1

Spark SQL Hive Support Demo

前提: 1.spark1.0的包编译时指定支持hive:./make-distribution.sh --hadoop 2.3.0-cdh5.0.0 --with-yarn --with-hive --tgz 2.安装完spark1.0: 3.安装与hadoop对应的CDH版本的hive: Spark SQL 支持Hive案例: 1.将hive-site.xml配置文件拷贝到$SPARK_HOME/conf下 hive-site.xml文件内容形如: <?xml version="1.0&

使用spark对hive表中的多列数据判重

本文处理的场景如下,hive表中的数据,对其中的多列进行判重deduplicate. 1.先解决依赖,spark相关的所有包,pom.xml spark-hive是我们进行hive表spark处理的关键. <dependencies> <dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-core_2.10</artifactId> <version

Spark和Hive的整合

Spark和Hive的整合 node1 spark master node2 hive 的服务端-->metastore server 1.拷贝 hive-site.xml 到 spark master的 conf 下 node1 <configuration> <property> <name>hive.metastore.uris</name> <value>thrift://node2:9083</value> <d