Перехресна реплікація в MySQL передбачає копіювання та підтримку даних із екземпляра первинної бази даних, розташованого в одному географічному регіоні, до одного або декількох реплікаційних екземплярів, розташованих у різних регіонах. Ця установка пропонує значні переваги, такі як відновлення аварій, поліпшення масштабованості читання, зменшення затримки для глобально розподілених додатків та здатність мігрувати дані між регіонами з мінімальним простоєм. Однак реплікація перехресного регіону також має суттєві наслідки для зберігання з різних точок зору.
Основне значення зберігання випливає з того, що дані повинні існувати щонайменше в двох окремих фізичних місцях, часто охоплюючи значні відстані. Ця надмірність принципово збільшує вимоги до зберігання, оскільки кожна зміна, внесена в первинній базі даних, передається, зберігається та застосовується в базі даних репліки в іншому регіоні. На відміну від локальної реплікації в одному центрі обробки даних або регіону, де відносно міститься передача та вплив даних, перехресна регіона передбачає зобов’язання зберігати повні копії бази даних та її оновлення щодо географічно віддаленої інфраструктури, що, як правило, передбачає додаткові витрати на зберігання.
У реплікації MySQL Cross-Region, первинний сервер записує двійкові журнали (BINLOG), записує всі зміни, що відбуваються. Ці бінлоги асинхронно передаються на реплік -серверів. Потім сервери репліки відтворюють події журналу, щоб підтримувати однакові копії бази даних на віддалених сайтах. З точки зору зберігання з'являються такі ключові наслідки:
1. Збільшення зберігання даних для повних копій: Кожна перехресна регіон вимагає ємності зберігання, достатньої для зберігання всього набору даних або підмножини даних, що повторюються. Це означає, що якщо первинний екземпляр бази даних MySQL становить 500 ГБ, кожна репліка в інших регіонах також потребує щонайменше 500 ГБ ємності для зберігання для розміщення копії. Якщо в регіонах існують кілька реплік для балансування навантаження або відмову, це помножує загальний слід зберігання.
2. Зберігання бінарних журналів та метаданих реплікації: Основний екземпляр повинен підтримувати двійкові журнали, що відстежують зміни, і ці двійкові журнали ще більше споживають місце для зберігання. Залежно від налаштованої тривалості утримання (для того, щоб репліки наздогнати або для відновлення часу), зберігання для бінлогів може значно накопичуватися. Віддалені репліки також зберігають журнали реле, які тимчасово зберігають зміни, отримані перед застосуванням їх до бази даних.
3. Витрати на зберігання та різниця в цінах: хмарні постачальники, такі як Amazon RDS для MySQL або Amazon Aurora MySQL, як правило, стягують за зберігання окремо в кожному регіоні. Оскільки репліки та їх дані знаходяться в окремих фізичних місцях, кожен несе власні витрати на зберігання. Більше того, міжрегіональні витрати передачі даних застосовуються в міру подорожей даних між центрами обробки даних. Ці накопичувальні витрати можуть бути нетривіальним фінансовим увагою.
4. Вплив методів стиснення та зменшення даних: Для пом'якшення вимог до зберігання деякі системи впроваджують стиснення та фільтрацію двійкових журналів. Наприклад, вибірково реплікація конкретних баз даних або таблиць зменшує обсяг даних на репліках. Стиснення бінарних журналів знижує пропускну здатність та зберігання мережі, але ціною додаткових накладних процесів під час процесів стиснення та декомпресії.
5. Наявність зберігання та ефективність роботи: Репліки повинні забезпечити зберігання, яке може обробляти навантаження вводу/виводу, застосовуючи зміни реплікації в режимі реального часу або майже реального часу. Нижній показник або недооцінене зберігання може призвести до відставання в реплікації, що може спричинити невідповідність даних у регіонах. Тому вибір типу зберігання (наприклад, SSD проти HDD), пропускна здатність та характеристики продуктивності IOPS безпосередньо впливають на ефективність реплікації та свіжість даних.
6. Резервне копіювання та відновлення накладні витрати: У налаштуванні перехресної реплікації резервні копії часто приймаються як для первинних, так і для реплічних екземплярів, щоб забезпечити довговічність даних. Підтримка резервних копій самі вимагає додаткових ресурсів для зберігання. Якщо репліки використовуються як цілі відмови від відновлення після аварій, зберігання необхідно забезпечити для задоволення потреб та знімків відновлення.
7. Ампліфікація обсягу даних: Оскільки основна база даних зростає з часом через вставки, оновлення та зміни схеми, всі репліки повинні відповідно масштабувати їх зберігання. Будь -яка неефективність або затримки масштабування репліки може створити вузькі місця або втрату даних, особливо під час сценаріїв відмови.
8. Затримка реплікації та синхронізація зберігання зберігання: Оскільки реплікація даних по регіонах є асинхронною, репліки відстають від первинної. Чим далі від одного регіони, тим довше дані залишаються в транзиті та в постановці, таких як журнали реле. Розширене зберігання журналів збільшує накопичення зберігання та потребує ефективної політики управління журналами для безпечного очищення або архіву старих журналів.
9. Наслідки для зберігання безпеки та дотримання: У деяких випадках юридичні чи регуляторні вимоги передають шифрування даних у спокої у всіх регіонах. Шифрування збережених репліків додає ще один рівень складності до управління зберіганням, включаючи потенційне збільшення розміру зберігання за рахунок метаданих шифрування та вимог до сумісних рішень для зберігання.
201
З точки зору оперативних найкращих практик для вирішення цих наслідків для зберігання, адміністраторів баз даних часто:
- Зберігання правого розміру по регіонах для задоволення поточних та прогнозованих обсягів даних.
-Використовуйте реплікаційні фільтри (реплікація-до-таблиці, репліка-знахідник, параметри репліки-долі-таблиці), щоб мінімізувати непотрібну реплікацію даних і тим самим зменшити накладні витрати на зберігання.
- Використовуйте стиснуті бінлоги та журнали реле для оптимізації ефективності зберігання.
- Монітуйте відставання реплікації та споживання зберігання, щоб активно коригувати забезпечення зберігання.
- Реалізуйте політику утримання для двійкових журналів, які збалансували потреби відновлення після аварій із витратами на зберігання та споживанням.
-Використовуйте хмарні функції, такі як автоматизовані резервні копії, знімки та багаторазові конфігурації для підвищення міцності без надмірного використання зберігання.
Підсумовуючи це, перехресна регіонна реплікація в MySQL істотно збільшує вимоги до зберігання через повне дублювання даних у декількох регіонах, додаткове зберігання двійкових та реле-реле та резервне копіювання, все це ускладнюється регіональними різницями в витратах та зборах передачі. Ефективні стратегії управління зберіганням та оптимізації мають вирішальне значення для підтримки ефективності, витрат на контроль та забезпечення надійного відновлення аварій та глобальної масштабованості розгортання MySQL. Це детальне розуміння наслідків для зберігання інформує про планування потенціалу та інфраструктурні рішення, інтегровані для успішного впровадження архітектури реплікації MySQL.
Цей огляд фіксує повний спектр міркувань зберігання, які виникають під час управління базами даних MySQL, що повторюються в декількох географічних регіонах.