NoSQL資料庫在現代應用程式中的作用

2021-08-19 12:18:09 字數 1846 閱讀 2976

資料模型驅動不僅可以建立有效的應用程式,也可以有效修改他們的特性。他們是「real-world」問題的解決和軟體世界模仿現實世界的行為之間的橋梁。(是的,軟體可以創造奇蹟,但如果不是追求更簡單生活沒有人需要這些軟體!)本文論述了nosql資料庫在現代的應用軟體發揮作用。

驅動力

在過去的幾年中,有乙個巨大的轉變則是在棧的應用程式開發平台的選擇上。傳統的wamp和lamp堆疊被逐步被淘汰,像mean、cean等。這種轉變是有很多原因的。最根本的原因是對現代web的期望。最近的預期是從web應用程式已經不僅僅是侷限於資訊的傳遞。今天我們在web應用程式的互動中,資訊處理和內容分析已成為了非常關鍵的部分。這也常被稱為web 2.0。未來預期增長的智慧型裝置和感測器連線到網際網路,繼續利用越來越多的資料生成的應用程式使用者提供智慧型化的增值作用(也稱為web 3.0)。

這種轉變在web應用程式範例中需要豐富的資料。同時,使資料可供消費是同樣重要的,是怎樣不可用資料阻礙了預期的使用者體驗和應用程式的開發成為了另乙個主題!但是,值得一提的是,大多數面向使用者的應用程式都需要從多個資料來源(資料來源)中消耗和處理資料。作為乙個極端的例子,乙個旅遊預訂**可能需要依賴於多個航空公司的航班資料和票務,而信用卡處理來自另乙個第三方,行程出版又從另乙個地方…更不要說,他們還可能會導致使用者在社交**上分享他們的預訂經驗,從他們自己的web應用程式就像乙個使用者的端到端的體驗的一部分。

nosql允許複雜的結構

sql資料庫的結構。在處理應用程式需求時,由於關鍵字段、外來鍵關係、規範化技術等,他們會導致某種程度的剛性。例如,乙個客戶訂單物件往往是分成頭和細節型別的標準化表的結構。nosql,另一方面可以處理在乙個單一的結構中的兩頭和細節。所以,儘管資料模型的結構可能是複雜的,它允許建立他們接近會像乙個「真實世界」的實體。當然,這種能力的成本是資料完整性管理推到了程式應用層。

nosql與基於rest架構

如果您使用web服務或api,那麼你api的預設為json響應。nosql資料庫,如mongodb和couchdb的json格式的儲存資料(稱為文件)。這使編碼api響應接收他們的陣列比較容易得多。與更高的api主要採用高度整合的應用程式,nosql資料庫很適合在儲存方面,提供和消費資訊。

nosql帶來的可伸縮性

nosql資料庫進行多節點資料庫設計,從而提供了極大的可伸縮性功能。例如,mongodb目前可以擴充套件到超過100個節點分布在不同的資料中心或位置。許多nosql資料庫也已經開始支援多個節點資料分割槽,有助於選擇規模更大的資料集的計算資源,同時也減少了不必要的複製,從而減少資料重複的可伸縮性。

因此,sql還是nosql?

這取決於應用程式和用例。不,這是真實的,因為有許多因素,如:

開發工具和技術可能不支援nosql的;

首選**商(首選戰略夥伴關係等許多原因)在您的組織中可能仍然是乙個傳統的sql資料庫;

首選的資料庫**商可能會提供一些nosql-like功能在傳統的資料庫,可以滿足當前應用程式的需求;

資料模型可能是這樣的,真的沒有什麼區別的選擇;

你支援開源**(從乙個企業支援的觀點);

你的人(開發人員、測試人員等)可能還不熟練。

因此,它是乙個為您的應用程式架構決策選擇什麼樣的資料庫所使用的。這篇文章絕不是來影響你選擇的意圖,但是它能提高了人們對nosql被廣泛接受和突出nosql在現代應用程式中所起的作用。

結論

重要的是要了解如今的網路應用程式,如何適應現代技術的期望。平衡nosql的潮流需求、路線圖和來自使用者的期望這些方面都是非常重要的。最後,記住–需求驅動資料模型和資料模型驅動來自於sql或nosql的選擇。這是沒有錯誤的答案每個人都可以嘗試去實現!

NoSQL資料庫在現代應用程式中的作用

資料模型驅動不僅可以建立有效的應用程式,也可以有效地修改以合併新的特性。他們是 real world 問題的解決和軟體世界模仿現實世界的行為之間的橋梁。是的,軟體可以創造奇蹟,但如果不是追求更簡單生活沒有人需要這些軟體!本文論述了nosql資料庫在現代的應用軟體發揮作用。驅動力 在過去的幾年中,有乙...

應用程式現代化

本篇文章版權由 ecf和 hp所有 john dodge,ecf社群經理 應用程式現代化是大多數cio頭腦中最關注的,但實施的節奏及其優先性取決於幾個不同的因素。換言之,應用程式現代化很重要,但根據三位cio 他們同時也是enterprise cio forum ecf council 成員 的看法...

C 開發資料庫應用程式

簡單性 靈活性 而且,visual c 提供的開發環境可以使開發者根據自己的需要設計應用順序的介面和功能。visual c 提供了豐富的類庫和方法,可以使開發者根據自己的應用特點進行選擇。訪問速度快 visual c 提供了新的訪問技術 ole db 和 ado ole db 和 ado 都是基於 ...