參加Hive和Pig(兩個hadoop資料查詢、處理工具)培訓的一些體會

來源:互聯網
上載者:User

 
 前一段時間開始看Hadoop的資料,希望通過自學能瞭解相關的基本知識技能。不過發現有些困難。首先是hadoop是安裝在liuux上的,其次hadoop的開發語言是java。我對linux和java都不熟悉。自學有困難。不過這還不是最困難的。最困難的是hadoop相關的公開的學習資料太少。官網上的教程經常有小錯誤走不下去。
 
 後來看到Cloudera公司授權的國內的一個hadoop培訓(http://www.ruanko.com/portal/hadoop/Cloudera_Hive_and_Pig_Training.html),報名參加了一門最感興趣的資料查詢和處理的課。還有兩門課分別是hadoop的管理和hadoop的開發。
 
 Hadoop是開源軟體。Cloudera公司提供開源的、比較穩定的編譯後的版本,這個版本簡稱CDH。另外還有兩家公司提供不開源的穩定的版本。Cloudera公司以提供Hadoop的培訓和支援為主要業務。我參加的這個培訓是Cloudera公司授權的首次國內培訓。

 Hive和Pig是hadoop之上的兩個資料查詢和處理的工具。Hive的文法與SQL很像。Pig是一種處理資料的指令碼語言。如果不用Hive和Pig之類的工具,而是用Hodoop上的原生態的Java的來查資料的話,開發效率比較低。一個簡單的sql需要寫一頁代碼。
 
 Hadoop的資料實際是存在檔案系統中的。沒有像關聯式資料庫那樣的各種對資料的校正約束機制。因此儲存資料的時候,使用Pig之類的指令碼來做預先處理就比較有必要了。
 
 Hive運行在可以串連到hadoop的用戶端上。Hive建立的表並不會儲存到Hadoop之上。只會儲存到運行Hive的Client上。這是與關係型資料庫非常不同的一個特點。從這個特點看Hadoop更像是檔案系統而不是資料庫。
 
 如果需要處理位元據,那麼Hadoop和Pig都不適合。
 
 除此之外,常見的資料查詢功能,Hive和Pig都可以實現。不過Hive和Pig都不支援對資料的修改。Hive還有一些特有的統計功能,比SQL實現起來簡潔。
 
 Hadoop不是關係型資料庫,目前還沒支援索引。查詢起來速度當然比不上關係型資料庫。在練慣用的單獨的虛擬機器上,最大的表資料量只有10萬,許多普通的查詢也要1-2分鐘。
 
 這個培訓課,基本上算是一個入門。我感覺僅僅是對Hadoop,Hive,Pig有了一些基本的瞭解。想要熟練掌握,我認為還是需要通過實戰。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.