OpenAICloudflare Developer Platform2026/07/09 0:00

Durable Objects, Workers - New Durable Object namespaces must use the SQLite storage backend

要点だけを先に読めるように短く再構成したセクションです。

元記事

Quick Digest

要約

要点だけを先に読めるように短く再構成したセクションです。

openaijamodel: gpt-5-mini-2025-08-07

新しい Durable Object 名前空間は SQLite ストレージを使用する必要があります

Key Points

  • 新規はSQLite必須
  • SQLクエリとPITR対応
  • 既存KVは当面猶予あり

Summary

Cloudflare は新規 Durable Object 名前空間のデフォルトストレージを SQLite に統一しました。アカウントに既存の KV バックエンドの Durable Object 名前空間がない場合、新規に new_classes(KV バックエンド)で作成することはできません。代わりに new_sqlite_classes マイグレーションを使って SQLite バックエンドのクラスを作成してください。

Key Points

  • 新規作成方法
    • wrangler のマイグレーションで new_sqlite_classes を使う(例: new_sqlite_classes = ["MyDurableObject"])。
  • 動作と利点
    • SQLite バックエンドは KV と同等の API を提供し、さらにリレーショナル SQL クエリと30日間のポイントインタイムリカバリ(PITR)をサポートします。
  • 既存の KV アカウントと制限
    • 既に少なくとも1つの KV バックエンド名前空間を持つアカウントは当面の間、引き続き KV 名称空間を作成できます。
    • 該当アカウントで new_classes を使って作成しようとするとデプロイは失敗し、次のエラーが表示されます: Creating new key-value backed Durable Object namespaces is no longer supported on this account. Please create a namespace using a \new_sqlite_classes` migration instead.`
  • 推奨対応
    • 新規プロジェクトは最初から SQLite バックエンドを使用する。既存の KV バックエンドからの移行は公式の Durable Objects migrations ドキュメントを参照して計画する。

Full Translation

翻訳

原文の流れを保ったまま読める翻訳セクションです。

openaijamodel: gpt-5-mini-2025-08-07

Durable Objects、Workers - 新しい Durable Object 名前空間は SQLite ストレージバックエンドを使用する必要があります

概要

もしアカウントに既存の key-value (KV) バックエンドの Durable Object 名前空間がない場合、新しい KV バックエンドの名前空間を作成することはできません。新しい Durable Object 名前空間は SQLite ストレージバックエンドを使用する必要があります。SQLite バックエンドは 2024 年の一般提供開始以降、すべての新しい Durable Objects に推奨されています ↗。

対応方法

新しいクラスを作成するには、new_sqlite_classes マイグレーションを使用します。設定例:

wrangler.jsonc

{
  "$schema": "./node_modules/wrangler/config-schema.json",
  "migrations": [
    {
      "tag": "v1",
      "new_sqlite_classes": ["MyDurableObject"]
    }
  ]
}

wrangler.toml

[[migrations]]
tag = "v1"
new_sqlite_classes = [ "MyDurableObject" ]

SQLite バックエンドの利点

  • SQLite-backed Durable Objects は key-value バックエンドと機能上の互換性があります(key-value ストレージ API を含む)。
  • さらに、リレーショナルな SQL クエリをサポートし、過去 30 日間の任意の時点にオブジェクトのストレージを復元できるポイントインタイムリカバリが利用可能です。

エラー例

影響を受けるアカウントで new_classes マイグレーションを使って新しい key-value バックエンドの名前空間を作成しようとすると、デプロイは以下のエラーで失敗します:

Creating new key-value backed Durable Object namespaces is no longer supported on this account. Please create a namespace using a `new_sqlite_classes` migration instead.

注意事項

  • この変更は、既に key-value ストレージバックエンドを使用している名前空間を持たないアカウントにのみ影響します。既に少なくとも 1 つの key-value バックエンドの名前空間を持つアカウントは、現時点では新しい KV 名前空間を作成できます。
  • Workers Free プランは最初から SQLite-backed Durable Objects のみをサポートしています。
  • この変更は、既存の key-value バックエンドのオブジェクトに対する将来の移行パスに先立つ、Durable Objects の単一ストレージバックエンドを SQLite に統一するための一環です。

参考

  • Durable Objects migrations
Durable Objects、Workers - 新しい Durable Object 名前空間は SQLite ストレージバックエンドを使用する必要があります | Cloudflare Developer Platform | DocsDigest