NoSQL數(shù)據(jù)庫的應(yīng)用指南_第1頁
NoSQL數(shù)據(jù)庫的應(yīng)用指南_第2頁
NoSQL數(shù)據(jù)庫的應(yīng)用指南_第3頁
NoSQL數(shù)據(jù)庫的應(yīng)用指南_第4頁
免費(fèi)預(yù)覽已結(jié)束,剩余1頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、 NoSQL 數(shù)據(jù)庫的應(yīng)用指南數(shù)據(jù)模型驅(qū)動(dòng)不僅可以建立有效的應(yīng)用程序,也可以有效地修改以合并新的特性。他們是“real-world”問題的解決和軟件世界模仿現(xiàn)實(shí)世界的行為之間的橋梁。(是的,軟件可以創(chuàng)造奇跡,但如果不是追求更簡(jiǎn)單生活沒有人需要這些軟件。本文論述了NoSQL數(shù)據(jù)庫在現(xiàn)代的應(yīng)用軟件發(fā)揮作用。驅(qū)動(dòng)力在過去的幾年中,有一個(gè)巨大的轉(zhuǎn)變則是在應(yīng)用程序開發(fā)平臺(tái)棧的選擇上。傳統(tǒng)的WAMP和LAMP被逐步淘汰,而MEAN、CEAN等逐漸發(fā)揮出優(yōu)勢(shì)。這種轉(zhuǎn)變是有很多原因的。最根本的原因是對(duì)現(xiàn)代Web的期望。最近的預(yù)期是Web應(yīng)用程序已經(jīng)不僅僅是局限于信息的傳遞。今天我們?cè)赪eb應(yīng)用程序的交互中,信

2、息處理和內(nèi)容分析已成為了非常關(guān)鍵的部分。這也常被稱為Web 2.0。未來持續(xù)增長(zhǎng)的智能設(shè)備和傳感器連接到互聯(lián)網(wǎng),繼續(xù)利用越來越多的由應(yīng)用程序用戶生成的數(shù)據(jù)來提供智能化的增值作用(也稱為Web 3.0)。這種Web應(yīng)用程序轉(zhuǎn)變的范例中需要豐富的數(shù)據(jù)。同時(shí),使數(shù)據(jù)可供消費(fèi)是同樣重要的,而且不可用數(shù)據(jù)怎樣阻礙了預(yù)期用戶體驗(yàn)和應(yīng)用程序的開發(fā)成為了另一個(gè)主題!但是,值得一提的是,大多數(shù)面向用戶的應(yīng)用程序都需要從多個(gè)數(shù)據(jù)源(數(shù)據(jù)源)中消費(fèi)和處理數(shù)據(jù)。作為一個(gè)極端的例子,一個(gè)旅游預(yù)訂網(wǎng)站可能需要依賴于多個(gè)航空公司的航班數(shù)據(jù)和票務(wù),而信用卡處理來自另一個(gè)第三方,行程公布又從另一個(gè)地方更不要說,他們還可能會(huì)導(dǎo)致

3、用戶在社交媒體上分享他們的預(yù)訂經(jīng)驗(yàn),從他們自己的Web應(yīng)用程序中就像一個(gè)用戶的端到端體驗(yàn)的一部分。很好,我依然沒有把NoSQL的作用完全呈現(xiàn)給你。你或許仍然想知道NoSQL所有的作用。因此,讓我們繼續(xù)。不管怎樣,了解如下的變化是非常重要的。今天引導(dǎo)我們開始利用新的解決方案,這些解決方案在大多數(shù)情況被創(chuàng)造或者被開發(fā),因?yàn)樗麄儾粌H非常依賴今天或者僅僅因?yàn)榻裉焓强赡艿模▽?duì)比指責(zé)以前的計(jì)算機(jī)革命)。NoSQL允許復(fù)雜的結(jié)構(gòu)SQL數(shù)據(jù)庫是結(jié)構(gòu)化的。但是,在處理應(yīng)用程序需求時(shí),由于字段范圍、外鍵關(guān)系、規(guī)范化技術(shù)等,他們會(huì)導(dǎo)致某種程度的缺陷。例如,一個(gè)客戶訂單對(duì)象往往是分成表頭和詳細(xì)類型的標(biāo)準(zhǔn)化表的結(jié)構(gòu)。N

4、oSQL,另一方面不僅可以處理在一個(gè)單一結(jié)構(gòu)中的表頭和細(xì)節(jié)。所以,盡管數(shù)據(jù)模型的結(jié)構(gòu)可能是復(fù)雜的,它支持建立接近一個(gè) “真實(shí)世界”的實(shí)體。當(dāng)然,,這種能力的成本是把數(shù)據(jù)完整性管理推到了程序應(yīng)用層。NoSQL與基于REST架構(gòu)如果您使用Web服務(wù)或API,碰巧你的API默認(rèn)為JSON響應(yīng)(如果不是,你應(yīng)該嘗試)。NoSQL數(shù)據(jù)庫,如MongoDB和CouchDB是按JSON格式的存儲(chǔ)數(shù)據(jù)(稱為文檔)。這使編碼API響應(yīng)比接收數(shù)組容易得多。采用更高等級(jí)的API導(dǎo)致高度集成的應(yīng)用程序,NoSQL數(shù)據(jù)庫很適合在存儲(chǔ)方面,提供和消費(fèi)信息。NoSQL帶來可伸縮性NoSQL數(shù)據(jù)庫設(shè)計(jì)的思想是拆分為多節(jié)點(diǎn)數(shù)據(jù)

5、庫,從而提供了極大的可伸縮性特性。例如,MongoDB目前可以擴(kuò)展到超過100個(gè)節(jié)點(diǎn),這些節(jié)點(diǎn)可以分布在不同的數(shù)據(jù)中心或地方。許多NoSQL數(shù)據(jù)庫也已經(jīng)開始支持多個(gè)節(jié)點(diǎn)數(shù)據(jù)分區(qū),有助于選擇規(guī)模更大的數(shù)據(jù)集的計(jì)算資源,同時(shí)也減少了不必要的復(fù)制,從而減少數(shù)據(jù)重復(fù)可伸縮性的成本。因此,SQL還是NoSQL?這取決于應(yīng)用程序和特定場(chǎng)景。不,這是真實(shí)的,因?yàn)橛性S多因素,如:1. 開發(fā)工具和技術(shù)可能不支持NoSQL的;2. 首選供應(yīng)商(首選戰(zhàn)略伙伴關(guān)系等許多原因)在您的公司中可能仍然是一個(gè)傳統(tǒng)的SQL數(shù)據(jù)庫;3. 首選的數(shù)據(jù)庫供應(yīng)商可能會(huì)提供一些在傳統(tǒng)的數(shù)據(jù)庫中有NoSQL-like的特性,可以滿足當(dāng)前應(yīng)用程序的需求;4. 數(shù)據(jù)模型可能是這樣的,選擇真的沒有什么區(qū)別;5. 你支持開源代碼(從一個(gè)企業(yè)支持的觀點(diǎn));6. 你的同事(開發(fā)人員、測(cè)試人員等)可能還不熟練。因此,為您的應(yīng)用程序選擇什么樣的數(shù)據(jù)庫是一個(gè)架構(gòu)層面的決定。因此,這篇文章絕不是來影響你選擇傾向的,但是它能提高了人們對(duì)NoSQL被廣泛接受的意識(shí)和突出NoSQL在現(xiàn)代應(yīng)用程序中所起的作用。結(jié)論重要的是要了解如今的網(wǎng)絡(luò)應(yīng)用程序,如何適應(yīng)現(xiàn)代技術(shù)的期望。用需求、路線圖和來自用戶的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論