Розуміння функцій Time Travel та FailSafe у об’єктах Snowflake

pic

Як фахівці з даних і постійні студенти вирішення задач з даними, ми повинні надавати пріоритет безперервному навчанню останнім тенденціям. Серед цих тенденцій є різні функції, такі як функції Time Travel (переміщення в часі) та Fail-safe (захист від збоїв) в Snowflake, які можуть бути корисними для відновлення або перегляду даних до певного моменту часу. Те, що ускладнює це, незалежно від того, чи ви намагаєтесь отримати сертифікацію SnowPro Core або налаштувати стратегію об’єктів даних для вашого бізнесу, полягає в тому, що доступність і тривалість цих функцій значно варіюються залежно від низки факторів, таких як вид Snowflake, в якому ви зареєстровані, та тип об'єктів, які ви використовуєте.

Давайте почнемо з опису цих двох дуже корисних функцій:

1. Переміщення в часі (Time Travel)

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

Основні моменти:

  • Період зберігання залежить від типу таблиці та версії Snowflake:
    • Standard Edition: до 1 дня.
    • Enterprise Edition: до 90 днів.

Може бути використано для:

  • Запитів до історичних даних.
  • Відновлення видалених таблиць.
  • Клонування таблиць або схем у тому вигляді, в якому вони існували раніше.

Приклади використання:

  • Випадково видалені рядки, які потрібно відновити.
  • Налагодження шляхом порівняння поточних даних з історичними станами.

2. Захист від збоїв (Fail-safe)

Fail-safe — це механізм відновлення, керований Snowflake, який дозволяє відновлювати дані після закінчення періоду зберігання Time Travel. Ця функція призначена для використання в екстрених ситуаціях, наприклад, коли дані втрачаються через помилку користувача або інші непередбачувані проблеми. Однак Fail-safe недоступний для користувачів; для відновлення потрібно звернутися до підтримки Snowflake.

Основні моменти:

  • Період зберігання:
    • Постійні таблиці: 7 днів.
    • Транзитні таблиці: 0 днів.
    • Тимчасові таблиці: не застосовується (без Fail-safe).
  • Призначений як останній ресурс, не для регулярних операцій.
  • Супроводжується додатковими витратами на зберігання.

Приклади використання:

  • Відновлення критичних даних після закінчення періоду зберігання Time Travel.
  • Сценарії відновлення в екстрених ситуаціях за допомогою підтримки Snowflake.

Давайте підсумуємо основні відмінності між цими двома функціями.

pic

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

Чи підтримують Time Travel та Fail-safe в Snowflake постійні таблиці?
Чи підтримують Time Travel та Fail-safe в Snowflake тимчасові таблиці?
Чи підтримують Time Travel та Fail-safe в Snowflake транзитні таблиці?
Чи підтримують Time Travel та Fail-safe в Snowflake зовнішні таблиці?
Чи підтримують Time Travel та Fail-safe в Snowflake матеріалізовані уявлення?
Чи підтримують Time Travel та Fail-safe в Snowflake клоновані таблиці?

Підсумовуючи, ось таблиця, що висвітлює основні відмінності. Зверніть увагу на те, що деякі об'єкти не підтримують Time Travel / Fail-safe; і навіть якщо підтримують, мінімальні, максимальні та стандартні дні зберігання можуть значно варіюватися.

pic

Підсумовуючи, доступність і налаштування функцій Time Travel та Fail-safe у Snowflake значною мірою залежать від версії та типу вашого об'єкта Snowflake. Я склав вищезгадані списки/таблиці під час підготовки до сертифікації Snowflake SnowPro Core і настійно рекомендую вам використовувати їх як ресурс під час вашої підготовки.
Якщо ви зацікавлені вивчити більше про деякі популярні об'єкти Snowflake, раджу вам прочитати мою статтю тут.

Дякую за прочитання і бажаю удачі в ваших дослідженнях/реалізації!

Перекладено з: Understanding Time Travel and FailSafe in Snowflake Objects

Leave a Reply

Your email address will not be published. Required fields are marked *