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

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

nosql列族數(shù)據(jù)庫(kù),主流的nosql數(shù)據(jù)庫(kù)

什么是nosql數(shù)據(jù)庫(kù)?nosql和rdbms有什么區(qū)別

1 理解ACID與BASE的區(qū)別(ACID是關(guān)系型數(shù)據(jù)庫(kù)強(qiáng)一致性的四個(gè)要求,而B(niǎo)ASE是NoSQL數(shù)據(jù)庫(kù)通常對(duì)可用性及一致性的弱要求原則,它們的意思分別是,ACID:atomicity, consistency, isolation, durability;BASE:Basically Available, Soft-state, Eventually Consistent。同時(shí)有意思的是ACID在英語(yǔ)里意為酸,BASE意思為堿)

網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)!專注于網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、微信小程序、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了大化免費(fèi)建站歡迎大家使用!

2 理解持久化與非持久化的區(qū)別。這么說(shuō)是因?yàn)橛械腘oSQL系統(tǒng)是純內(nèi)存存儲(chǔ)的。

3 你必須意識(shí)到傳統(tǒng)有關(guān)系型數(shù)據(jù)庫(kù)與NoSQL系統(tǒng)在數(shù)據(jù)結(jié)構(gòu)上的本質(zhì)區(qū)別。傳統(tǒng)關(guān)系型數(shù)據(jù)庫(kù)通常是基于行的表格型存儲(chǔ),而NoSQL系統(tǒng)包括了列式存儲(chǔ)(Cassandra)、key/value存儲(chǔ)(Memcached)、文檔型存儲(chǔ)(CouchDB)以及圖結(jié)構(gòu)存儲(chǔ)(Neo4j)

4與傳統(tǒng)關(guān)系數(shù)據(jù)庫(kù)有統(tǒng)一的SQL語(yǔ)言操作接口不同,NoSQL系統(tǒng)通常有自己特有的API接口。

5 在架構(gòu)上,你必須搞清楚,NoSQL系統(tǒng)是被設(shè)計(jì)用于成百上千臺(tái)機(jī)器的集群中的,而非共享型數(shù)據(jù)庫(kù)系統(tǒng)的架構(gòu)。

6在NoSQL系統(tǒng)中,可能你得習(xí)慣一下不知道你的數(shù)據(jù)具體存在何處的情況。

7 在NoSQL系統(tǒng)中,你最好習(xí)慣它的弱一致性。”eventually consistent”(最終一致性)正是BASE原則中的重要一項(xiàng)。比如在Twitter,你在Followers列表中經(jīng)常會(huì)感受到數(shù)據(jù)的延遲。

8 在NoSQL系統(tǒng)中,你要理解,很多時(shí)候數(shù)據(jù)并不總是可用的。

9 你得理解,有的方案是擁有分區(qū)容忍性的,有的方案不一定有。

簡(jiǎn)述什么是nosql數(shù)據(jù)庫(kù),并列舉兩種常見(jiàn)的nosql數(shù)據(jù)庫(kù)名稱及其特點(diǎn)

NoSQL太火,冒出太多產(chǎn)品了,保守估計(jì)也成百上千了。

互聯(lián)網(wǎng)公司常用的基本集中在以下幾種,每種只舉一個(gè)比較常見(jiàn)或者應(yīng)用比較成功的例子吧。

1. In-Memory KV Store : Redis

in memory key-value store,同時(shí)提供了更加豐富的數(shù)據(jù)結(jié)構(gòu)和運(yùn)算的能力,成功用法是替代memcached,通過(guò)checkpoint和commit log提供了快速的宕機(jī)恢復(fù),同時(shí)支持replication提供讀可擴(kuò)展和高可用。

2. Disk-Based KV Store: Leveldb

真正基于磁盤的key-value storage, 模型單一簡(jiǎn)單,數(shù)據(jù)量不受限于內(nèi)存大小,數(shù)據(jù)落盤高可靠,Google的幾位大神出品的精品,LSM模型天然寫(xiě)優(yōu)化,順序?qū)懕P的方式對(duì)于新硬件ssd再適合不過(guò)了,不足是僅提供了一個(gè)庫(kù),需要自己封裝server端。

3. Document Store: Mongodb

分布式nosql,具備了區(qū)別mysql的最大亮點(diǎn):可擴(kuò)展性。mongodb 最新引人的莫過(guò)于提供了sql接口,是目前nosql里最像mysql的,只是沒(méi)有ACID的特性,發(fā)展很快,支持了索引等特性,上手容易,對(duì)于數(shù)據(jù)量遠(yuǎn)超內(nèi)存限制的場(chǎng)景來(lái)說(shuō),還需要慎重。

4. Column Table Store: HBase

這個(gè)富二代似乎不用贅述了,最大的優(yōu)勢(shì)是開(kāi)源,對(duì)于普通的scan和基于行的get等基本查詢,性能完全不是問(wèn)題,只是只提供裸的api,易用性上是短板,可擴(kuò)展性方面是最強(qiáng)的,其次坐上了Hadoop的快車,社區(qū)發(fā)展很快,各種基于其上的開(kāi)源產(chǎn)品不少,來(lái)解決諸如join、聚集運(yùn)算等復(fù)雜查詢。

什么是nosql數(shù)據(jù)庫(kù)

Nosql全稱是Not Only SQL,是一種不同于關(guān)系型數(shù)據(jù)庫(kù)的數(shù)據(jù)庫(kù)管理系統(tǒng)設(shè)計(jì)方式。對(duì)NoSQL最普遍的解釋是“非關(guān)系型的”,強(qiáng)調(diào)Key-Value Stores和文檔數(shù)據(jù)庫(kù)的優(yōu)點(diǎn),而不是單純的反對(duì)RDBMS

大數(shù)據(jù)常用哪些數(shù)據(jù)庫(kù)

通常數(shù)據(jù)庫(kù)分為關(guān)系型數(shù)據(jù)庫(kù)和非關(guān)系型數(shù)據(jù)庫(kù),關(guān)系型數(shù)據(jù)庫(kù)的優(yōu)勢(shì)到現(xiàn)在也是無(wú)可替代的,比如MySQL、SQL Server、Oracle、DB2、SyBase、Informix、PostgreSQL以及比較小型的Access等等數(shù)據(jù)庫(kù),這些數(shù)據(jù)庫(kù)支持復(fù)雜的SQL操作和事務(wù)機(jī)制,適合小量數(shù)據(jù)讀寫(xiě)場(chǎng)景;但是到了大數(shù)據(jù)時(shí)代,人們更多的數(shù)據(jù)和物聯(lián)網(wǎng)加入的數(shù)據(jù)已經(jīng)超出了關(guān)系數(shù)據(jù)庫(kù)的承載范圍。

大數(shù)據(jù)時(shí)代初期,隨著數(shù)據(jù)請(qǐng)求并發(fā)量大不斷增大,一般都是采用的集群同步數(shù)據(jù)的方式處理,就是將數(shù)據(jù)庫(kù)分成了很多的小庫(kù),每個(gè)數(shù)據(jù)庫(kù)的數(shù)據(jù)內(nèi)容是不變的,都是保存了源數(shù)據(jù)庫(kù)的數(shù)據(jù)副本,通過(guò)同步或者異步方式保證數(shù)據(jù)的一致性,每個(gè)庫(kù)設(shè)定特定的讀寫(xiě)方式,比如主數(shù)據(jù)庫(kù)負(fù)責(zé)寫(xiě)操作,從數(shù)據(jù)庫(kù)是負(fù)責(zé)讀操作,等等根據(jù)業(yè)務(wù)復(fù)雜程度以此類推,將業(yè)務(wù)在物理層面上進(jìn)行了分離,但是這種方式依舊存在一定的負(fù)載壓力的問(wèn)題,企業(yè)數(shù)據(jù)在不斷的擴(kuò)增中,后面就采用分庫(kù)分表的方式解決,對(duì)讀寫(xiě)負(fù)載進(jìn)行分離,但是這種實(shí)現(xiàn)依舊存在不足,且需要不斷進(jìn)行數(shù)據(jù)庫(kù)服務(wù)器擴(kuò)容。

NoSQL數(shù)據(jù)庫(kù)大致分為5種類型

1、列族數(shù)據(jù)庫(kù):BigTable、HBase、Cassandra、Amazon SimpleDB、HadoopDB等,下面簡(jiǎn)單介紹幾個(gè)

(1)Cassandra:Cassandra是一個(gè)列存儲(chǔ)數(shù)據(jù)庫(kù),支持跨數(shù)據(jù)中心的數(shù)據(jù)復(fù)制。它的數(shù)據(jù)模型提供列索引,log-structured修改,支持反規(guī)范化,實(shí)體化視圖和嵌入超高速緩存。

(2)HBase:Apache Hbase源于Google的Bigtable,是一個(gè)開(kāi)源、分布式、面向列存儲(chǔ)的模型。在Hadoop和HDFS之上提供了像Bigtable一樣的功能。

(3)Amazon SimpleDB:Amazon SimpleDB是一個(gè)非關(guān)系型數(shù)據(jù)存儲(chǔ),它卸下數(shù)據(jù)庫(kù)管理的工作。開(kāi)發(fā)者使用Web服務(wù)請(qǐng)求存儲(chǔ)和查詢數(shù)據(jù)項(xiàng)

(4)Apache Accumulo:Apache Accumulo的有序的、分布式鍵值數(shù)據(jù)存儲(chǔ),基于Google的BigTable設(shè)計(jì),建立在Apache Hadoop、Zookeeper和Thrift技術(shù)之上。

(5)Hypertable:Hypertable是一個(gè)開(kāi)源、可擴(kuò)展的數(shù)據(jù)庫(kù),模仿Bigtable,支持分片。

(6)Azure Tables:Windows Azure Table Storage Service為要求大量非結(jié)構(gòu)化數(shù)據(jù)存儲(chǔ)的應(yīng)用提供NoSQL性能。表能夠自動(dòng)擴(kuò)展到TB級(jí)別,能通過(guò)REST和Managed API訪問(wèn)。

2、鍵值數(shù)據(jù)庫(kù):Redis、SimpleDB、Scalaris、Memcached等,下面簡(jiǎn)單介紹幾個(gè)

(1)Riak:Riak是一個(gè)開(kāi)源,分布式鍵值數(shù)據(jù)庫(kù),支持?jǐn)?shù)據(jù)復(fù)制和容錯(cuò)。(2)Redis:Redis是一個(gè)開(kāi)源的鍵值存儲(chǔ)。支持主從式復(fù)制、事務(wù),Pub/Sub、Lua腳本,還支持給Key添加時(shí)限。

(3)Dynamo:Dynamo是一個(gè)鍵值分布式數(shù)據(jù)存儲(chǔ)。它直接由亞馬遜Dynamo數(shù)據(jù)庫(kù)實(shí)現(xiàn);在亞馬遜S3產(chǎn)品中使用。

(4)Oracle NoSQL Database:來(lái)自O(shè)racle的鍵值NoSQL數(shù)據(jù)庫(kù)。它支持事務(wù)ACID(原子性、一致性、持久性和獨(dú)立性)和JSON。

(5)Oracle NoSQL Database:具備數(shù)據(jù)備份和分布式鍵值存儲(chǔ)系統(tǒng)。

(6)Voldemort:具備數(shù)據(jù)備份和分布式鍵值存儲(chǔ)系統(tǒng)。

(7)Aerospike:Aerospike數(shù)據(jù)庫(kù)是一個(gè)鍵值存儲(chǔ),支持混合內(nèi)存架構(gòu),通過(guò)強(qiáng)一致性和可調(diào)一致性保證數(shù)據(jù)的完整性。

3、文檔數(shù)據(jù)庫(kù):MongoDB、CouchDB、Perservere、Terrastore、RavenDB等,下面簡(jiǎn)單介紹幾個(gè)

(1)MongoDB:開(kāi)源、面向文檔,也是當(dāng)下最人氣的NoSQL數(shù)據(jù)庫(kù)。

(2)CounchDB:Apache CounchDB是一個(gè)使用JSON的文檔數(shù)據(jù)庫(kù),使用Javascript做MapReduce查詢,以及一個(gè)使用HTTP的API。

(3)Couchbase:NoSQL文檔數(shù)據(jù)庫(kù)基于JSON模型。

(4)RavenDB:RavenDB是一個(gè)基于.NET語(yǔ)言的面向文檔數(shù)據(jù)庫(kù)。

(5)MarkLogic:MarkLogic NoSQL數(shù)據(jù)庫(kù)用來(lái)存儲(chǔ)基于XML和以文檔為中心的信息,支持靈活的模式。

4、圖數(shù)據(jù)庫(kù):Neo4J、InfoGrid、OrientDB、GraphDB,下面簡(jiǎn)單介紹幾個(gè)

(1)Neo4j:Neo4j是一個(gè)圖數(shù)據(jù)庫(kù);支持ACID事務(wù)(原子性、獨(dú)立性、持久性和一致性)。

(2)InfiniteGraph:一個(gè)圖數(shù)據(jù)庫(kù)用來(lái)維持和遍歷對(duì)象間的關(guān)系,支持分布式數(shù)據(jù)存儲(chǔ)。

(3)AllegroGraph:AllegroGraph是結(jié)合使用了內(nèi)存和磁盤,提供了高可擴(kuò)展性,支持SPARQ、RDFS++和Prolog推理。

5、內(nèi)存數(shù)據(jù)網(wǎng)格:Hazelcast、Oracle Coherence、Terracotta BigMemorry、GemFire、Infinispan、GridGain、GigaSpaces,下面簡(jiǎn)單介紹幾個(gè)

(1)Hazelcast:Hazelcast CE是一個(gè)開(kāi)源數(shù)據(jù)分布平臺(tái),它允許開(kāi)發(fā)者在數(shù)據(jù)庫(kù)集群之上共享和分割數(shù)據(jù)。

(2)Oracle Coherence:Oracle的內(nèi)存數(shù)據(jù)網(wǎng)格解決方案提供了常用數(shù)據(jù)的快速訪問(wèn)能力,一致性支持事務(wù)處理能力和數(shù)據(jù)的動(dòng)態(tài)劃分。

(3)Terracotta BigMemory:來(lái)自Terracotta的分布式內(nèi)存管理解決方案。這項(xiàng)產(chǎn)品包括一個(gè)Ehcache界面、Terracotta管理控制臺(tái)和BigMemory-Hadoop連接器。

(4)GemFire:Vmware vFabric GemFire是一個(gè)分布式數(shù)據(jù)管理平臺(tái),也是一個(gè)分布式的數(shù)據(jù)網(wǎng)格平臺(tái),支持內(nèi)存數(shù)據(jù)管理、復(fù)制、劃分、數(shù)據(jù)識(shí)別路由和連續(xù)查詢。

(5)Infinispan:Infinispan是一個(gè)基于Java的開(kāi)源鍵值NoSQL數(shù)據(jù)存儲(chǔ),和分布式數(shù)據(jù)節(jié)點(diǎn)平臺(tái),支持事務(wù),peer-to-peer 及client/server 架構(gòu)。

(6)GridGain:分布式、面向?qū)ο?、基于?nèi)存、SQL+NoSQL鍵值數(shù)據(jù)庫(kù)。支持ACID事務(wù)。

(7)GigaSpaces:GigaSpaces內(nèi)存數(shù)據(jù)網(wǎng)格能夠充當(dāng)應(yīng)用的記錄系統(tǒng),并支持各種各樣的高速緩存場(chǎng)景。


文章名稱:nosql列族數(shù)據(jù)庫(kù),主流的nosql數(shù)據(jù)庫(kù)
分享地址:http://weahome.cn/article/dsigejs.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部