Маєте програмний продукт? Додайте його безкоштовно. Людина прочитає й опублікує протягом доби.Маєте продукт? Додайте його безкоштовно.

Додайте свій продукт
Додати продукт

Бази даних

Зберігання даних і швидке отримання їх назад.

Бази даних

У цій категорії поки немає продуктів

Поки що тут нічого немає. Якщо ви робите продукт, який належить на цю полицю, додайте його, і людина його прочитає.

Додайте свій продукт

Що лежить на цій полиці

Місця для зберігання даних і швидкого їх повернення: реляційні рушії, документні сховища, кеші ключ-значення, пошукові індекси, сховища часових рядів і керовані сервіси, що запускають будь-що з цього за вас.

Більшості команд потрібно менше цього, ніж радять постачальники. Одна реляційна база довго обслуговує більшість застосунків, а додавання другого рушія додає другий набір відмов, копій і людей, які його розуміють.

Аналіз і звітність над цими даними належать до аналітики. Де працює сам застосунок, це хостинг і хмара.

Вибір рушія

Починайте з форми ваших даних і питань, які ви до них ставитимете.

Реляційні рушії пасують усьому, де є зв’язки, транзакції, обмеження та звітність, а це описує більшість бізнес-програм.

Решта це спеціалісти. Документні сховища пасують записам різної форми, які зазвичай читають цілком. Сховища ключ-значення потрібні для швидкості на простих пошуках. Пошукові індекси існують, бо реляційного текстового пошуку за певного розміру перестає вистачати, а сховища часових рядів існують, бо метрики надходять швидше за все інше.

Чесне типове рішення це реляційний рушій, поки щось не доведе його недостатність. Команди, які починають з екзотичного сховища, щоб уникнути проблеми масштабування, якої в них немає, зазвичай першою зустрічають іншу, гіршу.

Сумісність важить більше за бренд. Рушій із широко реалізованим протоколом дає інструменти, драйвери, найм і вихід. Власний інтерфейс дає проєкт міграції.

Керований, власний чи serverless

Керовані сервіси беруть націнку й знімають роботу, яку інакше довелося б робити в незручні години: оновлення, переходи на нові версії, відмовостійкий перемикач, перевірка копій.

Власний сервер дешевший на папері і дешевший насправді лише тоді, коли навичка вже є в будівлі. Чесно порахуйте години, зокрема ті, що підуть на вечір, коли заповниться диск.

Serverless-пропозиції масштабують потужність із навантаженням і беруть мало, коли простоюють. Це пасує нерівному трафіку й ще краще середовищам розробки. Перевірте поведінку холодного старту, ліміти з’єднань і те, як лічильник ставиться до фонового завдання, що ніколи не зупиняється.

Питання, що визначають надійність

  • Резервні копії: як часто, як довго зберігаються і чи можна відновитися на обрану точку в часі.
  • Відновлення: скільки триває повне за вашого розміру даних, перевірене, а не обіцяне.
  • Перемикання: автоматичне чи ручне, скільки триває і що бачить застосунок, поки це відбувається.
  • Реплікація: репліки для читання, копії між регіонами та відставання, яке має витримати ваш код.
  • З’єднання: стеля і те, чи пулінг входить у ціну, чи його треба запускати самому.

Виконайте одне відновлення під час пробного періоду. Резервна копія, яку ніхто не відновлював, це надія, а це категорія, де надія коштує найдорожче.

Зростання, міграції та те, що болітиме потім

Зміни схеми на великій таблиці це операція, що руйнує вихідні. Питайте, як рушій обробляє додавання стовпця, зміну типу чи побудову індексу, поки трафік триває.

З першого дня тримайте міграції у системі контролю версій поруч із застосунком. Альтернатива, зміни, застосовані вручну в консолі, породжує середовища, що відрізняються способами, яких ніхто не відтворить.

Стежте й за розташуванням даних. База в іншому регіоні, ніж застосунок, додає затримку до кожного запиту, а застосунок із п’ятдесятьма запитами на сторінку це добре відчує.

З чого складається рахунок

Обчислення, сховище, сховище резервних копій, вихідний мережевий трафік, а в деяких сервісах одиниця для читань і записів.

Вихідний трафік це рядок, що дивує людей, особливо коли аналітика чи репліки тягнуть великі обсяги між регіонами. Сховище рідко зменшується саме, тож за видалені рядки можуть платити, доки не запуститься обслуговування. Копії для розробки й тестування подвоюють усе, якщо їх не зменшити чи не зупиняти на ніч.

Питайте, якою стане ціна за втричі більшого за сьогоднішній обсягу, а не за сьогоднішнього, бо саме це число ви й платитимете. Споріднені звички зібрано в матеріалі що приховують сторінки з цінами.

Практики, що тримають базу нудною

Мета в цій категорії це відсутність драми, і невелика кількість звичок дає більшу її частину.

Тримайте міграції в системі контролю версій і застосовуйте їх однаково в кожному середовищі. Ручні зміни, зроблені в консолі, породжують відмінності, яких пізніше ніхто не відтворить.

Додавайте індекси обдумано й іноді переглядайте їх, бо невикористані коштують продуктивності запису та місця, виглядаючи нешкідливо.

Стежте за повільними запитами як за рутиною, а не під час інциденту. Запит, що сьогодні триває чотири секунди, наступного кварталу стане аварією, коли таблиця виросте.

І відновлюйте резервну копію за розкладом. Копія, яку ніколи не відновлювали, це файл, а не захист, а це категорія, де пізнє відкриття цього коштує найдорожче.

Запитання, які ставлять люди

Керований сервіс чи власний сервер?

Керований коштує більше щомісяця і менше загалом, якщо врахувати оновлення, резервні копії та ніч, коли комусь доведеться не спати. Власний сервер окупається, коли навичка експлуатації вже є і потрібен контроль над розміщенням чи налаштуванням.

Що означає serverless для бази даних?

Потужність масштабується за навантаженням, а простій коштує мало або нічого. Добре для нерівного трафіку й середовищ розробки. Стежте за холодними стартами, лімітами з'єднань і рахунком, коли фонове завдання працює безперервно.

Як уникнути прив'язки до постачальника?

Обирайте рушії з відкритою реалізацією, яку можна запустити деінде, зберігайте зміни схеми у файлах міграцій і один раз перевірте відновлення на звичайний екземпляр. Власні розширення тихо роблять вихід дорогим.

Де розміщувати базу відносно застосунку?

В одному регіоні, ідеально в одній зоні. Кілька мілісекунд на запит стають секундами на сторінку, коли застосунок робить п'ятдесят запитів, і жодне кешування не сховає погано розміщену основну базу.

Як зазвичай рахується ціна?

Обчислення, сховище, резервні копії, вихідний мережевий трафік і подекуди одиниці читання, виставлені окремо. Вихідний трафік та реплікація між регіонами це два рядки, що в перший повний місяць виявляються більшими, ніж очікувалося.