偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

為什么我們在追求敏捷的路上拋棄了關(guān)系數(shù)據(jù)庫

譯文 精選
數(shù)據(jù)庫
本篇文章將會闡述,在一個實驗性應用中放棄使用關(guān)系數(shù)據(jù)庫的決定是如何深刻改善業(yè)務的。

旅行者保險公司是美國最大的商業(yè)、財產(chǎn)和意外保險承保人之一。作為一名資深架構(gòu)師,我目睹了該行業(yè)在過去10多年中的巨大發(fā)展,數(shù)據(jù)需求推動靜態(tài)數(shù)據(jù)需求的增長,隨后是動態(tài)數(shù)據(jù),最后是消費中的數(shù)據(jù)。

如今,董事會要求企業(yè)管理者利用技術(shù)重新設(shè)計生產(chǎn)和銷售,并最終提高公司的生產(chǎn)力和效率。

按理說,軟件可以減少企業(yè)發(fā)展瓶頸,這意味著我們需要更好地持續(xù)構(gòu)建和交付軟件應用。雖然我們認為自己是敏捷狂熱者,精通微服務,但我們并沒有一覺醒來突然改變數(shù)據(jù)庫。

事實上,我們用了數(shù)年進行數(shù)據(jù)庫技術(shù)迭代,才最終用文檔數(shù)據(jù)庫取代了底層關(guān)系數(shù)據(jù)庫,使我們能夠捕捉到使用微服務的價值,并提高開發(fā)人員的工作效率和速度。

通過運行數(shù)據(jù)存儲變得更加敏捷

起初,我們的目標是為我們的經(jīng)紀人構(gòu)建一個單一視圖的應用程序,因為他們需要登錄12個不同的服務,以滿足單一用例的要求。關(guān)系數(shù)據(jù)模型一直阻礙著我們。

在當今的軟件開發(fā)實踐中,你需要根據(jù)簡短的業(yè)務功能描述來構(gòu)建軟件。游戲的關(guān)鍵在于保持輕便和不斷迭代。這與傳統(tǒng)的瀑布式方法不同,在瀑布式方法中,可能要花費六個月的時間進行需求分析,才能編寫一行代碼。在瀑布式方法中,這沒有問題——你知道了最終狀態(tài),才能創(chuàng)建數(shù)據(jù)庫對象。但是,如果采用敏捷方法,就無法做到這一點,因為根本無法根據(jù)太簡短的業(yè)務需求建立數(shù)據(jù)模型?,F(xiàn)實情況是,你需要不斷修改數(shù)據(jù)庫。

在旅行者公司(Travelers),我們在 2014 年推出了單一視圖應用程序,盡管它仍然依賴于 ETL、具有單一的代碼庫,并面臨持續(xù)的集成挑戰(zhàn)?,F(xiàn)在,我們每年要部署五次軟件,這對我們來說非常重要,并在內(nèi)部營造了重新設(shè)計的應用程序?qū)I(yè)務影響的氛圍。

我們意識到,如果工程團隊需要加快交付速度,我們就必須放棄關(guān)系數(shù)據(jù)庫。

再見表格,你好 JSON!

2017 年,我們決定使用 MongoDB Atlas 這種文檔模型數(shù)據(jù)庫。然而,要想取得成功,我們需要做的不僅僅是學習如何針對不同的數(shù)據(jù)庫進行編程。對于一家從未使用過關(guān)系數(shù)據(jù)庫以外其他任何東西的公司來說,這是一次巨大的變革。要想取得成功,我們不僅需要實現(xiàn)技術(shù)的現(xiàn)代化,還需要實現(xiàn)企業(yè)文化的現(xiàn)代化。

在我們的開發(fā)人員開發(fā)軟件的同時,我們還與許多其他團體建立了關(guān)系,讓他們也參與到我們的旅程中來。

  • 我們這樣做是為了確保能夠利用他們的專業(yè)知識
  • 讓噪音安靜下來
  • 教會每個團隊如何使用 JSON 建立數(shù)據(jù)模型

與表格相比,用 JSON 建模讓許多人大開眼界,他們認識到我們可以更快地將軟件交付到生產(chǎn)中。

很快,隨著我們的開發(fā)團隊更快地將功能交付到生產(chǎn)中,業(yè)務產(chǎn)品負責人的工作積壓開始減少。這創(chuàng)造了一個飛輪勢頭。隨著我們的業(yè)務部門正在做的事情在內(nèi)部傳開,我們開始看到其他團隊對我們的成果產(chǎn)生了極大的興趣。

現(xiàn)在是微服務

盡管我們的開發(fā)人員在首次發(fā)布之前沒有使用 MongoDB 的經(jīng)驗,但我們?nèi)匀荒軌蛟?8 周內(nèi)將產(chǎn)品投入生產(chǎn),消除了 600 多行代碼,并在時間和預算范圍內(nèi)完成了任務。

此外,反饋表明,文檔數(shù)據(jù)模型有助于消除數(shù)據(jù)映射和建模等繁瑣的關(guān)系數(shù)據(jù)庫工作。這樣,開發(fā)人員就有時間重新專注于高度優(yōu)先的項目。

我們剛開始使用 MongoDB 時,生產(chǎn)中只有兩個集合。一年后,我們在生產(chǎn)中部署了 120 個集合,每天編寫 1000 萬個文檔。如今,每個團隊都擁有自己的依賴關(guān)系,并擁有自己專用的微服務和數(shù)據(jù)庫,從而為應用程序和數(shù)據(jù)庫的變更提供了單一的管道??傊?,這些變化以及不重構(gòu)數(shù)據(jù)模型所節(jié)省的時間,讓我們將部署時間從幾小時甚至幾天縮短到了幾分鐘。

引領(lǐng)未來創(chuàng)新

如果在關(guān)系型數(shù)據(jù)庫中使用得當,就會有很多表格;如果數(shù)據(jù)建模得當,即使是最簡單的使用案例,也會有很多對象。一旦我們發(fā)現(xiàn)數(shù)據(jù)庫拖慢了我們的速度,我們就知道是時候做出改變了。

我們轉(zhuǎn)向文檔模型數(shù)據(jù)庫的決定最終對公司產(chǎn)生了深遠影響,MongoDB 已成為軟件開發(fā)的事實標準。在此過程中,我們采用了精益產(chǎn)品思想,并為我們的開發(fā)團隊成功縮短交付時間做好了準備。

原文標題:Why our agile journey led us to ditch the relational database

責任編輯:梁佳樂
相關(guān)推薦

2011-03-15 14:54:08

NoSQL

2020-02-19 15:01:30

數(shù)據(jù)庫SQL技術(shù)

2010-09-17 08:24:59

敏捷開發(fā)

2010-09-15 14:09:01

GraphDataba

2011-10-11 17:07:12

數(shù)據(jù)庫Internet文件數(shù)據(jù)庫

2023-10-16 13:26:00

RDBMS關(guān)系數(shù)據(jù)庫

2010-03-08 13:20:27

MongoDB關(guān)系數(shù)據(jù)庫

2020-03-14 16:37:09

數(shù)據(jù)庫IT技術(shù)

2010-10-28 10:30:16

云計算關(guān)系數(shù)據(jù)庫

2011-07-18 09:54:47

云計算分片關(guān)系數(shù)據(jù)庫關(guān)系數(shù)據(jù)庫

2009-03-26 11:10:13

關(guān)系數(shù)據(jù)庫關(guān)系型數(shù)據(jù)庫數(shù)據(jù)庫

2010-05-25 09:33:18

云計算第二屆云計算大會

2020-06-10 09:06:48

MongoDB架構(gòu)高可用

2009-07-10 09:28:41

NoSQL關(guān)系數(shù)據(jù)庫

2023-10-10 11:18:42

Spring數(shù)據(jù)庫

2015-04-24 13:59:41

2023-05-22 11:20:27

數(shù)據(jù)庫MySQL關(guān)系數(shù)據(jù)

2018-05-15 16:33:12

數(shù)據(jù)庫MySQL 8.0新特性

2016-09-27 21:25:08

Go語言Ken Thompso

2018-10-15 13:57:38

Hadoop數(shù)據(jù)庫MySQL
點贊
收藏

51CTO技術(shù)棧公眾號