1. 程式人生 > >Spark-sql與hive的結合環境配置

Spark-sql與hive的結合環境配置

轉:zx老師

########################################

alter database hive character set latin1;
ALTER TABLE hive.* DEFAULT CHARACTER SET latin1;
########################################
windows安裝mysql時候,選的字元編碼為utf-8, hive只認識latin1。  也可以在新建資料庫時候,選擇編碼格式。

1.安裝hive
CREATE USER 'hive'@'%' IDENTIFIED BY '123456';
GRANT all privileges ON hive.* TO 'hive'@'%';
flush privileges;


2.將配置好的hive-site.xml放入$SPARK-HOME/conf目錄下


3.啟動spark-shell時指定mysql連線驅動位置
bin/spark-shell \
 --master spark://node1.itcast.cn:7077 \
 --executor-memory 1g \
 --total-executor-cores 2 \
 --driver-class-path /usr/local/apache-hive-0.13.1-bin/lib/mysql-connector-java-5.1.35-bin.jar 


4.使用sqlContext.sql呼叫HQL
sqlContext.sql("select * from spark.person limit 2")


或使用org.apache.spark.sql.hive.HiveContext
import org.apache.spark.sql.hive.HiveContext
val hiveContext = new HiveContext(sc)
hiveContext.sql("select * from spark.person")


hive.xml

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!--
   Licensed to the Apache Software Foundation (ASF) under one or more
   contributor license agreements.  See the NOTICE file distributed with
   this work for additional information regarding copyright ownership.
   The ASF licenses this file to You under the Apache License, Version 2.0
   (the "License"); you may not use this file except in compliance with
   the License.  You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.
-->
<configuration>
	<property>
	  <name>javax.jdo.option.ConnectionURL</name>
	  <value>jdbc:mysql://172.16.0.1:3306/hive?createDatabaseIfNotExist=true</value>
	  <description>JDBC connect string for a JDBC metastore</description>
	</property>

	<property>
	  <name>javax.jdo.option.ConnectionDriverName</name>
	  <value>com.mysql.jdbc.Driver</value>
	  <description>Driver class name for a JDBC metastore</description>
	</property>

	<property>
	  <name>javax.jdo.option.ConnectionUserName</name>
	  <value>hive</value>
	  <description>username to use against metastore database</description>
	</property>

	<property>
	  <name>javax.jdo.option.ConnectionPassword</name>
	  <value>123456</value>
	  <description>password to use against metastore database</description>
	</property>
</configuration>



相關推薦

Spark-sqlhive結合環境配置

轉:zx老師 ######################################## alter database hive character set latin1; ALTER TABLE hive.* DEFAULT CHARACTER SET latin1

Spark SQL Hive 的第一場會師

“你好,一杯熱美式,加 2 份shot, 1 份焦糖,謝謝” L 跨進匯智國際中心大廈的 Starbucks, 拿著 iPhone 對著點餐機輕輕一掃,對黑帶服務員小妹丟擲一個笑臉。 “ L 先生,您的熱美式” “謝謝” 最近 1 禮拜,無論雙休還是工作日,L 每天基本都是同一時間,在早上 Starbucks

Spark SQLhive hbase mysql整合

虛擬機器環境:centos7 一、Spark SQL 與Hive整合(spark-shell) 1.需要配置的專案     1)將hive的配置檔案hive-site.xml拷貝到spark conf目錄,同時新增metastore的url配置。         執行

Spark SQLHive的關係

Shark為了實現Hive相容,在HQL方面重用了Hive中HQL的解析、邏輯執行計劃翻譯、執行計劃優化等邏輯,可以近似認為僅將物理執行計劃從MR作業替換成了Spark作業(輔以記憶體列式儲存等各種和Hive關係不大的優化);  同時還依賴Hive Metastore和Hi

Spark-Sql整合hive,在spark-sql命令和spark-shell命令下執行sql命令和整合調用hive

type with hql lac 命令 val driver spark集群 string 1.安裝Hive 如果想創建一個數據庫用戶,並且為數據庫賦值權限,可以參考:http://blog.csdn.net/tototuzuoquan/article/details/5

anysis中fluent VS2015 編譯 環境配置

file files pos post bsp ansys vs2015 x64 comm 環境:win10 64位+VS2015 32位 +ansys 16.0 配置:調到環境變量, 用戶變量 include C:\Program Files (x86)\Micros

spark sql 查詢hive表並寫入到PG中

clas sel append nec pro 增加 word postgres erro import java.sql.DriverManager import java.util.Properties import com.zhaopin.tools.{DateU

jdktomcat的環境配置

http title 速度 相同 安全 自己 IT 8.0 .net 一、JDK的安裝與配置 1、從官網下載jdk,註意是jdk不是jre。最好從官網下載,也可以直接度娘。 2、下載完畢後,安裝jdk,?直接按照安裝向導的提示安裝即可,安裝時可以自己選擇安裝路徑,我的安裝路

Maven學習 四 EclipseMaven結合配置

rep org 分享圖片 ror xml文件 設置 jpg 第一步 mirrorof 本問承接Maven學習 三 第一步:配置本地倉庫 (1)默認配置 查看 本地倉庫的位置是在一個叫做setting.xml的配置文件中設置,如果我們不配置,會使用開發工具自己集成的一個set

Presto-SQLHive-SQL區別聯絡

一、前言     Presto使用ANSI SQL語法和語義,而Hive使用類似SQL的語言,稱為HiveQL,它在MySQL(它本身與ANSI SQL有很多不同)之後進行了鬆散的建模。     二、使用下標來訪問陣列的動態索引而不

Spark SQL 訪問hive 出現異常:org.datanucleus.exceptions.NucleusDataStoreException

異常: org.datanucleus.exceptions.NucleusDataStoreException: Exception thrown obtaining schema column information from datastore 出現問題原因:  1、hi

Spark-Sql整合hive,在spark-sql命令和spark-shell命令下執行sql命令和整合呼叫hive

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

第四天 -- Accumulator累加器 -- Spark SQL -- DataFrame -- Hive on Spark

第四天 – Accumulator累加器 – Spark SQL – DataFrame – Hive on Spark 文章目錄 第四天 -- Accumulator累加器 -- Spark SQL -- DataFrame -- Hive on Spark

Spark sql操作Hive

這裡說的是最簡便的方法,通過Spark sql直接操作hive。前提是hive-site.xml等配置檔案已經在Spark叢集配置好。  val logger = LoggerFactory.getLogger(SevsSpark4.getClass)   def main(args:

Spark SQLHive資料來源複雜綜合案例實戰

一、Hive資料來源實戰 Spark SQL支援對Hive中儲存的資料進行讀寫。操作Hive中的資料時,必須建立HiveContext,而不是SQLContext。HiveContext繼承自SQLContext,但是增加了在Hive元資料庫中查詢表,以及用Hi

Mac python2.xpython3.x環境配置

問題:mac 只帶了python2.7,要想使用高版本的Python,如python3.x,只能再次安裝了,這樣就會遇到 兩個版本的切換問題了 如下圖 : 執行 which python 如下圖,檢視版本 vim ~/.bash_profi

spark sql: 操作hive

目標: 實現類似於navicat的功能=> 寫hql語句,在idea下使用spark sql 一鍵執行,而不用到shell視窗下執行命令 步驟: 寫sql檔案 (resources目錄)—> 讀取內容 --> 以 ‘;’ 解析每條命令 --

第69課:Spark SQL通過Hive資料來源實戰

內容:     1.Spark SQL操作Hive解析     2.SparkSQL操作Hive實戰 一、Spark SQL操作Hive解析     1.在目前企業級大資料Spark開發的時候,

spark sql 訪問Hive資料表

測試環境 hadoop版本:2.6.5 spark版本:2.3.0 hive版本:1.2.2 master主機:192.168.11.170 slave1主機:192.168.11.171 程式碼實現 針對Hive表的sql語句會轉化為MR程式,一般執行起來會比較耗時,spar

通過spark sql建立HIVE的分割槽表

今天需要通過匯入文字中的資料到HIVE資料庫,而且因為預設該表的資料會比較大,所以採用分割槽表的設計方案。將表按地區和日期分割槽。在這個過程出現過一些BUG,記錄以便後期檢視。 spark.sql("use oracledb") spark.sql("CREATE TABL