大數(shù)據(jù)技術(shù)是近些年來比較熱門的一種IT技術(shù),大數(shù)據(jù)技術(shù)的應用給我們生活帶來了許多便利,很多人意識到了大數(shù)據(jù)技術(shù)的意義,部分人參與到了大數(shù)據(jù)的學習當中,既然是對數(shù)據(jù)的處理,就會用到數(shù)據(jù)庫,那么大數(shù)據(jù)學習什么數(shù)據(jù)庫呢?
在學習大數(shù)據(jù)中所要運用到的數(shù)據(jù)庫之前需要先學習MySQL數(shù)據(jù)庫及SQL語言和JDBC。
一、MySQL數(shù)據(jù)庫
1、MySQL數(shù)據(jù)庫
MySQL是一個關(guān)系型數(shù)據(jù)庫管理系統(tǒng),關(guān)系數(shù)據(jù)庫將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個大的倉庫中,這提高了速度和靈活性。
學習內(nèi)容:
① MySQL安裝
② 常見命令使用
③ 表與數(shù)據(jù)庫操作
④ 約束
MySQL所使用的SQL語言是用于訪問數(shù)據(jù)庫的最常用標準化語言,接下來將介紹SQL語言的概念及學習內(nèi)容。
2、SQL語言
SQL是一種操作數(shù)據(jù)庫的語言,這種語言具有交互性特點,能為用戶提供極大的便利,數(shù)據(jù)庫管理系統(tǒng)應充分利用SQL語言,提高計算機應用系統(tǒng)的質(zhì)量和效率。SQL語言不僅可以獨立應用于終端,而且可以作為一個子語言來為其他程序設計提供有效的幫助,在這個程序應用中,SQL可以與其他程序語言一起優(yōu)化程序功能,從而為用戶提供越來越全面的信息。
優(yōu)點:
① 非過程化語言
② 統(tǒng)一的語言
③ 是所有關(guān)系型數(shù)據(jù)庫的公共語言
SQL包括了所有對數(shù)據(jù)庫的操作,主要是由五個部分組成:
① 數(shù)據(jù)定義:別稱“DDL語言”,定義數(shù)據(jù)庫的邏輯結(jié)構(gòu)(數(shù)據(jù)庫、基本表、視圖、索引)。
② 數(shù)據(jù)操縱:別稱“DML語言”,含插入、刪除和更新三種操作。
③ 數(shù)據(jù)查詢:別稱“DQL語言”,包括數(shù)據(jù)查詢操作。
④ 數(shù)據(jù)控制:別稱“DCL語言”,對用戶訪問數(shù)據(jù)的控制有基本表和視圖的授權(quán)及回收。
⑤ 事務控制:別稱“TCL語言”,包括事務的提交與回滾。
SQL學習內(nèi)容:
① SQL語句基本操作
② 常用函數(shù)、分組函數(shù)、多表查詢
③ 子查詢、存儲過程、事務、視圖、觸發(fā)器
3、JDBC
JDBC一般指Java數(shù)據(jù)庫鏈接,是Java語言中用來規(guī)范客戶端程序如何訪問數(shù)據(jù)庫應用程序接口,提供諸如查詢和更新數(shù)據(jù)庫數(shù)據(jù)的方法。
學習內(nèi)容:
① JDBC連接數(shù)據(jù)庫常用接口使用
② 結(jié)果集處理
③ Statement 和PreparedStatement區(qū)別
④ 事務處理
學習以上內(nèi)容后,會讓人更容易學習并理解大數(shù)據(jù)所要使用到的數(shù)據(jù)庫及相關(guān)工具框架。
二、HBase
HBase全稱為Hadoop Database,是一個高可靠性、高性能、面向列、可伸縮的分布式存儲系統(tǒng),HBase不同于一般的關(guān)系數(shù)據(jù)庫,它是一個適合于非結(jié)構(gòu)化數(shù)據(jù)存儲的數(shù)據(jù)庫。
HBase學習內(nèi)容:
① HBase模型坐標結(jié)構(gòu)訪問場景
② HBase訪問Shell接口
③ HBase訪問API接口
④ HBaseRowkey設計
⑤ HBase合并分裂數(shù)據(jù)定位
三、MongoDB
MongoDB是一個基于分布式文件存儲的數(shù)據(jù)庫,一個介于關(guān)系數(shù)據(jù)庫和非關(guān)系數(shù)據(jù)庫之間的產(chǎn)品,是非關(guān)系數(shù)據(jù)庫當中功能最豐富,最像關(guān)系數(shù)據(jù)庫的一種數(shù)據(jù)庫。它支持非常松散的數(shù)據(jù)結(jié)構(gòu),類似于JSON的bson格式,因此可以存儲更復雜的數(shù)據(jù)類型。Mongo最重要的特性是它支持的查詢語言非常強大。它的語法有點類似于面向?qū)ο蟮牟樵冋Z言。它幾乎可以實現(xiàn)大多數(shù)類似關(guān)系數(shù)據(jù)庫單表查詢的功能,并且支持數(shù)據(jù)的索引。
學習內(nèi)容:
① MongoDB 原理概念模型場景
② MongoDB :CRUD操作
③ MongoDB 工具、安全和用戶管理
四、Redis
Redis全稱為Remote Dictionary Server,即遠程字典服務,是NoSQL數(shù)據(jù)庫中使用較為廣泛的非關(guān)系型內(nèi)存數(shù)據(jù)庫,一個用ANSIC語言編寫的開源日志類型和Key-Value數(shù)據(jù)庫,支持網(wǎng)絡化、基于內(nèi)存和持久化。它還提供多種語言的API。
Redis學習內(nèi)容:
① Redis安裝
② Redis配置
③ Redis持久化RDB與AOF
④ Redis操作
⑤ Redis Sentinel
⑥ Redis Cluster
在上面對于Redis的介紹中,有介紹到Redis是NoSQL數(shù)據(jù)庫中使用較為廣泛的非關(guān)系型內(nèi)存數(shù)據(jù)庫,那么NoSQL數(shù)據(jù)庫是什么?下面將會簡短的介紹一下NoSQL數(shù)據(jù)庫:
NoSQL僅僅是一個概念,泛指非關(guān)系型的數(shù)據(jù)庫,區(qū)別于關(guān)系型數(shù)據(jù)庫,不保證關(guān)系數(shù)據(jù)的ACID特性。特點是易擴展、大數(shù)據(jù)量與高性能、靈活的數(shù)據(jù)模型、高可用。
五、Hive
Hive是基于Hadoop的一個數(shù)據(jù)倉庫工具,用來進行數(shù)據(jù)提取、轉(zhuǎn)化、加載,是一種可以存儲、查詢和分析存儲在Hadoop中的大規(guī)模數(shù)據(jù)的機制。Hive數(shù)據(jù)倉庫工具可以將結(jié)構(gòu)化數(shù)據(jù)文件映射到數(shù)據(jù)庫表,并提供SQL查詢功能,它可以將SQL語句轉(zhuǎn)換為MapReduce任務執(zhí)行。Hive具有學習成本低的優(yōu)點。它可以通過類似的SQL語句實現(xiàn)快速的MapReduce統(tǒng)計,使MapReduce更簡單,而不需要開發(fā)特殊的MapReduce應用程序。Hive非常適合于數(shù)據(jù)倉庫的統(tǒng)計分析。
Hive學習內(nèi)容:
① HIve體系結(jié)構(gòu)機制場景
② HiveDDL操作
③ Hive 文件格式和DML操作
④ HiveDQL操作
⑤ Hive客戶端
⑥ Hive函數(shù)操作
⑦ Hive性能優(yōu)化
六、ES
ES全稱為ElasticSearch,是一個基于Lucene的搜索服務器,也是一種流行的企業(yè)級搜索引擎。它提供了一個分布式多用戶能力的全文搜索引擎,基于RESTful web接口。Elasticsearch用于云計算中,能夠達到實時搜索,穩(wěn)定,可靠,快速,安裝使用方便。
學習內(nèi)容:
① ElasticSearch概念
② 倒排索引與分詞原理
③ ElasticSearch 分布式搭建
④ Mapping設置
⑤ ElasticSearch 基本索引
⑥ ElasticSearch 高級索引
⑦ ElasticSearch 的運行機制
在大數(shù)據(jù)技術(shù)中,數(shù)據(jù)庫是必不可少的一部分,以上內(nèi)容就是我們學習大數(shù)據(jù)技術(shù)時所要學習到數(shù)據(jù)庫,現(xiàn)在大家知道了大數(shù)據(jù)學習什么數(shù)據(jù)庫了嗎?
來源:互聯(lián)網(wǎng)