GH GambleHub

سیاست های نگهداری و نگهداری

1) اصول

1. هدف و به حداقل رساندن. ما دقیقا آن را ذخیره می کنیم و دقیقا به همان اندازه که برای اهداف پردازش نیاز داریم.
2. سیاست به عنوان کد نگهداری یک سیاست اجرایی است، نه PDF.
3. دفاع در عمق TTL/ILM + رمزگذاری + ممیزی + حقوقی نگه دارید.
4. برگشت پذیری و اثبات حذف قابل اثبات است: سیاهههای مربوط به عمل، خرد کردن رمزنگاری، گزارش انطباق.
5. هزینه و کربن آگاه است. نگهداری طول می کشد به حساب $/GB-ماه و رد پای کربن از ذخیره سازی/خروج.

2) طبقه بندی داده ها و «نقشه Retenschen»

شکستن مجموعه به کلاس با اهداف و زمینه های قانونی:
  • عملیاتی (OLTP): سفارشات، پرداخت ها، جلسات.
  • تحلیلی (DWH/تاریخ): حوادث، حقایق ورود به سیستم، برش.
  • شخصی (PII/امور مالی/بهداشت): نیاز به شرایط خاص و حقوق افراد.
  • فنی: سیاهههای مربوط، معیارها، مسیرهای پیاده روی، مصنوعات CI.
  • اسناد/رسانه ها: WORM/بایگانی/legasi.

برای هر کلاس، مجموعه: مالک، هدف، چارچوب قانونی، تاریخ، سطح حفاظت، ذخیره سازی فعلی و هدف.

3) چرخه عمر داده ILM

نوار نقاله معمولی:

1. مصرف (داغ) → NVMe/SSD، میزان درخواست بالا.

2. گرم → کمتر خوانده شده، فشرده سازی، فرمت های ستون.

3. سرد/بایگانی → شیء/نوار، دسترسی طولانی.

4. پاک کردن/حذف → حذف تضمین شده (از جمله کپی/پشتیبان گیری).

نمونه ای از مشخصات ILM (YAML):
yaml dataset: events_main owner: analytics purpose: "product analytics"
classification: "pseudonymized"
lifecycle:
- phase: hot; duration: 7d; storage: nvme; format: row
- phase: warm; duration: 90d; storage: ssd; format: parquet; compress: zstd
- phase: cold; duration: 365d; storage: object; glacier: true
- phase: purge; duration: 0d privacy:
pii: false dp_delete_window: 30d # SLA on personal deletions if ligaments appear

4) سیاست ها به عنوان کد (طرح های مفید)

4. 1 سیاست پذیرش (برچسب های مورد نیاز/TTL)

yaml policy: require-retention-tags deny_if_missing: [owner, purpose, classification, retention]
default_retention:
logs:  "30d"
traces: "7d"
metrics:"90d"

4. 2 دروازه در CI/CD (Rego) - ممنوعیت استقرار بدون بازگشت

rego package policy. retention deny[msg] {
some d input. datasets[d].retention == ""
msg:= sprintf("Retention missing for dataset %s", [d])
}

4. 3 S3/object (قطعه چرخه عمر)

yaml
Rules:
- ID: logs-ttl
Filter: { Prefix: "logs/" }
Transitions:
- { Days: 7, StorageClass: STANDARD_IA }
- { Days: 30, StorageClass: GLACIER }
Expiration: { Days: 180 }
NoncurrentVersionExpiration: { NoncurrentDays: 30 }

5) حفظ در موضوعات و صف

کافکا:
  • گفت: خانم/حفظ. بایت - حفظ پنجره.
  • تراکم ('پاکسازی. policy = compact ') - آخرین مقدار کلید را ذخیره کنید.
  • ذخیره سازی چند لایه - ما «دم» را به یک گالری تیراندازی سرد می بریم.
  • DLQ یک نگهداری جداگانه و TTL است.
به عنوان مثال:
properties cleanup. policy=delete,compact retention. ms = 604800000 # 7d for tail removal
min. cleanable. dirty. ratio=0. 5 segment. ms=86400000
گارانتی ها:
  • حفظ موضوع کلیدی را ≈ پنجره کسب و کار پخش/محاسبه مجدد تعریف کنید.
  • برای رویدادهای صورتحساب/حسابرسی، نگهداری جداگانه طولانی یا WORM.

6) پایگاه داده و نگهداری

رابطه ای:
  • پارتیشن بندی بر اساس تاریخ/محدوده، جدا کردن و رها کردن احزاب قدیمی.
  • فیلدهای تاریخ - شاخصها برای درخواستهای TTL.
  • جداول زمانی (نسخه سیستم) + سیاست های پاکسازی نسخه های قدیمی تر.
طرح SQL (PostgreSQL):
sql
-- Monthly instalments
CREATE TABLE audit_events (id bigserial, occurred_at timestamptz, payload jsonb) PARTITION BY RANGE (occurred_at);
-- Cleaning over 365 days
DELETE FROM audit_events WHERE occurred_at < now() - interval '365 days';
VACUUM (FULL, ANALYZE) audit_events;
NoSQL/سری زمانی:
  • TTL در سطح کلیدی (شاخص TTL MongoDB، Redis 'EXPIRE'، Cassandra TTL).
  • Downsampling برای معیارها (خام 7d → دانه 90d → طول 365d).
  • سیاست های نگهداری در TSDB (نمایش های مادی/ClickHouse با dedup/aggregation).

7) سیاههها، معیارها، مسیرهای پیاده روی

سیاهههای مربوط: زمینه های محدود، ماسک PD، TTL 7-30d، آرشیو 90-180d.
معیارها: فرکانس بالا خام - 7-14d ؛ نمونه (5 متر/1 ساعت) - 90 تا 365д.
مسیرهای پیاده روی: نمونه برداری دم و نگه داشتن «جالب» (اشکالات/دم) طولانی تر.

سیاست (مثال):
yaml observability:
logs:  { ttl: "30d", archive: "90d", pii_mask: true }
metrics: { raw: "14d", rollup_5m: "90d", rollup_1h: "365d" }
traces: { sample: "tail-10%", ttl: "7d", error_ttl: "30d" }

8) حذف: انواع و ضمانت

Logical (soft-delete): علامت گذاری یک رکورد مناسب برای بازیابی، متناسب با «حق حذف» نیست.
فیزیکی (حذف سخت) - حذف واقعی داده ها/نسخه ها/کپی ها.
رمزنگاری (رمزنگاری پاک کردن): حذف/جایگزینی کلید های رمزگذاری، پس از آن داده ها بازسازی نمی شود.
Cascade: حذف پایان به پایان مشتقات (caches، indexes، analytics).

گردش کار حذف شخصی (شبه):

request → locate subject data (index by subject_id) → revoke tokens & unsubscribe jobs → delete in OLTP → purge caches → enqueue erasure in DWH/lakes → crypto-shred keys (per-tenant/per-dataset) → emit audit proof (receipt)

9) حق حذف، نگهداری قانونی و کشف الکترونیکی

حق حذف/اصلاح: SLA اعدام (به عنوان مثال، ≤30 روز)، اقدامات ردیابی، رسید.
نگه حقوقی: در درخواست قانونی - توقف حذف برای مجموعه/کلید مشخص شده ؛ سیاست اولویت بیش از TTL.
eDiscovery: کاتالوگ داده ها، جستجوی متن کامل/ویژگی مصنوع، صادرات در فرمت های سازگار.

نمونه ای از مارک حقوقی (YAML):
yaml legal_hold:
dataset: payments scope: ["txn_id:123", "user:42"]
from: "2025-10-31"
until: "2026-03-31"
reason: "regulatory investigation"

10) پشتیبان گیری در مقابل آرشیو در مقابل WORM

پشتیبان گیری - برای بازیابی از دست دادن/آسیب ؛ بازگشت کوتاه، RTO سریع.
بایگانی - نگهداری طولانی مدت برای حسابرسی/تجزیه و تحلیل، ارزان، دسترسی طولانی.

WORM - رسانه های غیر قابل تغییر برای انطباق (مالی/گزارش) ؛ سیاستهای «یک بار بنویس، چندین بار بخوان»

قوانین و مقررات:
  • نسخه پشتیبان را به عنوان «بایگانی قرن ها» حساب نکنید.
  • تمرینات بازیابی (DR روز)، زمان و گزارش کامل.
  • دایرکتوری پشتیبان گیری با نگهداری، رمزگذاری و کلید به طور جداگانه از ذخیره سازی.

11) حریم خصوصی و ناشناس

Aliasing: PII تاخیر اتصال از طریق جدول کلید (اجازه می دهد تا رمزنگاری پاک کردن توسط کلید).
ناشناس: تکنیک های غیر قابل برگشت (k-ناشناس، سر و صدا، تعمیم) ؛ روش سند، خطر شناسایی مجدد و تاریخ انقضا.

12) نظارت بر انطباق و گزارش

پانل های کنترل: نسبت مجموعه داده ها با نگهداری معتبر، حجم توسط مراحل ILM، خطاهای حذف.
هشدارها: بیش از حجم هدف در خط تیره داغ، «آویزان» حذف انقضای حقوقی نگه دارید.
گزارش ها: حسابرسی حذف ماهانه (تعداد درخواست ها، مدت متوسط، شکست ها)، چاپ نسخه خرد شده.

13) ادغام در فرایندها: دروازه ها و بررسی ها

Design-gate: مجموعه داده های جدید بدون «مالک/هدف/نگهداری» بررسی نمی شود.
Release-gate: مهاجرت هایی که بدون مالک/توجیه نگهداری را افزایش می دهند مسدود می شوند.
هزینه دروازه: حجم در گرم/گرم بیش از بودجه - باعث سفت شدن ILM می شود.
امنیت دروازه: ممنوعیت ورود PD در سیاهههای مربوط/مسیرهای پیاده روی بدون پنهان کردن و TTL.

14) ضد الگوهای

«ما همه چیز را برای همیشه نگه می داریم - ناگهان مفید خواهد بود».
TTL های سخت افزاری در برنامه های کاربردی که در سیاست ها ارائه نشده اند.
PD در سیاهههای مربوط و آثار بدون ماسک/TTL/حذف.
حذف ناقص (سمت چپ در حافظه پنهان/DWH/پشتیبان گیری).
عدم برگزاری قانونی - پاک کردن اطلاعات تحت بررسی.
یک کلید رمزنگاری مشترک برای همه چیز - غیر ممکن است به نقطه «رمزنگاری پاک کردن».
مشاهده پذیری صفر: «ما معتقدیم که حذف شده ایم»، اما هیچ مدرکی وجود ندارد.

15) چک لیست معمار

1. برای هر مجموعه داده یک مالک، هدف، طبقه بندی، نگهداری، سطح ذخیره سازی وجود دارد ؟

2. آیا سیاست های ILM/TTL به عنوان کد اعلام شده و به طور خودکار اعمال می شود ؟

3. PDs در سیاهههای مربوط/آهنگ ماسک; خارج از مجموعه «سفید» ممنوع است ؟

4. آیا فرآیندهای حذف شخصی (SLA، حسابرسی، رسید) وجود دارد ؟

5. رمزنگاری پاک کردن ممکن است (در هر مستاجر/در هر کلید مجموعه داده, KMS/چرخش)?

6. پشتیبان گیری: برنامه، رمزگذاری، تست بازیابی، کلید های فردی ؟

7. حقوقی برگزاری/eDiscovery: پشتیبانی, غلبه بر TTL, سیاهههای مربوط فعالیت حفظ?
8. Kafka/صف: حفظ/تراکم/tiering مشخص, DLQ سیاست های جداگانه?

9. معیارها و هشدارها برای انطباق با Retenschen و حجم در گالری های تیراندازی پیکربندی شده اند ؟

10. آیا بررسی ها و دروازه ها در SDLC مسدود کردن مصنوعات بدون Retenschen ؟

16) دستور العمل های کوچک

16. 1 ClickHouse: «قطع دم» بیش از 180 روز

sql
ALTER TABLE events DELETE WHERE event_date < today() - 180;
OPTIMIZE TABLE events FINAL;

16. 2 Redis: TTL и تنبل پاکسازی

bash
SET session:123 value EX 3600
CONFIG SET maxmemory-policy allkeys-lru

16. 3 نمونه برداری دم برای مسیرهای پیاده روی

yaml tail_sampling:
policies:
- name: keep-errors-and-slow latency_threshold_ms: 500 status_codes: ["5xx"]
rate_limit_per_min: 5000 default_ttl: "7d"

16. 4 رمزنگاری پاک کردن (ایده)


keys:
dataset: users_pii key_id: kms://pii/users/tenant-42 erase(user_id=42):
rotate_or_destroy (key_id) # inability to restore former purge_indexes blocks ("user _ id = 42")
audit("crypto-erasure", user_id)

نتیجه گیری

سیاست های نگهداری «اسکلت» پلت فرم داده های شما هستند: آنها توصیف می کنند که کلاس های مختلف داده ها چه مدت زندگی می کنند، جایی که آنها در هر لحظه هستند، چگونه در طول زمان ارزان تر می شوند و زمانی که آنها بدون ردیابی ناپدید می شوند - قانونی، شفاف و قابل اثبات. نگهداری یک سیاست مانند کد، اتصال ILM با امنیت و هزینه، فعال کردن قابلیت مشاهده و دروازه - و شما یک سیستم است که هر دو موثر، سازگار و آماده برای رشد است.

Contact

با ما در تماس باشید

برای هرگونه سؤال یا نیاز به پشتیبانی با ما ارتباط بگیرید.ما همیشه آماده کمک هستیم!

شروع یکپارچه‌سازی

ایمیل — اجباری است. تلگرام یا واتساپ — اختیاری.

نام شما اختیاری
ایمیل اختیاری
موضوع اختیاری
پیام اختیاری
Telegram اختیاری
@
اگر تلگرام را وارد کنید — علاوه بر ایمیل، در تلگرام هم پاسخ می‌دهیم.
WhatsApp اختیاری
فرمت: کد کشور و شماره (برای مثال، +98XXXXXXXXXX).

با فشردن این دکمه، با پردازش داده‌های خود موافقت می‌کنید.