Англійська для адміністрування баз даних: DBA Communication Vocabulary

Словник DBA для керування змінами, вікон обслуговування, обміну інформацією щодо стратегії резервування і обробки інциденту з базою даних.

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

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


Основні терміни: зміна управління і підтримки

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

“У нас є двогодинний ремонтний проміжок, запланований на суботу вночі, починаючи з 01:00 UTC. Всі некритичні запити слід відкласти до 03:00.”

Чи можемо ми вмістити перебудову індексу в існуюче вікно обслуговування, або нам потрібно запитати окремий слот?

** Запит на зміну ** — офіційний документ або квиток, надісланий з запитом на схвалення запланованої зміни до виробничої системи. Часто скорочується до CR або RFC (Request for Change).

“Я подал запрос на изменение для расширения tablespace. Це очікує схвалення від керівника інфраструктури і DBA на виклику»

«Ваш запит на зміну потребує плану відновлення, перш ніж він може бути переданий до CAB для підписання»

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

“Проведи мене через твій план відновлення. Якщо скрипт міграції зазнає невдачі на півдорозі, яка точна послідовність кроків для відновлення попереднього стану?»

“Ми повернули назад до знімка, зробленого о 22:45. План відновлення працював чисто — загальний час простою був менше восьми хвилин»

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

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

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

Поширені вирази у переглядах скрипту перенесення:

    • “Ця ALTER TABLE отримає виключний замок — чи ви розглядали онлайновий підхід до DDL?” *
    • “Скрипт не обробляє випадки, коли стовпчик вже існує. Нам потрібна перевірка ідемпотентності.”*
    • « Чи можете ви додати обгортку транзакції, щоб ми могли відновити її у випадку невдачі перевірки даних? » *

Резервний варіант стратегії та словар’я відновлення

** Стратегія резервування ** — загальний план, який визначає, як, коли і де робити резервування баз даних. Повна стратегія складається з трьох типів резервування:

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

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

«Приріст резервних копій вимикається беззвучно — нам потрібно перевірити журнали резервного копіювання перед наступним вікном обслуговування»

** Цільова точка відновлення (RPO) ** — максимально допустима кількість втрат даних, виражена як інтервал часу. RPO однієї години означає, що бізнес може терпіти втрати до однієї години транзакцій.

“Бизнес установил RPO в 15 минут для базы данных платежей. Наш поточний розклад резервного копіювання дає нам RPO чотири години — нам потрібно закрити цю прогалину з відправкою журналу транзакцій. ”

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

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

“Програміст випадково впав зі столу о 14:32. Я використовував відновлення в точці часу, щоб відновити базу даних до 14:31:50, потім експортував тільки вражені таблиці і реімпортував їх у виробництво. ”

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


Складання, переклад, рецензування

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

Поширені фрази tablespace:

    • “Пространство таблиць USERS наближається до максимального розміру.” *
    • “Ми маємо додати файл даних до простору таблиць, щоб вмістити очікуване зростання даних.” *
    • “Я рекомендую пересунути простір таблиці індексів на швидший том SSD, щоб поліпшити пропускну здатність запиту.” *

** « База даних на 85% заповнена » ** — специфічна фраза, яку використовують адміністратори баз даних, коли повідомляють про використання пам’ яті нетехнічним користувачам. Речення навмисно просте, щоб нагадати про необхідність негайного втручання, не вимагаючи від слухача інтерпретувати технічні метричні дані.

“Я повинен повідомити команді: база даних на 85% заповнена. При теперішніх темпах зростання, ми досягнемо межі приблизно через три тижні. Я піднімаю квиток на планування потужності сьогодні»

** Словник планування потужностей ** — мова, що використовується при прогнозуванні майбутніх потреб у ресурсах і обґрунтуванні інвестицій в інфраструктуру.

Ключові фрази:

  • “Залежно від поточної траєкторії зростання, нам знадобляться додаткові 2 ТБ пам’яті в наступному кварталі.”
    • “Я моделював три сценарії: рівне зростання, зростання на 20% і зростання на 40%. Навіть у консервативному сценарії, нам потрібно діяти до кінця фінансового року.»*
    • “План виробництва не передбачає запуску нових продуктів. Якщо маркетингова кампанія призводить до значно більших обсягів запису, ми повинні переглянути прогнози. ”*

** Replication lag communication ** — мова, яку використовують адміністратори баз даних для пояснення і збільшення затримок у реплікації бази даних, коли репродукція (додаткова) бази даних відстає від первинної.

“Ми зараз бачимо затримку реплікації приблизно 45 секунд на репліку читання. Це означає, що будь- яке читання, яке вдарить по реплікації, може повернути дані, які застаріли на 45 секунд. Якщо програма вимагає точності в реальному часі, ці запити повинні бути тимчасово перенаправлені на первинний

“Затримка реплікації під час пакетного імпорту зросла до восьми хвилин. З того часу він відновився до менше ніж п’яти секунд. Я моніторю його через решту вікна обслуговування.»

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

Звичайні вирази:

    • “Цим запитом виконується повне сканування таблиці. Ми повинні додати складний індекс на (customer_id, created_at).”*
  • “План виконання показує вкладене з’ єднання петлі на неіндексованому стовпчику — це пояснює 12- секундний час відповіді.”
    • “Після додавання індексу час виконання запиту скоротився з 8, 4 секунд до 120 мілісекунд. Це 98% поліпшення.»*
    • “Чи можете ви запустити EXPLAIN ANALYSE і поділитись виведенням? Я хочу побачити фактичні оцінки рядків проти оцінок планувальника.”*

Процес схвалення DBA

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

Фрази, що використовуються під час процесу затвердження:

    • « Я з радістю схвалюю цей запит на зміну, з однією умовою: перенесення має бути виконано у суботнє вікно обслуговування, а не у робочі години. » *
    • “Я не можу схвалити цей сценарій у написаному вигляді. Відсутність плану відновлення є блокуючим фактором. Будь ласка, перегляньте і відправте знову. ”*
    • “Це має схвалення DBA. Ви готові до розгортання після 02:00 UTC, як тільки резервне копіювання буде успішно завершено.”*
    • “Я переглянув скрипт міграції і маю дві зауваження: розмір пакета занадто великий і може призвести до конфлікту щодо блокування, а також не було записано кількості рядків, які було змінено. Будь ласка, зверніться до обох, перш ніж ми продовжимо.»*

Як використовувати їх у розмові

Наведені вище слова найефективніші, якщо ви поєднаєте технічну точність з контекстом для вашої аудиторії. Декілька практичних принципів:

** З розробниками: ** Будьте конкретними щодо обмежень. Замість « запит повільний », скажіть « запит виконує повне сканування таблиці з 200 мільйонами рядків. Додавши індекс на order_status, час відповіді повинен бути менше 50 мілісекунд»

** З керівництвом: ** Лідер з бізнес-впливом. Замість «затримка реплікації становить 45 секунд», скажіть «запити читання можуть повертати дані, які застаріли на 45 секунд, що може вплинути на точність стану замовлення в порталі клієнта»

** У викликах інциденту: ** Використовувати структуровану мову. Зазначте, що відбувається, який вплив на це має ця ситуація, і які дії ви плануєте здійснити: « Основна база даних має 95% обсягу зберігання. Нові спроби запису починають зазнавати невдачі. Я розширюю tablespace зараз і буду слідкувати за переглядом планування потужності завтра»

** У запитах на зміни: ** Завжди включайте ваш план відновлення, ваші очікування щодо впливу змін, а також стан схвалення адміністрування бази даних перед надсиланням. Це зменшує перехід туди-сюди і демонструє професійну оцінку.


Таблиця швидких посилань

TermPlain English Meaning
Maintenance windowPre-agreed downtime slot for planned database work
Change request (CR)Formal approval ticket for a production change
Rollback planStep-by-step procedure to undo a change if it fails
Full / incremental / differential backupThree backup types differing in scope and restore complexity
RPO (Recovery Point Objective)Maximum acceptable data loss, expressed in time
Point-in-time recoveryRestoring a database to an exact historical timestamp
Schema migrationA controlled, versioned change to the database structure
Replication lagDelay between the primary database and its replicas
Capacity planningForecasting future storage and compute resource needs
DBA approvalFormal sign-off from the database administrator before a change proceeds

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

Про що ця стаття "Англійська для адміністрування баз даних: DBA Communication Vocabulary"?

Словник DBA для керування змінами, вікон обслуговування, обміну інформацією щодо стратегії резервування і обробки інциденту з базою даних.

Чи безкоштовна ця стаття?

Так. Усі статті на CoderSlingo, включно з цією, доступні безкоштовно без реєстрації.

Скільки часу займає читання "Англійська для адміністрування баз даних: DBA Communication Vocabulary"?

Приблизно 9 min.