大數據發展到今天,已經是越來越成熟,無論是大型互聯網公司,還是小型的創業公司,都能看見大數據的身影。那麼,學習大數據必須掌握哪些核心技術?下面一起來看吧!
01 數據採集與預處理
數據採集就是將這些包括移動互聯網數據、社交網路的數據等各種來源的數據,寫入數據倉庫中,把零散的數據整合在一起,對這些數據進行綜合分析。
Flume NG作為實時日誌收集系統,支持在日誌系統中定製各類數據發送方,用於收集數據,同時,對數據進行簡單處理,並寫到各種數據接收方(比如文本,HDFS,Hbase等)。
NDC,Netease Data Canal,直譯為網易數據運河系統,是網易針對結構化資料庫的數據實時遷移、同步和訂閱的平台化解決方案。
Logstash是開源的伺服器端數據處理管道,能夠同時從多個來源採集數據、轉換數據,然後將數據發送到您最喜歡的 「存儲庫」 中。
Sqoop,用來將關係型資料庫和Hadoop中的數據進行相互轉移的工具,可以將一個關係型資料庫(例如Mysql、Oracle)中的數據導入到Hadoop(例如HDFS、Hive、Hbase)中,也可以將Hadoop(例如HDFS、Hive、Hbase)中的數據導入到關係型資料庫(例如Mysql、Oracle)中。
Strom集群結構是有一個主節點(nimbus)和多個工作節點(supervisor)組成的主從結構,主節點通過配置靜態指定或者在運行時動態選舉,nimbus與supervisor都是Storm提供的後台守護進程,之間的通信是結合Zookeeper的狀態變更通知和監控通知來處理。
Zookeeper是一個分散式的,開放源碼的分散式應用程序協調服務,提供數據同步服務。

02 數據存儲
Hadoop作為一個開源的框架,專為離線和大規模數據分析而設計,HDFS作為其核心的存儲引擎,已被廣泛用於數據存儲。
HBase,是一個分散式的、面向列的開源資料庫,可以認為是hdfs的封裝,本質是數據存儲、NoSQL資料庫。
Phoenix,相當於一個Java中間件,幫助開發工程師能夠像使用JDBC訪問關係型資料庫一樣訪問NoSQL資料庫HBase。
Yarn是一種Hadoop資源管理器,可為上層應用提供統一的資源管理和調度,它的引入為集群在利用率、資源統一管理和數據共享等方面帶來了巨大好處。
Mesos是一款開源的集群管理軟體,支持Hadoop、ElasticSearch、Spark、Storm 和Kafka等應用架構。
Redis是一種速度非常快的非關係資料庫,可以存儲鍵與5種不同類型的值之間的映射,可以將存儲在內存的鍵值對數據持久化到硬碟中,使用複製特性來擴展性能,還可以使用客戶端分片來擴展寫性能。
Atlas是一個位於應用程序與MySQL之間的中間件。
Kudu是圍繞Hadoop生態圈建立的存儲引擎,Kudu擁有和Hadoop生態圈共同的設計理念,它運行在普通的伺服器上、可分散式規模化部署、並且滿足工業界的高可用要求。
03 數據清洗
MapReduce作為Hadoop的查詢引擎,用於大規模數據集的並行計算,」Map(映射)」和」Reduce(歸約)」,是它的主要思想。它極大的方便了編程人員在不會分散式並行編程的情況下,將自己的程序運行在分散式系統中。
隨著業務數據量的增多,需要進行訓練和清洗的數據會變得越來越複雜,這個時候就需要任務調度系統,比如oozie或者azkaban,對關鍵任務進行調度和監控。

04 數據查詢分析
Hive的核心工作就是把SQL語句翻譯成MR程序,可以將結構化的數據映射為一張資料庫表,並提供 HQL(Hive SQL)查詢功能。
Hive是為大數據批量處理而生的,Hive的出現解決了傳統的關係型資料庫(MySql、Oracle)在大數據處理上的瓶頸。
Impala是對Hive的一個補充,可以實現高效的SQL查詢。使用Impala來實現SQL on Hadoop,用來進行大數據實時查詢分析。
Spark擁有Hadoop MapReduce所具有的特點,它將Job中間輸出結果保存在內存中,從而不需要讀取HDFS。Spark 啟用了內存分布數據集,除了能夠提供互動式查詢外,它還可以優化迭代工作負載。
Nutch 是一個開源Java 實現的搜索引擎。它提供了我們運行自己的搜索引擎所需的全部工具,包括全文搜索和Web爬蟲。
Solr用Java編寫、運行在Servlet容器(如Apache Tomcat或Jetty)的一個獨立的企業級搜索應用的全文搜索伺服器。
Elasticsearch是一個開源的全文搜索引擎,基於Lucene的搜索伺服器,可以快速的儲存、搜索和分析海量的數據。
05 數據可視化
對接一些BI平台,將分析得到的數據進行可視化,用於指導決策服務。主流的BI平台比如,國外的敏捷BI Tableau、Qlikview、PowrerBI等,國內的SmallBI和新興的網易有數等。
大數據技術的體系龐大且複雜,每年都會湧現出大量新的技術,目前大數據行業所涉及到的核心技術主要就是:數據採集、數據存儲、數據清洗、數據查詢分析和數據可視化。
原創文章,作者:投稿專員,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/250164.html