中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Hadoop的相關資料

發布時間:2020-07-03 16:19:25 來源:網絡 閱讀:1713 作者:tanzhenchao 欄目:數據庫

1 HDFS

1.1 概念

Hadoop分布式文件系統(HDFS)被設計成適合運行在通用硬件(commodity hardware)上的分布式文件系統

1.2 特點

- 高度容錯性

- 硬件要求低

- 能提供高吞吐量的數據訪問

1.3 文件系統命令行

1.3.1 獲取幫助

hadoop fs -help

1.3.2 ls命令

hadoop fs -ls /
hadoop fs -ls -R /user

1.3.3 getconf命令

 hdfs getconf -help
hdfs getconf -namenodes

1.3.4 版本信息

hdfs version

注:由于與linux系統指令用法接近,詳細請參閱文后的官方鏈接。

2 MapReduce

2.1 MapReduce的簡介

MapReduce是一種編程模型,用于大規模數據集(大于1TB)的并行運算。

2.2 工作原理

假若一個盤子中有黑豆、黃豆、綠豆、紅豆,你現在想挑出其中的紅豆。

MapReduce方法則是:

step1 找一個團隊來處理(相當于一群服務器組成的集群)

step2 把豆子平均分配給團隊里的每成員(相當于給群集中的服務器分配數據)

step3 讓團隊的成員開始挑選出其中的紅豆(相當于群集的計算機并行地處理數據)

step4 把團隊成員挑出來的豆子匯聚(相當于群集匯總并輸出結果)

3 Hive

3.1 Hive的簡介

3.1.1 概念

Hive是一個基于Hadoop的數據倉庫平臺。

3.1.2 Hive的作用

通過hive,我們可以方便地進行ETL的工作

hive定義了一個類似于SQL的查詢語言

HQL能夠將用戶編寫的QL轉化為相應的Mapreduce程序基于Hadoop執行

3.1.3 Hive項目的歷史

Hive是Facebook 2008年8月剛開源的一個數據倉庫框架,其系統目標與Pig有相似之處,但它有一些Pig目前還不支持的機制。

比如:更豐富的類型系統、更類似SQL的查詢語言、Table/Partition元數據的持久化等。

4 impala

4.1 Impala的簡介

Impala 是 Cloudera 在受到 Google 的 Dremel 啟發下開發的實時交互 SQL 大數據查詢工具,Impala 沒有再使用緩慢的 Hive+MapReduce 批處理,而是通過使用與商用并行關系數據庫中類似的分布式查詢引擎(由 Query Planner、Query Coordinator 和 Query Exec Engine 三部分組成),可以直接從 HDFS 或 HBase 中用 SELECT、JOIN 和統計函數查詢數據,從而大大降低了延遲。

4.2 Impala的shell

4.2.1 啟動shell

impala-shell

4.2.2 版本查詢

select version();

4.3 庫的操作

4.3.1 查詢數據庫

show databases;

4.3.2 創建數據庫

create database testdb;
create database testdb2;

數據庫存儲路徑:

hdfs dfs -ls /user/hive/warehouse/

4.3.3 使用數據庫

use testdb;

4.3.4 顯示當前數據庫

select current_database();

4.3.5 刪除數據庫

drop database testdb;

4.4 表操

4.4.1 創建表

create table t1 (x int);
create table t3 (id int, word string);
create table city (id int,name string,countrycode string,district string,population int);

4.4.2 顯示數據庫中的表

show tables;
show tables in testdb;
show tables in testdb like 't*';

4.4.3 表結構描述

 describe city;

4.4.4 修改表名稱

alter table t3 rename to t2;

4.4.5 插入數據

insert into t1 values (1),(3),(2),(4);
insert into t2 values (1, "one"), (3, "three"), (5, 'five');

4.4.6 數據查詢

select min(x), max(x), sum(x), avg(x) from t1;
select word from t1 join t2 on (t1.x = t2.id);

5 sentry

5.1 開啟權限

5.1.1 開啟權限

Hive/Impala > Configuration > Service-Wide > Sentry Service > 選擇“sentry”

5.1.2 指定認證服務器

Hive > Configuration > Service-Wide > Advanced > Server Name for Sentry Authorization(hive.sentry.server) > 填寫sentry服務器名稱或IP地址

5.1.3 設置特權用戶

Hive > Configuration > Service-Wide > Security > Bypass Sentry Authorization Users(sentry.metastore.service.users) > 填寫繞過的linux用戶名(hive,impala,hue,hdfs等)

5.1.4 配置Hive的代理用戶

HDFS > Configuration > Service-Wide > Proxy > Hive Proxy User Groups(hadoop.proxyuser.hive.groups) > 填寫代理的linux用戶名(hive,impala,hue,hdfs等)

5.1.5 重啟服務

重啟Hive/Impala的服務

5.2 授權

5.2.1 創建數據庫用戶和組

groupadd gp1
useradd user1 -G gp1
useradd user2 -G gp1

5.2.2 切換執行用

su - impala

5.2.3 創建數據庫

切換到hive shell

hive

新建庫

create database testdb;

退出hive shell

quit;

5.2.4 創建角色

切換到impala shell

impala-shell

創建角色

create role ro1;

5.2.5 確認創建的角色

show roles;

5.2.6 用戶組和角色的關聯

grant role ro1 to group gp1;

5.2.7 角色授權

grant all on database testdb to role ro1;

參閱資料:

==================================================

Docs:

----------------

http://hadoop.apache.org/docs/current/


Hadoop Common Guide:

---------------------

http://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-hdfs/HDFSCommands.html

File System Shell Guide:

http://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/FileSystemShell.html#Overview


MapReduce Common Guide:

------------------------

http://hadoop.apache.org/docs/current/hadoop-mapreduce-client/hadoop-mapreduce-client-core/MapredCommands.html


Hive Docs

-------------------------

http://hive.apache.org

LanguageManual:

https://cwiki.apache.org/confluence/display/Hive/LanguageManual

GettingStarted:

https://cwiki.apache.org/confluence/display/Hive/GettingStarted

User Documentation:

https://cwiki.apache.org/confluence/display/Hive/Home#Home-UserDocumentation


Impala Docs

--------------------------

Impala SQL

http://www.cloudera.com/documentation/enterprise/5-6-x/topics/impala_langref_sql.html#langref_sql

Impala Tutorials

http://www.cloudera.com/documentation/enterprise/latest/topics/impala_tutorial.html

Impala Explore

http://www.cloudera.com/documentation/enterprise/latest/topics/impala_tutorial.html#tutorial_explore


Sentry Docs

----------------------------------

Overview of Impala Security

http://www.cloudera.com/documentation/enterprise/5-7-x/topics/impala_security.html#security

Enabling Sentry Authorization for Impala

http://www.cloudera.com/documentation/enterprise/5-7-x/topics/impala_authorization.html#authorization

Impala Grant

http://www.cloudera.com/documentation/enterprise/5-6-x/topics/impala_grant.html#grant

Hive Grant

http://www.cloudera.com/documentation/enterprise/5-6-x/topics/sg_hive_sql.html#concept_c2q_4qx_p4__col_level_auth_sentry

Disabling Hive CLI

http://www.cloudera.com/documentation/enterprise/5-6-x/topics/sg_sentry_overview.html


======================================

其他參考:

======================================

ETL的概念:

----------

http://www.cnblogs.com/elaron/archive/2012/04/09/2438372.html


Apache Sentry架構介紹

http://blog.javachen.com/2015/04/29/apache-sentry-architecture.html


啟用Kerberos認證

http://www.cloudera.com/documentation/enterprise/latest/topics/cm_sg_intro_kerb.html#xd_583c10bfdbd326ba--6eed2fb8-14349d04bee--76dd


Impala的架構介紹

http://www.mutouxiaogui.cn/blog/?p=319


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

安福县| 临邑县| 富平县| 黄梅县| 梓潼县| 双城市| 息烽县| 库伦旗| 若尔盖县| 丽水市| 城固县| 河津市| 犍为县| 舟曲县| 五台县| 平阳县| 铅山县| 衡阳市| 资阳市| 屏边| 扎赉特旗| 涡阳县| 成武县| 兴化市| 德兴市| 平泉县| 元阳县| 长沙县| 定远县| 阿拉尔市| 白银市| 青海省| 沾化县| 玉田县| 宁远县| 张家口市| 竹溪县| 西贡区| 芜湖市| 莱州市| 白朗县|