最近看了一些英文文件,其中有一篇把分布式系統和第一代nosql的大背景介紹得很清楚,雖然文件本身是10年寫的,而且沒有介紹某種特定nosql資料庫的使用,但很多思想性的東西到今天看都非常有價值,於是決定翻譯一下,翻譯中的各種bug請各位指出。原文可以在 找到。
另外由於工作量浩大(原始文件有140多頁),進度會比較慢,估計十天半月能更新一章吧。
目錄 1 介紹
1.1 介紹和概覽
1.2 未包含的主題
2 nosql潮流
2.1 動機和主要驅動力
2.2 批評
2.3 nosql資料庫的分類和比較
3 基本概念,技術和模式
3.1 一致性
3.2 分割槽
3.3 儲存分層
3.4 查詢模型
3.5 使用mapreduce的分布式資料處理
4 鍵/值儲存
4.1 amazon dynamo
4.2 project voldemort
4.3 其他鍵/值儲存
5 文件資料庫
5.1 apache couchdb
5.2 mongodb
6 面向列的資料庫
6.1 google bigtable
6.2 bigtable衍生品
6.3 cassandra
7 總結
1 介紹
1.1 介紹和概覽
如今,關係型資料庫管理系統(rdbmss)是web和商業應用中儲存結構化資料的主要技術。從2023年codds的**「一種面相大共享資料集的關係型資料模型」[cod70]開始,這類基於關係演算和使用sql[cb74]進行全面的ad-hoc查詢的資料儲存方式,已經被廣泛應用,並通常被視為多使用者一致地讀寫資料儲存的唯一方式。儘管近年有不同的技術出現如物件導向資料庫和xml儲存,但這些技術均為達到rdbmss相同的適用性和市場份額。當然,這些變化要麼已經被rdbmss吸收(如允許儲存xml並用於文字索引),或成為「利基產品」(如olap或流處理)。
在過去的幾年中,關於資料儲存的「一刀切」思考被學術界和網路公司雙方質疑,這已經導致了大量的各種替代資料庫的出現。這類新的資料儲存通常歸入nosql下,「在web開發者中用來描述增加使用非關係型資料庫」([oba09a])。
本文旨在對這一運動的動機和理由進行系統概述(第2章),常用的概念、技術和模式(第3章),nosql資料庫的幾種型別(鍵/值儲存、文件資料庫、面向列的資料庫)和個別產品(第4-6章)。
1.2 未包含的主題
本文不討論將現有資料倉儲中已有且不包含在nosql運動中的部分,如物件資料庫,用於特殊用途的純xml資料庫和資料庫管理系統(如作為分析或流處理)。圖資料庫也不包含在本文中,但一些資源的提供在附錄a。介紹某種單獨的nosql資料儲存也超出本文範圍,一般來說這會是乙個對nosql資料運動和方法二者的誤解,因為不是「一刀切」的解決方案。在所有可用的nosql資料庫之間的深度比較也超出了本文的範圍。
NoSQL 鍵值資料庫介紹
鍵值資料庫是一類輕量級結合記憶體處理為主的nosql資料庫。為什麼說他是輕量級?1.他的儲存資料結構特別簡單,資料庫系統本身的規模也比較小 2.以記憶體為主的執行處理,目的是為了更快的實現對大資料的處理 鍵值儲存實現 鍵值資料庫的設計原則是以提高資料處理速度為第一目標 一 鍵值資料庫實現的基本原理 ...
1 NoSQL 資料庫簡介
技術的分類 1 解決功能性的問題 j a jsp rdbms tomcat html linux jdbc svn 2 解決擴充套件性的問題 struts spring springmvc hibernate mybatis 3 解決效能的問題 nosql j a執行緒 hadoop nginx m...
redis介紹(非關係型資料庫NOsql)
非關係型資料庫nosql not noly sql 使用c語言編寫 效能好,快 開源 免費。記憶體。在記憶體運算元據,僅次於cpu.永續性 把資料從記憶體發到硬碟裡面。k v key value redis的應用場景 1.資料的告訴快取和web會話快取 session cache 2.排行榜應用。時...