【ハスラ】
Hasura とは?
💡 データベースをつなぐだけでAPIが魔法のように生える即席バックエンド
📌 このページのポイント
- PostgreSQLのテーブル構造を読み取り、GraphQL APIを自動生成する
- リアルタイムサブスクリプションに対応し、データ変更をクライアントに即座にプッシュできる
- ロールベースの権限管理が組み込みで、フィールド・行レベルのアクセス制御が可能
- 既存DBに後付けで導入でき、BaaS(Backend as a Service)的な役割も担える
PostgreSQLのデータベースにHasuraを接続すると、テーブルの構造を自動で読み取ってGraphQL APIを生成してくれるんだよ。コードをほとんど書かなくていいのが特徴だよ。
じゃあCRUD(作成・読み取り・更新・削除)の処理も全部自動なの?
そうだよ!`query`・`mutation`・`subscription` の3種類が全部自動で使えるようになるんだ。特にsubscriptionのリアルタイム機能は、チャットアプリや通知システムに使うと便利だよ。
権限の管理はどうするの?誰でもデータを見られちゃうのは困るなあ。
既存のデータベースがある場合でも後から入れられるの?
できるよ!既存のPostgreSQLに接続するだけで導入できるのが強みで、既に動いているシステムにGraphQL層を追加する使い方も多いんだ。他のDBやREST APIとの統合機能もあるよ。
どんなときにHasuraを選ぶといいの?
📖 おまけ:英語の意味
「Hasura」 = (固有名詞)
💬 サンスクリット語の「असुर(Asura)」に由来するとされる造語だよ。神話的なスケール感とスピード感を名前に込めているんだ。