NoSQL(NoSQL
在松原等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都做網(wǎng)站、成都網(wǎng)站設(shè)計 網(wǎng)站設(shè)計制作按需定制開發(fā),公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站制作,營銷型網(wǎng)站建設(shè),成都外貿(mào)網(wǎng)站建設(shè),松原網(wǎng)站建設(shè)費用合理。
=
Not
Only
SQL
),意即“不僅僅是SQL”,是一項全新的數(shù)據(jù)庫革命性運動,早期就有人提出,發(fā)展至2009年趨勢越發(fā)高漲。NoSQL的擁護者們提倡運用非關(guān)系型的數(shù)據(jù)存儲,相對于鋪天蓋地的關(guān)系型數(shù)據(jù)庫運用,這一概念無疑是一種全新的思維的注入。
隨著大數(shù)據(jù)的不斷發(fā)展,非關(guān)系型的數(shù)據(jù)庫現(xiàn)在成了一個極其熱門的新領(lǐng)域,非關(guān)系數(shù)據(jù)庫產(chǎn)品的發(fā)展非常迅速。現(xiàn)今的計算機體系結(jié)構(gòu)在數(shù)據(jù)存儲方面要有龐大的水平擴展性,而NoSQL也正是致力于改變這一現(xiàn)狀。目前Google的
BigTable和Amazon
的Dynamo使用的就是NoSQL型數(shù)據(jù)庫,本文介紹了10種出色的NoSQL數(shù)據(jù)庫。
雖然NoSQL流行語火起來才短短一年的時間,但是不可否認,現(xiàn)在已經(jīng)開始了第二代運動。盡管早期的堆棧代碼只能算是一種實驗,然而現(xiàn)在的系統(tǒng)已經(jīng)更加的成熟、穩(wěn)定。不過現(xiàn)在也面臨著一個嚴酷的事實:技術(shù)越來越成熟——以至于原來很好的NoSQL數(shù)據(jù)存儲不得不進行重寫,也有少數(shù)人認為這就是所謂的2.0版本。這里列出一些比較知名的NoSQL工具,可以為大數(shù)據(jù)建立快速、可擴展的存儲庫。
給一個地址吧
互聯(lián)網(wǎng)需求的3高: 高并發(fā),高可擴,高性能。
Redis 是一種運行速度很快,并發(fā)性能很強,并且運行在內(nèi)存上的NoSql(not only sql)數(shù)據(jù)庫
NoSQL數(shù)據(jù)庫 和 傳統(tǒng)數(shù)據(jù)庫 相比的優(yōu)勢:
NoSQL數(shù)據(jù)庫無需事先為要存儲的數(shù)據(jù)建立字段,隨時可以存儲自定義的數(shù)據(jù)格式。
而在關(guān)系數(shù)據(jù)庫里,增刪字段是一件非常麻煩的事情。如果是非常大數(shù)據(jù)量的表,增加字段 簡直就是一個噩夢。
Redis的常用使用場景:
緩存 ,毫無疑問這是Redis當今最為人熟知的使用場景。在提升服務(wù)器性能方面非常有效;一 些頻繁被訪問的數(shù)據(jù),經(jīng)常被訪問的數(shù)據(jù)如果放在關(guān)系型數(shù)據(jù)庫,每次查詢的開銷都會很 大,而放在redis中,因為redis 是放在內(nèi)存中的可以很高效的訪問
排行榜 ,在使用傳統(tǒng)的關(guān)系型數(shù)據(jù)庫(mysql oracle 等)來做這個事兒,非常的麻煩,而利 用Redis的SortSet(有序集合)數(shù)據(jù)結(jié)構(gòu)能夠簡單的搞定;
好友關(guān)系 ,利用集合的一些命令,比如求交集、并集、差集等??梢苑奖愀愣ㄒ恍┕餐?友、共同愛好之類的功能;
Session共享 ,以jsp為例,默認Session是保存在服務(wù)器的文件中,如果是集群服務(wù),同一個 用戶過來可能落在不同機器上,這就會導致用戶頻繁登陸;采用Redis保存Session后,無論 用戶落在那臺機器上都能夠獲取到對應(yīng)的Session信息。
下載: redis: 圖形工具:
安裝(Linux)
上傳tar.gz包,并解壓:tar -zxvf redis-5.0.4.tar.gz
安裝gcc:yum -y install gcc (忘記是否安裝過,可以使用 gcc -v 命令查看gcc版本,如果沒有安裝過,會提示命令不存在)
進入redis目錄,進行編譯:make
編譯之后,開始安裝:make install
后臺運行方式—— redis默認不會使用后臺運行,如果你需要,修改配置文件daemonize=yes,當你后臺服務(wù)啟動的 時候,會寫成一個進程文件運行
vim /opt/redis-5.0.4/redis.conf
以配置文件的方式啟動:
cd /usr/local/bin
redis-server /opt/redis-5.0.4/redis.conf
關(guān)閉數(shù)據(jù)庫:
單實例關(guān)閉 ——redis-cli shutdown
多實例關(guān)閉 ——dis-cli -p 6379 shutdown 默認的端口6379,如改過,更換端口
一般將NoSQL數(shù)據(jù)庫分為四大類:鍵值(Key-Value)存儲數(shù)據(jù)庫、列存儲數(shù)據(jù)庫、文檔型數(shù)據(jù)庫和圖形(Graph)數(shù)據(jù)庫。它們的數(shù)據(jù)模型、優(yōu)缺點、典型應(yīng)用場景。
鍵值(Key-Value)存儲數(shù)據(jù)庫Key指向Value的鍵值對,通常用hash表來實現(xiàn)查找速度快數(shù)據(jù)無結(jié)構(gòu)化(通常只被當作字符串或者二進制數(shù)據(jù))內(nèi)容緩存,主要用于處理大量數(shù)據(jù)的高訪問負載,也用于一些日志系統(tǒng)等。
列存儲數(shù)據(jù)庫,以列簇式存儲,將同一列數(shù)據(jù)存在一起查找速度快,可擴展性強,更容易進行分布式擴展功能相對局限分布式的文件系統(tǒng)。
文檔型數(shù)據(jù)庫,Key-Value對應(yīng)的鍵值對,Value為結(jié)構(gòu)化數(shù)據(jù),數(shù)據(jù)結(jié)構(gòu)要求不嚴格,表結(jié)構(gòu)可變(不需要像關(guān)系型數(shù)據(jù)庫一樣需預(yù)先定義表結(jié)構(gòu)),查詢性能不高,而且缺乏統(tǒng)一的查詢語法,Web應(yīng)用。
圖形(Graph)數(shù)據(jù)庫,圖結(jié)構(gòu),利用圖結(jié)構(gòu)相關(guān)算法(如最短路徑尋址,N度關(guān)系查找等),很多時候需要對整個圖做計算才能得出需要的信息,而且這種結(jié)構(gòu)不太好做分布式的集群方案,社交網(wǎng)絡(luò),推薦系統(tǒng)等。
答案:A
1.文檔型數(shù)據(jù)庫
作為最受歡迎的NoSQL產(chǎn)品,文檔型數(shù)據(jù)庫MongoDB當仁不讓地占據(jù)了第一的位置,同時它也是所有NoSQL數(shù)據(jù)庫中排名最靠前的產(chǎn)品(總排行榜第七名)。Apache基金會的CouchDB排在第二,基于.Net的數(shù)據(jù)庫RavenDB排在第三,Couchbase排在第四。
2.鍵值(Key-value)數(shù)據(jù)庫
鍵值(Key-value)數(shù)據(jù)庫是NoSQL領(lǐng)域中應(yīng)用范圍最廣的,也是涉及產(chǎn)品最多的一種模型。從最簡單的BerkeleyDB到功能豐富的分布式數(shù)據(jù)庫Riak再到Amazon托管的DynamoDB不一而足。
在鍵值數(shù)據(jù)庫流行度排行中,Redis不出意外地排名第一,它是一款由Vmware支持的內(nèi)存數(shù)據(jù)庫,總體排名第十一。排在第二位的是Memcached,它在緩存系統(tǒng)中應(yīng)用十分廣泛。排在之后的是Riak、BerkeleyDB、SimpleDB、DynamoDB以及甲骨文的Oracle NoSQL數(shù)據(jù)庫。值得注意的是,Oracle NoSQL數(shù)據(jù)庫上榜不久,得分已經(jīng)翻番,上升勢頭非常迅猛。
3. 列式存儲
列式存儲被視為NoSQL數(shù)據(jù)庫中非常重要的一種模式,其中Cassandra流行度最高,它已經(jīng)由Facebook轉(zhuǎn)交給到Apache進行管理,同時Cassandra在全體數(shù)據(jù)庫排名中排在第十位,緊隨MongoDB成為第二受歡迎的NoSQL數(shù)據(jù)庫?;贖adoop的Hbase排在第二位,Hypertable排在第三。而Google的BigTable并未列入排名,原因是它并未正式公開。
1.數(shù)據(jù)量太大,比如上億,就用oracle,優(yōu)點上億數(shù)據(jù)對Oracle來說輕飄飄的,也不用太多優(yōu)化配置,缺點安裝比較麻煩,上手比較慢。
2.數(shù)據(jù)量較大,比如千萬級,用postgresql,它號稱對標Oracle,處理千萬級數(shù)據(jù)還是可以的,也是易學易用。
3.數(shù)據(jù)量一般,比如百萬級,用mysql,這個級別的數(shù)據(jù)量mysql處理還是比較快的。
4.數(shù)據(jù)量較小,比如十萬以下,sqlite、access都可以。
上面是基于單表操作的數(shù)據(jù)量,你看著選。
簡單易用的數(shù)據(jù)庫哪個比較好?這個要具體看你的用途,如果數(shù)據(jù)量比較少(10萬左右),追求簡約簡單,免費開源的sqlite就行,如果數(shù)據(jù)量比較多,考慮到高并發(fā)、分布式,可以使用專業(yè)的mysql、postgresql,下面我分別簡單介紹一下,感興趣的朋友可以嘗試一下:
小巧靈活sqlite
這是基于c語言開發(fā)的一個輕量級關(guān)系型數(shù)據(jù)庫,短小精悍、免費開源,個人使用無需繁瑣的配置,只需一個簡單的運行庫便可直接使用,針對各種編程語言都提供了豐富的API接口, java、 python、c#等都可輕松操作,如果你存儲數(shù)據(jù)量不多,只是本地簡單的操作(讀多寫少),可以使用一下這個數(shù)據(jù)庫,占用內(nèi)存非常少,輕便靈活,當然,在高并發(fā)、數(shù)據(jù)量大的情況下就不合適了:
專業(yè)強大mysql
這是目前應(yīng)該廣泛使用的一個關(guān)系型數(shù)據(jù)庫,免費開源跨平臺,在信息系統(tǒng)開發(fā)方面一直占據(jù)著主力位置,如果你從事于web開發(fā)或者網(wǎng)站后臺建設(shè),那么這個數(shù)據(jù)庫一定非常熟悉,支持高并發(fā)、分布式,存儲數(shù)據(jù)量相對于sqlite來說,更多也更安全,索引、觸發(fā)器、存儲過程等功能非常不錯,支持數(shù)據(jù)導入導出、恢復備份,只要你熟悉一下基本使用過程,很快就能掌握和運用:
免費開源postgresql
這是加州大學計算機系開發(fā)的一個對象-關(guān)系型數(shù)據(jù)庫(自由軟件),免費、開源、跨平臺,支持流計算、全文檢索、圖式搜索、并行計算、存儲過程、空間數(shù)據(jù)、K-V類型,相比較mysql來說,在復雜查詢、高并發(fā)下更穩(wěn)定、性能更優(yōu)越,可擴展性、可維護性非常不錯,但也有劣勢,例如新舊版本不分離存儲,沒有Coverage index scan等,總體使用效果來說還不錯:
當然,除了以上3個數(shù)據(jù)庫,還有許多其他數(shù)據(jù)庫,像mssql、oracle等也都非常不錯,對于存儲和處理數(shù)據(jù)來說綽綽有余,只要你熟悉一下基本使用過程,很快就能入門的,網(wǎng)上也有相關(guān)教程和資料,介紹的非常詳細,感興趣的話,可以搜一下,希望以上分享的內(nèi)容能對你有所幫助吧,也歡迎大家評論、留言進行補充。
最符合初學者理解和入門的是Access,因為它和Excel本來就是一個套件,相互轉(zhuǎn)化容易,復制粘貼即可,非常好理解庫、表、字段、鍵的概念。
如果數(shù)據(jù)量不大,強烈推薦試試Filemaker,腳本化編程,自由定制輸入界面、工作流程,非常便捷高效。
最近殺出來的airtable,更是簡單高效,界面美觀,操作與電子表格相當,發(fā)展勢頭也非常迅猛。
二者側(cè)重點有所不同,用戶可根據(jù)需要選擇
作為一個軟件開發(fā)人員,長期需要和數(shù)據(jù)庫打交道,個人更加青睞于MySQL。雖然可能基于你的Excel原因,有些人會建議你使用Access數(shù)據(jù)庫,但是基于我個人的 意見,我并不建議你那樣做。采用MySql的具體理由如下:
1.MySQL具有普遍性,在國內(nèi)的環(huán)境中,絕大多數(shù)的互聯(lián)網(wǎng)企業(yè)采用的是MySQL。有了廣大的用戶基礎(chǔ)后,針對于各種問題網(wǎng)上也能更好地找到解決方案。
2.MySQL相對于Oracle而言,更加輕量化,針對于從Excel量級的數(shù)據(jù),沒必要使用Oracle。同時MySQL是完全免費的,不用擔心版權(quán)及費用問題,無論對個人還是對預(yù)算有限的企業(yè)而言都是很好的選擇。
3.MySQL高度兼容標準SQL,這對于以后遷移到其他數(shù)據(jù)庫而言,也能很大程度地降低學習成本。
希望我的回答能夠?qū)δ阌兴鶐椭。。耶][耶][耶]
Excel辦公確實便利,可以做一些簡單的數(shù)據(jù)分析,但涉及大量復雜的數(shù)據(jù)運算,就會遇到和題主一樣的問題,運算速度慢,如果主機性能不是很好,還有可能面臨電腦死機,數(shù)據(jù)丟失等問題。
遇到這種情況,我們該如何解決呢?數(shù)據(jù)庫的重要性顯而易見!
現(xiàn)在, 我將用3分鐘的時間,與您探討該選擇何種數(shù)據(jù)庫,以及選擇它的理由,是否有更優(yōu)的解決方案呢?
MySQL數(shù)據(jù)庫,90%的企業(yè)都會選擇它
數(shù)據(jù)庫選得好,企業(yè)的數(shù)據(jù)安全,資產(chǎn)安全,也就得到了保障。那么該如何選擇數(shù)據(jù)庫呢?這個跟你的業(yè)務(wù)量和業(yè)務(wù)服務(wù)行業(yè),密不可分。
如果你只是上班打卡,用SQL server就可以了;
如果你要儲存會話信息,用戶配置信息,購物車數(shù)據(jù),建議使用NoSQL數(shù)據(jù)庫;
不過90%的企業(yè)或個人,首選數(shù)據(jù)庫都是MySQL數(shù)據(jù)庫。
為什么這么說?
因為,它集 低成本、高可用、可靠性強、易用性強、體積小、速度快開放源碼 等特性于一身,所以在金融、財務(wù)、網(wǎng)站、 數(shù)據(jù)處理 等應(yīng)用領(lǐng)域,它占據(jù)著獨一無二的優(yōu)勢。
這也是幾乎所有企業(yè)都選擇它,來存儲數(shù)據(jù)的原因。
加之MySQL數(shù)據(jù)庫,支持多種存儲引擎,支持大型數(shù)據(jù)庫,可以處理成千上萬條記錄,還提供用于管理、檢查、優(yōu)化數(shù)據(jù)庫操作的工具。
因而,MySQL尤其受個人,以及中小企業(yè)的推崇。
雖然MySQL數(shù)據(jù)庫簡單易用,但我還是不會部署該怎么辦?
別擔心,現(xiàn)在市面上已經(jīng)出現(xiàn)了,一種自帶數(shù)據(jù)庫的新型辦公軟件。
比如說,云表企業(yè)應(yīng)用平臺,一款兼容excel功能,但功能更為強大的辦公軟件,它就內(nèi)嵌了MySQL數(shù)據(jù)庫。 (文末有免費獲取方式)
云表內(nèi)嵌的MySQL數(shù)據(jù)庫,有何優(yōu)點?
1. 性能更加優(yōu)化,更加兼容系統(tǒng)。因為云表的研發(fā)人員,時刻更新維護MySQL數(shù)據(jù)庫。
2. 省去自己手動部署的麻煩。但如果你熟悉部署數(shù)據(jù)庫,想把數(shù)據(jù)庫改成Oracle或SQL server等數(shù)據(jù)庫,也可以設(shè)置。(不過,我建議IT小白還是 “拿來即用” 就好)
3. 快速實時計算。數(shù)據(jù)分析實時交互,完全滿足管理決策中的臨時性分析,多變的業(yè)務(wù)需求,以及頻繁的結(jié)果刷新。
4. 通過自帶的內(nèi)存計算引擎,無需事先建立CUBE,IT部門將告別報表延時報表分析,億級數(shù)據(jù)秒級響應(yīng)。
內(nèi)嵌的MySQL數(shù)據(jù)庫是否可靠
云表不僅是一款辦公軟件,同時還是一款開發(fā)工具。
通過它,你將解決以下問題:
復雜的數(shù)據(jù)運算,精確到行列的權(quán)限管控,以及工作流,海量用戶同時在線辦公,數(shù)據(jù)透視,制作像銷售單,洽談合同等表單報表,一份制作,即可重復錄用......
你還可以通過它,與電子稱、地磅等進行對接,與用友金蝶等三方系統(tǒng)集成,生成條形碼,掃碼出入庫,生成移動端APP...... 基本上業(yè)務(wù)所需的功能,你都可以放心交給它做。
它最大的亮點就是,你可以 用使用excel的手法,用它來開發(fā)業(yè)務(wù)應(yīng)用。
而且,可視化的 拖拉拽 之后,開發(fā)出來的ERP、WMS、OA、進銷存等業(yè)務(wù)應(yīng)用,還秉承了MySQL數(shù)據(jù)庫增刪改查的功能特性。
沒錯,用云表開發(fā)出來的業(yè)務(wù)應(yīng)用,是允許二次開發(fā)的,而且功能可以隨時增刪改查,輕松滿足大集團精細化的數(shù)據(jù)控制需求。
不過,大家最關(guān)心的應(yīng)該是數(shù)據(jù)安全問題吧。
數(shù)據(jù)存放在云表內(nèi)嵌的MySQL數(shù)據(jù)庫,是安全不丟失的,它提供了多種數(shù)據(jù)存儲的方式,本地部署,云端部署,混合部署,任君挑選!
正因如此,像 恒逸石化、許繼電氣、航天科工委、中鐵、中冶、云南小松 等大型集團,才鼓勵內(nèi)部員工去學習云表。
篇幅所限,只說到這里,說太多你也不會看。
免費 的軟獲取方式在下方:
數(shù)據(jù)庫的用處可大著呢,不僅可以實現(xiàn)數(shù)據(jù)共享,減少數(shù)據(jù)冗余度,還能實現(xiàn)對數(shù)據(jù)的集中控制,保持數(shù)據(jù)的一致性和可維護性。選取簡單易用的數(shù)據(jù)庫,你有什么好的建議呢,留言讓我們看到噢!
題主強調(diào)了簡單易用。所以推薦最簡單三個。
1.Access。
2.Excel。
3.飛書文檔、騰訊文檔、石墨文檔等的表格。
如果要做分析,數(shù)據(jù)量才比較大,建議Access,還是專業(yè)的更好一些。網(wǎng)上教程也很多,比較容易學。而且建議用早一點的版本,比如2003或者2007,Access這些年微軟一直想從office里去掉,奈何用的人還是很多,所以不敢去掉,但是采取了一種比較惡心的方法讓用戶放棄,就是每發(fā)布一個新版本,就去掉一些好用的功能,所以說Access是越早的功能越強。
還一個推薦就是Sql Server Express版本,是SQL Server的免費版本,不要錢,基本功能都有,要比sqllite等強大的多
這要結(jié)合你個人實際情況來定,有計算機基礎(chǔ),懂一點數(shù)據(jù)庫的話那么市場上的那些軟件都可以用,常用有oracle,sqlserver,mysql等,要上手快還是sqlserver比較快,界面操作也比較直觀;如果一點基礎(chǔ)都沒有,但是又要分析數(shù)據(jù)的話可以用微軟自帶的一個access,這個上手比較快。決定用哪一種之后還是要買點教材看,簡單的sql查詢要會,熟練之后也能提高工作效率。
個人使用數(shù)據(jù)庫的話,只存數(shù)據(jù)不做分析,SQLite就足夠了。
Membase
Membase 是 NoSQL 家族的一個新的重量級的成員。Membase是開源項目,源代碼采用了Apache2.0的使用許可。該項目托管在GitHub.Source tarballs上,可以下載beta版本的Linux二進制包。該產(chǎn)品主要是由North Scale的memcached核心團隊成員開發(fā)完成,其中還包括Zynga和NHN這兩個主要貢獻者的工程師,這兩個組織都是很大的在線游戲和社區(qū)網(wǎng)絡(luò)空間的供應(yīng)商。
Membase容易安裝、操作,可以從單節(jié)點方便的擴展到集群,而且為memcached(有線協(xié)議的兼容性)實現(xiàn)了即插即用功能,在應(yīng)用方面為開發(fā)者和經(jīng)營者提供了一個比較低的門檻。做為緩存解決方案,Memcached已經(jīng)在不同類型的領(lǐng)域(特別是大容量的Web應(yīng)用)有了廣泛的使用,其中 Memcached的部分基礎(chǔ)代碼被直接應(yīng)用到了Membase服務(wù)器的前端。
通過兼容多種編程語言和框架,Membase具備了很好的復用性。在安裝和配置方面,Membase提供了有效的圖形化界面和編程接口,包括可配置 的告警信息。
Membase的目標是提供對外的線性擴展能力,包括為了增加集群容量,可以針對統(tǒng)一的節(jié)點進行復制。 另外,對存儲的數(shù)據(jù)進行再分配仍然是必要的。
這方面的一個有趣的特性是NoSQL解決方案所承諾的可預(yù)測的性能,類準確性的延遲和吞吐量。通過如下方式可以獲得上面提到的特性:
◆ 自動將在線數(shù)據(jù)遷移到低延遲的存儲介質(zhì)的技術(shù)(內(nèi)存,固態(tài)硬盤,磁盤)
◆ 可選的寫操作一一異步,同步(基于復制,持久化)
◆ 反向通道再平衡[未來考慮支持]
◆ 多線程低鎖爭用
◆ 盡可能使用異步處理
◆ 自動實現(xiàn)重復數(shù)據(jù)刪除
◆ 動態(tài)再平衡現(xiàn)有集群
◆ 通過把數(shù)據(jù)復制到多個集群單元和支持快速失敗轉(zhuǎn)移來提供系統(tǒng)的高可用性。
MongoDB
MongoDB是一個介于關(guān)系數(shù)據(jù)庫和非關(guān)系數(shù)據(jù)庫之間的產(chǎn)品,是非關(guān)系數(shù)據(jù)庫當中功能最豐富,最像關(guān)系數(shù)據(jù)庫的。他支持的數(shù)據(jù)結(jié)構(gòu)非常松散,是類似json的bjson格式,因此可以存儲比較復雜的數(shù)據(jù)類型。Mongo最大的特點是他支持的查詢語言非常強大,其語法有點類似于面向?qū)ο蟮牟樵冋Z言,幾乎可以實現(xiàn)類似關(guān)系數(shù)據(jù)庫單表查詢的絕大部分功能,而且還支持對數(shù)據(jù)建立索引。它的特點是高性能、易部署、易使用,存儲數(shù)據(jù)非常方便。
主要功能特性:
◆ 面向集合存儲,易存儲對象類型的數(shù)據(jù)
“面向集合”(Collenction-Oriented),意思是數(shù)據(jù)被分組存儲在數(shù)據(jù)集中,被稱為一個集合(Collenction)。每個 集合在數(shù)據(jù)庫中都有一個唯一的標識名,并且可以包含無限數(shù)目的文檔。集合的概念類似關(guān)系型數(shù)據(jù)庫(RDBMS)里的表(table),不同的是它不需要定 義任何模式(schema)。
◆ 模式自由
模式自由(schema-free),意味著對于存儲在mongodb數(shù)據(jù)庫中的文件,我們不需要知道它的任何結(jié)構(gòu)定義。如果需要的話,你完全可以把不同結(jié)構(gòu)的文件存儲在同一個數(shù)據(jù)庫里。
◆支持動態(tài)查詢
◆支持完全索引,包含內(nèi)部對象
◆支持查詢
◆支持復制和故障恢復
◆使用高效的二進制數(shù)據(jù)存儲,包括大型對象(如視頻等)
◆自動處理碎片,以支持云計算層次的擴展性
◆支持RUBY,PYTHON,JAVA,C++,PHP等多種語言
◆文件存儲格式為BSON(一種JSON的擴展)
BSON(Binary Serialized document Format)存儲形式是指:存儲在集合中的文檔,被存儲為鍵-值對的形式。鍵用于唯一標識一個文檔,為字符串類型,而值則可以是各種復雜的文件類型。
◆可通過網(wǎng)絡(luò)訪問
MongoDB服務(wù)端可運行在Linux、Windows或OS X平臺,支持32位和64位應(yīng)用,默認端口為27017。推薦運行在64位平臺,因為MongoDB在32位模式運行時支持的最大文件尺寸為2GB。
MongoDB把數(shù)據(jù)存儲在文件中(默認路徑為:/data/db),為提高效率使用內(nèi)存映射文件進行管理。
Hypertable
Hypertable是一個開源、高性能、可伸縮的數(shù)據(jù)庫,它采用與Google的Bigtable相似的模型。在過去數(shù)年中,Google為在PC集群 上運行的可伸縮計算基礎(chǔ)設(shè)施設(shè)計建造了三個關(guān)鍵部分。第一個關(guān)鍵的基礎(chǔ)設(shè)施是Google File System(GFS),這是一個高可用的文件系統(tǒng),提供了一個全局的命名空間。它通過跨機器(和跨機架)的文件數(shù)據(jù)復制來達到高可用性,并因此免受傳統(tǒng) 文件存儲系統(tǒng)無法避免的許多失敗的影響,比如電源、內(nèi)存和網(wǎng)絡(luò)端口等失敗。第二個基礎(chǔ)設(shè)施是名為Map-Reduce的計算框架,它與GFS緊密協(xié)作,幫 助處理收集到的海量數(shù)據(jù)。第三個基礎(chǔ)設(shè)施是Bigtable,它是傳統(tǒng)數(shù)據(jù)庫的替代。Bigtable讓你可以通過一些主鍵來組織海量數(shù)據(jù),并實現(xiàn)高效的 查詢。Hypertable是Bigtable的一個開源實現(xiàn),并且根據(jù)我們的想法進行了一些改進。
Apache Cassandra
Apache Cassandra是一套開源分布式Key-Value存儲系統(tǒng)。它最初由Facebook開發(fā),用于儲存特別大的數(shù)據(jù)。Facebook在使用此系統(tǒng)。
主要特性:
◆ 分布式
◆ 基于column的結(jié)構(gòu)化
◆ 高伸展性
Cassandra的主要特點就是它不是一個數(shù)據(jù)庫,而是由一堆數(shù)據(jù)庫節(jié)點共同構(gòu)成的一個分布式網(wǎng)絡(luò)服務(wù),對Cassandra 的一個寫操作,會被復制到其他節(jié)點上去,對Cassandra的讀操作,也會被路由到某個節(jié)點上面去讀取。對于一個Cassandra群集來說,擴展性能 是比較簡單的事情,只管在群集里面添加節(jié)點就可以了。
Cassandra是一個混合型的非關(guān)系的數(shù)據(jù)庫,類似于Google的BigTable。其主要功能比 Dynomite(分布式的Key-Value存 儲系統(tǒng))更豐富,但支持度卻不如文檔存儲MongoDB(介于關(guān)系數(shù)據(jù)庫和非關(guān)系數(shù)據(jù)庫之間的開源產(chǎn)品,是非關(guān)系數(shù)據(jù)庫當中功能最豐富,最像關(guān)系數(shù)據(jù)庫 的。Cassandra最初由Facebook開發(fā),后轉(zhuǎn)變成了開源項目。它是一個網(wǎng)絡(luò)社交云計算方面理想的數(shù)據(jù)庫。以Amazon專有的完全分布式的Dynamo為基礎(chǔ),結(jié)合了Google BigTable基于列族(Column Family)的數(shù)據(jù)模型。P2P去中心化的存儲。很多方面都可以稱之為Dynamo 2.0。
CouchDB
所用語言: Erlang
特點:DB一致性,易于使用
使用許可: Apache
協(xié)議: HTTP/REST
雙向數(shù)據(jù)復制,持續(xù)進行或臨時處理,處理時帶沖突檢查,因此,采用的是master-master復制
MVCC – 寫操作不阻塞讀操作
可保存文件之前的版本
Crash-only(可靠的)設(shè)計
需要不時地進行數(shù)據(jù)壓縮
視圖:嵌入式 映射/減少
格式化視圖:列表顯示
支持進行服務(wù)器端文檔驗證
支持認證
根據(jù)變化實時更新
支持附件處理
因此, CouchApps(獨立的 js應(yīng)用程序)
需要 jQuery程序庫
最佳應(yīng)用場景:適用于數(shù)據(jù)變化較少,執(zhí)行預(yù)定義查詢,進行數(shù)據(jù)統(tǒng)計的應(yīng)用程序。適用于需要提供數(shù)據(jù)版本支持的應(yīng)用程序。
例如:CRM、CMS系統(tǒng)。 master-master復制對于多站點部署是非常有用的。
和其他數(shù)據(jù)庫比較,其突出特點是:
◆ 模式靈活 :使用Cassandra,像文檔存儲,你不必提前解決記錄中的字段。你可以在系統(tǒng)運行時隨意的添加或移除字段。這是一個驚人的效率提升,特別是在大型部 署上。
◆ 真正的可擴展性 :Cassandra是純粹意義上的水平擴展。為給集群添加更多容量,可以指向另一臺電腦。你不必重啟任何進程,改變應(yīng)用查詢,或手動遷移任何數(shù)據(jù)。
◆ 多數(shù)據(jù)中心識別 :你可以調(diào)整你的節(jié)點布局來避免某一個數(shù)據(jù)中心起火,一個備用的數(shù)據(jù)中心將至少有每條記錄的完全復制。
◆ 范圍查詢 :如果你不喜歡全部的鍵值查詢,則可以設(shè)置鍵的范圍來查詢。
◆ 列表數(shù)據(jù)結(jié)構(gòu) :在混合模式可以將超級列添加到5維。對于每個用戶的索引,這是非常方便的。
◆ 分布式寫操作 :有可以在任何地方任何時間集中讀或?qū)懭魏螖?shù)據(jù)。并且不會有任何單點失敗。
問度娘,啥都有。
網(wǎng)頁題目:最快的nosql數(shù)據(jù)庫,nosql查詢速度
文章來源:http://jinyejixie.com/article42/dsecjec.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計、標簽優(yōu)化、網(wǎng)站營銷、微信公眾號、面包屑導航、Google
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)