← Cloudflare Pipelines / pipelines / sinks / available-sinks
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-bucketMož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 jsonFormát Parquet
Zapisujte data jako soubory Parquet pro lepší výkon dotazů a kompresi:
--format parquet --compression zstdMožnosti komprese pro Parquet:
zstd(výchozí) - nejlepší kompresní poměrsnappy- nejrychlejší kompresegzip- dobrá komprese, široce podporovanálz4- rychlá komprese s rozumným poměremuncompressed- bez komprese
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 256Organizace 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.parquetCesta
Nastavte v bucketu základní adresář, do kterého se budou zapisovat soubory:
--path analytics/eventsRozdě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:
- Nižší hodnoty: Častější zápisy, menší soubory, nižší latence
- Vyšší hodnoty: Méně časté zápisy, větší soubory, lepší výkon dotazů
Interval rotace
Nastavte, jak často se mají soubory zapisovat (výchozí hodnota: 300 sekund, minimum: 10 sekund):
--roll-interval 10 # Write files every 10 secondsVelikost rotace
Nastavte maximální velikost souboru v MB, po jejímž dosažení se vytvoří nový soubor:
--roll-size 100 # Create new file after 100MBOvěř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