|
36 | 36 | <span> | </span>
|
37 | 37 | <a href="#спільнота-та-підтримка">Спільнота та підтримка</a>
|
38 | 38 | <span> | </span>
|
39 |
| - <a href="https://github.com/CONTRIBUTING.md">Сприяння</a> |
| 39 | + <a href="https://github.com/CONTRIBUTING.md">Участь</a> |
40 | 40 | </h3>
|
41 | 41 | </div>
|
42 | 42 |
|
43 | 43 | ## Навіщо це потрібно?
|
44 |
| -- Створюйте dev-, QA-, staging-середовища, засновані на повнорозмірних баз даних, ідентичних або наближених до «бойових». |
| 44 | +- Створюйте dev-, QA-, staging-середовища, засновані на повнорозмірних базах даних, ідентичних або наближених до «бойових». |
45 | 45 | - Отримайте доступ до тимчасових повнорозмірних клонів «бойової» БД для аналізу запитів SQL та оптимізації (дивіться також: [чат-бот для оптимізації SQL Joe](https://gitlab.com/postgres-ai/joe)).
|
46 |
| -- Автоматично тестуйте зміни БД у CI/CD-пайплайнах, щоб не допускати інцидентів у продуктивності. |
| 46 | +- Автоматично тестуйте зміни БД у CI/CD-пайплайнах, щоб не допускати інцидентів у продуктиві. |
47 | 47 |
|
48 | 48 | Наприклад, клонування 1-терабайтної бази даних PostgreSQL займає близько 10 секунд. При цьому десятки незалежних клонів можуть працювати на одній машині, забезпечуючи розробку та тестування без збільшення витрат на залізо.
|
49 | 49 |
|
|
52 | 52 | ## Як це працює
|
53 | 53 | Тонке клонування працює надшвидко, оскільки воно базується на технології [Copy-on-Write (CoW)] (https://en.wikipedia.org/wiki/Copy-on-write#In_computer_storage). DLE підтримує два варіанти CoW: [ZFS](https://en.wikipedia.org/wiki/ZFS) (використовується за замовчуванням) та [LVM](https://en.wikipedia.org/wiki/Logical_Volume_Manager_(Linux)).
|
54 | 54 |
|
55 |
| -При роботі з ZFS DLE періодично створює нові знімки директорії даних і підтримує набір таких знімків, періодично зачищаючи старі невикористовувані. При створенні нових клонів користувачі можуть вибрати, на основі якого знімка створювати клон. |
| 55 | +При роботі з ZFS DLE періодично створює нові знімки директорії даних і підтримує набір таких знімків, періодично зачищаючи старі невикористовувані. При створенні нових клонів користувачі можуть вибрати, на основі якого саме знімка створювати клон. |
56 | 56 |
|
57 | 57 | Дізнатися більше можна за наступними посиланнями:
|
58 | 58 | - [Як це працює](https://postgres.ai/products/how-it-works)
|
|
67 | 67 |
|
68 | 68 | ## Вивчення кейсів
|
69 | 69 | - Qiwi: [Як Qiwi керує даними для прискорення процесу розробки](https://postgres.ai/resources/case-studies/qiwi)
|
70 |
| -- GitLab: [Як GitLab побудував процес ітерації оптимізації SQL для зниження ризиків інцидентів](https://postgres.ai/resources/case-studies/gitlab) |
| 70 | +- GitLab: [Як GitLab побудував ітеративний процес оптимізації SQL для зниження ризиків інцидентів](https://postgres.ai/resources/case-studies/gitlab) |
71 | 71 |
|
72 | 72 | ## Можливості
|
73 | 73 | - блискавичне клонування БД Postgres - створення нового клону, готового до роботи, всього за кілька секунд (незалежно від розміру БД).
|
74 |
| -- Максимальна теоритична кількість знімків: 2<sup>64</sup>. ([ZFS](https://en.wikipedia.org/wiki/ZFS), варіант за замовчуванням). |
75 |
| -- Максимальний теоритичний розмір директорії даних PostgreSQL: 256 квадрильйонів зебібайт або 2<sup>128</sup> байт ([ZFS](https://en.wikipedia.org/wiki/ZFS), варіант за замовчуванням). |
| 74 | +- Максимальна теоретична кількість знімків: 2<sup>64</sup>. ([ZFS](https://en.wikipedia.org/wiki/ZFS), варіант за замовчуванням). |
| 75 | +- Максимальний теоретичний розмір директорії даних PostgreSQL: 256 квадрильйонів зебібайт або 2<sup>128</sup> байт ([ZFS](https://en.wikipedia.org/wiki/ZFS), варіант за замовчуванням). |
76 | 76 | - Підтримуються усі основні версії PostgreSQL: 9.6-14.
|
77 |
| -- Для реалізації тонкого клонування підтримується дві технології ([CoW](https://en.wikipedia.org/wiki/Copy-on-write)): [ZFS](https://en.wikipedia.org/wiki/ZFS ) та [LVM](https://en.wikipedia.org/wiki/Logical_Volume_Manager_(Linux)). |
| 77 | +- Для реалізації тонкого клонування підтримуються дві технології ([CoW](https://en.wikipedia.org/wiki/Copy-on-write)): [ZFS](https://en.wikipedia.org/wiki/ZFS ) та [LVM](https://en.wikipedia.org/wiki/Logical_Volume_Manager_(Linux)). |
78 | 78 | - Усі компоненти працюють у Docker-контейнерах.
|
79 | 79 | - UI для зручності ручних дій користувача.
|
80 | 80 | - API та CLI для зручності автоматизації роботи зі знімками та клонами DLE.
|
81 | 81 | - За замовчуванням контейнери PostgreSQL включають безліч популярних розширень ([docs](https://postgres.ai/docs/database-lab/supported-databases#extensions-included-by-default)).
|
82 | 82 | - Контейнери PostgreSQL можуть бути кастомізовані ([docs](https://postgres.ai/docs/database-lab/supported-databases#how-to-add-more-extensions)).
|
83 | 83 | - БД-джерело може бути де завгодно (Postgres під управлінням користувача, Yandex.Cloud, AWS RDS, GCP CloudSQL, Azure, Timescale Cloud і т.д.) і не вимагає жодних змін. Немає жодних вимог для встановлення ZFS або Docker у БД-джерела (продуктивна БД).
|
84 |
| -- Початкове отримання даних може бути виконане як на фізичному (pg_basebackup або інструменти для бекапів - такі як WAL-G, pgBackRest), так і на логічес (dump/restore безпосередньо з джерела або відновлення з файлів, що зберігаються в AWS S3) рівнях. |
| 84 | +- Початкове отримання даних може бути виконане як на фізичному (pg_basebackup або інструменти для бекапів - такі як WAL-G, pgBackRest), так і на логічному (dump/restore безпосередньо з джерела або відновлення з файлів, що зберігаються в AWS S3) рівнях. |
85 | 85 | – Для логічного режиму підтримується часткове відновлення даних (конкретні БД, таблиці).
|
86 |
| -- Для фізичного режиму підтримується постійно оновлюваний стан ("sync container"), що робить DLE спеціалізованою реплікою. |
| 86 | +- Для фізичного режиму підтримується постійно оновлюваний стан ("sync container"), що по суті робить DLE спеціалізованою реплікою. |
87 | 87 | - Для логічного режиму підтримується періодичне повне оновлення даних, повністю автоматизоване та контрольоване DLE. Є можливість використовувати кілька дисків, що містять різні версії БД, тому процес оновлення не призводить до простою в роботі з DLE і клонами.
|
88 |
| -- Надшвидке відновлення на певну тимчасову (Point in Time Recovery, PITR). |
| 88 | +- Надшвидке відновлення на певний момент у часі (Point in Time Recovery, PITR). |
89 | 89 | - Невикористані клони автоматично видаляються.
|
90 |
| -- Опціональний прапор "Захист від видалення" захищає клон від автоматичного або ручного видалення. |
| 90 | +- Опція "Захист від видалення" захищає клон від автоматичного або ручного видалення. |
91 | 91 | - У конфігурації DLE можна настроїти політику зачистки знімків.
|
92 | 92 | - Невбивні клони: клони переживають рестарти DLE (включаючи випадок із перезавантаженням машини).
|
93 | 93 | - Команда "reset" може бути використана для перемикання між різними версіями даних.
|
94 |
| -- Компонент DB Migration Cheecker збирає різні артифакти, корисні для тестування БД у CI ([docs](https://postgres.ai/docs/db-migration-checker)). |
| 94 | +- Компонент DB Migration Cheecker збирає різні артефакти, корисні для тестування БД у CI ([docs](https://postgres.ai/docs/db-migration-checker)). |
95 | 95 | - SSH port forwarding для API та Postgres-з'єднань.
|
96 |
| -- Параметри конфіга Docker-контейнера можуть бути спеціалізовані в конфіг DLE. |
| 96 | +- Параметри конфігурації Docker-контейнера можуть бути спеціалізовані в конфігурацію DLE. |
97 | 97 | - Квоти використання ресурсів для клонів: процесор, пам'ять (будь-які квоти контейнерів, що підтримуються Docker).
|
98 |
| -- Параметри Postgres конфігу можуть бути спеціалізовані в конфізі DLE (окремо для клонів, контейнерів "sync" і "promote"). |
| 98 | +- Параметри Postgres конфігурації можуть бути спеціалізовані в конфігурації DLE (окремо для клонів, контейнерів "sync" і "promote"). |
99 | 99 | - Monitoring: відкритий `/healthz` (без авторизації), розширений `/status` (вимагає авторизації), [Netdata-модуль](https://gitlab.com/postgres-ai/netdata_for_dle).
|
100 | 100 |
|
101 | 101 | ## Як взяти участь у розвитку проекту
|
|
104 | 104 |
|
105 | 105 | 
|
106 | 106 |
|
107 |
| -### Вкажіть очевидно, що ви використовуєте DLE |
| 107 | +### Вкажіть явно, що ви використовуєте DLE |
108 | 108 | Будь ласка, опублікуйте твіт зі згадкою [@Database_Lab](https://twitter.com/Database_Lab) або поділіться посиланням на цей репозиторій у вашій улюбленій соціальній мережі.
|
109 | 109 |
|
110 |
| -Якщо ви використовуєте DLE у роботі, подумайте, де ви могли б згадати. Один із найкращих способів згадки – використання графіки з посиланням. Деякі матеріали можна знайти у директорії `./assets`. Будь ласка, використовуйте їх у своїх документах, презентаціях, інтерфейсах програм та веб-сайтів, щоб показати, що ви використовуєте DLE. |
| 110 | +Якщо ви використовуєте DLE у роботі, подумайте, де ви могли б про це згадати. Один із найкращих способів згадування – використання графіки з посиланням. Деякі матеріали можна знайти у директорії `./assets`. Будь ласка, використовуйте їх у своїх документах, презентаціях, інтерфейсах програм та веб-сайтів, щоб показати, що ви використовуєте DLE. |
111 | 111 |
|
112 | 112 | HTML-код для світлих фонів:
|
113 | 113 | <p>
|
@@ -160,11 +160,11 @@ HTML-код для світлих фонів:
|
160 | 160 | ## Ліцензія
|
161 | 161 | Код DLE розповсюджується під ліцензією, схваленою OSI: GNU Affero General Public License version 3 (AGPLv3).
|
162 | 162 |
|
163 |
| -Зв'яжіться з командою Postgres.ai, якщо вам потрібна комерційна ліцензія, яка не містить пропозицій GPL, а також якщо вам потрібна підтримка: [Контактна сторінка](https://postgres.ai/contact). |
| 163 | +Зв'яжіться з командою Postgres.ai, якщо вам потрібна комерційна ліцензія, яка не містить пунктів GPL, а також якщо вам потрібна підтримка: [Контактна сторінка](https://postgres.ai/contact). |
164 | 164 |
|
165 | 165 | [](https://app .fossa.io/projects/git%2Bgithub.com%2Fpostgres-ai%2Fdatabase-lab-engine?ref=badge_large)
|
166 | 166 |
|
167 |
| -## Спільнота та Підтримка |
| 167 | +## Спільнота та підтримка |
168 | 168 | - ["Кодекс поведінки спільноти Database Lab Engine"](./CODE_OF_CONDUCT.md)
|
169 | 169 | - Де отримати допомогу: [Контактна сторінка](https://postgres.ai/contact)
|
170 | 170 | - [Спільнота у Телеграм (російська мова)](https://t.me/databaselabru)
|
|
0 commit comments