大數(shù)據(jù)技術(shù)發(fā)展史:大數(shù)據(jù)的前世今生
創(chuàng)新互聯(lián)主營云縣網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,成都app開發(fā),云縣h5微信小程序搭建,云縣網(wǎng)站營銷推廣歡迎云縣等地區(qū)企業(yè)咨詢
今天我們常說的大數(shù)據(jù)技術(shù),其實(shí)起源于Google在2004年前后發(fā)表的三篇論文,也就是我們經(jīng)常聽到的“三駕馬車”,分別是分布式文件系統(tǒng)GFS、大數(shù)據(jù)分布式計(jì)算框架MapReduce和NoSQL數(shù)據(jù)庫系統(tǒng)BigTable。
你知道,搜索引擎主要就做兩件事情,一個(gè)是網(wǎng)頁抓取,一個(gè)是索引構(gòu)建,而在這個(gè)過程中,有大量的數(shù)據(jù)需要存儲(chǔ)和計(jì)算。這“三駕馬車”其實(shí)就是用來解決這個(gè)問題的,你從介紹中也能看出來,一個(gè)文件系統(tǒng)、一個(gè)計(jì)算框架、一個(gè)數(shù)據(jù)庫系統(tǒng)。
現(xiàn)在你聽到分布式、大數(shù)據(jù)之類的詞,肯定一點(diǎn)兒也不陌生。但你要知道,在2004年那會(huì)兒,整個(gè)互聯(lián)網(wǎng)還處于懵懂時(shí)代,Google發(fā)布的論文實(shí)在是讓業(yè)界為之一振,大家恍然大悟,原來還可以這么玩。
因?yàn)槟莻€(gè)時(shí)間段,大多數(shù)公司的關(guān)注點(diǎn)其實(shí)還是聚焦在單機(jī)上,在思考如何提升單機(jī)的性能,尋找更貴更好的服務(wù)器。而Google的思路是部署一個(gè)大規(guī)模的服務(wù)器集群,通過分布式的方式將海量數(shù)據(jù)存儲(chǔ)在這個(gè)集群上,然后利用集群上的所有機(jī)器進(jìn)行數(shù)據(jù)計(jì)算。 這樣,Google其實(shí)不需要買很多很貴的服務(wù)器,它只要把這些普通的機(jī)器組織到一起,就非常厲害了。
當(dāng)時(shí)的天才程序員,也是Lucene開源項(xiàng)目的創(chuàng)始人Doug Cutting正在開發(fā)開源搜索引擎Nutch,閱讀了Google的論文后,他非常興奮,緊接著就根據(jù)論文原理初步實(shí)現(xiàn)了類似GFS和MapReduce的功能。
兩年后的2006年,Doug Cutting將這些大數(shù)據(jù)相關(guān)的功能從Nutch中分離了出來,然后啟動(dòng)了一個(gè)獨(dú)立的項(xiàng)目專門開發(fā)維護(hù)大數(shù)據(jù)技術(shù),這就是后來赫赫有名的Hadoop,主要包括Hadoop分布式文件系統(tǒng)HDFS和大數(shù)據(jù)計(jì)算引擎MapReduce。
當(dāng)我們回顧軟件開發(fā)的歷史,包括我們自己開發(fā)的軟件,你會(huì)發(fā)現(xiàn),有的軟件在開發(fā)出來以后無人問津或者寥寥數(shù)人使用,這樣的軟件其實(shí)在所有開發(fā)出來的軟件中占大多數(shù)。而有的軟件則可能會(huì)開創(chuàng)一個(gè)行業(yè),每年創(chuàng)造數(shù)百億美元的價(jià)值,創(chuàng)造百萬計(jì)的就業(yè)崗位,這些軟件曾經(jīng)是Windows、Linux、Java,而現(xiàn)在這個(gè)名單要加上Hadoop的名字。
如果有時(shí)間,你可以簡單瀏覽下Hadoop的代碼,這個(gè)純用Java編寫的軟件其實(shí)并沒有什么高深的技術(shù)難點(diǎn),使用的也都是一些最基礎(chǔ)的編程技巧,也沒有什么出奇之處,但是它卻給社會(huì)帶來巨大的影響,甚至帶動(dòng)一場深刻的科技革命,推動(dòng)了人工智能的發(fā)展與進(jìn)步。
我覺得,我們在做軟件開發(fā)的時(shí)候,也可以多思考一下,我們所開發(fā)軟件的價(jià)值點(diǎn)在哪里?真正需要使用軟件實(shí)現(xiàn)價(jià)值的地方在哪里?你應(yīng)該關(guān)注業(yè)務(wù)、理解業(yè)務(wù),有價(jià)值導(dǎo)向,用自己的技術(shù)為公司創(chuàng)造真正的價(jià)值,進(jìn)而實(shí)現(xiàn)自己的人生價(jià)值。而不是整天埋頭在需求說明文檔里,做一個(gè)沒有思考的代碼機(jī)器人。
Hadoop發(fā)布之后,Yahoo很快就用了起來。大概又過了一年到了2007年,百度和阿里巴巴也開始使用Hadoop進(jìn)行大數(shù)據(jù)存儲(chǔ)與計(jì)算。
2008年,Hadoop正式成為Apache的頂級(jí)項(xiàng)目,后來Doug Cutting本人也成為了Apache基金會(huì)的主席。自此,Hadoop作為軟件開發(fā)領(lǐng)域的一顆明星冉冉升起。
同年,專門運(yùn)營Hadoop的商業(yè)公司Cloudera成立,Hadoop得到進(jìn)一步的商業(yè)支持。
這個(gè)時(shí)候,Yahoo的一些人覺得用MapReduce進(jìn)行大數(shù)據(jù)編程太麻煩了,于是便開發(fā)了Pig。Pig是一種腳本語言,使用類SQL的語法,開發(fā)者可以用Pig腳本描述要對大數(shù)據(jù)集上進(jìn)行的操作,Pig經(jīng)過編譯后會(huì)生成MapReduce程序,然后在Hadoop上運(yùn)行。
編寫Pig腳本雖然比直接MapReduce編程容易,但是依然需要學(xué)習(xí)新的腳本語法。于是Facebook又發(fā)布了Hive。Hive支持使用SQL語法來進(jìn)行大數(shù)據(jù)計(jì)算,比如說你可以寫個(gè)Select語句進(jìn)行數(shù)據(jù)查詢,然后Hive會(huì)把SQL語句轉(zhuǎn)化成MapReduce的計(jì)算程序。
這樣,熟悉數(shù)據(jù)庫的數(shù)據(jù)分析師和工程師便可以無門檻地使用大數(shù)據(jù)進(jìn)行數(shù)據(jù)分析和處理了。Hive出現(xiàn)后極大程度地降低了Hadoop的使用難度,迅速得到開發(fā)者和企業(yè)的追捧。據(jù)說,2011年的時(shí)候,F(xiàn)acebook大數(shù)據(jù)平臺(tái)上運(yùn)行的作業(yè)90%都來源于Hive。
隨后,眾多Hadoop周邊產(chǎn)品開始出現(xiàn),大數(shù)據(jù)生態(tài)體系逐漸形成,其中包括:專門將關(guān)系數(shù)據(jù)庫中的數(shù)據(jù)導(dǎo)入導(dǎo)出到Hadoop平臺(tái)的Sqoop;針對大規(guī)模日志進(jìn)行分布式收集、聚合和傳輸?shù)腇lume;MapReduce工作流調(diào)度引擎Oozie等。
在Hadoop早期,MapReduce既是一個(gè)執(zhí)行引擎,又是一個(gè)資源調(diào)度框架,服務(wù)器集群的資源調(diào)度管理由MapReduce自己完成。但是這樣不利于資源復(fù)用,也使得MapReduce非常臃腫。于是一個(gè)新項(xiàng)目啟動(dòng)了,將MapReduce執(zhí)行引擎和資源調(diào)度分離開來,這就是Yarn。2012年,Yarn成為一個(gè)獨(dú)立的項(xiàng)目開始運(yùn)營,隨后被各類大數(shù)據(jù)產(chǎn)品支持,成為大數(shù)據(jù)平臺(tái)上最主流的資源調(diào)度系統(tǒng)。
同樣是在2012年,UC伯克利AMP實(shí)驗(yàn)室(Algorithms、Machine和People的縮寫)開發(fā)的Spark開始嶄露頭角。當(dāng)時(shí)AMP實(shí)驗(yàn)室的馬鐵博士發(fā)現(xiàn)使用MapReduce進(jìn)行機(jī)器學(xué)習(xí)計(jì)算的時(shí)候性能非常差,因?yàn)闄C(jī)器學(xué)習(xí)算法通常需要進(jìn)行很多次的迭代計(jì)算,而MapReduce每執(zhí)行一次Map和Reduce計(jì)算都需要重新啟動(dòng)一次作業(yè),帶來大量的無謂消耗。還有一點(diǎn)就是MapReduce主要使用磁盤作為存儲(chǔ)介質(zhì),而2012年的時(shí)候,內(nèi)存已經(jīng)突破容量和成本限制,成為數(shù)據(jù)運(yùn)行過程中主要的存儲(chǔ)介質(zhì)。Spark一經(jīng)推出,立即受到業(yè)界的追捧,并逐步替代MapReduce在企業(yè)應(yīng)用中的地位。
一般說來,像MapReduce、Spark這類計(jì)算框架處理的業(yè)務(wù)場景都被稱作批處理計(jì)算,因?yàn)樗鼈兺ǔa槍σ浴疤臁睘閱挝划a(chǎn)生的數(shù)據(jù)進(jìn)行一次計(jì)算,然后得到需要的結(jié)果,這中間計(jì)算需要花費(fèi)的時(shí)間大概是幾十分鐘甚至更長的時(shí)間。因?yàn)橛?jì)算的數(shù)據(jù)是非在線得到的實(shí)時(shí)數(shù)據(jù),而是歷史數(shù)據(jù),所以這類計(jì)算也被稱為大數(shù)據(jù)離線計(jì)算。
而在大數(shù)據(jù)領(lǐng)域,還有另外一類應(yīng)用場景,它們需要對實(shí)時(shí)產(chǎn)生的大量數(shù)據(jù)進(jìn)行即時(shí)計(jì)算,比如對于遍布城市的監(jiān)控?cái)z像頭進(jìn)行人臉識(shí)別和嫌犯追蹤。這類計(jì)算稱為大數(shù)據(jù)流計(jì)算,相應(yīng)地,有Storm、Flink、Spark Streaming等流計(jì)算框架來滿足此類大數(shù)據(jù)應(yīng)用的場景。 流式計(jì)算要處理的數(shù)據(jù)是實(shí)時(shí)在線產(chǎn)生的數(shù)據(jù),所以這類計(jì)算也被稱為大數(shù)據(jù)實(shí)時(shí)計(jì)算。
在典型的大數(shù)據(jù)的業(yè)務(wù)場景下,數(shù)據(jù)業(yè)務(wù)最通用的做法是,采用批處理的技術(shù)處理歷史全量數(shù)據(jù),采用流式計(jì)算處理實(shí)時(shí)新增數(shù)據(jù)。而像Flink這樣的計(jì)算引擎,可以同時(shí)支持流式計(jì)算和批處理計(jì)算。
除了大數(shù)據(jù)批處理和流處理,NoSQL系統(tǒng)處理的主要也是大規(guī)模海量數(shù)據(jù)的存儲(chǔ)與訪問,所以也被歸為大數(shù)據(jù)技術(shù)。 NoSQL曾經(jīng)在2011年左右非?;鸨楷F(xiàn)出HBase、Cassandra等許多優(yōu)秀的產(chǎn)品,其中HBase是從Hadoop中分離出來的、基于HDFS的NoSQL系統(tǒng)。
我們回顧軟件發(fā)展的歷史會(huì)發(fā)現(xiàn),差不多類似功能的軟件,它們出現(xiàn)的時(shí)間都非常接近,比如Linux和Windows都是在90年代初出現(xiàn),Java開發(fā)中的各類MVC框架也基本都是同期出現(xiàn),Android和iOS也是前腳后腳問世。2011年前后,各種NoSQL數(shù)據(jù)庫也是層出不群,我也是在那個(gè)時(shí)候參與開發(fā)了阿里巴巴自己的NoSQL系統(tǒng)。
事物發(fā)展有自己的潮流和規(guī)律,當(dāng)你身處潮流之中的時(shí)候,要緊緊抓住潮流的機(jī)會(huì),想辦法脫穎而出,即使沒有成功,也會(huì)更加洞悉時(shí)代的脈搏,收獲珍貴的知識(shí)和經(jīng)驗(yàn)。而如果潮流已經(jīng)退去,這個(gè)時(shí)候再去往這個(gè)方向上努力,只會(huì)收獲迷茫與壓抑,對時(shí)代、對自己都沒有什么幫助。
但是時(shí)代的浪潮猶如海灘上的浪花,總是一浪接著一浪,只要你站在海邊,身處這個(gè)行業(yè)之中,下一個(gè)浪潮很快又會(huì)到來。你需要敏感而又深刻地去觀察,略去那些浮躁的泡沫,抓住真正潮流的機(jī)會(huì),奮力一搏,不管成敗,都不會(huì)遺憾。
正所謂在歷史前進(jìn)的邏輯中前進(jìn),在時(shí)代發(fā)展的潮流中發(fā)展。通俗的說,就是要在風(fēng)口中飛翔。
上面我講的這些基本上都可以歸類為大數(shù)據(jù)引擎或者大數(shù)據(jù)框架。而大數(shù)據(jù)處理的主要應(yīng)用場景包括數(shù)據(jù)分析、數(shù)據(jù)挖掘與機(jī)器學(xué)習(xí)。數(shù)據(jù)分析主要使用Hive、Spark SQL等SQL引擎完成;數(shù)據(jù)挖掘與機(jī)器學(xué)習(xí)則有專門的機(jī)器學(xué)習(xí)框架TensorFlow、Mahout以及MLlib等,內(nèi)置了主要的機(jī)器學(xué)習(xí)和數(shù)據(jù)挖掘算法。
此外,大數(shù)據(jù)要存入分布式文件系統(tǒng)(HDFS),要有序調(diào)度MapReduce和Spark作業(yè)執(zhí)行,并能把執(zhí)行結(jié)果寫入到各個(gè)應(yīng)用系統(tǒng)的數(shù)據(jù)庫中,還需要有一個(gè)大數(shù)據(jù)平臺(tái)整合所有這些大數(shù)據(jù)組件和企業(yè)應(yīng)用系統(tǒng)。
圖中的所有這些框架、平臺(tái)以及相關(guān)的算法共同構(gòu)成了大數(shù)據(jù)的技術(shù)體系,我將會(huì)在專欄后面逐個(gè)分析,幫你能夠?qū)Υ髷?shù)據(jù)技術(shù)原理和應(yīng)用算法構(gòu)建起完整的知識(shí)體系,進(jìn)可以專職從事大數(shù)據(jù)開發(fā),退可以在自己的應(yīng)用開發(fā)中更好地和大數(shù)據(jù)集成,掌控自己的項(xiàng)目。
希望對您有所幫助!~
本文將從單機(jī)MySQL的場景出發(fā),簡述一下隨著網(wǎng)站的訪問量越來越大,數(shù)據(jù)庫部署的演進(jìn)過程,到為什么要用MySQL的必要性。
大數(shù)據(jù)時(shí)代的數(shù)據(jù)有3V的特點(diǎn):海量Volume、多樣Variety、實(shí)時(shí)Velocity。
互聯(lián)網(wǎng)網(wǎng)站需求的3高的特點(diǎn):高并發(fā)、高可擴(kuò)、高性能。
一、單機(jī)MySql
當(dāng)一個(gè)網(wǎng)站的訪問量不大時(shí),用單個(gè)數(shù)據(jù)庫完全可以輕松應(yīng)付。
在那個(gè)時(shí)候,更多的都是靜態(tài)網(wǎng)頁,動(dòng)態(tài)交互類型的網(wǎng)站不多。
上述架構(gòu)下,我們來看看數(shù)據(jù)存儲(chǔ)的瓶頸是什么?
1.數(shù)據(jù)量的總大小 一個(gè)機(jī)器放不下時(shí)
2.數(shù)據(jù)的索引(B+ Tree)一個(gè)機(jī)器的內(nèi)存放不下時(shí)
3.訪問量(讀寫混合)一個(gè)實(shí)例不能承受
如果滿足了上述1 or 3個(gè),進(jìn)化......
二、Memcached(緩存)+Mysql+垂直拆分
后來,隨著訪問量的上升,幾乎大部分使用MySQL架構(gòu)的網(wǎng)站在數(shù)據(jù)庫上都開始出現(xiàn)了性能問題,web程序不再僅僅專注在功能上,同時(shí)也在追求性能。程序員們開始大量的使用緩存技術(shù)來緩解數(shù)據(jù)庫的壓力,優(yōu)化數(shù)據(jù)庫的結(jié)構(gòu)和索引。開始比較流行的是通過文件緩存來緩解數(shù)據(jù)庫壓力,但是當(dāng)訪問量繼續(xù)增大的時(shí)候,多臺(tái)web機(jī)器通過文件緩存不能共享,大量的小文件緩存也帶了了比較高的IO壓力。在這個(gè)時(shí)候,Memcached就自然的成為一個(gè)非常時(shí)尚的技術(shù)產(chǎn)品。
Memcached作為一個(gè)獨(dú)立的分布式的緩存服務(wù)器,為多個(gè)web服務(wù)器提供了一個(gè)共享的高性能緩存服務(wù),在Memcached服務(wù)器上,又發(fā)展了根據(jù)hash算法來進(jìn)行多臺(tái)Memcached緩存服務(wù)的擴(kuò)展,然后又出現(xiàn)了一致性hash來解決增加或減少緩存服務(wù)器導(dǎo)致重新hash帶來的大量緩存失效的弊端
三、MySql主從復(fù)制讀寫分離
由于數(shù)據(jù)庫的寫入壓力增加,Memcached只能緩解數(shù)據(jù)庫的讀取壓力。讀寫集中在一個(gè)數(shù)據(jù)庫上讓數(shù)據(jù)庫不堪重負(fù),大部分網(wǎng)站開始使用主從復(fù)制技術(shù)來達(dá)到讀寫分離,以提高讀寫性能和讀庫的可擴(kuò)展性。Mysql的master-slave模式成為這個(gè)時(shí)候的網(wǎng)站標(biāo)配了。
四、分庫分表+水平拆分+Mysql集群
在Memcached的高速緩存,MySQL的主從復(fù)制,讀寫分離的基礎(chǔ)之上,這時(shí)MySQL主庫的寫壓力開始出現(xiàn)瓶頸,而數(shù)據(jù)量的持續(xù)猛增,由于MyISAM使用表鎖,在高并發(fā)下會(huì)出現(xiàn)嚴(yán)重的鎖問題,大量的高并發(fā)MySQL應(yīng)用開始使用InnoDB引擎代替MyISAM。
同時(shí),開始流行使用分表分庫來緩解寫壓力和數(shù)據(jù)增長的擴(kuò)展問題。這個(gè)時(shí)候,分表分庫成了一個(gè)熱門技術(shù),是面試的熱門問題也是業(yè)界討論的熱門技術(shù)問題。也就在這個(gè)時(shí)候,MySQL推出了還不太穩(wěn)定的表分區(qū),這也給技術(shù)實(shí)力一般的公司帶來了希望。雖然MySQL推出了MySQL Cluster集群,但性能也不能很好滿足互聯(lián)網(wǎng)的要求,只是在高可靠性上提供了非常大的保證。
五、Mysql的擴(kuò)展性瓶頸
MySQL數(shù)據(jù)庫也經(jīng)常存儲(chǔ)一些大文本字段,導(dǎo)致數(shù)據(jù)庫表非常的大,在做數(shù)據(jù)庫恢復(fù)的時(shí)候就導(dǎo)致非常的慢,不容易快速恢復(fù)數(shù)據(jù)庫。比如1000萬4KB大小的文本就接近40GB的大小,如果能把這些數(shù)據(jù)從MySQL省去,MySQL將變得非常的小。關(guān)系數(shù)據(jù)庫很強(qiáng)大,但是它并不能很好的應(yīng)付所有的應(yīng)用場景。MySQL的擴(kuò)展性差(需要復(fù)雜的技術(shù)來實(shí)現(xiàn)),大數(shù)據(jù)下IO壓力大,表結(jié)構(gòu)更改困難,正是當(dāng)前使用MySQL的開發(fā)人員面臨的問題。
六、為什么用Nosql
今天我們可以通過第三方平臺(tái)(如:Google,Facebook等)可以很容易的訪問和抓取數(shù)據(jù)。用戶的個(gè)人信息,社交網(wǎng)絡(luò),地理位置,用戶生成的數(shù)據(jù)和用戶操作日志已經(jīng)成倍的增加。我們?nèi)绻獙@些用戶數(shù)據(jù)進(jìn)行挖掘,那SQL數(shù)據(jù)庫已經(jīng)不適合這些應(yīng)用了, NoSQL數(shù)據(jù)庫的發(fā)展也卻能很好的處理這些大的數(shù)據(jù)。下面給大家看一下,web應(yīng)用數(shù)據(jù)量的增長圖:
七、Nosql是什么
NoSQL(NoSQL = Not Only SQL ),意即“不僅僅是SQL”,
泛指非關(guān)系型的數(shù)據(jù)庫。隨著互聯(lián)網(wǎng)web2.0網(wǎng)站的興起,傳統(tǒng)的關(guān)系數(shù)據(jù)庫在應(yīng)付web2.0網(wǎng)站,特別是超大規(guī)模和高并發(fā)的SNS類型的web2.0純動(dòng)態(tài)網(wǎng)站已經(jīng)顯得力不從心,暴露了很多難以克服的問題,而非關(guān)系型的數(shù)據(jù)庫則由于其本身的特點(diǎn)得到了非常迅速的發(fā)展。NoSQL數(shù)據(jù)庫的產(chǎn)生就是為了解決大規(guī)模數(shù)據(jù)集合多重?cái)?shù)據(jù)種類帶來的挑戰(zhàn),尤其是大數(shù)據(jù)應(yīng)用難題,包括超大規(guī)模數(shù)據(jù)的存儲(chǔ)。
(例如谷歌或Facebook每天為他們的用戶收集萬億比特的數(shù)據(jù))。這些類型的數(shù)據(jù)存儲(chǔ)不需要固定的模式,無需多余操作就可以橫向擴(kuò)展。
八、Nosql的優(yōu)勢
1.易擴(kuò)展
NoSQL數(shù)據(jù)庫種類繁多,但是一個(gè)共同的特點(diǎn)都是去掉關(guān)系數(shù)據(jù)庫的關(guān)系型特性。
數(shù)據(jù)之間無關(guān)系,這樣就非常容易擴(kuò)展。也無形之間,在架構(gòu)的層面上帶來了可擴(kuò)展的能力。
2.大數(shù)據(jù)量,高性能
NoSQL數(shù)據(jù)庫都具有非常高的讀寫性能,尤其在大數(shù)據(jù)量下,同樣表現(xiàn)優(yōu)秀。
這得益于它的無關(guān)系性,數(shù)據(jù)庫的結(jié)構(gòu)簡單。一般MySQL使用Query Cache,每次表的更新Cache就失效,是一種大粒度的Cache,在針對web2.0的交互頻繁的應(yīng)用,Cache性能不高。而NoSQL的Cache是記錄級(jí)的,是一種細(xì)粒度的Cache,所以NoSQL在這個(gè)層面上來說就要性能高很多了。
3.多樣靈活的數(shù)據(jù)模型
NoSQL無需事先為要存儲(chǔ)的數(shù)據(jù)建立字段,隨時(shí)可以存儲(chǔ)自定義的數(shù)據(jù)格式。而在關(guān)系數(shù)據(jù)庫里,增刪字段是一件非常麻煩的事情。如果是非常大數(shù)據(jù)量的表,增加字段簡直就是一個(gè)噩夢。
九、Nosql數(shù)據(jù)庫的四大分類
鍵值(Key-Value)存儲(chǔ)
列存儲(chǔ)
文檔存儲(chǔ)
圖形存儲(chǔ)
常見的有:Redis、Memcache、MongoDB,這里就不一 一 介紹了。
NoSQL泛指非關(guān)系型數(shù)據(jù)庫。隨著互聯(lián)網(wǎng)行業(yè)的興起與發(fā)展,傳統(tǒng)的數(shù)據(jù)庫結(jié)構(gòu)已經(jīng)很難適應(yīng)大規(guī)模數(shù)據(jù)、非結(jié)構(gòu)性數(shù)據(jù)帶來的挑戰(zhàn),也就是現(xiàn)在大數(shù)據(jù)行業(yè)的發(fā)展對傳統(tǒng)的數(shù)據(jù)庫發(fā)出了挑戰(zhàn),而為了應(yīng)對大規(guī)模的非結(jié)構(gòu)性數(shù)據(jù)的處理,非關(guān)系型數(shù)據(jù)庫才會(huì)在計(jì)算機(jī)、軟件、數(shù)據(jù)庫等方面得到飛速的發(fā)展。