真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

nosql支持事務(wù)處理,什么事nosql

傳統(tǒng)數(shù)據(jù)庫與新型數(shù)據(jù)庫的優(yōu)缺點(diǎn)

一:傳統(tǒng)數(shù)據(jù)庫

陳倉網(wǎng)站制作公司哪家好,找成都創(chuàng)新互聯(lián)公司!從網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)公司等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營維護(hù)。成都創(chuàng)新互聯(lián)公司成立于2013年到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選成都創(chuàng)新互聯(lián)公司

(1)傳統(tǒng)索引不適于海量數(shù)據(jù)? ??

傳統(tǒng)行存數(shù)據(jù)庫索引需要手工設(shè)定,對應(yīng)用不完全透明,隨場景和需求的變化需要不斷調(diào)整,人工維護(hù)成本很高。并且傳統(tǒng)索引占用存儲空間很大,甚至高于數(shù)據(jù)本身,造成查詢效率的下降。

(2)數(shù)據(jù)裝載速度慢

因?yàn)樗饕枰匦聞?chuàng)建,加載性能會變的很糟糕。分析型架構(gòu)系統(tǒng)要解決這些個問題,必須最大限度地減少磁盤 I/O ,提升查詢效率,減小人工維護(hù)成本。南大通用分析型數(shù)據(jù)庫GBase8a (以下簡稱GBase 8a)通過列存儲模式、數(shù)據(jù)壓縮、智能化的索引、并行處理、并發(fā)控制、高效的查詢優(yōu)化器等技術(shù),使得上述問題得到有效解決。以下各節(jié)將描述 GBase 8a 的創(chuàng)新架構(gòu)如何實(shí)現(xiàn)這些目標(biāo)。

二:新型數(shù)據(jù)庫

新型數(shù)據(jù)庫采用分布式并行計(jì)算架構(gòu),部署于X86通用服務(wù)器,滿足大數(shù)據(jù)實(shí)時交易需求,成本低、擴(kuò)展性高,突破了傳統(tǒng)數(shù)據(jù)庫性能瓶頸。

分布式非關(guān)系型數(shù)據(jù)庫技術(shù)創(chuàng)新

非關(guān)系型數(shù)據(jù)庫即NoSQL,拋棄了關(guān)系數(shù)據(jù)庫復(fù)雜的關(guān)系操作、事務(wù)處理等功能,僅提供簡單的鍵值對(Key, Value)數(shù)據(jù)的存儲與查詢,換取高擴(kuò)展性和高性能,滿足論壇、博客、SNS、微博等互聯(lián)網(wǎng)類應(yīng)用場景下針對海量數(shù)據(jù)的簡單操作需求。主要技術(shù)創(chuàng)新為:

(1) 簡單的數(shù)據(jù)操作換取高效響應(yīng)。NoSQL僅支持按照Key(關(guān)鍵字)來存儲和查詢Value(數(shù)據(jù)),不支持對非關(guān)鍵字?jǐn)?shù)據(jù)列的高效查詢;因數(shù)據(jù)操作簡單、數(shù)據(jù)間一般不需要關(guān)聯(lián)操作,故系統(tǒng)可支持高并發(fā)和較快的響應(yīng)速度。

(2) 多種一致性策略滿足業(yè)務(wù)需求。不同于傳統(tǒng)關(guān)系型數(shù)據(jù)庫僅支持強(qiáng)一致性策略,NoSQL還支持弱一致性和最終一致性等多種策略,可根據(jù)應(yīng)用場景進(jìn)行對應(yīng)配置。例如,對寫入操作頻繁,但數(shù)據(jù)讀取最新版本要求并不嚴(yán)格的應(yīng)用,如互聯(lián)網(wǎng)網(wǎng)頁數(shù)據(jù)的存儲和分析應(yīng)用,可以采用最終一致性策略;而對訂購關(guān)系存儲的應(yīng)用,則必須用強(qiáng)一致性策略,保證總是讀取最新版本數(shù)據(jù)

為什么大部分NoSQL不提供分布式事務(wù)

像MongoDB, Cassandra, HBase, DynamoDB, 和

Riak這些NoSQL缺乏傳統(tǒng)的原子事務(wù)機(jī)制,所謂原子事務(wù)機(jī)制是可以保證一系列寫操作要么全部完成,要么全部不會完成,不會發(fā)生只完成一系列中一兩個

寫操作;因?yàn)閿?shù)據(jù)庫不提供這種事務(wù)機(jī)制支持,開發(fā)者需要自己編寫代碼來確保一系列寫操作的事務(wù)機(jī)制,比較復(fù)雜和測試。

這些NoSQL數(shù)據(jù)庫不提供事務(wù)機(jī)制原因在于其分布式特點(diǎn),一系列寫操作中訪問的數(shù)據(jù)可能位于不同的分區(qū)服務(wù)器,這樣的事務(wù)就變成分布式事務(wù),在分

布式事務(wù)中實(shí)現(xiàn)原子性需要彼此協(xié)調(diào),而協(xié)調(diào)是耗費(fèi)時間的,每臺機(jī)器在一個大事務(wù)過程中必須依次確認(rèn),這就需要一種協(xié)議確保一個事務(wù)中沒有任何一臺機(jī)器寫操

作失敗。

這種協(xié)調(diào)是昂貴的,會增加延遲時間,關(guān)鍵問題是,當(dāng)協(xié)調(diào)沒有完成時,其他操作是不能讀取事務(wù)中寫操作結(jié)果的,這是因?yàn)槭聞?wù)的all-or-

nothing原理導(dǎo)致,萬一協(xié)調(diào)過程發(fā)現(xiàn)某個寫操作不能完成,那么需要將其他寫操作成功的進(jìn)行回滾。針對分布式事務(wù)的分布式協(xié)調(diào)對整體數(shù)據(jù)庫性能有嚴(yán)重

影響,不只是吞吐量還包括延遲時間,這樣大部分NoSQL數(shù)據(jù)庫因?yàn)樾阅軉栴}就選擇不提供分布式事務(wù)。

MongoDB, Riak, HBase, 和 Cassandra提供基于單一鍵的事務(wù),這是因?yàn)樗行畔⒍己鸵粋€鍵key有關(guān),這個鍵是存儲在單個服務(wù)器上,這樣基于單鍵的事務(wù)不會帶來復(fù)雜的分布式協(xié)調(diào)。

那么看來擴(kuò)展性性能和分布式事務(wù)是一對矛盾,總要有取舍?實(shí)際上是不完全是,現(xiàn)在完全有可能提供高擴(kuò)展的性能同時提供分布式原子事務(wù)。

FIT是這樣一個在分布式系統(tǒng)提供原子事務(wù)的策略,在fairness公平性, isolation隔離性, 和throughput吞吐量(簡稱FIT)可以權(quán)衡。

一個支持分布式事務(wù)的可伸縮分布式系統(tǒng)能夠完成這三個屬性中兩個,公平是事務(wù)之間不會相互影響造成延遲;隔離性提供一種幻覺好像整個數(shù)據(jù)庫只有它自

己一個事務(wù),隔離性保證當(dāng)任何同時發(fā)生的事務(wù)發(fā)生沖突時,能夠保證彼此能看到彼此的寫操作結(jié)果,因此減輕了程序員為避免事務(wù)讀寫沖突的強(qiáng)邏輯推理要求;吞

吐量是指每單元時間數(shù)據(jù)庫能夠并發(fā)處理多少事務(wù)。

FIT是如下進(jìn)行權(quán)衡:

保證公平性fairness 和隔離性isolation, 但是犧牲吞吐量

保證公平性fairness和吞吐量, 犧牲隔離性isolation

保證隔離性isolation和吞吐量throughput, 但是犧牲公平性fairness.

犧牲公平性:放棄公平性,數(shù)據(jù)庫能有更多機(jī)會降低分布式事務(wù)的成本,主要成本是分布式協(xié)調(diào)帶來的,也就是說,不需要在每個事務(wù)過程內(nèi)對每個機(jī)器都依

次確認(rèn)事務(wù)完成,這樣排隊(duì)式的確認(rèn)commit事務(wù)是很浪費(fèi)時間的,放棄公平性,意味著可以在事務(wù)外面進(jìn)行協(xié)調(diào),這樣就只是增加了協(xié)調(diào)時間,不會增加互相

沖突事務(wù)因?yàn)楸舜藳_突而不能運(yùn)行所耽擱的時間,當(dāng)系統(tǒng)不需要公平性時,需要根據(jù)事務(wù)的優(yōu)先級或延遲等標(biāo)準(zhǔn)進(jìn)行指定先后執(zhí)行順序,這樣就能夠獲得很好的吞吐

量。

G-Store是一種放棄公平性的 Isolation-Throughput

的分布式key-value存儲,支持多鍵事務(wù)(multi-key transactions),MongoDB 和

HBase在鍵key在同樣分區(qū)上也支持多鍵事務(wù),但是不支持跨分區(qū)的事務(wù)。

總之:傳統(tǒng)分布式事務(wù)性能不佳的原因是確保原子性(分布式協(xié)調(diào))和隔離性同時重疊,創(chuàng)建一個高吞吐量分布式事務(wù)的關(guān)鍵是分離這兩種關(guān)注,這種分離原

子性和隔離性的視角將導(dǎo)致兩種類型的系統(tǒng),第一種選擇是弱隔離性能讓沖突事務(wù)并行執(zhí)行和確認(rèn)提交;第二個選擇重新排序原子性和隔離性機(jī)制保證它們不會某個

時間重疊,這是一種放棄公平的事務(wù)執(zhí)行,所謂放棄公平就是不再同時照顧原子性和隔離性了,有所傾斜,放棄高標(biāo)準(zhǔn)道德要求就會帶來高自由高效率。

如何搞定NoSQL事務(wù)機(jī)制

在SequoiaDB巨杉數(shù)據(jù)庫聯(lián)合創(chuàng)始人兼CTO王濤看來,目前只有少量的NoSQL數(shù)據(jù)庫支持事務(wù)機(jī)制,如VoltDB、RavenDB、SequoiaDB、MarkLogic。并且,“NoSQL支持事務(wù)(ACID)是未來的趨勢,不支持事務(wù)的NoSQL會大大縮小其應(yīng)用場景?!睂τ贏CID來說,是指數(shù)據(jù)庫事務(wù)機(jī)制正確執(zhí)行的四大基本要素,包含了:原子性(Atomicity)、一致性(Consistency)、隔離性(Isolation)、持久性(Durability)。

什么是New SQL?分析NewSQL是如何融合NoSQL和RDBMS兩者的優(yōu)勢

NewSQL是對一類現(xiàn)代關(guān)系型數(shù)據(jù)庫的統(tǒng)稱,這類數(shù)據(jù)庫對于一般的OLTP讀寫請求提供可橫向擴(kuò)展的性能,同時支持事務(wù)的ACID保證。這些系統(tǒng)既擁有NoSQL數(shù)據(jù)庫的擴(kuò)展性,又保持傳統(tǒng)數(shù)據(jù)庫的事務(wù)特性。NewSQL重新將“應(yīng)用程序邏輯與數(shù)據(jù)操作邏輯應(yīng)該分離”的理念帶回到現(xiàn)代數(shù)據(jù)庫的世界,這也驗(yàn)證了歷史的發(fā)展總是呈現(xiàn)出螺旋上升的形式。

在21世紀(jì)00年代中,出現(xiàn)了許多數(shù)據(jù)倉庫系統(tǒng) (如 Vertica,Greeplum 和AsterData),這些以處理OLAP 請求為設(shè)計(jì)目標(biāo)的系統(tǒng)并不在本文定義的NewSQL范圍內(nèi)。OLAP 數(shù)據(jù)庫更關(guān)注針對海量數(shù)據(jù)的大型、復(fù)雜、只讀的查詢,查詢時間可能持續(xù)秒級、分鐘級甚至更長。

NoSQL的擁躉普遍認(rèn)為阻礙傳統(tǒng)數(shù)據(jù)庫橫向擴(kuò)容、提高可用性的原因在于ACID保證和關(guān)系模型,因此NoSQL運(yùn)動的核心就是放棄事務(wù)強(qiáng)一致性以及關(guān)系模型,擁抱最終一致性和其它數(shù)據(jù)模型?(如 key/value,graphs 和Documents)。

兩個最著名的NoSQL數(shù)據(jù)庫就是Google的BigTable和Amazon的Dynamo,由于二者都未開源,其它組織就開始推出類似的開源替代項(xiàng)目,包括Facebook的 Cassandra (基于BigTable和Dynamo)、PowerSet的 Hbase(基于BigTable)。有一些創(chuàng)業(yè)公司也加入到這場NoSQL運(yùn)動中,它們不一定是受BigTable和Dynamo的啟發(fā),但都響應(yīng)了NoSQL的哲學(xué),其中最出名的就是MongoDB。

在21世紀(jì)00年代末,市面上已經(jīng)有許多供用戶選擇的分布式數(shù)據(jù)庫產(chǎn)品。使用NoSQL的優(yōu)勢在于應(yīng)用開發(fā)者可以更關(guān)注應(yīng)用邏輯本身,而非數(shù)據(jù)庫的擴(kuò)展性問題;但與此同時許多應(yīng)用,如金融系統(tǒng)、訂單處理系統(tǒng),由于無法放棄事務(wù)的一致性要求被拒之門外。

一些組織,如Google,已經(jīng)發(fā)現(xiàn)他們的許多工程師將過多的精力放在處理數(shù)據(jù)一致性上,這既暴露了數(shù)據(jù)庫的抽象、又提高了代碼的復(fù)雜度,這時候要么選擇回到傳統(tǒng)DBMS時代,用更高的機(jī)器配置縱向擴(kuò)容,要么選擇回到中間件時代,開發(fā)支持分布式事務(wù)的中間件。這兩種方案成本都很高,于是NewSQL運(yùn)動開始醞釀。

NewSQL數(shù)據(jù)庫設(shè)計(jì)針對的讀寫事務(wù)有以下特點(diǎn):

1、耗時短。

2、使用索引查詢,涉及少量數(shù)據(jù)。

3、重復(fù)度高,通常使用相同的查詢語句和不同的查詢參考。

也有一些學(xué)者認(rèn)為NewSQL系統(tǒng)是特指實(shí)現(xiàn)上使用Lock-free并發(fā)控制技術(shù)和share-nothing架構(gòu)的數(shù)據(jù)庫。所有我們認(rèn)為是NewSQL的數(shù)據(jù)庫系統(tǒng)確實(shí)都有這樣的特點(diǎn)。


網(wǎng)站題目:nosql支持事務(wù)處理,什么事nosql
地址分享:http://weahome.cn/article/hocjoo.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部