Bosh sahifa Wiki Global table

Global table

Global table — ma’lumotni bir nechta geografik regionda replikatsiya qilib, har regiondagi ilovalarga yaqin o‘qish va ayrim arxitekturalarda lokal yozish imkonini beradigan taqsimlangan jadvaldir. Atama Amazon DynamoDB Global Tables bilan keng ishlatiladi, ammo boshqa platformalarda o‘xshash nom bo‘lishi mumkin. Asosiy masalalar replikatsiya kechikishi, conflict resolution, data residency va region failoverdir.

Multi-region replikatsiya

Har regionda jadval replica si mavjud. Ilova nearest region endpointiga murojaat qiladi. Yozuv change log orqali boshqa regionlarga asinxron uzatilishi mumkin. Normal holatda bu past latency beradi, lekin WAN partition yoki region outage paytida replika vaqtincha farqlanadi.

Single-writer model barcha write ni bitta home regionga yo‘naltirib conflictni kamaytiradi, ammo uzoq client uchun write latency va home region availabilityga bog‘liqlik yaratadi. Multi-writer har regionda write qabul qiladi, lekin ayni item concurrent yangilanganda deterministik merge siyosatini talab qiladi.

Conflict resolution

Last-writer-wins timestamp yoki server versiyasiga qarab bittasini tanlaydi. Ikki foydalanuvchi turli fieldni yangilasa ham butun item darajasidagi LWW bir o‘zgarishni yo‘qotishi mumkin. Field-level merge, CRDT yoki application conflict log biznes ma’nosini yaxshiroq saqlaydi, lekin murakkabroq.

Clock skewka tayangan client timestamp xavfli. Platforma logical version yoki server time ishlatishi mumkin. Conditional write bir regionda muvaffaqiyatli bo‘lsa, boshqa regiondagi concurrent condition ham propagationdan oldin muvaffaqiyatli bo‘lishi mumkin; global uniqueness yoki inventory uchun qo‘shimcha koordinatsiya zarur.

Consistency

Mahalliy replica strong readni qo‘llashi mumkin, ammo boshqa regiondagi yaqindagi write hali kelmagan bo‘lishi ehtimoli bor. Cross-region linearizability WAN consensus va yuqori latency talab qiladi. Ko‘p global table eventual cross-region consistency beradi. Session routing va version token read-your-writesni kuchaytirishi mumkin.

Replication lag median emas, p99 va outage davrida o‘lchanadi. Ilova stale data bilan xavfsiz ishlashi, versionni tekshirishi va conflictni kuzatishi kerak. Cache invalidation ham regional event propagationga bog‘liq.

Region failover

Active-active tizimda trafik sog‘lom regionga yo‘nalishi mumkin, lekin dependencylar, secret, queue va downstream ham tayyor bo‘lishi kerak. DNS TTL va client connection pool failover vaqtiga ta’sir qiladi. Eski region qaytganda backlog replika qilinadi va conflictlar ko‘payishi mumkin.

Failover mashqida faqat read emas, write, conditional operation, stream consumer va key management sinovdan o‘tadi. Regionni o‘chirishdan oldin replication health va data loss ehtimoli baholanadi. Backup global replika o‘rnini bosmaydi, chunki mantiqiy delete barcha regionga tarqaladi.

Xarajat va boshqaruv

Har write bir nechta regionda storage va write capacity sarflaydi, cross-region transfer ham narxga kiradi. Secondary index, TTL delete va stream hodisalari platformaga qarab replika qilinadi. Capacity har regionda burstni qabul qilishi kerak, aks holda lag oshadi.

Data residency qonuni ayrim recordning regiondan chiqishini cheklashi mumkin. Global jadval barcha ma’lumotni barcha regionga ko‘chirishga mos kelmaydi; tenant yoki data class bo‘yicha alohida table kerak bo‘lishi mumkin. Encryption key, audit va access policy har regionda izchil boshqariladi.

Global table loyihasida ma’lumot rezidentligi va shaxsiy ma’lumot qonunlari ham texnik topologiyaga ta’sir qiladi. Har bir yozuvni barcha mintaqaga ko‘chirish qonuniy yoki iqtisodiy jihatdan mos bo‘lmasligi mumkin. Mintaqaviy kalit, selektiv replikatsiya va audit siyosati arxitektura boshida belgilanadi.

Bog‘liq tushunchalar

Multi-region, Replication, Eventual consistency, Conflict resolution, Global database, Failover, Data residency