kaif 積分 1 編輯於

這個應該主要是來處理alter table locking的,效能不確定有沒有改善。不過聽我們不太專業的DBA講好像用起來也有些issue

如果postgresql可以在上億筆資料一秒alter table without locking,那還蠻吸引我的。

這是文章的子討論串,你可以回到上層查看所有討論和文章
HYL 積分 4

PG 的檔案結構跟 MySQL 不一樣, PG 是一個 column 一個檔案,所以新增一個 nullable column 的話,就是開一個空的檔案而已,刪掉某個欄位也是刪掉一個檔案而已。

MySQL 是整個 Table 一個檔案,所以 ADD/DELETE column 都要整個 Table 重寫一次。

Ant 積分 3

目前大家討論的是 MySQL InnoDB & PostgreSQL,但 MySQL 還有一個很大的特色:可熱抽換的引擎。MogoDB 3.0 也引用了這項優點。

如果覺得 InnoDB engine 不好,可以換成別的 engine,甚至 MySQL 可以讓某些 engines 彼此 replication 混用。

前者,可以因應業務場景的改變抽換 engine,例如 OLTP 換成 OLAP 再換成 Warehouse 時,一行指令就可以搞定其對應的適用 engine。

後者,讓 DBA 可以用多個 engines 應付不同的業務,同時維運管理仍可視為同一集群而降低成本及風險。

PostgreSQL 只有一種 engine,不可抽換,這會限制它可適用的範圍。未來 PostgreSQL 有沒有可能引入可熱抽換 eninge?也許有可能,但至今沒看到相關計畫,而且 PostgreSQL 太多底層都跟現行的 eninge 相依太高,要改變實屬不易。

kaif 積分 0

mysql現在有engine可以在一億筆資料快速alter table嗎?感覺網路服務還蠻常需要做這件事的。