# HTTP POST経由でSQLを実行
$ curl -X POST "...sqlite-1.../api/v1/sqlite/db"
?db=/data/app.db \
-d '{
"transaction": [{
"query": "SELECT product_id, COUNT(*) FROM orders GROUP BY product_id LIMIT 5"
}]
}'
# 結果を含むレスポンス
HTTP/1.1 200 OK
{
"success": true,
"results": [[
{ "product_id": 1, "count": 42},
{ "product_id": 2, "count": 38}
]]
}
データベースサーバー不要。接続文字列不要。HTTPだけ。
SQLを実行して結果を確認。
SQLクエリ実行、TTL付きキーバリューペア設定、アトミックカウンターインクリメント。
リクエスト
POST /api/v1/sqlite/db?db=/data/app.db
{
"transaction": [{
"query": "SELECT product_id, COUNT(*) FROM orders GROUP BY product_id LIMIT 5"
}]
}
結果(5行)
| product_id | COUNT(*) |
|---|---|
| 1 | 42 |
| 2 | 38 |
| 3 | 27 |
| 4 | 19 |
| 5 | 11 |
事前計算済みの例の結果。product_idでグループ化したSELECTクエリ。
クエリ結果がチャートになる。
SQLクエリを実行し、即座に結果をチャート化。Base64 URLで共有可能。ドキュメントに埋め込み可能。
製品別注文数
例: SELECT product_id, COUNT(*) FROM orders GROUP BY product_id
KV操作(ops/秒)
例: 24時間のSETとGET操作スループット
共有可能なクエリURL
GET /api/v1/sqlite/query?db=/data/app.db&sql=U0VMRUNUIFN1bShjb3VudCkgRlJPTSBvcmRlcnM=
任意のSELECト文をBase64エンコードして読み取り専用クエリURLを共有。誰でもブラウザで結果を確認可能。
NoSQLの速度。SQLの信頼性。
アトミック操作、バッチ更新、タイムトラベル履歴 — すべてSQLiteに支えられています。
アトミックインクリメント
競合状態なしでカウンターをインクリメント。複数の同時リクエストが正しくシリアル化される。
POST /api/v1/sqlite/kv/views:homepage/incr
{ "oldValue": 5, "newValue": 6 }
100キーのバッチ
1回のアトミックHTTPリクエストで最大100キーをget、set、deleteする。すべての操作が成功するかすべてが失敗。
POST /api/v1/sqlite/kv/batch/set
{ "success": true, "count": 100 }
TTL自動有効期限
任意のキーにTTLを設定すると期限切れ時に自動削除。セッション、キャッシュ、一時データに最適。
PUT /api/v1/sqlite/kv/session:abc?ttl=3600
{ "success": true, "key": "session:abc" }
タイムトラベル履歴
すべてのキー変更が記録される。履歴を表示し、任意のタイムスタンプでスナップショット値を取得、またはロールバック。
GET /api/v1/sqlite/kv/config:timeout/history
{ "history": [...], "total": 12 }
HTTPが接続文字列を上回る。
Hoody SQLiteは従来のデータベースサーバーの運用オーバーヘッドを排除します。
| 機能 | HTTP経由のHoody SQLite | Postgres |
|---|---|---|
| サーバーインストール | None needed | Server process |
| 接続文字列 | Just a URL | Host/port/user/pass |
| 言語ドライバー | Any HTTP client | pg, mysql2 |
| AIエージェントアクセス | Driver required | |
| タイムトラベル | Manual migrations | |
| アトミックKV操作 | incr/decr/push/pop | App-level only |
| 共有可能URL | ||
| 同時コンテナ | FUSE mount | Pool per service |
23 Endpoints. SQL and KV over HTTP.
Full SQL transactions, key-value CRUD, atomic ops, batch operations, and time-travel — all as plain HTTP. No SDK required.
SQL Operations
{count, plural, =1 {# endpoint} other {# endpoints}'}POST .../api/v1/sqlite/db → {results: [{changes: 1}]}
KV Core
{count, plural, =1 {# endpoint} other {# endpoints}'}GET .../api/v1/sqlite/kv/session-abc → {value: "...", metadata: {'}'}
Atomic & Batch
{count, plural, =1 {# endpoint} other {# endpoints}'}POST .../api/v1/sqlite/kv/counter/incr → {value: 6, oldValue: 5}
Time-Travel
{count, plural, =1 {# endpoint} other {# endpoints}'}GET .../api/v1/sqlite/kv/price/history → [{op: "set", value: 99}]
データベースが必要とするすべて。それ以外は何もない。
完全なデータベースツールキット:SQLトランザクション、キーバリューストア、アトミック操作、チャート化。
WebデータベースUI
ブラウザのビジュアルSQLクエリインターフェース。クエリ実行、スキーマ閲覧、結果チャート化。
SQLトランザクション
HTTP POST経由でアトミックSQLトランザクションを実行。複数ステートメント、パラメーター化クエリ。
キーバリューストア
SQLiteでのNoSQLスタイルGET/SET/DELETE操作。設定、セッション、キャッシュに最適。
アトミック操作
スレッドセーフなincr、decr、push、pop。競合状態なし。高並行性でも正確に動作。
バッチ操作
1回のアトミックリクエストで最大100キーをget・setする。全成功か全失敗のセマンティクス。100倍の速度向上。
SQLite Drive FUSE
マルチコンテナアクセスのため/hoody/databases/にデータベースを保存。同時書き込み安全なWALモード。