2010年6月29日星期二

NoSQL 是什麼 ?

使用 SQL 的關聯式資料庫已經盛行有近二十年了吧,早期,還有一些軟體工程師認為,不是使用 SQL 關聯式資料庫儲存資料的系統都不是 "正規" 的軟體架構,但是,誰知,風水輪流轉,三十年河東,三十年河西啊! 在網路應用系統與物件導向發展的過程中,慢慢的發現,以 SQL 為基礎的關聯式資料庫造成物件和資料分離的情形,然後,在網路應用程式的規模日漸龐大後,關聯式資料庫在分散式架構的資料儲存和讀取,也有些的不方便.所以,就紛紛的,有人開始研究其他的資料庫模式,以適應新的需求,而這些不是用 SQL 操作的資料庫都泛稱為 NoSQL 資料庫。

在這其中,最具代表性的,就是 Google 和 Facebook 這兩家公司,為了處理它們的天量資料量和使用量,他們都分別的使用自己開發的 NoSQL 資料庫,據說,效果都比用 MySQL 來的好。

早期的 NoSQL 資料庫以 Document Stroe 和 Key Value 的架構為主,不過,目前的 NoSQL 已經發展的非常多元了,有各式各種為配合不同的應用需要的資料庫,有興趣瞭解有那些 NoSQL 資料庫的話,可以到這裡來看看,阿舍熟悉的 Lotus Domino/Notes 算是滿早就存在的 NoSQL 資料庫哩 !!

0 意見: