目前使用過的資料庫都是關聯式資料庫,Oracle、SQL Server、MySQL等
趁這次鐵人賽來學習一下NoSQL
我們這邊先從NoSQL的歷史說起,NoSQL一詞最早是在1998年就由Carlo Strozzi所提出,但當初它的設計還是使用RDBMS(關聯式資料庫)的概念,單純只是不使用SQL語法當作存取介面
一直到2009年才出現出眾多新型態的NoSQL資料庫,這與Strozzi NoSQL不同的地方在於,除了不使用SQL語法當存取介面,連資料庫儲存型態也不再是RDBMS(關聯式資料庫)了
這時候NoSQL DB 就可說是non-Relational 且non-SQL 的DB。
那麼怎樣的資料庫我們可以說它是NoSQL型態的資料庫呢?
以下是整理的要項:
這是普遍對NoSQL的解釋,強調Key-Value Stores和文件資料庫的優點,而不是單純的反對RDBMS
一般的設計都能透過硬體的分散式叢集來向外擴展,藉此就可以使用較為便宜的機器去水平擴充,達到大量數據的處理
以MongoDB的Sharding為例,每個Shard儲存Collection的部分資料
相較於RDBMS,NoSQL類型資料庫都以開放式原始碼提供開發者做使用。
這邊也提供NoSQL資料庫特徵
資料來源
NOSQL Databases