新聞中心

EEPW首頁 > 設(shè)計應(yīng)用 > 想要學(xué)好大數(shù)據(jù)需掌握這十二大技術(shù)

想要學(xué)好大數(shù)據(jù)需掌握這十二大技術(shù)

作者: 時間:2018-10-15 來源:網(wǎng)絡(luò) 收藏

  大數(shù)據(jù)是對海量數(shù)據(jù)進行存儲、計算、統(tǒng)計、分析處理的一系列處理手段,處理的數(shù)據(jù)量通常是TB級,甚至是PB或EB級的數(shù)據(jù),這是傳統(tǒng)數(shù)據(jù)處理手段所無法完成的,其涉及的技術(shù)有分布式計算、高并發(fā)處理、高可用處理、集群、實時性計算等,匯集了當(dāng)前IT領(lǐng)域熱門流行的IT技術(shù)。

本文引用地址:http://m.butianyuan.cn/article/201810/392879.htm

  想要學(xué)好大數(shù)據(jù)需掌握以下技術(shù):

  1. 編程技術(shù)

  編程技術(shù)是大數(shù)據(jù)學(xué)習(xí)的基礎(chǔ),是一種強類型語言,擁有極高的跨平臺能力,可以編寫桌面應(yīng)用程序、Web應(yīng)用程序、分布式系統(tǒng)和嵌入式系統(tǒng)應(yīng)用程序等,是大數(shù)據(jù)工程師最喜歡的編程工具,因此,想學(xué)好大數(shù)據(jù),掌握Java基礎(chǔ)是必不可少的!

  2.命令

  對于大數(shù)據(jù)開發(fā)通常是在環(huán)境下進行的,相比操作系統(tǒng),Windows操作系統(tǒng)是封閉的操作系統(tǒng),開源的大數(shù)據(jù)軟件很受限制,因此,想從事大數(shù)據(jù)開發(fā)相關(guān)工作,還需掌握Linux基礎(chǔ)操作命令。真正的大數(shù)據(jù)工程師,linux命令是橫著寫很長,不是一句一句執(zhí)行的,尤其是大數(shù)據(jù)工程師需要檢測cpu,內(nèi)存,網(wǎng)絡(luò)IO等各種開銷,就需要掌握各種命令,命令主要分為這幾種,一是查看各種進程的相關(guān)信息,其中包括cpu或者內(nèi)存等從高到底,或者是前十等等。二是排查故障,結(jié)合linux和java的各種命令快速定位到問題出現(xiàn)的關(guān)鍵地方。三是排除系統(tǒng)長時間使用過慢原因等。

  3.Hadoop

  Hadoop是大數(shù)據(jù)開發(fā)的重要框架,Hadoop分HDFS和Map/reduce,HDFS是Hadoop的主要分布式存儲。一個HDFS集群主要由一個NameNode(管理文件系統(tǒng)的元數(shù)據(jù))和存儲實際數(shù)據(jù)的DataNode組成。HDFS為海量的數(shù)據(jù)提供了存儲,實現(xiàn)了存取優(yōu)化。Hadoop的MapReduce是一個軟件框架,為海量的數(shù)據(jù)提供了計算,可方便地編寫應(yīng)用程序處理大量的數(shù)據(jù)(多是TB數(shù)據(jù)集),因此,需要重點掌握,除此之外,還需要掌握Hadoop集群、Hadoop集群管理、YARN以及Hadoop高級管理等相關(guān)技術(shù)與操作!

  4.HBase

  HBase是Hadoop的數(shù)據(jù)庫,HBase是一個分布式的、面向列的開源數(shù)據(jù)庫,它提供了隨機,實時讀/寫訪問大數(shù)據(jù),并進行了優(yōu)化承載非常大的數(shù)據(jù)表 - 數(shù)十億行乘以百萬列 -,實現(xiàn)服務(wù)器硬件之上集群。不同于一般的關(guān)系數(shù)據(jù)庫,更適合于非結(jié)構(gòu)化數(shù)據(jù)存儲的數(shù)據(jù)庫,是一個高可靠性、高性能、面向列、可伸縮的分布式存儲系統(tǒng),在其核心Apache HBase是一個分布式的面向列的數(shù)據(jù)庫,屬于谷歌的Bigtable:Apache HBase在Hadoop和HDFS之上提供了類似于Bigtable的能力。大數(shù)據(jù)開發(fā)需掌握HBase基礎(chǔ)知識、應(yīng)用、架構(gòu)以及高級用法等。

  5.Hive

  Hive是基于Hadoop的一個數(shù)據(jù)倉庫工具,方便簡單的數(shù)據(jù)匯總工具,可以將結(jié)構(gòu)化的數(shù)據(jù)文件映射為一張數(shù)據(jù)庫表,并提供簡單的sql查詢功能,可以將sql語句轉(zhuǎn)換為MapReduce任務(wù)進行運行,十分適合數(shù)據(jù)倉庫的統(tǒng)計分析。同時,這語言也可以讓傳統(tǒng)的map / reduce程序員嵌入他們的自定義maperhe reducer.對于Hive需掌握其安裝、應(yīng)用及高級操作等。

  6.ZooKeeper

  ZooKeeper是Hadoop和Hbase的重要組件,是一個為分布式應(yīng)用提供一致性服務(wù)的軟件,一種集中式的服務(wù)(負載平衡器),提供的功能包括:配置維護、域名服務(wù)、分布式同步、組件服務(wù)等,并提供團體服務(wù)。Apache ZooKeeper協(xié)調(diào)運行在Hadoop集群上的分布式應(yīng)用程序。在大數(shù)據(jù)開發(fā)中要掌握ZooKeeper的常用命令及功能的實現(xiàn)方法。

  7.phoenix

  phoenix是用Java編寫的基于JDBC API操作HBase的開源SQL引擎,其具有動態(tài)列、散列加載、查詢服務(wù)器、追蹤、事務(wù)、用戶自定義函數(shù)、二級索引、命名空間映射、數(shù)據(jù)收集、行時間戳列、分頁查詢、跳躍查詢、視圖以及多租戶的特性,大數(shù)據(jù)開發(fā)需掌握其原理和使用方法。

  8.Avro與Protobuf

  Avro與Protobuf均是數(shù)據(jù)序列化系統(tǒng),可以提供豐富的數(shù)據(jù)結(jié)構(gòu)類型,十分適合做數(shù)據(jù)存儲,還可進行不同語言之間相互通信的數(shù)據(jù)交換格式,學(xué)習(xí)大數(shù)據(jù),需掌握其具體用法。

  9.Cassandra

  Apache Cassandra是一個高性能,可擴展性和高線性可用的數(shù)據(jù)庫,可以運行在服務(wù)器或云基礎(chǔ)設(shè)施上,為關(guān)鍵任務(wù)數(shù)據(jù)提供完美的平臺,。 Cassandra支持多個數(shù)據(jù)中心之間復(fù)制是同類產(chǎn)品中最好,為用戶提供更低的延遲,甚至不懼怕停電。 Cassandra的數(shù)據(jù)模型提供了便利的列索引,高性能試圖和強大的內(nèi)置緩存。

  10.Kafka

  Kafka是一種高吞吐量的分布式發(fā)布訂閱消息系統(tǒng),其在大數(shù)據(jù)開發(fā)應(yīng)用上的目的是通過Hadoop的并行加載機制來統(tǒng)一線上和離線的消息處理,也是為了通過集群來提供實時的消息。大數(shù)據(jù)開發(fā)需掌握Kafka架構(gòu)原理及各組件的作用和使用方法及相關(guān)功能的實現(xiàn)!

  11.Chukwa

  是一個開源大型分布式系統(tǒng)的數(shù)據(jù)采集監(jiān)視系統(tǒng)。它是建立在Hadoop分布式文件系統(tǒng)(HDFS)和Map/ Reduce框架之上,并繼承了Hadoop的可伸縮性和健壯性。 Chukwa還包括一個靈活而強大的工具包,用于顯示,監(jiān)測和分析結(jié)果,以便做出最佳地使用所收集的數(shù)據(jù)。

  12.Flume

  Flume是一款高可用、高可靠、分布式的海量日志采集、聚合和傳輸?shù)南到y(tǒng),F(xiàn)lume支持在日志系統(tǒng)中定制各類數(shù)據(jù)發(fā)送方,用于收集數(shù)據(jù);同時,F(xiàn)lume提供對數(shù)據(jù)進行簡單處理,并寫到各種數(shù)據(jù)接受方(可定制)的能力。大數(shù)據(jù)開發(fā)需掌握其安裝、配置以及相關(guān)使用方法。



關(guān)鍵詞: Linux Java

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉