Datavision.pl — pakowanie i archiwizacja plików

VERA

Versioned Easy Repository Archive

Miliardy małych plików, jeden bezstanowy system konsolidacji. Deterministyczne kierowanie, niezmienne shardy, S3 jako jedyne źródło prawdy.

Zaprojektowane dla skali, w której tradycyjne magazyny obiektowe przestają być ekonomiczne. Wbudowana zgodność z SEC 17a-4, HIPAA, GDPR i SOC 2 — od pierwszego shardu.

SEC 17a-4 HIPAA GDPR Art. 17 SOC 2 S3 WORM Stateless
.vera SHARD S3
Wyzwanie

Czy to brzmi znajomo?

Każda organizacja przechowująca miliardy małych plików staje przed tym samym napięciem: koszty rosną liniowo z liczbą obiektów, a regulator wymaga lat retencji z udokumentowaną niezmiennością.

💸

Koszty rosną liniowo z liczbą obiektów

S3 ekonomicznie obsługuje obiekty MB-GB, nie KB. Miliard plików po 50 KB to nie tylko storage — to miliard wywołań LIST, GET, PUT. Faktura za API potrafi przewyższyć fakturę za samo przechowywanie danych.

🐌

Backup, replikacja, odtwarzanie — dni zamiast godzin

Każda operacja masowa wymaga miliardów wywołań API. Pełna replikacja regionu trwa tygodniami. Disaster recovery 100M plików to projekt wielomiesięczny. Każda operacja na poziomie obiektu osobno — bez konsolidacji nie ma skalowania.

⚖️

GDPR Art. 17 kontra WORM — pozorny konflikt

Regulatorzy wymagają niezmienności (S3 Object Lock COMPLIANCE). RODO wymaga prawa do usunięcia. Bez warstwy aplikacyjnej każde takie żądanie wymaga ręcznego obejścia. Audytor widzi albo złamane WORM, albo nieusunięte dane.

🗄️

Stan rozproszony zabija skalowanie

Klasyczne systemy archiwizacji potrzebują centralnej bazy mapującej plik → lokalizacja. Baza staje się wąskim gardłem, koordynatorem, single point of failure. Im więcej plików, tym większy problem. Coordination tax rośnie wykładniczo.

60–80%
Redukcja kosztów S3
Konsolidacja + kompresja
1000×
Mniej obiektów w S3
Z miliardów do milionów
<10ms
Lookup bez bazy
Deterministyczne kierowanie
100%
Integralność shardów
CRC32 + WORM + audit trail
Rozwiązanie

Jak VERA rozwiązuje te problemy

Inteligentna konsolidacja małych plików w niezmienne kontenery .vera, deterministyczne kierowanie bez bazy danych, S3 Object Lock i tombstone GDPR — wszystko w jednym systemie.

📦

Inteligentne pakowanie do shardów

Tysiące małych plików scalanych w binarne kontenery .vera zoptymalizowane pod S3. Pojedyncze obiekty S3 zamiast miliardów — backup, replikacja i lifecycle policies wreszcie działają w sensownym czasie.

1000× mniej obiektów

Range-GET zamiast pełnego odczytu

Indeks zapisany w stopce sharda. Pobranie pojedynczego pliku z miliarda to dwa wywołania S3: jedno na indeks (cache'owany), drugie na zakres bajtów. Bez ściągania całego kontenera, bez bazy zewnętrznej.

<100ms latency
🛡️

GDPR + WORM — rozwiązany konflikt

Per-shard metadata sidecar (.vera.meta) z tombstone'ami plików. Dane logicznie usunięte, fizyczny shard niezmienny. Po przekroczeniu progu — repack do nowego sharda. Audytor widzi udokumentowaną mutację, nie złamane WORM.

SLA 48h dla Art. 17
🗜️

Inteligentna kompresja zstd / lz4

Heurystyka per-plik: zstd dla danych tekstowych (3–6× ratio), pomijanie już skompresowanych (JPEG, MP4, ZIP). Bez narzutu CPU tam, gdzie kompresja nic nie da, z agresywną kompresją tam, gdzie się opłaca.

40–70% mniej miejsca
🔒

Compliance-grade od fundamentów

S3 Object Lock (COMPLIANCE), Extended Retention Management, dziennik audytu z chain hash, Ed25519/RSA PKI dla uwierzytelnienia operatorów, OpenBao/Vault dla sekretów. Bez doklejania compliance na koniec projektu.

SEC / HIPAA / GDPR / SOC 2
📈

Skalowanie poziome bez koordynatora

Tysiące jednoczesnych procesów pakujących, każdy działa niezależnie. Dystrybucja pracy przez kolejki (SQS / Kafka / RabbitMQ). Kubernetes HPA jako natywny model skalowania. Brak elekcji lidera, brak race conditions.

10 000+ plików/min
Fundament architektury

Bezstanowość jako warunek konieczny

Kluczowa właściwość VERA: brak bazy danych mapującej plik na lokalizację. Funkcja locate_shard(uid, created_at, n_bits) jest czystą funkcją — daje deterministyczny adres sharda bez koordynacji, bez konsultacji z żadnym stanem zewnętrznym.

Każdy proces — pakujący, czytający, migrujący — niezależnie wie, gdzie leży plik. Skalowanie do tysięcy worker'ów to dodanie podów do K8s, nie zmiana architektury. S3 jest jedynym źródłem prawdy. Reszta jest odtwarzalna.

Co jest trwałe — minimalny footprint
  • Shardy .vera w S3 (niezmienne, WORM)
  • Sidecary .vera.meta (tombstone GDPR)
  • Watermark migracji w bazie biznesowej
Co jest odtwarzalne — spin up gdy potrzeba
  • Worker'y pakujące (K8s CronJob / HPA)
  • API retrievera (stateless pody)
  • Cache indeksów (16 GB, rebuild z S3)
SCENARIUSZ: MIGRACJA 100M PLIKÓW
# Dzień 1 — backlog 100M plików w bazie biznesowej
$ kubectl scale deployment des-packer --replicas=100
→ 100 worker'ów startuje, każdy bierze swój slot watermarka
$ des-admin migrate --mode=continuous \
    --source=postgres://biz/files
→ Cutoff: 2026-02-01 · Page size: 10 000
→ Tempo: 12 400 plików/min · ETA: 5d 14h
# Bez koordynatora — każdy worker działa niezależnie.
# Crash poda nic nie psuje, watermark jest atomowy.
$ curl GET /api/v1/files/inv_2025_8a4f
✓ Shard zlokalizowany <10ms (deterministic routing)
✓ Range-GET → 42 KB zwrócone w 87 ms
$ kubectl scale deployment des-packer --replicas=10
✓ Skalowanie w dół · brak ponownej koordynacji
# Koszt szczytu: 100 podów × 6 dni vs constant cluster
Zastosowania

Kto potrzebuje VERA?

Rzeczywiste scenariusze dla organizacji, które muszą archiwizować miliardy małych plików przez lata, z udokumentowaną zgodnością.

🏦
Fintech i bankowość

Archiwizacja dokumentów transakcyjnych

Banki i firmy inwestycyjne muszą przechowywać miliardy PDF-ów, potwierdzeń, skanów transakcji przez 5–7 lat (SEC 17a-4, KNF). Klasyczne S3 sprawia, że sama faktura za API rośnie szybciej niż wolumen danych.

  • Skala typowa — 5 mld PDF × 50 KB ≈ 250 TB + miliardy zapytań API
  • SEC 17a-4 / KNF — niezmienność na poziomie S3 Object Lock
  • ROI — typowo 60–80% redukcji kosztów storage TCO
  • Extended Retention — legal hold per dokument bez kopiowania
🏥
Służba zdrowia

Dokumentacja medyczna i obrazy DICOM

Szpitale archiwizują setki milionów rekordów pacjentów, wyników badań, miniatur DICOM. HIPAA wymaga 6+ lat retencji z dziennikiem dostępu, RODO daje pacjentowi prawo do usunięcia danych osobowych.

  • Skala typowa — setki milionów małych plików XML/JSON/DICOM
  • HIPAA audit trail — każdy dostęp logowany, chain hash
  • RODO Art. 17 — tombstone w sidecarze, repack po progu
  • Kompresja — 70%+ redukcji dla danych ustrukturyzowanych
📡
Telekomunikacja

Szczegóły połączeń (CDR) i logi rozliczeniowe

Operatorzy generują miliardy rekordów CDR dziennie. Wymóg przechowywania 3–5 lat, dostęp punktowy na żądanie organów ścigania. Wolumen ciągle rośnie, każdy dzień to nowy backlog.

  • Wolumen — miliony plików na godzinę, skala petabajtowa
  • Kompresja — 5–10× dla danych tekstowych CDR
  • Lifecycle — automatyczne przejście S3 Standard → Glacier
  • Multi-region — niezależne strefy, brak globalnego state'u
⚖️
Administracja publiczna

Archiwa państwowe i dokumenty urzędowe

Urzędy centralne, sądy, ZUS, NFZ, instytucje skarbowe — miliardy podań, wniosków, decyzji administracyjnych. Wymóg retencji 10–50 lat, dostępność dla audytów i postępowań przez całą dekadę.

  • Retencja długa — 10–50 lat z udokumentowaną integralnością
  • Niski koszt operacyjny — open source, brak vendor lock-in
  • Transparentność — dziennik audytu dostępny dla NIK / kontroli
  • Glacier integration — automatyczne przejścia warstw cenowych
Zgodność regulacyjna

Compliance wbudowane, nie doklejone

VERA spełnia wymagania regulacyjne architekturą, nie konfiguracją na koniec projektu. Niezmienność, audit trail i tombstone GDPR są pierwotnymi pojęciami systemu.

SEC 17a-4
HIPAA
GDPR
SOC 2
ISO 27001

S3 Object Lock — WORM na poziomie infrastruktury

Shardy blokowane natychmiast po finalizacji. Tryb GOVERNANCE (usunięcie z MFA + uprawnieniem break-glass) lub COMPLIANCE (nieusuwalne w żadnych okolicznościach). Retencja konfigurowalna per shard.

GDPR Art. 17 + WORM — rozwiązany konflikt

Per-shard sidecar .vera.meta z tombstone'ami. Dane logicznie usunięte natychmiast, fizyczny repack po przekroczeniu progu (typowo 30% tombstone'ów). SLA 48h od żądania do usunięcia widoczności.

Unikalne podejście

Extended Retention Management — legal hold per plik

Przedłużenie retencji indywidualnego pliku bez kopiowania całego sharda. Wykorzystanie S3 Object Lock retention period na podzbiorze. Pełna integracja z business systemami przez API.

Pełny audit trail z chain hash

Każda operacja (PACK, READ, DELETE, REPACK, RETAIN) logowana z kryptograficznym powiązaniem z poprzednim wpisem. Wykrycie usunięcia lub edycji dziennika audytu jest deterministyczne.

Uwierzytelnienie operatorów — SSH-style PKI

Każdy administrator i workflow uwierzytelniony przez Ed25519 lub RSA. Brak zaszytych poświadczeń. Sekrety w OpenBao / Vault z dynamic credentials i krótkim TTL. Rotacja kluczy bez przerwy w działaniu.

Eksport z dowodem integralności

Każdy eksport zawiera integrity_proof.json z hashami shardów, potwierdzeniem WORM i, jeśli dotyczy, ścieżką repack anchor entries. Gotowy do przekazania audytorowi, KNF lub prokuraturze.

Pod maską

Architektura zaprojektowana na lata

Cztery warstwy bez wspólnego stanu — pakowanie, indeksowanie, retrieval i lifecycle management działają niezależnie i skalują się osobno.

Warstwa pakowania

Packer Workers

Watermark-based migracja z bazy źródłowej. Kompresja per-plik z heurystyką. Append-only zapis do sharda. Bezstanowe — każdy worker bierze slot z watermarka i działa niezależnie.

Warstwa kierowania

Deterministic Router

Czysta funkcja locate_shard(uid, created_at, n_bits). Brak bazy lookup. O(1) bez zewnętrznych zależności. Każdy proces niezależnie wie, gdzie szukać dowolnego pliku.

Warstwa odczytu

Retriever API

FastAPI / Quarkus. S3 Range-GET na podstawie indeksu w stopce sharda. Cache indeksów 16 GB (rebuild z S3). Stateless pody za load balancerem, K8s HPA skaluje pod ruch.

Warstwa lifecycle

Repack & GDPR

Sidecar .vera.meta z tombstone'ami. CronJob monitoruje próg, uruchamia repack do nowego sharda. Repack anchor entries zachowują ciągłość audit trail. Stary shard archiwizowany do Glacier.

Komponent Technologia Uzasadnienie
Runtime (v1.x)Python 3.11 + FastAPISprawdzona stabilność, bogata integracja z bazami SQL
Runtime (v2.x)Java 21 + QuarkusNative image, non-blocking I/O, ~2.5 mld plików/rok skala
Object storageS3-compatibleAWS S3, MinIO, Ceph/RGW, Wasabi, Dell EMC, NetApp
Format sharda.vera append-only[HEADER][DATA][INDEX][FOOTER] — Range-GET friendly
Kompresjazstd / lz4 (auto)Heurystyka per-plik · pominięcie już skompresowanych
Database sourceSQLAlchemyPostgreSQL · MySQL · SQLite · watermark migration
SekretyOpenBao / VaultDynamic credentials · krótki TTL · MFA dla break-glass
AuthenticationEd25519 / RSA PKISSH-style podpisywanie · zero hardcoded credentials
OrchestrationKubernetesCronJob dla repacku · HPA dla retrievera · Helm charts
Queue (planowane)SQS / Kafka / RabbitMQPraca dystrybuowana · event-driven scaling
ObservabilityPrometheus + GrafanaAlert: des_pack_lag >30min → PagerDuty
Datavision.pl

Zacznij oszczędzać
na storage S3 już dziś

Skontaktuj się z nami, aby omówić wdrożenie VERA w Twojej organizacji, uzyskać wycenę albo zadać pytanie techniczne dotyczące architektury, integracji lub planu migracji.