Маълумоти худидоракунии шифобахш
1) Таъриф ва вазифаҳо
Маълумоти худидоракунии шифобахш равишест ба муҳандисии маълумот, ки дар он камбудиҳо ба таври худкор ошкор карда мешаванд ва амалҳои ислоҳӣ (таъмир, таҳвил, бозгашт, дубора муттаҳидсозӣ, дубора индексатсия) бидуни дахолати инсон ё бо дахолати ҳадди аққал анҷом дода мешаванд (инсон-дар-давр барои ҳолатҳои ҳассос).
Ҳадафҳо: Маълумоти поёнии MTTR, баланд бардоштани эътимод, тобоварӣ ба пешрафт ва нокомӣ, арзиши пешбинишудаи моликият.
2) Глитчҳои маъмулӣ барои табобат
Схемаҳо ва шартномаҳо: тағиротҳои номувофиқ, сутунҳои гумшуда, муноқишаҳои типӣ.
Сифат/якпорчагӣ: такрорӣ, нуқсонҳо, ягонагӣ/вайронкунии тамомияти истинод.
Вақт ва тару тоза: таъхири тазриқ, "сӯрохиҳо" дар тирезаҳо, desynchronization TZ/locales.
Идентификаторҳо ва калидҳо: тағир додани генератори ID, бархӯрдҳо, калидҳои шинокунандаи табиӣ.
Тартиби чорабиниҳо: чорабиниҳои дер, фармоиш, дубора расонидан (ҳадди аққал як бор).
Анборҳо: таназзули партияҳо, файлҳо/блокҳои шикаста, таҳрифи шарора.
Ҳуқуқ/амният: ниқобҳои нодуруст/рамзгузорӣ, ихроҷи PII дар боргузорӣ.
3) Рукнҳои худтанзимкунӣ
1. Шартномаҳои маълумот (схемаҳо + қоидаҳо) бо санҷишҳои автоматӣ.
2. Қубурҳои Idempotent (бидуни таъсири дукарата дубора оғоз кунед).
3. Журналистика ва репродуктивӣ (хом/биринҷӣ ивазнашаванда, насл).
4. Механизмҳои таъмир (такрорӣ, backfill, фишурдасозӣ, таъмири якҷоя, барқарорсозӣ).
5. Риоя ва SLO (тару тоза, мукаммалӣ, беҳамтоӣ, ниҳонӣ).
6. Сиёсати қабули қарорҳо (вақте ки мо худкор ислоҳ мекунем, вақте ки мо шиддат мегирем).
4) Шартномаҳо ва санҷишҳои сифат
Дар шартнома тавсиф карда мешавад: схема, диапазонҳои қобили қабул, беназир, RLS/ниқоб, тару тозаи SLA.
Намуна (услуби YAML):yaml dataset: payments schema:
- name: txn_id; type: string; unique: true
- name: user_id; type: string; not_null: true
- name: amount; type: decimal(18,2); min: 0
- name: created_at; type: timestamp; tz: UTC freshness_sla: 15m constraints:
- "count(distinct txn_id) = count()"
- "pct_null(user_id) < 0. 1%"
privacy:
- mask: card_pan -> BIN6LAST4 actions_on_violation:
- auto_quarantine_partition
- backfill_missing_window
- notify_owner_and_open_ticket
Санҷишҳо дар ҳар як марҳила гузаронида мешаванд: тазриқ → намоиши → намоиш. Вайрон кардани қоидаҳо таъмири худкорро фаъол мекунад (ба зер нигаред) ва/ё карантин.
5) Идемпотентсия ва детерминизм
Upsert/Якҷоя кардан бо калидҳои устувор (SCD2 барои таърих, SCD1 барои иловаро).
Тағироти детерминистӣ: як вуруд → як баромад бо ҳамон параметрҳо.
Версия - Нусхаи рамз/схема/қабат ва нишонаи маълумотро (нишонаи обӣ) ислоҳ кунед.
Ғалтаки Idempotent: сабт тавассути саҳна + своп/номи атомӣ.
Маҳз як маротиба ба маънои: қобили қабул "ҳадди аққал як бор" интиқол + қабулкунаки idempotent.
6) Асбоби таъмир
Бозсозӣ/Backfill: бозсозӣ барои тиреза ∈ [T0, T1] 'аз сабти тағйирнопазир (хом).
Муқоиса: муқоисаи агрегатҳо/калидҳо дар байни қабатҳо (хом ↔ ↔ март) ва байни системаҳо (манбаъ ↔ DWH).
Партофтан: кашидани тиреза аз рӯи калид (txn_id, event_id) + эвристикаи масофа (номуайян барои калидҳои ифлос).
Фишурдасозӣ: интиқоли файлҳои хурд ба ҳизбҳои калон (Parquet/ORC), индексатсия.
Таъмири якҷоя: ҳангоми сабти муноқишаҳо, афзалиятҳои афзалиятнок (аз рӯи манбаъ/вақт/версия).
Индексҳо/материализатсияро барқарор кунед: ҳисобкунии агрегатҳо/куб/рол.
Карантин/Соя: Тарафҳои шубҳанок худро ҷудо мекунанд; истеъмолкунандагон риштаи "тоза" -ро мехонанд.
Миёнаравии схема: селектори пешгӯии автоматӣ (пур кардани пешфарзҳо, сутунҳои ҳисобшаванда) барои тағироти ночиз.
7) Ҳифзи нигаҳдорӣ ва якпорчагӣ
Санҷидани миқдор ва санҷиши блок (CRC, паритет).
Захираи кворум (системаҳои мувофиқ бо RAFT/Paxos, кворум мехонад/менависад).
Рамзгузории тозакунӣ барои захираи камхарҷ.
Версияи мағозаи объект (undelete).
Atomic commit v Lakehouse (сабти муомилот, ACID-таблицы: Delta/Iceberg/Hudi).
8) Тартиби рӯйдодҳо ва "воқеияти ифлос"
Рӯйдодҳои дер: тирезаи дарозро нигоҳ доред, нишонаи обро истифода баред 'ва; ҳисобкунии тирезаҳо.
Бозсозӣ: аз ҷониби ҷадвалҳои глобалии 'event _ id', ҷадвалҳои idempotency-калидҳо.
Вақти ҷуброн: ба эътидол овардани TZ, нигоҳдории 'ingested _ at' event _ time '.
Фармоишӣ: event_time-based агрегатҳо бо танзими нишонаи об.
9) Мантиқи қарор (муҳаррики сиёсат)
Қоида: "Кадом аномалия → кадом амалро дар бар мегирад ва чӣ ҳадде, ки соҳиби кӣ аст".
Намуна (псевдо):yaml policy: payments_freshness detect: freshness_delay > 15m auto_actions:
- trigger: backfill(last_60m)
- if: gap_persisted > 30m then: quarantine_partition(date=today, hour=current_hour)
escalate:
- if: gap_persisted > 60m -> page_oncall:data guardrails:
- do_not_expose_unverified_to_marts
10) Мушоҳида ва SLO барои маълумот
Маҷмӯи SLO:- Тозагии парвандаҳои намоишӣ ≤ 15 дақиқа.
- Пуррагӣ> 99. 5% дар майдонҳои калидӣ.
- Ягонагӣ: нусхаҳо <0. 01%.
- Мӯҳлати ҳисобкунӣ: p95 <5 дақ.
- Устувории таъмир: MTTR-маълумот <30 дақиқа.
Нишондиҳандаҳо ва огоҳиҳо: намоиш дар Прометей/Графана; Сохтани навори афзалиятноки ҳодисаҳои маълумот.
11) Оштӣ (амалия)
Агрегатҳоро санҷед: 'ҳисоб/сум/дақиқа/макс' байни қабатҳои/системаҳо дар равзанаи слайд.
Муқоисаи калидӣ: фарқияти симметрии маҷмӯаҳои 'Δ = (A\B) ∪ (B\A)'.
"Кори аудит" -и даврӣ: муқоиса бо манбаъ, санҷиши интихобӣ дар манбаъ.
Пардохтҳо/молия: вурудоти дукарата, мусолиҳаи ҳаррӯза, сабти тасҳеҳ.
12) Идоракунии гардиш ва эволютсия
SEM Ver барои схемаҳо: MAJOR (танаффус )/MINOR (илова мекунад )/PATCH (ислоҳ).
Шартномаҳо дар CI/CD: схема-дифф, мутобиқат, автогенератсияи муҳоҷират.
Қалмоқчаи Backfill: бо MINOR майдонҳои пешфарз/ҳисобшударо илова кунед, намоишҳоро дубора ҳисоб кунед.
Пешгӯиҳои тағйирпазир: Хонандагон зербанди сутунҳоро мехонанд; манъ "SELECT".
13) Амният, махфият, риояи
RLS/CLS: филтрҳои сатр/сутун, хусусан дар филиалҳои таъмир ва содирот.
Токенизатсия дар асоси PII барои такрории устувор.
Аудити дастрасӣ/содирот: кӣ он чизеро, ки содир кардааст, дидааст ва ба куҷо фиристодааст.
DSAR/Нигоҳдорӣ: нест кардани худкор/беном дар равандҳои таъмир; kickbacks талаботи қонуниро ба назар мегирад.
14) Арзиш ва нишондиҳандаҳо
Бозпардохти хароҷот: маҳдуд кардани паҳнои тирезаҳо (масалан, лағжиши 3-7 рӯз).
Материализатсия ва кэшҳо: ҳисобкунии маҷмӯаҳои танҳо тағирёфта (афзоиш).
Афзалият: аввал намоишҳои интиқодӣ (молия, хатарҳо), баъд таҳлилӣ.
Таъмири берун аз қулла: тирезаҳои шабона/афзалияти паст дар ҷадвал.
15) Моделҳои озмоишӣ ва ҳодисаҳо
Озмоиши бесарусомонӣ: дидаву дониста қисмҳо/схемаҳоро дар саҳна вайрон кунед.
Таъхирҳои қалбакӣ: Маҷмӯаҳои қалбакӣ, фармоишӣ, нусхабардорӣ.
Маҷмӯаҳои тиллоӣ: нишондиҳандаҳо барои оштӣ пас аз таъмир.
Рӯзҳои бозӣ: омӯзиши мунтазами даста дар дафтарҳо.
16) Антипаттернҳо
Ислоҳи "ноаён": таҳрирҳои хомӯш бидуни аудит ё гузориш.
Backfills санҷида нашуда: манбаи ҳақиқат/нусхаи формула нест.
Дархостҳои вазнин ба OLTP ҳангоми таъмир: шумо prod-ро ба итмом мерасонед.
Дар истеъмолкунандагон интихоб кунед: танаффус бо ҳама гуна тағирёбии MINOR.
Ягона калиди ихтисоркунӣ мавҷуд набудани калидҳои бозгашт/имзои ҳаш мебошад.
17) Харитаи роҳсозӣ
1. Кашф: маҷмӯи/ченакҳои интиқодӣ, хатарҳо, соҳибон; харитаи вобастагӣ.
2. Шартномаҳо ва санҷишҳо: схемаҳо/қоидаҳоро дар CI ба расмият дароред; нашр луғат.
3. Idempotency: аз нав сабт кардани қубурҳои калидӣ дар боло/якҷоя, танӯраи атомӣ.
4. Сабти хом ва насл: қабати тағйирнопазир, метамаълумоти пурра, нишонаи обӣ ва.
5. Механикаи таъмир: backfill/repay, dedup, фишурдасозӣ, карантин; муҳаррики сиёсат.
6. Мушоҳида ва SLO: панелҳои босифат, огоҳиҳо, лентаи афзалиятнок.
7. Маълумот дар бораи бесарусомонӣ ва омӯзиш: машқҳои мунтазам + runbook 'ва.
8. Оптимизатсияи хароҷот: ҳисобкунии афзоянда, афзалияти тиреза.
18) Рӯйхати назоратии пеш аз озодкунӣ
- Шартномаҳои маълумот ва санҷишҳои сифат маҷмӯи муҳимро фаро мегиранд.
- Қубурҳо idempotent мебошанд; ӯҳдадориҳои атомӣ ва нуқсонҳои атомӣ мавҷуданд.
- Backfill/repay ва карантин танзим карда шудаанд, сиёсати шиддат таҳия карда мешавад.
- Тару тоза/Мукаммалӣ/Ягонагӣ/Нишондиҳандаҳо ва огоҳиҳо дар prod.
- Аудити таҳрир/таъмирро дар бар мегирад; нусхаҳои формулаҳо ва мағозаҳоро нигоҳ медорад.
- DSAR/Нигоҳдорӣ барои таъмир ва камбудиҳо риоя карда мешавад.
- Дафтарчаи корӣ мавҷуд аст ва машқҳои гузаронидашуда, MTTR-ҳадафи собит.
- Арзиши бозпардохт аз ҷониби посбонони буҷа маҳдуд аст.
19) Намунаҳои амалҳои худкор (қолабҳо)
"Нокомии тару тозаи равзана X" → backfill (last_2h) → агар дар 30 дақиқа набошад § карантин + саҳифаи занг.
"Duplicate txn_id хӯшае" → шомили қатъии dedup + мусолиҳаи манбаъ → гузориши сабабро дар бар мегирад.
"MINOR schema change" → майдони ҳисобшудаи пешфарзро тавлид кунед → агрегатҳои барқарорсозӣ.
"Аз даст додани партияҳо" → барқарор кардан → санҷиши маблағи чек аз объекти санҷидашуда.
Сатри поён: маълумоти худидоракунии шифобахш ин як "скрипти таъмир" нест, балки меъмории система: шартномаҳои расмӣ, қубурҳои бекорхобида, сабти боэътимод, механикаи худкори таъмир ва риояи шаффоф бо SLO-ҳои қатъӣ. Чунин система на танҳо худро таъмир мекунад, балки ҳодисаҳоро ба рӯйдодҳои идорашаванда бо хароҷоти фаҳмо ва вақти барқароршавӣ табдил медиҳад.