十年網(wǎng)站開發(fā)經(jīng)驗 + 多家企業(yè)客戶 + 靠譜的建站團隊
量身定制 + 運營維護+專業(yè)推廣+無憂售后,網(wǎng)站問題一站解決
Sqoop作為Hadoop與傳統(tǒng)數(shù)據(jù)庫之間的橋梁,對于數(shù)據(jù)的導入導出有著重要作用。通過對Sqoop基本語法以及功能的闡述,深刻解密Sqoop的作用和價值。
成都創(chuàng)新互聯(lián)是一家專業(yè)提供高邑企業(yè)網(wǎng)站建設,專注與成都網(wǎng)站設計、做網(wǎng)站、H5高端網(wǎng)站建設、小程序制作等業(yè)務。10年已為高邑眾多企業(yè)、政府機構(gòu)等服務。創(chuàng)新互聯(lián)專業(yè)的建站公司優(yōu)惠進行中。
一、什么是Apache Sqoop?
Cloudera開發(fā)的Apache開源項目,是SQL-to-Hadoop的縮寫。主要用于在Hadoop(Hive)與傳統(tǒng)的數(shù)據(jù)庫(MySQL、postgresql...)間進行數(shù)據(jù)的傳遞,可以將一個關(guān)系型數(shù)據(jù)庫(例如: MySQL ,Oracle ,Postgres等)中的數(shù)據(jù)導進到Hadoop的HDFS中,也可以將HDFS的數(shù)據(jù)導進到關(guān)系型數(shù)據(jù)庫中。在導入數(shù)據(jù)的時候,既可以導入整個數(shù)據(jù)庫,也可以導入單個表、所有表或表的部分數(shù)據(jù)到HDFS,在導入數(shù)據(jù)的同時可以導成各種格式。除此之外,Sqoop可以從HDFS導出數(shù)據(jù)到數(shù)據(jù)庫,所以sqoop它擁有雙向的作用。
二、Sqoop如何工作?
Sqoop工作也是基于計算框架MapReduce,MapReduce會把提交的SQL導數(shù)轉(zhuǎn)換成MapReduce作業(yè),然后提交到集群??傮w來說分成三個步驟:
1、檢查表詳情
2、創(chuàng)建和提交作業(yè)到集群
3、獲取表記錄并寫入數(shù)據(jù)到HDFS
三、基本語法:
Sqoop是一個帶很多子命令的命令行工具,有很多用來導入、導出、列出數(shù)據(jù)庫內(nèi)容等工具。通常我們先列出數(shù)據(jù)庫有哪些表,然后再去導相應的表。如果想要去看sqoop所有的工具,可以運行sqoop help來查看所有工具列表,在這里也建議大家習慣使用help,去查找一些使用參數(shù)。另外,也可以運行sqoop help tool-name來查看特定工具的幫助(如import,export)。
Sqoop調(diào)用的基本語法
四、使用Sqoop探索數(shù)據(jù)庫:
通常在導數(shù)據(jù)之前我們先要探索一下數(shù)據(jù)庫,去了解數(shù)據(jù)庫里面都有哪些表,一般有兩種方式:
1、List-tables:列出所有MySQL中l(wèi)oudacre數(shù)據(jù)庫的表
2.eval:執(zhí)行數(shù)據(jù)庫查詢
Sqoop作為Hadoop家族重要的一員,我們需要著重認知和把握,對于我們了解和學習大數(shù)據(jù)有著重要的幫助。平常大家也可以關(guān)注一些大數(shù)據(jù)的資訊,了解大數(shù)據(jù)發(fā)展的趨勢和一些行業(yè)經(jīng)典案例。尤其是現(xiàn)在網(wǎng)絡媒體興盛,信息傳播迅速,比如微信服務號,我自己平時就喜歡從上面找一些案例,像大數(shù)據(jù)cn就很不錯。但是技術(shù)永遠都是有門檻的,只有不斷學習交流才可以不斷進步,最近我在大數(shù)據(jù)時代學習中心這個服務號也學到了一些其他人分享的經(jīng)驗,對于我個人幫助也很大。