Технології

← Головна
Дані та зберігання

PostgreSQL — база даних вашого сайту та магазину

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

Що таке PostgreSQL і що вона зберігає у вашому сайті

PostgreSQL — це реляційна система керування базами даних із відкритим кодом, яка безперервно розвивається з 1996 року, а коріння її сягає проєкту POSTGRES в Університеті Берклі (1986). На 4buildsite PostgreSQL — це місце, де живуть дані вашого сайту: товари та залишки, замовлення й платежі, ліди з форм і контент сторінок. Ви працюєте у візуальному редакторі, а PostgreSQL надійно зберігає кожну зміну.

Чому це важливо для вас, якщо ви не програміст? Бо різницю між серйозною та крихкою базою даних видно саме у складні моменти: пік трафіку під час акції, платіж, повторений двічі, перезапуск сервера. PostgreSQL розроблена так, щоб проходити такі моменти без втрати чи пошкодження даних — тому її використовують у великих масштабах компанії на кшталт Instagram і Reddit, а історично на ній трималася інфраструктура Skype.

  • Товари, варіанти та залишки — повний каталог вашого магазину
  • Замовлення, платежі Stripe та рахунки — історія продажів без прогалин
  • Ліди з форм — кожен запит комерційної пропозиції гарантовано збережено
  • Контент сторінок і шаблонів — усе, що ви редагуєте у візуальному редакторі
  • Домени, налаштування та опубліковані версії вашого сайту

Замовлення й платежі без пошкоджених даних — цілісність ACID

Коли клієнт оформлює замовлення, відбувається кілька речей одночасно: зменшується залишок, створюється замовлення, реєструється платіж Stripe. PostgreSQL виконує їх як одну транзакцію: або відбувається все, або нічого. Якщо платіж зривається посередині, залишок автоматично повертається до початкового значення. Така поведінка називається ACID (Atomicity, Consistency, Isolation, Durability), і PostgreSQL гарантує її для будь-якої таблиці без спеціальних налаштувань.

Окрім транзакцій, PostgreSQL накладає правила цілісності безпосередньо в базі даних: рядок замовлення не може посилатися на неіснуючий товар, залишок не може стати від'ємним, email облікового запису не може задублюватися. Ці обмеження (зовнішні ключі, check, unique) зупиняють хибні дані ще до того, як вони потраплять у базу, а не після того, як зіпсують ваш звіт про продажі.

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

Пошук у каталозі та гнучкий контент

PostgreSQL містить повнотекстовий пошуковий рушій: клієнти шукають «кросівки для бігу» й знаходять відповідні товари, зі словниками стемінгу, зокрема для румунської мови. Розширення pg_trgm додає стійкість до помилок друку. Для магазину це означає, що по каталогу можна якісно шукати без окремого сервісу на кшталт Elasticsearch — тобто менше компонентів, які можуть вийти з ладу, і нижчі інфраструктурні витрати.

Контент сторінок, створених у візуальному редакторі, не має фіксованої структури: блок hero, форма та галерея мають різні поля. PostgreSQL розв'язує це через JSONB: зберігає нативний JSON, який можна індексувати індексами GIN і запитувати як будь-яку колонку. Ви отримуєте гнучкість документної бази даних, але зберігаєте реляційну цілісність для замовлень і платежів — в одній системі, а не у двох.

  • tsvector + словники стемінгу (румунська включно) — релевантний пошук у каталозі
  • pg_trgm — клієнти знаходять товар, навіть якщо помилилися в одній літері
  • JSONB з індексами GIN — гнучкі блоки сторінок залишаються швидкими для запитів

Надійність: бекап, відновлення та жодних сюрпризів

PostgreSQL записує кожну зміну спочатку в журнал (WAL — Write-Ahead Log) і лише потім у самі дані. Якщо сервер раптово зупиняється, після перезапуску база даних відновлюється з журналу без пошкоджених даних. На тому самому механізмі PostgreSQL будує й відновлення на момент часу (PITR) — стандартну можливість рушія для інсталяцій, що архівують журнал WAL. На 4buildsite дані зберігаються на постійних томах, відокремлених від застосунку, тож перезапуск чи оновлення платформи їх не зачіпає.

PostgreSQL також підтримує потокову реплікацію — синхронізовану копію бази даних, готову за потреби прийняти трафік. Для вашого сайту надійність бази даних напряму перетворюється на SEO та GEO: сайт, що відповідає стабільно, стабільно краулиться й індексується, а повторювані помилки 5xx ускладнюють crawl і індексацію.

Масштабування та вартість — зростайте без рахунків за ліцензії

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

PostgreSQL має вільну ліцензію (PostgreSQL License, типу BSD) — без витрат на ліцензію й без комерційного власника, який може змінити правила за одну ніч. Комерційні бази даних зазвичай ліцензуються за кожне процесорне ядро, і ця вартість неминуче потрапляє в ціну, яку платить клієнт. На 4buildsite база даних входить у план разом із хостингом і SSL — без жодної окремої плати.

Переваги та обмеження

Переваги

  • Повноцінні транзакції ACID — замовлення й платежі залишаються узгодженими навіть при помилках чи збоях сервера.
  • Надійність, перевірена з 1996 року, у продакшені в Instagram, Reddit та, історично, Skype.
  • Нативний JSONB — гнучкий контент сторінок без шкоди для реляційної цілісності.
  • Вбудований повнотекстовий пошук зі стемінгом для румунської — пошук у каталозі без окремого сервісу.
  • Вільна ліцензія — жодних прихованих витрат на ліцензію в ціні вашого плану.
  • Журнал WAL — при раптовій зупинці сервера база даних відновлюється після перезапуску без пошкоджених даних.

Обмеження

  • Просунуте адміністрування (тюнінг, реплікація, failover) потребує досвіду — на 4buildsite ми робимо це самі, але self-hosted вимогливе.
  • Запис відбувається на одному первинному вузлі — розподіл на кілька вузлів (шардинг) не є нативним і потребує додаткових інструментів.
  • Кожне з'єднання споживає відносно багато пам'яті — за великої кількості з'єднань потрібен пулінг (PgBouncer).
  • Повнотекстовий пошук добрий, але поступається спеціалізованим рушіям за просунутою релевантністю та підказками пошуку.

Короткий висновок

PostgreSQL — стандартний вибір для сайтів, інтернет-магазинів, маркетплейсів і SaaS-платформ, де замовлення, платежі та ліди не можна втрачати. Простому блогу вистачило б і меншого, але вільна ліцензія означає, що на 4buildsite ви все одно отримуєте такий рівень безпеки без додаткових витрат.

Таблиця специфікацій

МожливістьОбмеження / порігТипове використання
Транзакційна цілісністьПовний ACID + MVCC на будь-якій таблиціДуже довгі транзакції тримають ресурси заблокованимиЗамовлення, платежі, залишки
JSONBНативний JSON, індексується через GINДуже складні запити до JSON повільніші, ніж до класичних колонокКонтент сторінок, налаштування, атрибути товарів
Повнотекстовий пошукtsvector + pg_trgm, багатомовний (румунська включно)Релевантність нижча, ніж у спеціалізованих пошукових рушіївПошук у каталозі магазину
Бекап і реплікаціяWAL, PITR, потокова реплікаціяАвтоматичний failover потребує зовнішніх інструментів (напр. Patroni)Відновлення після інцидентів, висока доступність
МасштабуванняРепліки для читання, партиціонування таблицьЗапис залишається на первинному вузліВеликі каталоги та історія замовлень
ВартістьВідкритий код, вільна ліцензіяРеальна вартість — інфраструктура й адмініструванняВходить у плани 4buildsite

PostgreSQL проти MySQL проти MongoDB

КритерійPostgreSQLMySQLMongoDB
Цілісність ACIDПовна, на будь-якій таблиці, за замовчуваннямПовна лише з рушієм InnoDBТранзакції з кількома документами лише з v4.0, з обмеженнями
Типи даних і JSONJSONB з індексацією + багаті типи (array, range)Валідний JSON, непряма індексація (згенеровані колонки)Нативні документи BSON, без обов'язкової схеми
Повнотекстовий пошукВбудований: tsvector, pg_trgm, багатомовний стемінгБазовий (InnoDB FTS)Базовий; просунутий варіант (Atlas Search) лише в комерційній хмарі
Ліцензія / вартістьPostgreSQL License — вільна, без комерційного власникаGPL, належить Oracle (комерційні редакції)SSPL — це вже не класична open-source ліцензія
ЕкосистемаПотужні розширення (PostGIS, pgvector), підтримка в усіх ORMВсюдисуща в класичному PHP/WordPress-хостингуСильна в Node.js, вужча в решті середовищ
Придатність для e-commerceВідмінна — замовлення, залишки й платежі гарантовано узгодженіХороша — історичний стандарт (Magento, WooCommerce)Для гнучких каталогів; узгодженість замовлень потребує додаткових зусиль

Поширені запитання

Чи впливає PostgreSQL на швидкість сайту?

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

Чому не WordPress із MySQL, як усі?

WordPress — це PHP-CMS із темами й плагінами, які треба постійно підтримувати й оновлювати. 4buildsite генерує сайти на Next.js із PostgreSQL: швидші, без плагінів, які треба латати, і з меншою кількістю вразливостей. MySQL — не поганий вибір, але PostgreSQL додає індексований JSONB, кращий повнотекстовий пошук і суворішу цілісність, за тієї самої вільної ліцензії.

Що станеться з моїми даними, якщо сервер зламається?

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

Чи можу я експортувати свої дані, якщо піду з 4buildsite?

Так. Ваші дані зберігаються в PostgreSQL — стандартному для індустрії форматі: товари, замовлення й клієнтів можна експортувати у поширені формати (CSV, SQL). Немає пропрієтарного формату, який прив'язував би вас до платформи.

Чи впорається PostgreSQL, якщо мій магазин зростатиме?

Так, із дуже великим запасом. Instagram і Reddit масштабувалися на PostgreSQL до сотень мільйонів користувачів, використовуючи індекси, партиціонування та репліки для читання — ті самі техніки доступні й на 4buildsite. Інтернет-магазин досягає меж PostgreSQL набагато пізніше, ніж меж власної логістики.

Скільки мені коштує ліцензія PostgreSQL?

Нічого. PostgreSQL має вільну ліцензію (PostgreSQL License, типу BSD) без плати за сервер чи за ядро. На 4buildsite база даних входить у ваш план разом із хостингом і SSL — окремо за неї ви нічого не платите.

4b2b.net
Бізнес-екосистема
4conta.ro
Бухгалтерія
4invoices.net
Застосунок для виставлення рахунків
4expenses.net
Управління витратами
4notify.net
Сповіщення
4hosting.net
Хостинг
4database.net
Бази даних
4buildsite.net
Конструктор сайтів
4myapp.net
Конструктор застосунків
4avatars.net
AI-аватари
4chaty.net
AI-чатбот
4webagency.net
ПЗ для вебагенцій
4softedu.net
Сайти для освіти
4softcrm.net
Платформа CRM
4softerp.net
Система ERP
4softhr.net
Управління HR
4mystaff.net
Портал персоналу
4myprojects.net
Менеджер проєктів
4mycontracts.net
Договори
4docs.net
Управління документами
4appointments.net
Бронювання
4marketingonline.net
Маркетинг
4insurance.net
Страхування
4property.net
Нерухомість
4lawyers.net
Юридичне ПЗ
4mygarage.net
Автосервіс
4driving.net
Автошколи
4fleet.net
Управління автопарком
4myevents.net
Події
4therapy.net
Терапія
4clinics.net
Клініки
4dental.net
Стоматологічні клініки
4restaurants.net
Ресторани
4beautify.net
Салон краси
4gym.net
Тренажерні зали
4guards.net
Охоронні фірми
4softvet.net
Ветеринарні клініки
4softauto.net
Софтвер для автобізнесу
4construct.net
Будівельні фірми
4marketplace.net
Маркетплейс
4shopy.net
Інтернет-магазин
4pricing.net
Порівняння цін
4salefood.net
Доставка їжі
4rentify.net
Оренда
4transports.net
Транспорт
4agencytravel.net
Турагентство
4hotel.net
Управління готелями
4ong.net
Управління НГО