このプロジェクトについて
Bunは、直接SQLを書くことを好む開発者のために設計された現代的なGolang ORMです。SQLを抽象化する他のORMとは異なり、BunはSQLを受け入れ、Goメソッドを使った複雑で読みやすいクエリを構築しながら、生成されるSQLに対する完全な制御を維持できるようにします。
PostgreSQL、MySQL/MariaDB、SQLite、Microsoft SQL Server、Oracleを含む複数のデータベースをサポートし、各データベースには独自のドライバーとダイアレクトがあります。クエリは構造体、マップ、スライス、またはスカラー値にスキャンでき、データの消費方法に柔軟性を提供します。テーブル間の関係は構造体タグで定義され、has-manyやbelongs-toのような関連モデルのイーガーローディングを可能にします。
Bunは、バージョン管理されたスキーマ変更を持つマイグレーション、バルク操作(挿入/更新/削除)、ソフトデリート、観測性のためのOpenTelemetry統合などの本番環境対応機能を備えています。デバッグは詳細なクエリログでサポートされ、パフォーマンスは最小限のオーバーヘッドでGoの標準`database/sql`パッケージの上に構築されることで最適化されています。
本ライブラリは、豊富なドキュメント、例、本番環境向けのスターターキットを提供しています。また、分散トレーシングとモニタリングのためのオープンソースAPMツールであるUptraceとも統合されています。コミュニティサポートはDiscordおよびGitHubディスカッションで利用可能です。
SQLの表現力とORMの利便性のバランスを求めるチームに理想的であり、Bunは魔術を避けながら、Goアプリケーション内で強力かつ保守可能なデータアクセス層を提供します。
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.