INTEGRITY Dokumentace

R2

R2 sinky zapisují zpracovaná data z pipeline jako nezpracované soubory do Objektové úložiště R2. V současnosti podporují zápis do formátů JSON a Parquet.

Chcete-li vytvořit R2 sink, spusťte příkaz pipelines sinks create příkaz a zadejte typ sinku a cíl bucket:

npx wrangler pipelines sinks create my-sink \
  --type r2 \
  --bucket my-bucket

Možnosti formátování

R2 sinky podporují dva výstupní formáty:

formát JSON

Zapisujte data jako soubory JSON oddělené novými řádky:

--format json

Formát Parquet

Zapisujte data jako soubory Parquet pro lepší výkon dotazů a kompresi:

--format parquet --compression zstd

Možnosti komprese pro Parquet:

Velikost skupiny řádků: Skupiny řádků ↗ jsou sady řádků v souboru Parquet, které jsou uloženy společně a ovlivňují využití paměti a výkon dotazů. Cílovou velikost skupiny řádků nastavte v MB:

--target-row-group-size 256

Organizace souborů

Soubory se zapisují s názvy ve formátu UUID v rámci rozdělené adresářové struktury. Například s cestou analytics a výchozí dělení:

analytics/year=2025/month=09/day=18/002507a5-d449-48e8-a484-b1bea916102f.parquet

Cesta

Nastavte v bucketu základní adresář, do kterého se budou zapisovat soubory:

--path analytics/events

Rozdělení na oddíly

R2 sinky automaticky rozdělují soubory podle času pomocí konfigurovatelného vzoru. Výchozí vzor je year=%Y/month=%m/day=%d (dělení ve stylu Hive).

--partitioning "year=%Y/month=%m/day=%d/hour=%H"

Dostupné formátovací specifikátory najdete v dokumentaci strftime ↗.

Zásady dávkování a rotace

Určete, kdy se mají soubory zapisovat do R2. Nastavení upravte podle svých potřeb:

Interval rotace

Nastavte, jak často se mají soubory zapisovat (výchozí hodnota: 300 sekund, minimum: 10 sekund):

--roll-interval 10  # Write files every 10 seconds

Velikost rotace

Nastavte maximální velikost souboru v MB, po jejímž dosažení se vytvoří nový soubor:

--roll-size 100  # Create new file after 100MB

Ověřování

R2 sinky vyžadují přístupové údaje API (Access Key ID a Secret Access Key) s Object Read & Write permissions pro zápis dat do vašeho bucketu.

npx wrangler pipelines sinks create my-sink \
  --type r2 \
  --bucket my-bucket \
  --access-key-id YOUR_ACCESS_KEY_ID \
  --secret-access-key YOUR_SECRET_ACCESS_KEY