新聞中心
Hive數(shù)據(jù)庫是Apache Hadoop項目的一個分支,提供了一種將結(jié)構(gòu)化數(shù)據(jù)映射到Hadoop分布式文件系統(tǒng)中的機制。它允許用戶通過SQL查詢Hadoop數(shù)據(jù)源,并將結(jié)果轉(zhuǎn)換為常見數(shù)據(jù)格式,例如ON、CSV和Apache Parquet等,使得處理海量數(shù)據(jù)變得更加容易和高效。

但是,對于Hive數(shù)據(jù)庫來說,安全是一個非常重要的問題。其中一個重要的方面就是保護訪問密碼。在這篇文章中,我們將向大家介紹。
hive數(shù)據(jù)庫默認密碼
在安裝Hive數(shù)據(jù)庫之前,我們需要先安裝Hadoop并啟動它。Hive數(shù)據(jù)庫一般會綁定一個默認密碼,以確保訪問Hive數(shù)據(jù)庫的用戶有所限制,只有部分授權(quán)的用戶才能使用Hive。
事實上,Hive數(shù)據(jù)庫的默認密碼是“空密碼”。這意味著任何人都可以訪問Hive數(shù)據(jù)庫,只要他們能夠連接到Hive數(shù)據(jù)庫所在的服務(wù)器。因此,為了確保Hive數(shù)據(jù)庫的安全性,我們必須更改默認的密碼。
修改Hive數(shù)據(jù)庫密碼
為了保持Hive數(shù)據(jù)庫的安全性,我們可以采取以下步驟來修改密碼:
1.打開終端窗口,連接到Hive數(shù)據(jù)庫所在的計算機,并使用管理員權(quán)限運行終端。
2.啟動Hive服務(wù)器,并使用Hive管理員賬戶登錄到Hive終端窗口。
3.輸入以下命令更改Hive管理員賬戶的密碼:
ALTER USER hive_user SET PASSWORD ‘新密碼’;
4.確認新密碼是否成功設(shè)置:
SHOW USERS;
在這個步驟中,你也可以創(chuàng)建一個新用戶,并授權(quán)他們訪問Hive數(shù)據(jù)庫。而授予權(quán)限最簡單的方式是使用SQL語句:
GRANT ALL PRIVILEGES ON DATABASE sampledb TO sample_user;
通過這個SQL語句,sample_user可以獲得sampledb數(shù)據(jù)庫中所有表的操作權(quán)限。
在保護Hive數(shù)據(jù)庫安全的同時,更改默認密碼對于數(shù)據(jù)庫的管理員來說是必要的。新的密碼更好是強密碼,同時也應(yīng)該更具可讀性,方便管理員以后的記憶和使用。在此之后,我們也可以根據(jù)需要創(chuàng)建新用戶,并授權(quán)他們訪問Hive數(shù)據(jù)庫。這些步驟確保了Hive數(shù)據(jù)庫的安全性,以及維持了其穩(wěn)定性同時簡化了日常維護的任務(wù)。
成都網(wǎng)站建設(shè)公司-創(chuàng)新互聯(lián)為您提供網(wǎng)站建設(shè)、網(wǎng)站制作、網(wǎng)頁設(shè)計及定制高端網(wǎng)站建設(shè)服務(wù)!
Hive入門概述
1.1 什么是Hive
Hive:由Facebook開源用于解決海量結(jié)構(gòu)化日志的數(shù)據(jù)統(tǒng)計。
Hive是基于Hadoop的一個數(shù)據(jù)倉庫工具,可以將結(jié)構(gòu)化的數(shù)據(jù)文件映射為一張表,并提供類SQL查詢功能。本質(zhì)是:將HQL轉(zhuǎn)化成MapReduce程序
Hive處理的數(shù)據(jù)存儲在HDFS
Hive分析數(shù)據(jù)底層的實現(xiàn)是MapReduce
執(zhí)行程序運行在Yarn上
1.2 Hive的優(yōu)缺點
1.2.1 優(yōu)點
操作接口采用類SQL語法,提供快速開發(fā)的能力(簡單、容易上手)。
避免了去寫MapReduce,減少開發(fā)人員的學習成本。
Hive的執(zhí)行延遲比較高,因此Hive常用于數(shù)據(jù)分析,對實時性要求不高的場合。
Hive優(yōu)勢在于處理大數(shù)據(jù),對于處理小數(shù)據(jù)沒有優(yōu)勢,因為Hive的執(zhí)行延遲比較高。
Hive支持用戶自定義函數(shù),用戶可以根據(jù)自己的需求來實現(xiàn)自己的函數(shù)。
1.2.2 缺點
1.Hive的HQL表達能力有限
(1)迭代式算法無法表達
(2)數(shù)據(jù)挖掘方面不擅長
2.Hive的效率比較低
(1)Hive自動生成的MapReduce作業(yè),通常情況下不夠智能化
(2)Hive調(diào)優(yōu)比較困難,粒度較粗
1.3 Hive架構(gòu)原理
1.用戶接口:Client
CLI(hive shell)、JDBC/ODBC(java訪問hive)、WEBUI(瀏覽器訪問hive)
2.元數(shù)據(jù):Metastore
元數(shù)據(jù)包括:表名、表所屬的數(shù)據(jù)庫(默認是default)、表的擁有者、列/分區(qū)字段、表的類型(是否是外部表)、表的數(shù)據(jù)所在目錄等;
默認存儲在自帶的derby數(shù)據(jù)庫中,推薦使用MySQL替代derby存儲Metastore
3.Hadoop
使用HDFS進行存儲,使用MapReduce進行計算。
4.驅(qū)動器:Driver
(1)解析器(SQL Parser):將SQL字符串轉(zhuǎn)換成抽象語法樹AST,這一步一般都用第三方工具庫完成,比如antlr;對AST進行語法分析,比如表是否存在、字段是否存在、SQL語義是否有誤。
(2)編譯器(Physical Plan):將AST編譯生成邏輯執(zhí)行計劃。
(3)優(yōu)化器(Query Optimizer):對邏輯執(zhí)行計劃進行優(yōu)化。
(4)執(zhí)行器(Execution):把遲態(tài)邏輯執(zhí)行計劃轉(zhuǎn)換成可以運行的物理計劃。對于Hive來說,就是MR/Spark。
Hive通過給用戶提供的一系列交互接口,接收到用戶的指令(SQL),使用自己的Driver,結(jié)合元數(shù)據(jù)(MetaStore),將這些指令翻譯成MapReduce,提交段帆到Hadoop中執(zhí)行,最后,將執(zhí)行返回的結(jié)果輸出到用戶交互接口。
1.4 Hive和數(shù)據(jù)庫比較
由于 Hive 采用了類似SQL 的查詢語言 HQL(Hive Query Language),因此很容易將 Hive 理解為數(shù)據(jù)庫。其實從結(jié)構(gòu)上來看,Hive 和數(shù)據(jù)庫除了擁有類似的查詢語言,再無類似之處。本文將從多個方面來闡述 Hive 和數(shù)據(jù)庫的差異。數(shù)據(jù)庫可以用在 Online 的應(yīng)用中,但是Hive 是為數(shù)據(jù)倉庫而設(shè)計的,清楚這一點,有助于從應(yīng)用角度理解 Hive 的特性。
1.4.1 查詢語言
由于SQL被廣泛的應(yīng)用在數(shù)據(jù)倉庫中,因此,專門針對Hive的特性設(shè)計了類SQL的查詢語言HQL。熟悉SQL開發(fā)的開發(fā)者可以很方便的使用Hive進行開發(fā)。
1.4.2 數(shù)據(jù)存儲位置
Hive 是建立在 Hadoop 之上的,所有 Hive 的數(shù)據(jù)都是存儲在 HDFS 中的。而數(shù)據(jù)庫則可以將數(shù)據(jù)保存在塊設(shè)備或者本地文件系統(tǒng)中。
1.4.3 數(shù)據(jù)更新
由于Hive是針對數(shù)據(jù)倉庫應(yīng)用設(shè)計的,而數(shù)據(jù)倉庫的內(nèi)容是讀多寫少的。因此,Hive中不建議對數(shù)據(jù)的改寫,所有的數(shù)據(jù)都是在加載的時候確定好的。而數(shù)據(jù)庫中的數(shù)據(jù)通常是需要經(jīng)常進行修改的,因此可以使用 INSERT INTO … VALUES 添加數(shù)據(jù),使用 UPDATE … SET修碼燃源改數(shù)據(jù)。
1.4.4 索引
Hive在加載數(shù)據(jù)的過程中不會對數(shù)據(jù)進行任何處理,甚至不會對數(shù)據(jù)進行掃描,因此也沒有對數(shù)據(jù)中的某些Key建立索引。Hive要訪問數(shù)據(jù)中滿足條件的特定值時,需要暴力掃描整個數(shù)據(jù),因此訪問延遲較高。由于 MapReduce 的引入, Hive 可以并行訪問數(shù)據(jù),因此即使沒有索引,對于大數(shù)據(jù)量的訪問,Hive 仍然可以體現(xiàn)出優(yōu)勢。數(shù)據(jù)庫中,通常會針對一個或者幾個列建立索引,因此對于少量的特定條件的數(shù)據(jù)的訪問,數(shù)據(jù)庫可以有很高的效率,較低的延遲。由于數(shù)據(jù)的訪問延遲較高,決定了 Hive 不適合在線數(shù)據(jù)查詢。
1.4.5 執(zhí)行
Hive中大多數(shù)查詢的執(zhí)行是通過 Hadoop 提供的 MapReduce 來實現(xiàn)的。而數(shù)據(jù)庫通常有自己的執(zhí)行引擎。
1.4.6 執(zhí)行延遲
Hive 在查詢數(shù)據(jù)的時候,由于沒有索引,需要掃描整個表,因此延遲較高。另外一個導致 Hive 執(zhí)行延遲高的因素是 MapReduce框架。由于MapReduce 本身具有較高的延遲,因此在利用MapReduce 執(zhí)行Hive查詢時,也會有較高的延遲。相對的,數(shù)據(jù)庫的執(zhí)行延遲較低。當然,這個低是有條件的,即數(shù)據(jù)規(guī)模較小,當數(shù)據(jù)規(guī)模大到超過數(shù)據(jù)庫的處理能力的時候,Hive的并行計算顯然能體現(xiàn)出優(yōu)勢。
1.4.7 可擴展性
由于Hive是建立在Hadoop之上的,因此Hive的可擴展性是和Hadoop的可擴展性是一致的(世界上更大的Hadoop 集群在 Yahoo!,2023年的規(guī)模在4000 臺節(jié)點左右)。而數(shù)據(jù)庫由于 ACID 語義的嚴格限制,擴展行非常有限。目前更先進的并行數(shù)據(jù)庫 Oracle 在理論上的擴展能力也只有100臺左右。
1.4.8 數(shù)據(jù)規(guī)模
由于Hive建立在集群上并可以利用MapReduce進行并行計算,因此可以支持很大規(guī)模的數(shù)據(jù);對應(yīng)的,數(shù)據(jù)庫可以支持的數(shù)據(jù)規(guī)模較小。
怎樣查看hive建的外部表的數(shù)據(jù)庫
進入HIVE之前要把HADOOP給啟動起來,因為HIVE是基于HADOOP的。所有的MR計算都是在HADOOP上面進行的。
在命令行中輸入:hive。這個時候就可以順利的進入HIVE了。當然了,如果你想直接執(zhí)行HQL腳本文件可以這樣:hive -f xxxxx.hql。
進入hive之后一一般默認的數(shù)據(jù)庫都是default。如果你切穗慧換數(shù)據(jù)庫的話所建的表都會是在default數(shù)據(jù)庫里面。
創(chuàng)建數(shù)據(jù)庫的語法是:激族巧create database database_name;非常簡單的,其實hive跟mysql的語法還是比較相似的。為什么呢?請明鍵繼續(xù)往下
切換數(shù)據(jù)庫的時候可以輸入:use database_name;
查看所有數(shù)據(jù)庫的時候可以輸入:show databases;
查看所有表的時候可以輸入:show tables
看表結(jié)構(gòu)的時候可以輸入:describe tab_name;
關(guān)于hive數(shù)據(jù)庫默認密碼的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。
四川成都云服務(wù)器租用托管【創(chuàng)新互聯(lián)】提供各地服務(wù)器租用,電信服務(wù)器托管、移動服務(wù)器托管、聯(lián)通服務(wù)器托管,云服務(wù)器虛擬主機租用。成都機房托管咨詢:13518219792
創(chuàng)新互聯(lián)(www.cdcxhl.com)擁有10多年的服務(wù)器租用、服務(wù)器托管、云服務(wù)器、虛擬主機、網(wǎng)站系統(tǒng)開發(fā)經(jīng)驗、開啟建站+互聯(lián)網(wǎng)銷售服務(wù),與企業(yè)客戶共同成長,共創(chuàng)價值。
網(wǎng)站標題:Hive數(shù)據(jù)庫默認密碼及其修改方法(hive數(shù)據(jù)庫默認密碼)
網(wǎng)站鏈接:http://m.fisionsoft.com.cn/article/cdheise.html


咨詢
建站咨詢
