mongodb和redis(未完)

來源:互聯網
上載者:User

mongodb:

1)文檔資料庫

MongoDB的面向文檔採用的是BSON。如 blog的文章和評論,可以做如下設計:

{ 'id':1, 'author':'NinGoo', 'title':'白話MongoDB(一)', 'content':'按照官方的說法,此處省略一萬字',    comment:[ { 'comment-author':'宋兵甲', 'comment-content':'有木有' } ,              { 'comment-author':'尼瑪','comment-content':'傷不起啊' }            ]}
像上面的一個結構,為一個文檔(document),相當於關聯式資料庫中的一行記錄,多個文檔組成一個集合(collection),相當於關聯式資料庫的表。
多個集合(collection),邏輯上組織在一起,就是資料庫(database),一個MongoDB執行個體支援多個資料庫(database)。
這種結構導致儲存開銷比較大,1G的資料存放區後達到幾G。
2)b+樹索引

redis:
Redis本質上是一個Key-Value類型的記憶體資料庫,很像memcached,整個資料庫統統載入在記憶體當中進行操作,
定期通過非同步作業把資料庫資料flush到硬碟上進行儲存。因為是純記憶體操作,Redis的效能非常出色,
Redis最大的魅力是支援儲存List鏈表和Set集合的資料結構,而且還支援對List進行各種操作,例如從List兩端push和pop資料,
取 List區間,排序等等,對Set支援各種集合的並集交集操作,此外單個value的最大限制是1GB,
不像memcached只能儲存1MB的資料,Redis可以用來實現很多有用的功能,比方說用他的List來做FIFO雙向鏈表,
實現一個輕量級的高效能訊息佇列服務,用他的Set可以做高效能的tag系統等等。另外Redis也可以對存入的
Key-Value設定expire時間,因此也可以被當作一個功能加強版的memcached來用。
1)key,value資料庫
2)hash索引資料,資料在記憶體操作(支援應用層級vm),支援定期落地功能。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.