GH GambleHub

Hot/Warm/Cold saqlash joylari

1) Nima uchun ma’lumotlarni Hot/Warm/Cold ga bo’lish kerak

Bir klasterda turli xil kirish patternlari mavjud: yangi ma’lumotlarga interaktiv so’rovlar, so’nggi davrlar bo’yicha tahlillar va arxivga kamdan-kam kirish. Darajalarga boʻlish quyidagilarga imkon beradi:
  • Narxni optimallashtirish: tezkor va qimmat qatlam faqat «issiq» ish qabuli uchun.
  • SLOga rioya qilish: p95/throughput onlayn, tarix uchun uzoqroq muddatlar.
  • Ko’lamni soddalashtirish: «front» ni qizdirmasdan arzon qatlamlarni gorizontal ravishda ko’paytirish.
  • Xavflarni kamaytirish: turli rad etish/replikatsiya domenlari, mustaqil himoya siyosati.
Qisqacha:
  • Hot - eng yangi, tez-tez oʻqish/yozish, minimal latentlik.
  • Warm - kamroq o’zgaradi, vaqt oralig’ida ko’p o’qish.
  • Cold - arxiv, arzon saqlash, yuqori TTFB, sekin tiklanish.

2) Darajalar bo’yicha profillar va SLO

Hot

Kirish: millisekundlar (KV/indekslarda p95 ≤ 5-20 ms; murakkab so’rovlarda 100-300 ms ≤).
Operatsiyalar: tez-tez upsert/append, indeksatsiya, OLTP/strim-ingest.
Tashuvchilar: NVMe/SSD, xotira, tezkor tarmoq.
Replikatsiya: RPO ≈ 0, RTO daqiqalari uchun yuqori (masalan, RF = 3).

Warm

Kirish: o’nlab-yuzlab millisekund/soniya.
Operatsiyalar: «deraza», batchi, yangi tarix bo’yicha OLAP o’qish (7-90 kun).
Tashuvchilar: SATA SSD/tezkor HDD/lokal keshli obyekt saqlovchisi.
Replikatsiya: oʻrtacha (RF = 2), kompresssiya yoqilgan.

Cold

Kirish: soniya-soat; tez-tez offline-kirish, «retrieve-and-scan».
Operatsiyalar: kamdan-kam o’qish, tartibga soluvchiga muvofiqlik (retenshn yillari).
Tashuvchilar: obyekt/arxiv (S3 Glacier/Deep Archive, Azure Archive, GCS Coldline).
Replikatsiya: mintaqaviy/mintaqalararo, WORM/Legal Hold.

3) Qatlamlar bo’yicha namunaviy texnologiyalar

Hot: PostgreSQL (OLTP, partitions), MySQL/InnoDB, Redis/Memcached (кэш), Elasticsearch/Opensearch hot-nodes, ClickHouse горячие партиции, Kafka local log.
Warm: ClickHouse, BigQuery/Snowflake, Elasticsearch warm-nodes, S3 + Presto/Trino, Tiered storage (Kafka/Pulsar).
Cold: S3/Glacier, GCS Nearline/Coldline/Archive, Azure Cool/Archive, arxivning HDFS, uzoq muddatli arxivlar.

4) Hayot sikli siyosati (ILM) va avtomatlashtirish

4. 1. Konsepsiyalar

Vaqt bo’yicha partiyalashtirish (kun/hafta/oy) - qatlamlar o’rtasida o’tkazishning asosiy dastagi.
ILM qoidalari: rollover (hajmi/yoshi bo’yicha), shrink/merge, freeze, delete.
Deduplikatsiya va siqish: hot-dagi CPU tor joylaridan qochib, warm/cold-da yoqish.

4. 2 Misollar

Elasticsearch ILM (hot→warm→cold→delete)

json
{
"policy": {
"phases": {
"hot":  { "actions": { "rollover": { "max_age": "7d", "max_size": "50gb" } } },
"warm": { "min_age": "7d", "actions": { "allocate": { "require": { "box_type": "warm" } }, "forcemerge": { "max_num_segments": 1 } } },
"cold": { "min_age": "30d", "actions": { "allocate": { "require": { "box_type": "cold" } }, "freeze": {} } },
"delete":{ "min_age": "365d", "actions": { "delete": {} } }
}
}
}

S3 Lifecycle (Standard→Infrequent→Glacier→Expire)

json
{
"Rules": [{
"ID": "logs-lifecycle",
"Filter": { "Prefix": "logs/" },
"Status": "Enabled",
"Transitions": [
{ "Days": 7, "StorageClass": "STANDARD_IA" },
{ "Days": 30, "StorageClass": "GLACIER" }
],
"Expiration": { "Days": 365 }
}]
}

Kafka Tiered Storage (eskiz)

properties log. segment. bytes=1073741824 log. retention. ms=259200000 tiered. storage. enable=true remote. log. storage. system=s3 remote. log. storage. bucket=topic-archive

PostgreSQL partiyasi sana bo’yicha

sql
CREATE TABLE events (
id bigserial, at timestamptz NOT NULL, payload jsonb
) PARTITION BY RANGE (at);

CREATE TABLE events_2025_10 PARTITION OF events
FOR VALUES FROM ('2025-10-01') TO ('2025-11-01')
TABLESPACE ts_hot; -- further ALTER TABLE... SET TABLESPACE ts_warm по ILM

5) Qiymat va unumdorlikni modellashtirish

5. 1 Oddiy TCO modeli

’TCO = CapEx/OpEx tashuvchilar + tarmoq (egress) + CPU siqish/skaner + boshqaruv + DR/replikatsiya’.

5. 2 Latentlik va narx balansi

Ma’lumotlarning 5-20% ≈ issiq to’plami so’rovlarning 80-95% ni beradi.
Maqsad - ish toʻplamini Hot/keshda (CPU/RAM/NVMe) ushlab turish, qolganlarini Warm/Cold ga koʻchirishdir.

5. 3 Metrika

hit_ratio_hot, pct_hot_of_total_bytes, cost_per_TB_month{tier}, scan_cost_per_TB, time_to_first_byte{tier}, promotion_rate (cold→warm), demotion_rate (hot→warm/cold).

6) Partiyalashtirish, indeksatsiya qilish va keshlash

Vaqt bo’yicha partiyalar + «yangi» kesimlar uchun secondary-indekslar.
So’rovlarning oltin qoidasi: filtr birinchi, so’ngra selektiv kalitlar.
Ierarxik kesh: in-proc → Redis → edge; issiq kalitlar/agregatlar uchun pin-keshlar.
Bloom-filtrlar/skip-indekslar (ClickHouse, Parquet) warm/cold oʻqishni kamaytirish uchun.

7) Replikatsiya, nosozlikka chidamlilik va DR

Hot: sinxron replikatsiya (multizona), RPO ≈ 0, tezkor faylover.
Warm: zonalararo/mintaqalararo asinxron nusxa; RPO daqiqa.
Cold: WORM (Write Once Read Many), Legal Hold bilan mintaqalararo.
DR-rejalar: «sovuq» arxivlarni tiklash uchun run-kitoblar (soatlar), davriy fire-drills.

8) Xavfsizlik va muvofiqlik

PII/PCI: tinch shifrlash (KMS), har bir bosqichdagi asosiy siyosatlar, pastga ko’chirishda niqoblash.
Retenshn va oʻchirish: avtomatik muddatlar cold, isbotlanadigan oʻchirish (erase reports).
Yurisdiksiyalar: mintaqada saqlash (EU-only, RU-only, BY-region va h.k.), bucketlarni geo-izolyatsiya qilish.

9) Foydalanish patternlari

9. 1 Logi va telemetriya

Hot: Elasticsearch/ClickHouse’da NVMe’da oxirgi 24-72 soat.
Warm: S3 da SSD/HDD + Parquet uchun 30-180 kun.
Cold:> 180 kun Glacier; «talab bo’yicha» Trino/Presto orqali so’rovlar.

9. 2 Tranzaksiya/order

Hot: OLTP DB (PostgreSQL/MySQL) qisqa tarixga ega.
Warm: BI uchun denormallashtirilgan snapshotlar.
Cold: yuridik arxiv, obʼekt omboriga eksport qilish.

9. 3 ML-fichestore

Hot: Redis/low-latency DB onlayn fichlari.
Warm: ustunli/obʼektli oflayn fichlar.
Cold: dastlabki datasetlar, versioned (Delta/Iceberg/Hudi).

10) Klastyerlar va Kubernetes bilan o’zaro hamkorlik

StorageClass’gold-nvme’(hot),’silver-ssd’(warm),’bronze-object’(cold).
Pool tugunlarini (taints/labels) hot/warm/cold workloadlar uchun rejalashtirish.
Obyekt omboriga soʻrashdan oldin sidecar-keshlar (masalan, local SSD cache).

PVC misoli

yaml apiVersion: v1 kind: PersistentVolumeClaim metadata: { name: db-hot }
spec:
storageClassName: gold-nvme accessModes: [ ReadWriteOnce ]
resources: { requests: { storage: 500Gi } }

11) Kuzatish

Dashbordlar: baytlar/so’rovlarni tier, latency per tier, offload uchun warm/cold, narxi/oyi bo’yicha taqsimlash.
Alertlar: hit-ratio hot pasayishi, promotion-rate o’sishi (issiq hajm etarli bo’ladimi), TTFB ning warm ko’payishi, cold (SLO breach) ning sekin tiklanishi.

12) Anti-patternlar

«Hamma hot-da»: ortiqcha qiymat, IOni haddan tashqari qizdirish.
«Indekssiz chuqur sovuq»: arzon saqlash, qimmat o’qish; Tezkor kesish yoʻllari yoʻq.
«ILM yo’q»: qo’lda ko’chirish, inson xatolari.
Barcha darajalar uchun «Yagona replikatsiya siyosati»: ortiqcha to’lov va notekis RPO.
Bir hisoblash hovuzida «prod/arxiv so’rovlarini aralashtirish»: o’zaro ta’sir.
Cold-bulutlardan olingan «hisobga olinmagan egress»: hisobdagi kutilmagan hodisalar.

13) Joriy etish chek-varaqasi

  • Ma’lumotlar to’plamlarini tasniflang: SLA, kirish chastotasi, saqlash talablari.
  • (NVMe/SSD/HDD/Object/Archive).
  • Partiyalar (vaqt/kalit), indekslar va formatlarni (Parquet/ORC/Delta) loyihalashtiring.
  • ILM qoidalarini (rollover/transition/expire) aniqlang va avtomatlashtiring.
  • Siqish/kodlashni yoqing (ZSTD/LZ4; cold - kuchliroq).
  • RPO/RTO replikatsiyasini va DR-protseduralarini aniqlang.
  • Issiq agregatlar uchun kesh ierarxiyasi va pin moslamalarini oʻrnating.
  • Qiymat/latentlik metrikasi va tier bo’yicha alertlar.
  • Xavfsizlik siyosati (KMS, yuridik retenshnlar, geo-izolyatsiya).
  • Tarjimalar chegarasini (seasonality, oʻsish) muntazam ravishda qayta koʻrib chiqing.

14) FAQ

Q: Hot va warm chegaralarini qanday aniqlash mumkin?
A: So’rovlarning haqiqiy taqsimoti bo’yicha: «issiq ish to’plami» = 80-95% so’rovlarni ta’minlaydigan yuqori 5-20% kalitlar/partiyalar. Hamma narsa - warm uchun nomzod.

Q: To’g’ridan-to’g’ri cold dan o’qish mumkinmi?
A: Ha, lekin SLAni daqiqa/soat va egress qiymatida rejalashtiring; ko’pincha tahlil qilishdan oldin parchani warm (staging) ga qaytarish foydaliroq.

Q: Tahlilchi uchun 30-180 kun nimani tanlash kerak?
A: Obʼektdagi ustunli formatlar (Parquet/ORC) + kesh bilan soʻrov dvigateli (Trino/Presto/ClickHouse); IOni tejash uchun indekslar/skip-data.

Q: cold dan qayta tanlashda qanday qilib «isinish boʻronlaridan» qochish mumkin?
A: prefetch/prepare-jobs, limitli so’rovlardan foydalaning, vaqt bo’yicha shard qiling, warm uchun request-coalescing va pin-keshlardan foydalaning.

15) Yakunlar

Hot/Warm/Cold arxitekturasi - bu foydalanish profiliga va avtomatik hayot siklini boshqarishga mos keladi. Qatlam bo’yicha aniq SLO, partizatsiya va ILM, oqilona replikatsiya va kesh-ierarxiya «issiq» tezkor, «issiq» - arzon, «sovuq» - arzon va xavfsiz saqlash imkonini beradi.

Contact

Biz bilan bog‘laning

Har qanday savol yoki yordam bo‘yicha bizga murojaat qiling.Doimo yordam berishga tayyormiz.

Telegram
@Gamble_GC
Integratsiyani boshlash

Email — majburiy. Telegram yoki WhatsApp — ixtiyoriy.

Ismingiz ixtiyoriy
Email ixtiyoriy
Mavzu ixtiyoriy
Xabar ixtiyoriy
Telegram ixtiyoriy
@
Agar Telegram qoldirilgan bo‘lsa — javob Email bilan birga o‘sha yerga ham yuboriladi.
WhatsApp ixtiyoriy
Format: mamlakat kodi va raqam (masalan, +998XXXXXXXX).

Yuborish orqali ma'lumotlaringiz qayta ishlanishiga rozilik bildirasiz.