2011-12-02

about NoSQL

這篇是看了 InfoQ 上的影片: NoSQL誤用和常見陷阱分析(孫立) 後,記錄下的一些摘要:

NoSQL:
1. 有許多個版本,如 TtServer(
Tokyo Cabinet), ....
2. 升級版本之相容性: data format, API interface
3. 精通它


4. 32 bit vs 64 bit
    32 有 2G或 2.5G 不等的資料空間上限,有的是一達到上限,系統就 crash 掉而不可使用了。
5. 重啟時,cache 有可能是空的,這會導致進入 disk mode,流量大而嚴重時,會造成系統的 crash。
6. 重要 data 考慮放在較穩定、較受信任的 database, 或 RDBMS.
7. NoSQL + MySQL 同時使用。
    - database 之間同步機制
    - 直接寫到兩個 database 去。
8. disk IOPS (約幾百個, 100~200/sec)
9. 優化 NoSQL:
    - 隨機寫改成順序寫: 將資料以 append 的方式加至後面,再去更改 index
10. MySQL 之 innodb 實做 NoSQL
11. NoSQL 需要 DBA
12. NoSQL 運作不容易:
    - Help 文件不全,網路討論不多。(MongoDB 較全)
    - 週邊工具是否完全,如 backup/restore
    - 例外發生時,可以處理嗎? database crash/exception?
13. Monitor 監控很重要!
     IO, CPU, delay(延遲), QPS, disk, 抖動
14. 資料備份!
     - 避免單點
     - 定期備份
     - 開發前,做好切換到其他產品(database)的準備。
15. NoSQL 內部有壓縮功能,也可以傳入 NoSQL 之壓縮,但要留意 input/output 是否可否正確讀取資料。
16. 10K 資料約壓縮成 4K (或 30%)
17. insert: 0.4 sec/1M record , 2,500,000 QPS.
     search: 0.33 sec/1M record, 3,000,000 QPS.

0 意見:

張貼留言