INTEGRITY Dokumentace

Zvolte datový nebo úložný produkt

Tento průvodce popisuje produkty pro úložiště a databáze dostupné v rámci Cloudflare Workers, včetně doporučených případů použití a osvědčených postupů.

Zvolte úložný produkt

Následující tabulka mapuje naše produkty pro ukládání dat a databáze na běžné pojmy z oboru a doporučené případy použití:

Případ užití Produkt Vhodné pro
Úložiště klíč-hodnota Workers KV Konfigurační data, metadata směrování služeb, personalizace (A/B testování)
Objektové úložiště / blob storage R2 Webová aktiva pro uživatele, obrázky, datové sady pro strojové učení a trénování, analytická data, logy a data o událostech.
Zrychlení databáze Postgres nebo MySQL Hyperdrive Připojení k existující databázi v cloudu nebo on-premise pomocí vašich stávajících databázových ovladačů a ORM.
Globální koordinace a stavový serverless Durable Objects Vytváření kolaborativních aplikací; globální koordinace mezi klienty; aplikace WebSocket v reálném čase; silně konzistentní transakční úložiště.
Odlehčená SQL databáze D1 Relační data, včetně uživatelských profilů, seznamů produktů a objednávek nebo zákaznických dat.
Zpracování úloh, dávkování a zasílání zpráv Queues Zpracování úloh na pozadí (e-maily, oznámení, API), řazení zpráv do front a odložené úlohy.
Vektorové vyhledávání a dotazy na embeddings Vectorize Ukládání embeddings od AI modelů pro sémantické vyhledávání a klasifikační úlohy.
Streamovaný příjem dat Pipelines Streamovaný příjem a zpracování dat, včetně clickstream analytiky, telemetrických/log dat a strukturovaných dat pro dotazování
Metriky časových řad Analytics Engine Zapisujte a dotazujte se na časové řady s vysokou kardinalitou, metriky využití a telemetrii na úrovni služeb pomocí Workers a/nebo SQL.

Aplikace mohou stavět na více úložných a databázových produktech. Můžete například použít Workers KV pro data relací, R2 pro ukládání velkých souborů, mediálních assetů a souborů nahraných uživateli, a Hyperdrive pro připojení k hostované databázi Postgres nebo MySQL.

Možnosti databáze SQL

Při vytváření aplikací pomocí Workers máte k dispozici tři možnosti databází založených na SQL.

Úložiště relací

Doporučujeme použít Workers KV pro ukládání dat relací, přihlašovacích údajů (API klíčů) a/nebo konfiguračních dat. Tato data se obvykle čtou s vysokou frekvencí (tisíce RPS nebo více), obvykle se nemění (v rámci limitu KV 1 zápis RPS na jedinečný klíč) a nepotřebují okamžitou konzistenci.

Často čtené klíče těží z toho, že KV nabízí interní cache, a opakovaná čtení těchto takzvaných "hot" klíčů obvykle dosahují latence v rozmezí 500µs až 10ms.

Ověřovací frameworky, jako například OpenAuth po nasazení na Cloudflare použijte jako úložiště relací Workers KV a Cloudflare Access používá KV k bezpečnému ukládání a distribuci přihlašovacích údajů uživatelů, aby je bylo možné ověřit co nejblíže uživateli a snížit tak celkovou latenci.

Přehledy produktů

Workers KV

Workers KV je eventuálně konzistentní úložiště typu klíč hodnota, které ukládá data do mezipaměti globální sítě Cloudflare.

Je ideální pro projekty, které vyžadují:

Chcete-li začít s KV:

R2

R2 je blob úložiště kompatibilní s S3, které vývojářům umožňuje ukládat velké objemy nestrukturovaných dat bez poplatků za odchozí přenos dat (egress), jaké jsou běžné u typických cloudových úložných služeb.

Je ideální pro projekty, které vyžadují:

Začínáme s R2:

Durable Objects

Durable Objects poskytují koordinaci s nízkou latencí a konzistentní úložiště pro platformu Workers díky globální jedinečnosti a transakčnímu úložnému API.

Je ideální pro projekty, které vyžadují:

Chcete-li začít s Durable Objects:

D1

D1 je nativní bezserverová databáze od Cloudflare. S D1 můžete vytvořit databázi importem dat nebo definováním tabulek a psaním dotazů přímo ve Workeru nebo přes API.

D1 je ideální pro:

Chcete-li začít s D1:

Queues

Cloudflare Queues umožňuje vývojářům odesílat a přijímat zprávy se zaručeným doručením. Integruje se s Cloudflare Workers a nabízí doručení alespoň jednou (at-least-once), dávkové zpracování zpráv a neúčtuje si za odchozí šířku pásma.

Queues je ideální pro:

Začínáme s Queues:

Hyperdrive

Hyperdrive je služba, která urychluje dotazy do databází MySQL a Postgres, takže k datům přistupujete rychleji odkudkoli na světě bez ohledu na polohu vašich uživatelů.

Hyperdrive vám umožňuje:

Chcete-li začít s Hyperdrive:

Pipelines

Pipelines je streamovací služba pro příjem dat, která umožňuje přijímat velké objemy dat v reálném čase bez nutnosti spravovat jakoukoli infrastrukturu.

Pipelines vám umožňuje:

Chcete-li začít s Pipelines:

Analytics Engine

Analytics Engine je časová a metrická databáze Cloudflare. Pomocí vestavěného API umožňuje ve velkém měřítku zapisovat analytická data s neomezenou kardinalitou. Datové body zapisujete z Workers a poté je dotazujete přímo pomocí SQL.

Analytics Engine umožňuje:

Cloudflare interně používá Analytics Engine k ukládání a generování metrik pro jednotlivé produkty, jako jsou D1 a R2, ve velkém měřítku.

Chcete-li začít s Analytics Engine:

Vectorize

Vectorize je globálně distribuovaná vektorová databáze, která umožňuje vytvářet plnohodnotné aplikace s podporou AI pomocí Cloudflare Workers a Workers AI.

Vectorize umožňuje:

Začínáme s Vectorize:

SQL v Durable Objects oproti D1

Cloudflare Workers nabízí serverless databázový produkt založený na SQLite, D1. Jak byste měli porovnat SQLite v Durable Objects a D1?

D1 je spravovaný databázový produkt.

D1 zapadá do architektury, kterou vývojáři dobře znají: aplikační servery komunikují s databází po síti. Aplikačními servery jsou obvykle Workers, D1 ale podporuje i externí přístup mimo Worker prostřednictvím HTTP API, což pomáhá odemknout nástroje třetích stran podpora pro D1.

D1 usiluje o ucelenou sadu funkcí typu „vše v jednom“, včetně výše uvedeného HTTP API, správa schématu databáze, import a export dat, a přehledy databázových dotazů.

U D1 nejsou kód aplikace a SQL dotazy do databáze umístěny na stejném místě, což může ovlivnit výkon aplikace. Pokud pro vás výkon D1 hraje roli, Workers nabízí Smart Placement aby dynamicky spouštělo váš Worker v nejvhodnější lokalitě a snížilo tak celkovou latenci požadavků Workeru, s ohledem na vše, s čím váš Worker komunikuje, včetně D1.

SQLite v Durable Objects je nízkoúrovňový stavební prvek výpočtu s úložištěm pro distribuované systémy.

Durable Objects jsou záměrně přístupné pouze z Workers.

Durable Objects vyžadují trochu více úsilí, ale na oplátku vám dávají větší flexibilitu a kontrolu. U Durable Objects musíte implementovat dva kusy kódu, které běží na různých místech: front-endový Worker, jenž směruje příchozí požadavky z internetu na konkrétní Durable Object, a samotný Durable Object, který běží na stejném stroji jako databáze SQLite. Sami si volíte, co poběží kde, a může se stát, že vaší aplikaci prospěje, když část obchodní logiky poběží přímo vedle databáze.

U SQLite v Durable Objects si možná budete muset sami vytvořit část databázových nástrojů, které u D1 dostanete rovnou k dispozici.

Ceny a limity SQL dotazů mají být shodné mezi D1 (ceny, limity) and SQLite in Durable Objects (ceny, limity).