Cloudflare K2:サーバーレスイベントストリーム

2026/10/01 23:09

Cloudflare K2:サーバーレスイベントストリーム

RSS: https://news.ycombinator.com/rss

要約▶

Japanese Translation:

Cloudflare は、Developer Platform にて展開する K2 を公開しました。K2 は、従来型の RPC アーキテクチャに固有であるデータアライメントとデータロスの問題を解決するために設計された、耐久性のあるイベントストリーミングプリミティブです。K2 の設計では、順序付いたイベントログを直接 R2 オブジェクトストレージ上に保存することで、複製とコンセンサスを R2 に委譲し、内部の分散状態を管理せずにスケーラブルで低コストかつ高パフォーマンスなアプリケーションを構築可能としています。初期実装では追加書き込みではなく完全なセグメントファイルを R2 に書き込む方式を採用しており、標準的な手法と比較して 99 パーセンタイルレベルで「produce」レイテンシに約 1 秒の増加分が生じます。K2 は大規模なデータ移動とファナウト消費に特化されており、Queues(高コストなワークアイテム)や Basin Pipelines(サーバーレスインゲスチョン)とは明確に異なります。クライアントは HTTP バッチまたは Worker バインディングを通じてイベントをプロデュースし、

consume
の際に各バッチのプロセッシングに対して 5 分間のリースを取得し、その間に承認、拒否、あるいはリースの延長を行うことができます。ストリームは
cf
、Wrangler、ダッシュボード、または API を通じて作成可能で、カスタマイズ可能な保存期間を設定できます。現在、Workers Paid サブスクライバー向けに公開ベータ版として利用可能であり、10 GB のストレージ上限とストリームあたり 30 MB/s のプロデュース制限を有していますが、ベータ期終了後には使用量に基づいた課金制(プロデューズ済み/消費されたデータ:0.04 ドル/GB、保持されたデータ:月額 0.02 ドル/GB)への移行が行われます。将来的な計画としては、マルチ GB/s ストリーム、メッセージキー、プッシュベースのワーカー、Express 階層、そしてネイティブ Apache Kafka クライアントサポートの追加が予定されています。

本文

Cloudflare K2:サーバーレス・耐久性のあるイベントストリーミングサービス

概要と課題

従来のリモートプロシージャコール(RPC)アーキテクチャには、以下のような核心的な課題が存在します。

  • データ損失のリスク: プロデューサーがコンシューマーの処理能力を超えたデータを送出したり、下流サービスが利用不能になったりすると、イベントデータは失われます。
  • マルチコンシューマの複雑さ: 複数の消費者が独立してデータを処理する際、この問題は深刻化します。

解決策: プロデューサーとコンシューマーを繋ぐ「中間サービス」を導入することで、読み取り側が自身のペースで消費できる環境を作り出します。

Cloudflare K2 の概要

本日リリースされた K2 は、開発者プラットフォーム上で動作する耐久性のあるイベントストリーミングのプリミティブです。

主な特徴

  • 耐久性: R2 オブジェクトストレージの上に分割されたログを実装しており、膨大なデータ量に対応可能です。
  • サーバーレス: 設定や運用の手間を省き、長期的なデータ保持をサポートします。
  • 柔軟な消費方法:
    • 読み取りを複数のコンシューマー間で分割する(並列化)
    • すべてのメッセージをすべてのコンシューマーに配信する(ファンアウト)

K2 の仕組みとアーキテクチャ

インフラ上の課題と強み

K2 を設計する際、Cloudflare グローバルインフラ特有の「ステートフルサービス」の課題と強みを活用しています。

課題:

  • 比較的小さなスライスのマシンを使用
  • マシンは一過性(エフェメラル)である
  • ネットワーキングがパブリックインターネット上で行われる

強み(超能力):

  • ユーザーに近い位置にあるグローバル展開
  • 水平スケーリングによる驚異的な容量

設計方針:R2 オブジェクトストレージの活用

K2 は、すでに高い耐久性を持つ R2 オブジェクトストレージ に依存することで、アプリケーション層を劇的に単純化し、低コストかつ高パフォーマンスを実現しています。

  • 利点: レプリケーションとコンセンサスをストレージ層にオフロードできるため、計算リソースとストレージを分離して独立スケーリングが可能。
  • 欠点: オブジェクトストレージへの書き込みはローカルディスクより遅いため、初期リリースでは応答時間の 99 パーセンタイルで最大約 1 秒 の遅れが発生します(今後の改善予定)。

ログをオブジェクトストレージ上に構築する方法

  • R2 は追加操作(Append)をサポートしないため、一度書き込む「セグメント」という完全なファイルを作成する必要があります。
  • 実装フロー: Edge サーバサイドでメモリに書き込みを蓄積 → 一定量を集計 → R2 に原子操作を使用してセグメントファイルとして書き出し。
  • これにより、順序性と厳密に増分するオフセットを実現し、別途協調サービスを用意する必要はありません。

ストリーム、キュー、パイプラインの使い分け

既存プロダクトとの位置づけと使い分けは以下の通りです。

Queues(キュー)

  • 目的: 高価または時間のかかる作業の個々のアイテムを追跡。
  • 特徴: 「プルベース」モデル。特定のワークアイテム粒度で複雑なロジック(再試行、遅延など)をサポート。
  • 利用例: 画像処理サービスへのリクエストキュー入れ。

K2 Streams(ストリーム)

  • 目的: 大規模なデータ移動、長期の保持、ファウト(Fan-out)消費。
  • 特徴: メッセージをバッチとして生産・消費。効率的な処理が可能だが、メッセージレベルの再試行には不向き。

Basin Pipelines(パイプライン)

  • 目的: サーバーレスの取り込みサービス。イベントを変換して R2 または Catalog に書き込む。
  • 推奨: 結果をオブジェクトストレージまたは Iceberg テーブルに書く場合。
  • K2 の推奨: 独自のプロセッシングを行う場合や、他の宛先にデータを配信する場合。

スタートガイド:実装例

アカウント内には、異なる使用ケース用に多数のストリームを作成できます。以下は

cf
コマンドによる作成例です。

1. ストリームの作成

cf k2 streams create --name app_events --http-enabled

出力例:

{
  "id": "d78b09ee1f50430e9ec92a8af92b0231",
  "name": "app_events",
  "retention_seconds": 604800,
  "endpoint": "https://d78b09ee1f50430e9ec92a8af92b0231.k2.cloudflarestorage.com",
  // ... その他設定情報
}

2. イベントの書き込み(プロデュース)

Worker から HTTP API を通じてイベントを送信します。K2 はバイト列として扱うため、JSON など適宜の形式で構いません。

const result = await env.EVENTS.send([
  {
    content: new TextEncoder().encode(
      JSON.stringify({
        event: "page_view",
        path: new URL(request.url).pathname,
        timestamp: Date.now(),
      }),
    ),
    headers: { "content-type": "application/json" },
  },
]);

if (!result.success) {
  console.error(`Produce failed: ${result.error.message}`);
  return new Response("Failed to record event", {
    status: result.error.retryable ? 503 : 500,
  });
}

3. サブスクリプションの作成(購読)

コンシューマー間の作業を分割し、読み取りの並列化を実現します。

curl -X POST "https://d78b09ee1f50430e9ec92a8af92b0231.k2.cloudflarestorage.com/subscriptions" \
    -H "Authorization: Bearer ${CLOUDFLARE_API_TOKEN}" \
    -H "Content-Type: application/json" \
    --data '{
      "name": "analytics_processor",
      "start_at": { "type": "earliest" }
    }'

4. データの消費(ポーリング)

サブスクリプションに対してデータを取得し、処理後のアクションを行います。

curl -X POST "https://.../subscriptions/{sub_id}/consume" \
    -H "Authorization: Bearer ${CLOUDFLARE_API_TOKEN}" \
    -H "Content-Type: application/json" \
    --data '{
      "worker_id": "analytics-1",
      "max_records": 100
    }'

処理後のアクション(リース管理): 取得されたバッチは 5 分間 リースされます。以下のいずれかの行動が必要です。

  1. ack: 処理済みとしてマークし、再配送を防ぐ。
  2. nack: 処理失敗を報告し、再配送をリクエストする。
  3. extend: 処理に時間がかかっている場合、リース期間を延長する。
curl -X POST "https://.../subscriptions/{sub_id}/batches/{batch_id}/ack" \
    -H "Authorization: Bearer ${CLOUDFLARE_API_TOKEN}" \
    --data '{ "worker_id": "analytics-1" }'

消費パターンの選択肢:

  • 分割処理: 複数のコンシューマー間で作業を分け、各々が一部ずつ持つ方式。
  • Pub/Sub パターン: 各消費者が別々のサブスクリプションを持ち、すべてのメッセージを見る方式。
  • ハイブリッド: 上記両方のアプローチを組み合わせて、複数の独立したコンシューマープールを構築する方式。

プライスと利用状況

K2 は現在、Workers Paid サブスクリプション お持ちのアカウント向けにパブリックベータ版を提供しています。

ベータ版制限

  • ストレージ使用量: 最大 10GB
  • ストリームあたりの生産速度: 30MB/s

リミットについて: より高いリミットが必要の場合は、Discord でチームにお問い合わせいただくか、リミット増加フォームをご記入ください。ベータ期間中は請求されません。

料金表(推定価格)

カテゴリ単価
生成されたデータ (Data Produced)$0.04 / GB
消費されたデータ (Data Consumed)$0.04 / GB
保持されたデータ (Data Retained)$0.02 / GB / ヶ月

今後の展望(ロードマップ)

今後数ヶ月以内に以下の機能が追加されます:

  • 書き込み並列性の向上: マルチ GB/s ストリームへの対応。
  • キーベース機能: メッセージキーとキーベースの順序付け保証の実装。
  • プッシュモデル: プッシュベースのワーカーコンシューマーのサポート。
  • Express エディション: より低い生産遅延およびエンドツーエンド遅延を実現するエディション。
  • Kafka クライアント: Apache Kafka クライアントのドロップインサポート。

素晴らしいアプリケーションをご期待ください!ご意見やご感想は Cloudflare Discord で共有してください。

同じ日のほかのニュース

一覧に戻る →

2026/10/02 4:33

Pi 1.0

## 日本語翻訳: Pi 1.0 のリリースは、機能の急速な拡張よりも安定性を優先する点において、そのエージェントハネスにおける顕著な進化を表しています。すべての最新技術を即時に採用する代わりに、このバージョンでは既存のシステム制約に対して堅牢性が証明された後にのみ変更を統合することに焦点を当てています。この「強化された」アプローチにより、ソフトウェアは不必要な複雑性を持たずに簡潔かつ拡張可能であるように保たれます。新機能には、Model Context Protocol (MCP) へのネイティブ対応、Jev や画像モデルといった大型言語モデル以外との互換性、遅延ツールロード、会話中のシステムメッセージが含まれます。ユーザーエクスペリエンスの向上のために、インターフェースも新しいテーマとデフォルトのフルスクリーンモードで強化されました。何十万もの週次ユーザーからのフィードバックに基づき開発が進められた本プロジェクトは、MIT ライセンスの下でオープンソースとして存続しています。今後の展望として、実験的な「Pi Durable」パッケージでは、ミニマリズムを維持しながら長期的な AI タスクの管理機能を備えています。これにより、ユーザーは異なるプラットフォーム上で、より長期間にわたって基盤となる AI を自在に操作・制御することが可能になります。Pi 1.0 のインストールは `curl` または PowerShell コマンドによるものが利用でき、Pi Durable については `npm install @earendil-works/pi-durable @earendil-works/pi-ai @earendil-works/chord` を実行する必要があります。両方とも pi.dev でドキュメントが提供され、github.com/earendil-works/pi にコードが公開されています。Codemode の機能には、Claude Opus、GPT、Jev などの特定モデルを使用してコミットのサマリーを記述するスクリプトや、自作拡張の記述などが含まれます。

2026/10/02 6:07

Web 開発教育の死

## Japanese Translation: 生成 AI は、エコシステムを破壊することで Web 開発者、教育者、出版社の経済的健全性を根底から覆している。Baldur Bjarnason や Axel Rauschamayer のような著者および出版社は収入が急落し、事業の閉鎖に追い込まれている。特に Rauschamayer は 2026 年に書籍からの収益がゼロとなり、AI クローラーが彼の作品を盗みながら広告収益を生み出さなかったため、コンテンツをオフラインに移すことを余儀なくされた。同様に、Web 開発者の教育者である Josh W. Comeau や Kyle Cook も、LLM がタスクを自動化し仕事を吸収したことで Comeau の収益は半分になり、Cook は深層技術チュートリアルから AI モデルに関する浅く簡単に制作される動画への視聴者のシフトにより半分もの視聴数を失ったと報告している。 この危機は財務面のみならず、Salma Alam-Naylor のような専門家の中で深刻なバーンアウトと不安を引き起こしており、彼女のスキルや共感力が業界で貶められたため、一般に露出の少ない低給の役割を受け入れた。この変化は高品質な教育を脅かしており、開発者は学習のためにエラーが発生しやすいチャットボートに頼る傾向が強まっている一方、Rachel Andrew は GenAI が主題領域の専門家と編集者の間の重要な関係性を損ない、生産性の負担を読者に押し付けるだけであり、根本原因を解決したり実際の効率を高めたりしていないと主張している。究極的には、現在のトレンドは真実の人間の協働よりも短期的利益を優先している。

2026/10/02 1:18

Clef:オープンソースの意思決定モデルと新しい強化学習ファインチューニングプラットフォーム

## Japanese Translation: Cloudflare は、Apache 2.0 ライセンスの下で Workers AI 上にホストされる 2 つの新しい決定モデル、Clef および Clef-flash を発売します。これらのモデルは、標準的な大規模言語モデル(LLM)がしばしば予測不可能なテキストを生成するのと鮮明な対比をなすように、低コストで一貫性があり、厳格に型付けされた構造化された出力を提供します。Qwen アーキテクチャに基づいて構築されており(Clef は Qwen3.8-27B、Clef-flash は Qwen3.5-9B)、画像分類のためにビジョンエンコーダーで強化され、非自己回帰的処理を利用して推論速度を高速化しています—Cloudflare の一般 LLM gpt-oss-120b と比較して、脅威インテリジェンスタスクにおいて 2 倍のレイテンシ削減を示しました。現在 Jev Decision Index ベンチマークで最高スコアを得ており(BFCL ケース exact ベンチマークで 98.47 のほぼ完璧なスコア)、Clef は他のモデルである Jev および Kev 9B を凌ぐような大きな性能向上を提供しています。両モデルとも 64k コンテキストウィンドウを備えており(Jev と比較して 32k)、データが保存されることも、トレーニングに使用されることもないというエンタープライズ対応の保証をサポートします。AI Gateway および Workers AI といった Cloudflare の既存インフラストラクチャを活用し、これらのツールはすでにドメイン分類およびサポートトラージングのための内部運用を動力付けています。このリリースは、Cloudflare の「エージェントクラウド」ミッションを実現するために高速分類器向けニッチ市場への戦略的参入を意味し、新しい強化学習製品および Forward-Deployed Engineer サービスを通じた微調整のためのさらなる機能を提供します。

Cloudflare K2:サーバーレスイベントストリーム | そっか~ニュース