supabase-backend について
iTaxiBcn のバックエンド向けアーキテクチャスキルです。Supabase のデータベース、セキュリティ、Edge Functions、SQL を扱い、スキーマや地理空間処理の設計を支援します。
主な機能
- 01時系列データとインデックスの最適化
- 02RLS とデバイスベースのアクセス制御
- 03Edge Functions の性能とエラー処理
- 04SQL マイグレーションとストアドプロシージャ
- 05PostGIS による距離・ポリゴン計算
活用シーン
- 01位置更新と待ち時間クエリの最適化
- 02デバイス識別子によるアクセス制御の設計
- 03ジオフェンス Edge Functions の改善
- 04冪等なマイグレーションとサーバー側計算の作成
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ abelv22/ project-foundation --skill supabase-backendインストール後、Claude Code で/supabase-backendを入力して読み込まれたか確認します。
詳細
Supabase とバックエンドアーキテクチャのスキル
このスキルを使うと、iTaxiBcn バックエンドについて、アーキテクチャに関する高度なアドバイスと実装の詳細を提示できます。
対応分野
1. データベーススキーマの最適化
- 時系列データ:
registros_retenとgeofence_logsにおける高頻度の位置情報更新を処理するためのガイドラインです。 - インデックス作成: 空間インデックス(PostGIS)と時間ベースのクエリを活用し、待ち時間の計算を高速化する方法です。
- マテリアライズドビュー: ゾーン集計には、
registros_retenに対する負荷の高いクエリをマテリアライズドビューに置き換えることを推奨します。
2. 行レベルセキュリティ(RLS)
- デバイスベースのアクセス: 現在のアプリでは、Phase 2 までは完全なユーザー認証ではなくデバイス識別子を使用するため、
device_idに基づくセキュリティを確保します。 - 監査ログ:
geofence_logsとlocation_debug_logsのセキュリティに関するベストプラクティスです。
3. Edge Functions(Deno/TypeScript)
- ジオフェンシングのロジック:
check-geofenceのレイ・キャスティングアルゴリズムを最適化します。 - パフォーマンス: Edge Functions の起動時間とメモリ使用量を最小限に抑えます。
- エラー処理: 堅牢な try-catch パターンと標準的な JSON レスポンスを使用します。
4. SQL スクリプト
- マイグレーション:
supabase/migrations/の構成に従います。 - ストアドプロシージャ: サーバー側での
useWhereNextのスコア計算など、複雑なロジックに対して効率的な PL/pgSQL を記述します。
回答のガイドライン
- 秒単位の精度が不要なダッシュボード指標には、必ずマテリアライズドビューを提案してください。
- SQL を記述する際は、べき等性を確保してください(
CREATE OR REPLACEまたはIF NOT EXISTSを使用します)。 - 距離やポリゴンの計算には、PostGIS 関数を優先してください。
コメント
Markdown 対応