РозробкаПідрозділ
Бази даних
Де живе стан і що кожне сховище про нього гарантує. Три теми: як реляційний рушій насправді відповідає на запит, чим нереляційне сховище платить за масштаб і як спроєктувати схему, що лишиться правдивою через три роки. Моделювання йде останнім навмисно: саме воно вирішує, чи будуть перші дві легкими, чи болючими.
Що всередині
Усі сторінки цієї групи — і про що кожна з них.
- SQLПланувальник запитів як те, що ви насправді програмуєте: індекси, зʼєднання й чому той самий запит має два плани.ПланувальникІндекси
- NoSQLПартиціювання як визначальне рішення: що дає ключ, що він забороняє і які запити стають неможливими.ПартиціїПатерни доступу
- Моделювання данихНормальні форми через те, що кожна запобігає, — і конкретні випадки, де денормалізація є правильним рішенням.Нормальні формиКомпроміси
З чого почати
- Запити повільніSQL, і спершу розділ про планувальник: майже кожен повільний запит — це план, якого ви не очікували.
- Обираєте сховищеNoSQL — заради питання партиціювання. Якщо ви ще не можете назвати свої патерни доступу, це і є відповідь.
- Проєктуєте схемуМоделювання даних. Нормальні форми застосовувати значно легше, коли знаєш, якому саме багу кожна запобігає.
Інше в цьому розділі
- РозробкаРозробка програмного забезпечення — це робота про те, де проходять межі в системі, що працює по кожен їхній бік і чого коштуватиме зсунути одну з цих меж, коли код уже працює. У розділі 28 тем: архітектура, браузер, пʼять бекенд-середовищ, чотири мобільні платформи, мовні моделі та бази даних під усім цим. Кожна сторінка тримається на обмеженні, яке справді відрізняє варіанти, а не на поверхні API.
- BackendПʼять середовищ виконання, описаних через єдине, що між ними справді відрізняється: як кожне поводиться з паралелізмом. Не синтаксис, не розмір екосистеми, не бенчмарки, а модель виконання — бо саме вона вирішує, які задачі мова робить легкими, а які дорогими. Прочитайте дві поруч — і більшість суперечок «яку мову брати» відповість сама собі.
- АрхітектураДе проводити межі й чого коштує кожна з них. Чотири теми: дві форми, яких може набути система; міграція між ними, за яку більшість команд береться не в той момент; і контракт, що робить будь-яку межу придатною для когось іншого. Наскрізна думка: межа не безкоштовна — вона купує незалежність і бере плату затримкою, налагодженням та операційною поверхнею.
Було корисно?
Поділіться з тим, хто працює над тією ж задачею.