1. 程式人生 > >hive讀取es資料

hive讀取es資料

轉自:https://www.iteblog.com/archives/1857.html

 本文將介紹如何通過Hive來讀取中的資料,然後我們可以像操作其他正常Hive表一樣,使用Hive來直接操作中的資料,將極大的方便開發人員。本文使用的各元件版本分別為 Hive0.12、Hadoop-2.2.0、 2.3.4。

  我們先來看看ElasticSearch中相關表的mapping:

{ "user": { "properties": { "regtime": { "index": "not_analyzed",
"type": "string" }, "uid": { "type": "integer" }, "mobile": { "index": "not_analyzed", "type": "string" }, "username": { "index": "not_analyzed", "type": "string" } } } }

ElasticSearch中的index名為iteblog,type為user;user有regtime、uid、mobile以及username四個屬性。現在我們在Hive端進行操作。

  要讓Hive能夠操作ElasticSearch中的資料我們需要對Hive進行一些設定。值得高興的是,ElasticSearch官方為我們提供了一些類庫可以實現這些要求。我們需要引入相應的elasticsearch-hadoop-xxx.jar包,因為我們得ElasticSearch版本是2.x的,所以我們最少需要使用ES-Hadoop 2.2.x,本文使用的是elasticsearch-hadoop-2.3.4.jar,這個可以到Maven中央倉庫下載。要讓Hive能夠載入elasticsearch-hadoop-2.3.4.jar檔案有好幾種方式:

1、直接通過add命令載入,如下:

hive > ADD JAR /home/iteblog/elasticsearch-hadoop-2.3.4.jar; Added [/home/iteblog/elasticsearch-hadoop-2.3.4.jar] to class path Added resources: [/home/iteblog/elasticsearch-hadoop-2.3.4.jar]

2、我們還可以在啟動Hive的時候進行設定,如下:

$ bin/hive --auxpath=/home/iteblog/elasticsearch-hadoop-2.3.4.jar

3、我們還可以通過設定hive.aux.jars.path屬性來實現:

$ bin/hive -hiveconf hive.aux.jars.path=
Hive讀取HDFS上面的資料和使用Squirrel客戶端連線Hive

一、把資料從HDFS匯入到hive的表裡 前面已經測試了利用Sqoop把資料從SQL Server匯入到hdfs中,但是分成了好多小檔案,正在思考如何把很多小檔案一起匯入到hive裡面,突然想到可以用*來代替啊。 1.建表 在hive裡面建立好對應的表格  create t

通過spark-sql快速讀取hive中的資料

1 配置並啟動 1.1 建立並配置hive-site.xml 在執行Spark SQL CLI中需要使用到Hive Metastore,故需要在Spark中新增其uris。具體方法是將HIVE_CONF/hive-site.xml複製到SPARK_CONF目錄下,然後在該配置檔案中,新增hive.metast

sparksql讀取hive中的資料儲存到hdfs中

package wondersgroup_0905_Test import org.apache.spark.sql.SparkSession object sparkHive { def main(args: Array[String]): Unit = { //資料庫名稱

程式碼 | Spark讀取mongoDB資料寫入Hive普通表和分割槽表

版本: spark 2.2.0  hive 1.1.0  scala 2.11.8  hadoop-2.6.0-cdh5.7.0  jdk 1.8  MongoDB 3.6.4 一 原始資料及Hive表  MongoDB資

hivees之間實現資料互動

1、環境描述: hadoop叢集環境:hadoop-2.6.0;3臺叢集環境 hbase叢集環境:habase-1.1.2 ;3臺叢集環境 hive環境:hive-1.2.1;1臺測試環境 elasticsearch:elasticsearch-1.7.1測試環境 2、下載

資料匯入Hive資料庫中,使用python連結Hive讀取資料庫,轉化成pandas的dataframe

   做網際網路應用開發過程中,時常需要面對海量的資料儲存及計算,傳統的伺服器已經很難再滿足一些運算需求,基於hadoop/spark的大資料處理平臺得到廣泛的應用。本文提供一個匯入資料到hive,用python讀取hive資料庫的例子。這實際是個比較簡單的操作,但是還是

使用ES-Hadoop外掛通過Hive查詢ES中的資料

本來是想既然可以通過es-hadoop外掛用hive查詢es的資料,為啥不能用impala來做分析呢; 結果是hive查es成功了,impala查詢不了,悲劇,但還是記錄一下過程中遇到的問題,特別是日期格式轉換那裡搞了好久。 找了個簡單的es索引,就兩列

SparkSQL讀取Hive中的資料

注意紅色字。 ---------------------- 由於我Spark採用的是Cloudera公司的CDH,並且安裝的時候是線上自動安裝和部署的叢集。最近在學習SparkSQL,看到SparkSQL on HIVE。下面主要是介紹一下如何通過SparkSQL在

使用spark讀取es中的資料並進行資料清洗,使用fp-growth演算法進行加工

最近學了spark,用fg-growth演算法進行資料的關聯排序 object HelloPFg { def main(args: Array[String]) { val conf = new SparkConf().setAppName("Spark M

無法訪問J盤顯示磁盤結構損壞且無法讀取資料恢復辦法

位置不可用無法訪問硬盤數據恢復RAJ盤打不開磁盤結構損壞且無法讀取,是因為這個I盤的文件系統內部結構損壞導致的。要恢復裏面的數據就必須要註意,這個盤不能格式化,否則數據會進一步損壞。具體的恢復方法看正文 工具/軟件:星空數據恢復軟件 步驟1:先百度搜索並下載程序運行後,直接雙擊需要恢復的分區,接著解壓再右擊軟

讀取資料庫資料,以報表的形式顯示在前臺網頁(asp.net+echarts+ajax+資料庫)

1、首先在VS2010裡新建專案ASP.NET Web應用程式:WebApplication1; 在應用程式裡新建專案:WebForm.aspx(Web窗體),Model.cs(類),Controller.cs(類),Handler.ashx(一般處理程式),WebForm.js(JScript

【兩行命令】R語言讀取excel資料

安裝庫 安裝xlsx install.packages("xlsx") 使用 library(xlsx) ray = read.xlsx('D:/Code/R/Data in Excel/Chapter 8/gamma-ray.xls',1) 後面的引數,第一個放

Newtonsoft.Json.Linq物件讀取DataSet資料

Newtonsoft.Json.Linq物件讀取DataSet資料: private void button4_Click(object sender, EventArgs e)        {   &

pandas讀取20W資料excel,每999行生成一個查詢sql語句

前言 工作中遇到一個小問題,Oralce資料庫的查詢是不能大於1000條in查詢的,所以需要對檔案進行切割。資料來源是20w的excel資料,於是想到用pandas對其進行讀取,然後每998行生成一個新的sql檔案。 程式碼實現 # coding = utf-8 """ @

使用spark將hive中的資料匯入到mongodb

import com.huinong.truffle.push.process.domain.common.constant.Constants; import com.mongodb.spark.MongoSpark; import com.mongodb.spark.config.WriteConf

Pig指令碼從Hive中load資料並存入到Hbase中

1、我們先建一個Hive表test01: create table test01(name String, age int, phone String,province String, city String) ROW FORMAT DELIMITED FIELDS TERMINATED B

(六)Hive SQL之資料型別和儲存格式

(六)Hive SQL之資料型別和儲存格式   目錄 一、資料型別 1、基本資料型別 2、複雜型別 二、儲存格式 (1)textfile  (2)SequenceFile