Raid controllers and SSDs
https://momjian.us/main/blogs/pgblog/2017.html#May_15_2017
- Disk array controllers are popular because of:
- Hardware RAID support
- Large read/write cache
- write reordering
- instant durable storage of writes using a BBU (backup battery)
- With SSD (with BBUs), the usefulness of RAID controllers is unclear:
- CPU are fast and can do RAID in software
- servers have tons of RAM
- write reordering is unnecessary for SSDs (good random write perf)
- BBUs on SSDs make RAID BBUs redundant
While raid controllers introduce problems on their own:
- High failure rates
- complex configuration
- slowness
Ссылки на переписку в postgresql mailing list
Postgres Window Magic
http://momjian.us/main/writings/pgsql/window.pdf
- Объясняется, что такое window, и как может быть использовано
- Много работающих примеров (код доступен)
- От простого к сложному
- Вкратце: window - это текущая строка + некоторое окружение, вы сами контролируете какое именно. Доступны агрегации над window, удобно для аналитики.
AL: A new declarative language for detecting bugs with Infer
https://code.facebook.com/posts/277643589367408/al-a-new-declarative-language-for-detecting-bugs-with-infer/?pnref=story
- All code is checked with static analyzer Infer (interprocedural/interfile)
- Problem: extensibility. Add a checker for a new type of bug is a pain.
- Поэтому новый язык AL
- Декларативный, для логики над AST, Open Source.
- C/C++/ObjectiveC
- Temporal Logic
- Операторы работы со временем («никогда не будет иметь», «деаллокация раньше дерегистрации»)
- Как работает - плохо объяснили «a model-checking algorithm for temporal logic»