Spark SQL:使用数据源之使用Hive Table

一.使用Hive Table(把Hive中的数据,读取到Spark SQL 中)

1.首先,搭建Hive的环境(分离式)

(1)关系:搭建分离式的Hive,

  • 一台机器用作Hive Server(hadoop2),
  • 一台机器用作Hive Client(hadoop3)

(2)配置hive环境,见前面的文章
(3)修改两台机器的hive-site.xml文件
这两台hive中其他配置文件一样,只有hive-site.xml有区别

(a)其中Hive Server的hive-site.xml配置如下:

<configuration> 
    <property> 
        <name>hive.metastore.warehouse.dir</name>  
        <value>/user/hive/warehouse</value> 
    </property>  
    <property> 
        <name>javax.jdo.option.ConnectionURL</name>  
        <value>jdbc:mysql://hadoop1:3306/metastore1?serverTimezone=UTC</value> 
    </property>  
    <property> 
        <name>javax.jdo.option.ConnectionDriverName</name>  
        <value>com.mysql.jdbc.Driver</value> 
    </property>  
    <property> 
        <name>javax.jdo.option.ConnectionUserName</name>  
        <value>root</value> 
    </property>  
    <property> 
        <name>javax.jdo.option.ConnectionPassword</name>  
        <value>123456</value> 
    </property>  
    <property> 
        <name>hive.querylog.location</name>  
        <value>/data/hive/iotmp</value> 
    </property>  
    <property> 
        <name>hive.server2.logging.operation.log.location</name>  
    <value>/data/hive/operation_logs</value> 
    </property>  
    <property> 
        <name>datanucleus.readOnlyDatastore</name>  
        <value>false</value> 
    </property>  
    <property> 
        <name>datanucleus.fixedDatastore</name>  
        <value>false</value> 
    </property>  
    <property> 
        <name>datanucleus.autoCreateSchema</name>  
        <value>true</value> 
    </property>  
    <property> 
        <name>datanucleus.autoCreateTables</name>  
        <value>true</value> 
    </property>  
    <property> 
        <name>datanucleus.autoCreateColumns</name>  
        <value>true</value> 
    </property> 
    <property>
        <name>datanucleus.schema.autoCreateAll</name>
        <value>true</value>
    </property>
</configuration>

(b)Hive Client 中hive-site.xml配置如下:

<configuration>
    <property>
        <name>hive.metastore.warehouse.dir</name>
        <value>/user/hive/warehouse</value>
    </property>
    <property>
         <name>hive.metastore.local</name>
         <value>false</value>
    </property>
    <property>
        <name>hive.metastore.uris</name>
        <value>thrift://192.168.1.122:9083</value>
    </property>
</configuration>    
Hive Client
2.配置Spark SQL支持Hive

(1)只需要将以下文件拷贝到$SPARK_HOME/conf的目录下,即可

  • $HIVE_HOME/conf/hive-site.xml(拷贝Hive Client中的hive-site.xml)
  • $HADOOP_CONF_DIR/core-site.xml
  • $HADOOP_CONF_DIR/hdfs-site.xml


3.启动Hadoop集群
4.启动hive:

(1)hadoop2机器:启动Hive Server

cd /opt/module/hive-1.2.1

bin/hive --service metastore
Hive Server

(2)hadoop3机器:启动Hive Client

cd /opt/module/hive-1.2.1

bin/hive
Hive Client
5.使用Spark Shell操作Hive

(1)启动Spark Shell的时候,需要使用--jars指定mysql的驱动程序

启动Spark

cd /opt/module/spark-2.1.0-bin-hadoop2.7

bin/spark-shell --master spark://hadoop1:7077

spark.sql("select * from default.emp").show
查询Hive中的表

(2)创建表

spark.sql("create table movle.src (key INT, value STRING) row format    delimited fields terminated by ','")
创建表1
创建表2

(3)导入数据

spark.sql("load data local path '/root/temp/data.txt' into table src")

(4)查询数据

spark.sql("select * from src").show
6.使用spark-sql操作Hive

(1)启动spark-sql的时候,需要使用--jars指定mysql的驱动程序
(2)操作Hive

spark.sql("show tables").show
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,544评论 6 501
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,430评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,764评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,193评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,216评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,182评论 1 299
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,063评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,917评论 0 274
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,329评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,543评论 2 332
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,722评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,425评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,019评论 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,671评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,825评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,729评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,614评论 2 353