1. 程式人生 > >程式設計師需要詳細瞭解的十個大資料技術

程式設計師需要詳細瞭解的十個大資料技術

浪費了“黃金五年”的Java程式設計師,還有救嗎? >>>   

大資料已然成為當今最熱門的技術之一,正呈爆炸式增長。每天來自全球的新專案如雨後春筍般湧現。幸運地是,開源讓越來越多的專案可以直接採用大資料技術,下面就來盤點最受歡迎的十大開源的大資料技術。

很多初學者,對大資料的概念都是模糊不清的,大資料是什麼,能做什麼,學的時候,該按照什麼線路去學習,學完往哪方面發展,想深入瞭解,想學習的同學歡迎加入大資料學習qq群:199427210,有大量乾貨(零基礎以及進階的經典實戰)分享給大家,並且有清華大學畢業的資深大資料講師給大家免費授課,給大家分享目前國內最完整的大資料高階實戰實用學習流程體系
 

1. Hadoop ——高效、可靠、可伸縮,能夠為你的資料儲存專案提供所需的YARN、HDFS和基礎架構,並且執行主要的大資料服務和應用程式。

2. Spark ——使用簡單、支援所有重要的大資料語言(Scala、Python、Java、R)。擁有強大的生態系統,成長迅速,對 microbatching/batching/SQL支援簡單。Spark能更好地適用於資料探勘與機器學習等需要迭代的MapReduce的演算法。

3. NiFi ——Apache NiFi是由美國國家安全域性(NSA)貢獻給Apache基金會的開源專案,其設計目標是自動化系統間的資料流。基於其工作流式的程式設計理念,NiFi非常 易於使用、強大、可靠、高可配置。兩個最重要的特性是其強大的使用者介面和良好的資料回溯工具。堪稱大資料工具箱裡的瑞士軍刀。

4. Apache Hive 2.1 ——Hive是建立在 Hadoop 上的資料倉庫基礎構架。它提供了一系列的工具,可以用來進行資料提取轉化載入(ETL),這是一種可以儲存、查詢和分析儲存在 Hadoop 中的大規模資料的機制。隨著最新版本的釋出,效能和功能都得到了全面提升,Hive已成為SQL在大資料上的最佳解決方案。

5. Kafka ——Kafka是一種高吞吐量的分散式釋出訂閱訊息系統,它可以處理消費者規模網站中的所有動作流資料。它已成為大資料系統在非同步和分散式訊息之間的最佳選擇。從Spark到NiFi再到第三方外掛工具以至於Java到Scala,它都提供了強大的粘合作用。

6. Phoenix —是HBase的SQL驅動。目前大量的公司採用它,並擴大其規模。HDFS支援的NoSQL能夠很好地整合所有工具。Phoenix查詢引擎會將SQL查詢轉換為一個或多個HBase scan,並編排執行以生成標準的JDBC結果集。

7. Zeppelin ——Zeppelin 是一個提供互動資料分析且基於Web的筆記本。方便你做出可資料驅動的、可互動且可協作的精美文件,並且支援多種語言,包括 Scala(使用 Apache Spark)、Python(Apache Spark)、SparkSQL、 Hive、 Markdown、Shell等。

8. Sparkling Water ——H2O填補了Spark’s Machine Learning的缺口,它可以滿足你所有的機器學習。

9. Apache Beam ——在Java中提供統一的資料程序管道開發,並且能夠很好地支援Spark和Flink。提供很多線上框架,開發者無需學習太多框架。

10. Stanford CoreNLP ——自然語言處理擁有巨大的增長空間,斯坦福正在努力增