區(qū)別:1、hive是hql語言,mysql是sql語言;2、hive把數(shù)據(jù)存儲到hdfs,而mysql存儲在自己的系統(tǒng)中;3、hive數(shù)據(jù)格式可自定義,而mysql不可以;4、hive不支持數(shù)據(jù)更新,mysql支持;5、hive沒有索引,mysql有;6、hive存儲的數(shù)據(jù)量超級大,而mysql儲存量少;7、hive底層用mapreduce,而mysql是excutor執(zhí)行器。
本教程操作環(huán)境:windows7系統(tǒng)、mysql8版本、Dell G3電腦。
mysql是什么
MySQL是一個關系型數(shù)據(jù)庫管理系統(tǒng),由瑞典MySQL AB 公司開發(fā),屬于 Oracle 旗下產(chǎn)品。MySQL 是最流行的關系型數(shù)據(jù)庫管理系統(tǒng)之一,在 WEB 應用方面,MySQL是最好的 RDBMS (Relational Database Management System,關系數(shù)據(jù)庫管理系統(tǒng)) 應用軟件之一。
MySQL是一種關系型數(shù)據(jù)庫管理系統(tǒng),關系數(shù)據(jù)庫將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個大倉庫內(nèi),這樣就增加了速度并提高了靈活性。
MySQL所使用的 SQL 語言是用于訪問數(shù)據(jù)庫的最常用標準化語言。MySQL 軟件采用了雙授權政策,分為社區(qū)版和商業(yè)版,由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,一般中小型和大型網(wǎng)站的開發(fā)都選擇 MySQL 作為網(wǎng)站數(shù)據(jù)庫。
hive是什么
hive是基于Hadoop的一個數(shù)據(jù)倉庫工具,用來進行數(shù)據(jù)提取、轉(zhuǎn)化、加載,這是一種可以存儲、查詢和分析存儲在Hadoop中的大規(guī)模數(shù)據(jù)的機制。hive數(shù)據(jù)倉庫工具能將結(jié)構化的數(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與mysql的區(qū)別
1、查詢語言不同:
hive采用的是類SQL的查詢語言HQL(hive query language),mysql采用的是sql語言。
2、數(shù)據(jù)存儲位置不同:
hive是把數(shù)據(jù)存儲到hdfs,而mysql數(shù)據(jù)存儲在自己的系統(tǒng)中
3、數(shù)據(jù)格式:
hive數(shù)據(jù)格式可以用戶自定義,mysql有自己的系統(tǒng)定義格式
4、數(shù)據(jù)更新:
hive不支持數(shù)據(jù)更新,只可以讀,不可以寫,sql支持數(shù)據(jù)的讀寫
5、索引:
hive沒有索引,因此查詢數(shù)據(jù)的時候是通過mapreduce很暴力的把數(shù)據(jù)都查詢一遍,也造成了hive查詢數(shù)據(jù)速度很慢的原因,而mysql有索引;
6、數(shù)據(jù)規(guī)模:
hive存儲的數(shù)據(jù)量超級大,而mysql只是存儲一些少量的業(yè)務數(shù)據(jù)
7、底層執(zhí)行原理:
hive底層是用的mapreduce,而mysql是excutor執(zhí)行器;
【