GH GambleHub

SysteHot/Warm/Cold

1) Ինչու՞ կիսել տվյալները Hot/Warm/Cold-ում։

Մեկ կլաստերի մեջ գոյություն ունեն տարբեր հասանելիության արտոնագրեր 'ինտերակտիվ հարցումներ թարմ տվյալների համար, վերլուծաբան վերջին ժամանակահատվածներում և արխիվին հազվագյուտ հասանելիություն։ Մակարդակների բաժանումը թույլ է տալիս

Օպտիմիզացնել արժեքը 'արագ և թանկ շերտը միայն «տաք» աշխատանքային հավաքածուի համար։

Պահել SLO: p95/throughput-ը առցանց, ավելի երկար dedline պատմության համար։

Պարզեցնել մեծացումը 'հորիզոնական մեծացնել էժան շերտերը առանց «ռազմաճակատի»։

Նվազեցնել ռիսկերը 'հրաժարվելու/վերարտադրման տարբեր օրինակներ, պաշտպանության անկախ քաղաքականություններ։

Կարճ

Hot-ը ամենաարագ, հաճախակի ընթերցանությունն/ձայնագրությունը, նվազագույն լատենտ։

Warm-ը ավելի քիչ փոխվում է, շատ ընթերցումներ ժամանակի միջակայքում։

Cold-ը արխիվը, էժան պահպանումը, բարձր TTFB-ը, դանդաղ վերականգնումը։

2) Ավելցուկը և SLO մակարդակները

Hot

Հասանելիություն: Միլիսեքսունդներ (p95-5-20 մզ KV/ինդեքսների վրա, 100-300 մզ բարդ պահանջների վրա)։

Վիրահատություններ ՝ հաճախակի ups.ru/append, ինդեքսավորում, OLTP/strim-ingest։

Փոխադրողները ՝ NVMe/SSD, հիշողությունը, արագ ցանցը։

Կրկնօրինակումը 'բարձրացված (օրինակ, RF = 3) RPO 240, RTO րոպեների համար։

Warm

Հասանելիություն 'տասնյակ-հարյուրավոր միլիոնավոր/վայրկյաններ։

Վիրահատությունները 'կարդալը «պատուհանի», բատչերը, OLAP-ը թարմ պատմության մեջ (7-90 օր)։

Փոխադրողները ՝ SATA SSD/արագ HDD/օբյեկտի պահեստ տեղական քեշով։

Կրկնօրինակումը 'չափավոր (RF = 2), թեմը միացված է։

Cold

Հասանելիություն 'վայրկյաններ-ժամացույց; հաճախակի մուտք, «retrieve-and-scan»։

Վիրահատություններ 'հազվագյուտ ընթերցումներ, կարգավորող (retenshn)։

Փոխադրողները ՝ օբյեկտի/արխիվային (S3 Glacier/Deep Archive, Azure Archive, GCS Coldics)։

Կրկնօրինակումը 'երկրորդային/միջտարածաշրջանային, WORM/Legal Hold։

3) Տիպային տեխնոլոգիաները շերտերով

Hot: PostgreSQL (OLTP, partitions), MySQL/InnoDB, Redis/Memcached (кэш), Elasticsearch/Opensearch hot-nodes, ClickHouse горячие партиции, Kafka local log.

Warm: ClickHouse-ը հսկայական պահեստավորում է, BigQuery/Winowflake վերջին կուսակցությունները, Elasticsearch warm-nodes, S3 + Presto/Trino, Tiered storage (Kafka/Pulsar)։

Cold: S3/Glacier, GCS Nearts/Coldive/Archive, Azure Cool/Archive, HDIV արխիվներ, bekaps։

4) Կյանքի ցիկլի քաղաքականությունը (ILM) և ավտոմատացումը

4. 1 Հասկացություններ

Ժամանակի կուսակցումը (օր/շաբաթ/ամիս) շերտերի միջև թարգմանության հիմնական լծակն է։

ILM կանոնները ՝ rollover (ծավալի/տարիքի), shrink/merge, freeze, prodete։

Դեդուպլիկացիան և ագրեսիան 'ներառել warm/cold, խուսափելով CPU-նեղ տեղերից hot-ում։

4. 2 Օրինակներ

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 (ուրվագիծ)

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 կուսակցությունը ամսաթվով

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) Արժեքի և արտադրողականության մոդելավորում

5. 1 Պարզ մոդել TCO

«TCO = CapEx/OpEx կրողներ + ցանցը (egress) + CPU ագրեսիայի/սկանի վրա + կառավարել + DR/կրկնօրինակումը»։

5. 2 Լատենտության և գնի հավասարակշռություն

Տվյալների 5-20 տոկոսը տաք փաթեթը տալիս է հարցումների 80-95 տոկոսը։

Նպատակն է պահպանել աշխատանքային սեթը Hot/cashe-ում (CPU/RAM/NVMe), մնացած տեղադրումը Warm/Cold-ում։

5. 3 Մետրիկներ

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) Կուսակցությունը, ինդեքսավորումը և քեշինգը

Ժամանակի կուսակցությունները + secondary ինդեքսներ են «թարմ» կտրվածքների համար։

Հարցումների ոսկե կանոնը 'ֆիլտրը ժամանակի առաջին, ապա ընտրողական բանալիները։

Քեշը հիերարխիկ է 'in-proc no Redis dedge; pin-kashi տաք կոդերի/ագրեգատների համար։

Bloom ֆիլտրերը/skip ինդեքսները (ClickHouse, Parquet) նվազեցնելու համար warm/cold ընթերցումները։

7) Վերափոխում, անկայունություն և DR

Hot: սինխրոն կրկնօրինակումը (անջատողականություն), RPO 380, արագ ֆեյլերը։

Warm: Ասինխրոն միջմայրցամաքային/միջտարածաշրջանային կրկնօրինակը; RPO րոպե։

Cold: միջտարածաշրջանային WORM (Write Once Read Many), Legal Hold-ի համար։

DR պլանները ՝ run-գրքեր «սառը» արխիվների վերականգնման համար (ժամացույց), պարբերական fire-medills։

8) Անվտանգություն և համապատասխանություն

PII/PCI: կոդավորումը հանգույցի մեջ (KFC), հիմնական քաղաքականությունները յուրաքանչյուր փուլում, դիմակավորում ներքև։

Retenshn-ը և հեռացումը 'cold-ի ավտոմատ ժամանակը, ապացուցված լվացումը (erportreports)։

Իրավասություններ 'պահպանումը տարածաշրջանում (EU-only, RU-only, BY-region և այլն), bucket-ի գեո մեկուսացումը։

9) Օգտագործման արտոնագրեր

9. 1 Լոգա և հեռուստատեսություն

Hot: վերջին 24-72 ժամ Elasticsearch/ClickHouse-ում NVMe-ում։

Warm: 30-180 օր SSD/HDD + Parquet-ում։

Cold: > 180 օր Glacier-ում; Trino/Presto «պահանջով»։

9. 2 Գործարք/օրդեր

Hot: OLTP BD (PostgreSQL/MySQL) կարճ պատմությամբ։

Warm: BI-ի համար դենորմալիզացված սարքավորում։

Կոլդը 'իրավաբանական արխիվը, էքսպորտը օբյեկտի պահարանում։

9. 3 ML-ficestore

Hot: առցանց ֆիչին Redis/low-latency DB-ում։

Warm: offfline fichi կոլոնայում/օբյեկտի մեջ։

Cold: սկզբնական թվասեթները, versioned (Delta/Iceberg/Hudi)։

10) Փոխազդեցություն կլաստերների և Kubernetes հետ

Storts Class-ը տեղադրեք tier: «gold-nv.ru» (hot), «silver-ssd» (warm), «bronze-object» (cold)։

Պլանավորեք պուլներ (tainae/labels) hot/warm/cold worcloads-ի տակ։

Sidecar-kashe (օրինակ, wwww.al SSD cache) նախքան օբյեկտի պահանջները։

Օրինակ PVC

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

11) Դիտողականությունը

Dashbords: Բայթ/հարցումների բաշխումը tier, latency per tier, warm/cold, արժեքը/ամիս։

Ալբերտները 'hit-ratio hot, promotion-rate (արդյո՞ ք տաք ծավալը), TTFB-ի աճը warm-ում, cold դանդաղ վերականգնումը (SLO breach)։

12) Anti-patterna

«Ամեն ինչ hot» 'ավելցուկ արժեքը, վերագրանցելով IO-ն։

«Խորը ցուրտ առանց ինդեքսների» 'էժան պահել, թանկ կարդալ։ արագ կտրելու ուղիներ չկան։

«Ոչ ILM» 'ձեռքով փոխանցումներ, մարդկային սխալներ։

«Միասնական կրկնօրինակման քաղաքականությունը» բոլոր մակարդակների համար 'ավելցուկ և անհավասար RPO։

«Փաթեթների/արխիվային հարցումների խառնուրդը» հաշվարկների մեկ բաժակում 'փոխադարձ ազդեցություն։

«Անմոռանալի egress» -ը կոլդ ամպերից 'անակնկալներ։

13) Ներդրման չեկի ցուցակ

  • Դասակարգեք տվյալների հավաքածուները 'SLA, մուտքի հաճախականությունը, պահեստավորման պահանջները։
  • Ընտրեք կրիչներ և շարժիչներ շերտի վրա (NVMe/SSD/HDD/Object/Archive)։
  • Նախագծեք կուսակցությունները (ժամանակ/բանալին), ինդեքսները և կոդերը (Parquet/ORC/Delta)։
  • ILM կանոնները (rollover/transport/expire) և ավտոմատիզացված։
  • Միացրեք թեմը/կոդավորումը (ZSTD/LZ4; cold-ում ավելի ուժեղ է)։
  • Կրկնօրինակումը/RPO/RTO և DR ընթացակարգերը։
  • Պարեք kash հիերարխիա և pin տաք ագրեգատների համար։
  • Արժեքավոր/լատենտ և ալտերտեր tier։
  • Անվտանգության քաղաքականությունը (KHL, իրավաբանական ռետեններ, գեո-իզացում)։
  • Պարբերաբար վերանայեք թարգմանությունների շեմերը (seasonality, աճը)։

14) FAQ

Q 'Ինչպե՞ ս որոշել սահմանները hot-warm-ի միջև։

A 'Հարցումների իրական բաշխմամբ' «տաք աշխատանքային սեթ» = վերին 5-20% ռուբլիներ/կուսակցություններ, որոնք կազմում են հարցումների 80-95 տոկոսը։ Այն ամենը, ինչ չի հասնում, warm թեկնածուն է։

Q 'Կարո՞ ղ եք ուղղակիորեն կարդալ զանգից։

Այո, բայց պլանավորեք SLA-ը մեկ/ժամվա ընթացքում և egress-ի արժեքը։ ավելի հաճախ ավելի շահավետ է վերացնել հատվածը warm (staging) նախքան վերլուծությունը։

Q 'Ի՞ նչ ընտրել վերլուծաբանների համար 30-180 օր։

A: Կոլոնիկական բջիջները (Parquet/ORC) օբյեկտի վրա + հարցման շարժիչ (Trino/Presto/ClickHouse) քեշով; ինդեքսներ/skip-կոդեր IO խնայելու համար։

Q 'Ինչպե՞ ս խուսափել «փոթորիկներից» կոլդից տեղափոխվելիս։

A: Օգտագործեք wwww.fetch/www.pare-jobs, limits, cardirured ժամանակ, օգտագործեք request-coalescing և pin-cashi warm։

15) Արդյունքները

Hot/Warm/Cold-ի ճարտարապետությունը մուտքագրման արժեքի համապատասխանությունն է, գումարած կյանքի ավտոմատ կառավարումը։ Պարզ SLO-ը շերտերով, և ILM-ով, խելացի կրկնօրինակումը և քեշի հիերարխիան թույլ են տալիս պահել «տաք» արագ, «տաք» 'հասանելի, իսկ «սառը»' էժան և անվտանգ։

Contact

Կապ հաստատեք մեզ հետ

Կապ հաստատեք մեզ հետ ցանկացած հարցի կամ աջակցության համար։Մենք միշտ պատրաստ ենք օգնել։

Telegram
@Gamble_GC
Սկսել ինտեգրացիան

Email-ը՝ պարտադիր է։ Telegram կամ WhatsApp — ըստ ցանկության։

Ձեր անունը ըստ ցանկության
Email ըստ ցանկության
Թեմա ըստ ցանկության
Նամակի բովանդակություն ըստ ցանկության
Telegram ըստ ցանկության
@
Եթե նշեք Telegram — մենք կպատասխանենք նաև այնտեղ՝ Email-ի дополнение-ով։
WhatsApp ըստ ցանկության
Ձևաչափ՝ երկրի կոդ և համար (օրինակ՝ +374XXXXXXXXX)։

Սեղմելով կոճակը՝ դուք համաձայնում եք տվյալների մշակման հետ։