Category Archives: Database

InnoDB 與 MyRocks 之間的取捨

MyRocks 的主要作者 Mark Callaghan 整理了一篇關於大台機器下,資料可以放到記憶體內的效能比較:「In-memory sysbench, a larger server and contention - part 1」。 這其實才是一般會遇到的情況:當事業夠大時,直接花錢買 1TB RAM + 數片 PCI-E SSD 的機器用錢換效能... (主要應該會在記憶體花不少錢,剛剛查了一下,現在白牌的 server 一台大約七十萬就可以擺平?兩台做 HA 也才一百四十萬,對有這個規模的單位來說通常不是大問題...) 而三種不同的 case 裡面,最後這個應該是最接近真實情況的: 可以看到 InnoDB 在幾乎所有項目都還是超越 MyRocks (只有 random-points 與 insert-only 輸)。 不知道後續的開發能量還會有多少... … Continue reading

Posted in Computer, Database, Murmuring, MySQL, Software | Tagged , , , , , , , , , , | Leave a comment

Amazon Aurora 支援快速複製

Amazon Aurora 宣佈支援快速複製:「Amazon Aurora Fast Database Cloning」。 對於 2TB 的資料大約五分鐘就完成了: This means my 2TB snapshot restore job that used to take an hour is now ready in about 5 minutes – and most of that time is spent provisioning a … Continue reading

Posted in AWS, Cloud, Computer, Database, Murmuring, MySQL, Network, Service, Software | Tagged , , , , , , , , , , | Leave a comment

MySQL 上不同 Isolation Level 對效能的影響

目前看到的結論都是:MySQL (InnoDB) 上因為高度對 RR (REPEATABLE-READ) 最佳化,使得 RR 的效能反而比 RC (READ-COMMITTED) 以及 RU (READ-UNCOMMITTED) 都好。 不清楚 RR/RC/RU 差異的可以參考維基百科上「Isolation (database systems)」的解釋... 從 2010 年在測 5.0 的「Repeatable read versus read committed for InnoDB」到 2015 年測 5.7 的「MySQL Performance : Impact of InnoDB Transaction … Continue reading

Posted in Computer, Database, Murmuring, MySQL, Software | Tagged , , , , , , , , , , , | Leave a comment

ScyllaDB 2.0 要引入 Cassandra 3.0+ 的 Materialized View

最近 ScyllaDB 的網站改版了... (有種不習慣的感覺) ScyllaDB 2.0 打算要引入 Materialized View (出自 Apache Cassandra 3.0+):「Materialized Views preview in Scylla 2.0」。 一般 Materialized View 的實做方式是另外存一份,所以你可以在上面加 Index 之類的設定讓存取速度變快... 不過 Cassandra 不是本來就以讀慢寫快為優勢嗎,要速度可以考慮用 cache 疊出來,或是其他方式,當初 Cassandra 會開發這個功能就有點... XDDD

Posted in Computer, Database, Murmuring, Software | Tagged , , , , , , , , | 1 Comment

Apache Foundation 宣佈禁止使用 Facebook BSD+Patents 的軟體

在「RocksDB Integrations」這邊討論到 RocksDB 裡 Facebook 所使用的 Facebook BSD+Patents License。 不過因為 RocksDB 最近在換 license (從 Facebook BSD+Patents 換到 Apache License, Version 2.0),移除了 PATENTS 內的限制,需要看 PATENTS 的舊檔案可以在 PATENTS 這邊看到。 Chris Mattmann 正式發出決議禁用 Facebook BSD+Patents License。(參考最後) 另外也提到了 Facebook 是故意埋下這些限制: Note also Roy's comment … Continue reading

Posted in Computer, Database, Library, Murmuring, Programming, Software | Tagged , , , , , , , , , | 2 Comments

Pinboard 放出使用的 Database Schema

在 Twitter 上看到 Pinboard 放出他們的 DB Schema,可以看出他怎麼設計一個 bookmark site 的: I published my DB schema a while ago, but you’ll learn much more if you do this from scratch https://t.co/XgfcsQYaq6 — Pinboard (@Pinboard) July 13, 2017 檔案在 Pinboard Database Schema … Continue reading

Posted in Computer, Database, Murmuring, MySQL, Network, Programming, Service, Software, WWW | Tagged , , , , , , , , | 1 Comment

MongoDB 的 Index 種類

Percona 的人寫了一篇簡單的文章介紹 MongoDB 的 Index:「MongoDB Indexing Types: How, When and Where Should They Be Used?」。 官方文件的「Indexes」算清楚,不過有些地雷沒講,像是 Unique Indexes 只這樣說: The unique property for an index causes MongoDB to reject duplicate values for the indexed field. Other than the unique constraint, … Continue reading

Posted in Computer, Database, Murmuring, Software | Tagged , , , , , , | Leave a comment

小台機器上的 innodb_purge_threads 對效能的影響

雖然「MyISAM, small servers and sysbench at low concurrency」這篇標題是在講 MySQL 上的 MyISAM,但還是有提到一些 InnoDB 的東西... 其中提到了 innodb_purge_threads 對效能的影響: the default value for innodb_purge_threads, which is 4, can cause too much mutex contention and a loss in QPS on small servers. For sysbench … Continue reading

Posted in AWS, Cloud, Computer, Database, Murmuring, MySQL, Network, Software | Tagged , , , , , , , , , , , , , , | Leave a comment

AWS 東京區支援 Amazon Athena 了

很簡單但也很直接的消息公佈,AWS 宣佈在東京區與新加坡區支援 Amazon Athena 了:「Amazon Athena is now available in Asia Pacific (Singapore) and Asia Pacific (Tokyo)」。 這樣就不需要在美國跑完丟回日本了...

Posted in AWS, Cloud, Computer, Database, Murmuring, Network, Programming, Service, Software | Tagged , , , , , , , | Leave a comment

MySQL 上 Replication 的方案

Percona 的人整理了一篇關於 Replication 的方案 (以及 NDB,不過這邊就先偷偷跳過去...),雖然標題寫的是 High Availability:「The MySQL High Availability Landscape in 2017 (The Elders)」。 先講他給的另外兩個方案,一個是 Shared Storage,另外一個是 NDB。 其中 Shared Storage 其實在儲存空間端還是有單點失效的問題,而 NDB 的特性跟 InnoDB 不同,有很多概念要重新學... 如果就這三個比較,常見的還是第一個提到的 Replication。 其實把 Replication 用熟的話已經可以解決不少問題了 (不論是早期的 MMM,或是 MHA)。而且因為技術已經發展很久了,大家幾乎都很熟特性 (以及 bug XD),網路上可以找到不少資料,甚至 Percona … Continue reading

Posted in Computer, Database, Murmuring, MySQL, Software | Tagged , , , , , , , , | Leave a comment