2018年4月25日

[筆記] MongoDB: Two Phase Commit - Multi-Document Transactions

這篇的內容主要是來自 MongoDB 官方網站上的 Manual 中的這篇。簡單總結:two phase commit 是為了模擬 Transaction 的特性。

2018年4月17日

[筆記] SGCheck: An Experimental Stack and Global Array Overrun Detector Table of Contents

SGCheck 是 valgrind 底下的 tool 之一,簡單來說這東西就是用來彌補  memcheck 的不足之處。memcheck 專攻的問題是 heap memory 中的 illegal access (invalid read & write) 以及 memory leak。相對的,SGCheck 則是對 stack memory 做檢測,特別是當使用 array 或 pointer 時確實無法完全避免不會有 illegal access。因此這兩者算是相輔相成的,只是比較常聽 & 用到的是 memcheck (也是memory bug 最常出現的地方)。

2018年4月12日

[筆記] RDBMS v.s. NoSQL

RDBMS v.s. NoSQL

現在主流的資料庫像是 MySQL 之類的是關聯式資料庫 (RDBMS),不過隨著網路的發展,關聯式資料庫的特性在某些應用上其實沒有那麼適合。比方說,你對於資料間的關聯性沒那麼在意,你在意的是特定人、事或物的 "狀態" 變動,特別是這種狀態的變動非常大量且頻繁時,關聯式資料庫在處理這種需求就會變得力不從心,也因此後來有發展出了 NoSQL 這東西是專門針對這種應用設計的。而這次被主管要求要看的 MongoDB 正是一種 NoSQL DB。