大數(shù)據(jù)目前這個詞很火,作為編程人員是必須學習的基礎知識之一,對于其它行業(yè)的同時,了解一下大數(shù)據(jù)也是非常有必要的,也許你們公司將來有一天就會使用大數(shù)據(jù)技術(shù)來分析你們公司的發(fā)展方向,畢竟這是一個大數(shù)據(jù)時代。以下是小編為你整理的學習大數(shù)據(jù)有什么用 ?
首先簡介一下大數(shù)據(jù)能夠干什么:首先舉個例子,大家都喜歡上淘寶買東西,淘寶網(wǎng)站會記錄每個人在它網(wǎng)站上都買了什么,瀏覽了什么。。。等等一系列信息。然后分析什么產(chǎn)品賣的火爆,哪個客戶喜歡買什么,那個商家盈利高等等,挖掘一系列有潛在價值 ?
其次分析一下大數(shù)據(jù)的含義,大數(shù)據(jù)既然含有數(shù)據(jù)這個詞匯,就表明他是和數(shù)據(jù)相關(guān)的,而數(shù)據(jù)無非就是如何存儲數(shù)據(jù)和如何使用存儲的數(shù)據(jù)這兩個問題
?
首先說一下如何存儲:傳統(tǒng)的數(shù)據(jù)都是保存在關(guān)系型數(shù)據(jù)庫,比如oracle和mysql等,這些數(shù)據(jù)庫存儲空間是有限的,并且數(shù)據(jù)庫的東西多了之后,查詢存取的速度會變得很慢,根本做數(shù)據(jù)分析等。此外傳統(tǒng)數(shù)據(jù)都安裝在一臺服務器上,一旦服務器宕機了,數(shù)據(jù)庫的內(nèi)容就全部銷毀了,無法恢復 ?
大數(shù)據(jù)的含義就是說數(shù)據(jù)量很大,數(shù)據(jù)量達到pb級別,大公司也許需要幾千臺服務器才能存儲,用的是分布式存儲技術(shù)。所謂的分布式存儲技術(shù)是指,同樣一份文件,分別存儲在3臺不同的服務器上,假設其中服務器掛機了,還有另外兩臺服務器工作,并且迅速備份一份文件,始終保證相同文件有3臺服務器提供工作 ?
大數(shù)據(jù)的使用主要是指根據(jù)公司需求,對現(xiàn)有的數(shù)據(jù)進行挖掘分析。而挖掘分析做的最多的就是查詢數(shù)據(jù),大數(shù)據(jù)的查詢速度是非??斓?,因為底層用的是類似于lucene技術(shù)。但是大數(shù)據(jù)不適合修改存儲的文件。因為大數(shù)據(jù)存儲數(shù)據(jù)是以文件的形式存儲的,如果想修改數(shù)據(jù),它會把原先的文件刪掉,然后重新寫入。 ?
*什么人適合學習大數(shù)據(jù):一般做數(shù)據(jù)的公司通常都會要求你會大數(shù)據(jù),其次互聯(lián)網(wǎng)行業(yè)也用到了大數(shù)據(jù)相關(guān)的部分技術(shù),比如:zookeeper,但是你要想找到一份好的工作,大數(shù)據(jù)知識是必須有所了解。 ?
大數(shù)據(jù)處理需要什么語言 ?
R語言:它的有點在于簡單易上手,通過R語言,你可以從復雜的數(shù)據(jù)集中篩選你想要的數(shù)據(jù),從負責的模型函數(shù)中操作數(shù)據(jù),建立有序的圖表呈現(xiàn)數(shù)字,只需要幾行代碼就可以了,比如說,像是好動版本的Excel表格。 ?
Pythom語言:Python結(jié)合了R語言的快速,處理復雜數(shù)據(jù)的能力以及更務實的語言特質(zhì),迅速地成為主流,也更簡單和直觀了,尤其是近幾年的成長很快。在數(shù)據(jù)處理范疇內(nèi),通常在規(guī)模與復雜之間要有個取舍,Python以折中的姿態(tài)出現(xiàn),是相當好的數(shù)據(jù)處理工具。 ?
java語言:java沒有和Python和R語言一樣好的可視化功能,也不是統(tǒng)計建模的*工具,但是如果你需要建立一個龐大的系統(tǒng),使用過去的原型,java是最基本的選擇了。 ?
Hadoop pand Hive:為了迎合大量數(shù)據(jù)處理的需求,以java為基礎的大數(shù)據(jù)開始了。Hadoop為一批數(shù)據(jù)處理,發(fā)展以java為基礎的架構(gòu)關(guān)鍵,相對于其他處理工具,Hadoop慢許多,但是無比的準確可被后端數(shù)據(jù)庫分析廣泛使用,和Hive搭配的很好。 ?
Scala:另一個以java為基礎的語言,和java很像,對任何想要進行大規(guī)模的機械學習或是建立高階的算法,Scala是逐漸興起的工具,善于呈現(xiàn)且擁有建立可靠系統(tǒng)的能力, ?
Kafkaand Storm:是一個特別快速的查詢信息系統(tǒng),缺點是太快了,因此在實施操作時會犯錯,有時候會漏掉東西。使用Scala寫出來的架構(gòu),大幅增加他在串流處理的受歡迎程度, ?
HTML ?
HTML標簽名和屬性都是不區(qū)分大小寫的,例如、或都是定義相同的標記,但推薦全部使用小寫字母書寫。 ?
HTML屬性一般都出現(xiàn)在HTML標簽中, 是HTML標簽的一部分。 ?
標簽可以有屬性,它包含了額外的信息.屬性的值一定要在雙引號中。 ?
標簽可以擁有多個屬性。 ?
屬性由屬性名和值成對出現(xiàn)。 ?
大多數(shù)的瀏覽器都支持顏色名集合,顏色值是一個關(guān)鍵字或一個RGB格式的數(shù)字,在網(wǎng)頁中用得很多。 ?
BASE(分布式列存數(shù)據(jù)庫)
?
源自Google的Bigtable論文,發(fā)表于2006年11月,HBase是Google Bigtable克隆版 ?
HBase是一個建立在HDFS之上,面向列的針對結(jié)構(gòu)化數(shù)據(jù)的可伸縮、高可靠、高性能、分布式和面向列的動態(tài)模式數(shù)據(jù)庫。 ?
HBase采用了BigTable的數(shù)據(jù)模型:增強的稀疏排序映射表(Key/Value),其中,鍵由行關(guān)鍵字、列關(guān)鍵字和時間戳構(gòu)成。 ?
HBase提供了對大規(guī)模數(shù)據(jù)的隨機、實時讀寫訪問,同時,HBase中保存的數(shù)據(jù)可以使用MapReduce來處理,它將數(shù)據(jù)存儲和并行計算完美地結(jié)合在一起。 ?
大數(shù)據(jù)是什么
大數(shù)據(jù)是最近IT界最常用的術(shù)語之一。然而對大數(shù)據(jù)的定義也不盡相同,所有已知的論點例如結(jié)構(gòu)化的和非結(jié)構(gòu)化、大規(guī)模的數(shù)據(jù)等等都不夠完整。大數(shù)據(jù)系統(tǒng)通常被認為具有數(shù)據(jù)的五個主要特征,通常稱為數(shù)據(jù)的5 Vs。分別是大規(guī)模,多樣性,高效性、準確性和價值性。 ?
據(jù)Gartner稱,大規(guī)??梢员欢x為“在本(地)機數(shù)據(jù)采集和處理技術(shù)能力不足以為用戶帶來商業(yè)價值。當現(xiàn)有的技術(shù)能夠針對性的進行改造后來處理這種規(guī)模的數(shù)據(jù)就可以說是一個成功的大數(shù)據(jù)解決方案。 ?
這種大規(guī)模的數(shù)據(jù)沒將不僅僅是來自于現(xiàn)有的數(shù)據(jù)源,同時也會來自于一些新興的數(shù)據(jù)源,例如常規(guī)(手持、工業(yè))設備,日志,汽車等,當然包括結(jié)構(gòu)化的和非結(jié)構(gòu)化的數(shù)據(jù)。 ?
據(jù)Gartner稱,多樣性可以定義如下:“高度變異的信息資產(chǎn),在生產(chǎn)和消費時不進行嚴格定義的包括多種形式、類型和結(jié)構(gòu)的組合。同時還包括以前的歷史數(shù)據(jù),由于技術(shù)的變革歷史數(shù)據(jù)同樣也成為多樣性數(shù)據(jù)之一 “。 ?
高效性可以被定義為來自不同源的數(shù)據(jù)到達的速度。從各種設備,傳感器和其他有組織和無組織的數(shù)據(jù)流都在不斷進入IT系統(tǒng)。由此,實時分析和對于該數(shù)據(jù)的解釋(展示)的能力也應該隨之增加。 ?
根據(jù)Gartner,高效性可以被定義如下:“高速的數(shù)據(jù)流I/O(生產(chǎn)和消費),但主要聚焦在一個數(shù)據(jù)集內(nèi)或多個數(shù)據(jù)集之間的數(shù)據(jù)生產(chǎn)的速率可變上”。 ?
準確性,或真實性或叫做精度是數(shù)據(jù)的另一個重要組成方面。要做出正確的商業(yè)決策,當務之急是在數(shù)據(jù)上進行的所有分析必須是正確和準確(精確)的。 ?
大數(shù)據(jù)系統(tǒng)可以提供巨大的商業(yè)價值。像電信,金融,電子商務,社交媒體等,已經(jīng)認識到他們的數(shù)據(jù)是一個潛在的巨大的商機。他們可以預測用戶行為,并推薦相關(guān)產(chǎn)品,提供危險交易預警服務,等等。 ?
與其他IT系統(tǒng)一樣,性能是大數(shù)據(jù)系統(tǒng)獲得成功的關(guān)鍵。本文的中心主旨是要說明如何讓大數(shù)據(jù)系統(tǒng)保證其性能。