<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
hive: 由 Facebook 開源用於解決海量結構化紀錄檔的資料統計工具。
Hive 是基於 Hadoop 的一個資料倉儲工具,可以將結構化的資料檔案對映為一張表,並提供類 SQL 查詢功能。
優點:
缺點:
Hive資料可區分為表資料和後設資料,表資料我們都知道是表中的資料,而後設資料是用來儲存表的名字、列、表分割區以及屬性
Hive是基於Hadoop分散式檔案儲存的,它的資料儲存在HDFS中。現在我們介紹Hive中常見的資料匯入方式
#1.演示從本地裝載資料到hive #1.1建立表 create table student(id string, name string) row format delimited fields terminated by 't'; #1.2載入原生的檔案到hive load data local inpath '/root/student.txt' into table default.student; #default.test 資料庫.表名 也可直接表名 #2.演示載入HDFS檔案到hive中 #2.1 將檔案上傳到HDFS根目錄 dfs -put /root/student.txt /; #2.2載入HDFS上的資料 load data inpath '/student.txt' into table test.student; #3.載入資料覆蓋表中原有的資料 #3.1上傳檔案到HDFS中 dfs -put /root/student.txt /; #將檔案裝載到表下 檔案就相當於Windows中的剪下操作 #3.2載入資料覆蓋表中原有資料 load data inpath '/student.txt' overwrite into table test.student; #4.查詢表 select * from student;
#通過查詢語句向表中插入資料(insert) #1.1建立表 create table student_par(id int,name String) row format delimited fields terminated by 't'; #1.2通過insert插入資料 insert into table student_par values(1,'zhangsan'),(2,'lisi');
使用者介面
CLI(command-line interface)、JDBC/ODBC(jdbc 存取 hive)、WEBUI(瀏覽器存取 hive)
後設資料
後設資料包括:表名、表所屬的資料庫(預設是 default)、表的擁有者、列/分割區欄位、表的型別(是否是外部表)、表的資料所在目錄等
Hadoop
使用 HDFS 進行儲存,使用 MapReduce 進行計算。
驅動器:Driver
(1)解析器(SQL Parser):將 SQL 字串轉換成抽象語法樹 AST,這一步一般都用第三方工具庫完成,比如 antlr;對 AST 進行語法分析,比如表是否存在、欄位是否存在、SQL語意是否有誤。
(2)編譯器(Physical Plan):將 AST 編譯生成邏輯執行計劃。
(3)優化器(Query Optimizer):對邏輯執行計劃進行優化。
(4)執行器(Execution):把邏輯執行計劃轉換成可以執行的物理計劃。對於 Hive 來說,就是 MR/Spark。
這是預設的檔案格式。資料不會壓縮處理,磁碟開銷大,資料解析開銷也大。
SequenceFile
這是HadooAPI提供的一種二進位制檔案支援,以二進位制的形式序列化到檔案中。
這種格式是行列儲存結構的儲存方式。
Optimized Row Columnar ORC檔案格式是一種Hadoop生態圈中的列式儲存格式。
ORC的優勢:
ORC檔案格式是以二進位制方式儲存的,所以是不可直接讀取的。
將HQL轉換成MapReduce程式。
簡單來說Hive就是一個查詢引擎。當Hive接受到一條SQL語句會執行如下操作:
Hive展現的MapReduce任務設計到元件有:
Hive支援兩種資料型別,一種原子資料型別、還有一種叫複雜資料型別。
基本資料型別 | ||
---|---|---|
型別 | 描述 | 範例 |
TINYINT | 1位元組有符合整數 | 1 |
SMALLINT | 2位元組有符號整數 | 1 |
INT | 4位元組有符號整數 | 1 |
BIGINT | 8位元組有符號整數 | 1 |
FLOAT | 4位元組單精度浮點數 | 1.0 |
DOUBLE | 8位元組雙精度浮點數 | 1.0 |
BOOLEAN | true/false | true |
STRING | 字串 | “hive”,‘hive’ |
Hive型別中的String資料型別類似於MySQL中的VARCHAR。該型別是一個可變的字串。
Hive支援資料型別轉換,Hive是用Java編寫的,所以資料型別轉換規則遵循Java :
隱式轉換 --> 小轉大
強制轉換 --> 大傳小
型別 | 描述 | 範例 |
---|---|---|
ARRAY | 有序的欄位。字元型別必須相同 | ARRAY(1,2) |
MAP | 無序的鍵值對。建的型別必須是原子的,值可以是任何型別。 | Map(‘a’,1,‘b’,2) |
STRUCT | 一組命名的欄位。欄位型別可以不同 | STRUCT(‘a’,1,1,0) |
到此這篇關於一文了解Hive是什麼的文章就介紹到這了,更多相關Hive是什麼內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45