大數據開發及和大數據相關的技術

在現如今,隨着互聯網技術飛速的發展,目前有不少朋友詢問關於大數據方面的問題,比如什麼是大數據開發啊,和大數據相關的技術是什麼呢等問題,我們今天就淺談一下大數據開發及和大數據相關的技術的問題。

首先,大數據(big data),指無法在一定時間範圍內用常規軟件工具進行捕捉、管理和處理的數據集合,是需要新處理模式才能具有更強的決策力、洞察發現力和流程優化能力的海量、高增長率和多樣化的信息資產。

那麼和大數據相關的技術有哪些?

想要在大數據這個領域汲取養分,讓自己壯大成長。分享方向,行動以前先分享下一個大數據交流分享資源羣 957205962 ,歡迎想學習,想轉行的,進階中你加入學習。

1、雲技術

大數據常和雲計算聯繫到一起,因爲實時的大型數據集分析需要分佈式處理框架來向數十、數百或甚至數萬的電腦分配工作。可以說,雲計算充當了工業革命時期的發動機的角色,而大數據則是電。

雲計算思想的起源是麥卡錫在上世紀60年代提出的:把計算能力作爲一種像水和電一樣的公用事業提供給用戶。

如今,在Google、Amazon、Facebook等一批互聯網企業引領下,一種行之有效的模式出現了:雲計算提供基礎架構平臺,大數據應用運行在這個平臺上。

業內是這麼形容兩者的關係:沒有大數據的信息積澱,則雲計算的計算能力再強大,也難以找到用武之地;沒有云計算的處理能力,則大數據的信息積澱再豐富,也終究只是×××水月。

那麼大數據到底需要哪些雲計算技術呢?

這裏暫且列舉一些,比如虛擬化技術,分佈式處理技術,海量數據的存儲和管理技術,NoSQL、實時流數據處理、智能分析技術(類似模式識別以及自然語言理解)等。

雲計算和大數據之間的關係可以用下面的一張圖來說明,兩者之間結合後會產生如下效應:可以提供更多基於海量業務數據的創新型服務;通過雲計算技術的不斷髮展降低大數據業務的創新成本。

如果將雲計算與大數據進行一些比較,最明顯的區分在兩個方面:

第一,在概念上兩者有所不同,雲計算改變了IT,而大數據則改變了業務。然而大數據必須有云作爲基礎架構,才能得以順暢運營。

第二,大數據和雲計算的目標受衆不同,雲計算是CIO等關心的技術層,是一個進階的IT解決方案。而大數據是CEO關注的、是業務層的產品,而大數據的決策者是業務層。

2、分佈式處理技術

分佈式處理系統可以將不同地點的或具有不同功能的或擁有不同數據的多臺計算機用通信網絡連接起來,在控制系統的統一管理控制下,協調地完成信息處理任務—這就是分佈式處理系統的定義。

以Hadoop(Yahoo)爲例進行說明,Hadoop是一個實現了MapReduce模式的能夠對大量數據進行分佈式處理的軟件框架,是以一種可靠、高效、可伸縮的方式進行處理的。

而MapReduce是Google提出的一種雲計算的核心計算模式,是一種分佈式運算技術,也是簡化的分佈式編程模式,MapReduce模式的主要思想是將自動分割要執行的問題(例如程序)拆解成map(映射)和reduce(化簡)的方式, 在數據被分割後通過Map 函數的程序將數據映射成不同的區塊,分配給計算機機羣處理達到分佈式運算的效果,在通過Reduce 函數的程序將結果彙整,從而輸出開發者需要的結果。

再來看看Hadoop的特性,第一,它是可靠的,因爲它假設計算元素和存儲會失敗,因此它維護多個工作數據副本,確保能夠針對失敗的節點重新分佈處理。其次,Hadoop 是高效的,因爲它以並行的方式工作,通過並行處理加快處理速度。Hadoop 還是可伸縮的,能夠處理 PB 級數據。此外,Hadoop 依賴於社區服務器,因此它的成本比較低,任何人都可以使用。

你也可以這麼理解Hadoop的構成,Hadoop=HDFS(文件系統,數據存儲技術相關)+HBase(數據庫)+MapReduce(數據處理)+……Others

Hadoop用到的一些技術有:

HDFS: Hadoop分佈式文件系統(Distributed File System) - HDFS (HadoopDistributed File System)

MapReduce:並行計算框架

HBase: 類似Google BigTable的分佈式NoSQL列數據庫。

Hive:數據倉庫工具,由Facebook貢獻。

Zookeeper:分佈式鎖設施,提供類似Google Chubby的功能,由Facebook貢獻。

Avro:新的數據序列化格式與傳輸工具,將逐步取代Hadoop原有的IPC機制。

Pig:大數據分析平臺,爲用戶提供多種接口。

Ambari:Hadoop管理工具,可以快捷的監控、部署、管理集羣。

Sqoop:用於在Hadoop與傳統的數據庫間進行數據的傳遞。

說了這麼多,舉個實際的例子,雖然這個例子有些陳舊,但是淘寶的海量數據技術架構還是有助於我們理解對於大數據的運作處理機制:

如上圖所示,淘寶的海量數據產品技術架構分爲五個層次,從上至下來看它們分別是:數據源,計算層,存儲層,查詢層和產品層。

數據來源層。存放着淘寶各店的交易數據。在數據源層產生的數據,通過DataX,DbSync和Timetunel準實時的傳輸到下面第2點所述的“雲梯”。

計算層。在這個計算層內,淘寶採用的是Hadoop集羣,這個集羣,我們暫且稱之爲雲梯,是計算層的主要組成部分。在雲梯上,系統每天會對數據產品進行不同的MapReduce計算。

存儲層。在這一層,淘寶採用了兩個東西,一個使MyFox,一個是Prom。MyFox是基於MySQL的分佈式關係型數據庫的集羣,Prom是基於Hadoop Hbase技術的一個NoSQL的存儲集羣。

查詢層。在這一層中,Glider是以HTTP協議對外提供restful方式的接口。數據產品通過一個唯一的URL來獲取到它想要的數據。同時,數據查詢即是通過MyFox來查詢的。

最後一層是產品層,這個就不用解釋了。

3、 存儲技術

大數據可以抽象的分爲大數據存儲和大數據分析,這兩者的關係是:大數據存儲的目的是支撐大數據分析。到目前爲止,還是兩種截然不同的計算機技術領域:大數據存儲致力於研發可以擴展至PB甚至EB級別的數據存儲平臺;大數據分析關注在最短時間內處理大量不同類型的數據集。

提到存儲,有一個著名的摩爾定律相信大家都聽過:18個月集成電路的複雜性就增加一倍。所以,存儲器的成本大約每18-24個月就下降一半。成本的不斷下降也造就了大數據的可存儲性。

比如,Google大約管理着超過50萬臺服務器和100萬塊硬盤,而且Google還在不斷的擴大計算能力和存儲能力,其中很多的擴展都是基於在廉價服務器和普通存儲硬盤的基礎上進行的,這大大降低了其服務成本,因此可以將更多的資金投入到技術的研發當中。

以Amazon舉例,Amazon S3 是一種面向 Internet 的存儲服務。該服務旨在讓開發人員能更輕鬆的進行網絡規模計算。Amazon S3 提供一個簡明的 Web 服務界面,用戶可通過它隨時在 Web 上的任何位置存儲和檢索的任意大小的數據。 此服務讓所有開發人員都能訪問同一個具備高擴展性、可靠性、安全性和快速價廉的基礎設施,Amazon 用它來運行其全球的網站網絡。再看看S3的設計指標:在特定年度內爲數據元提供 99.999999999% 的耐久性和 99.99% 的可用性,並能夠承受兩個設施中的數據同時丟失。

S3很成功也確實卓有成效,S3雲的存儲對象已達到萬億級別,而且性能表現相當良好。S3雲已經擁萬億跨地域存儲對象,同時AWS的對象執行請求也達到百萬的峯值數量。目前全球範圍內已經有數以十萬計的企業在通過AWS運行自己的全部或者部分日常業務。這些企業用戶遍佈190多個國家,幾乎世界上的每個角落都有Amazon用戶的身影。

4、 感知技術

大數據的採集和感知技術的發展是緊密聯繫的。以傳感器技術,指紋識別技術,RFID技術,座標定位技術等爲基礎的感知能力提升同樣是物聯網發展的基石。全世界的工業設備、汽車、電錶上有着無數的數碼傳感器,隨時測量和傳遞着有關位置、運動、震動、溫度、溼度乃至空氣中化學物質的變化,都會產生海量的數據信息。

而隨着智能手機的普及,感知技術可謂迎來了發展的高峯期,除了地理位置信息被廣泛的應用外,一些新的感知手段也開始登上舞臺,比如,最新的”iPhone 5S”在home鍵內嵌指紋傳感器,新型手機可通過呼氣直接檢測燃燒脂肪量,用於手機的嗅覺傳感器面世可以監測從空氣污染到危險的化學藥品,微軟正在研發可感知用戶當前心情智能手機技術,谷歌眼鏡InSight新技術可通過衣着進行人物識別。

除此之外,還有很多與感知相關的技術革新讓我們耳目一新:比如,牙齒傳感器實時監控口腔活動及飲食狀況,嬰兒穿戴設備可用大數據去養育寶寶,Intel正研發3D筆記本攝像頭可追蹤眼球讀懂情緒,日本公司開發新型可監控用戶心率的紡織材料,業界正在嘗試將生物測定技術引入支付領域等。

其實,這些感知被逐漸捕獲的過程就是就世界被數據化的過程,一旦世界被完全數據化了,那麼世界的本質也就是信息了。

就像一句名言所說,“人類以前延續的是文明,現在傳承的是信息。”


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章