Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Facebook не использует сложные структуры и связи между таблицами, фактически, просто key-value хранилище.Вашей ссылке уже больше, чем полтора года, кстати. Кроме key-value там так же упоминается и хранение графа.
Facebook не использует нативную репликацию (свои механизмы уровнем выше).Facebook использует нативную репликацию, расширенную доп. запросами (команды очистки кеша и др.). В дополнение к ней они используют всякие хитрости для обхода ограниений репликации в один поток, вроде page prefetching на слейве.
для большинства задач REPEATABLE READ не нужен.Для многих задач и innodb_flush_log_at_trx_commit=2 не создаст проблем. Если 2-ка родит проблему, то вряд ли она будет самой большой проблемой при таком фэиле.
А чем READ_COMMITTED нарушает согласованность и изолированность? ACID READ COMMITTED не нарушает.InnoDB supports each of the transaction isolation levels described here using different locking strategies. You can enforce a high degree of consistency with the default REPEATABLE READ level, for operations on crucial data where ACID compliance is important. Or you can relax the consistency rules with READ COMMITTED or even READ UNCOMMITTED
2-ка нарушает D пусть и на 1 секунду,innodb_flush_log_at_trx_commit=2 не сильно больше (если кэш на диск часто скидывается, а обычно это именно так), да и вообще — дело в принципе же, а не в размере и частоте:)
Практическая оптимизация и масштабируемость MySQL InnoDB на больших объёмах данных