Go 向けの chDB
chDB-go は chDB 向けの Go バインディングを提供し、外部への依存関係なしに Go アプリケーション内から直接 ClickHouse クエリを実行できるようにします。
インストール
ステップ 1: libchdb のインストール
まず、chDB ライブラリをインストールします。
ステップ 2:chdb-go をインストールする
Go パッケージをインストールします:
または go.mod に追加してください:
使用方法
コマンドラインインターフェース
chDB-go には、簡単なクエリをすばやく実行するための CLI が含まれています。
インタラクティブモード
./chdb-go
永続ストレージを使用したインタラクティブモード
./chdb-go --path /tmp/chdb
セッションを利用したステートフルなクエリ
状態を永続化する必要がある複雑なクエリ向け:
SQL ドライバーインターフェース
chDB-go は、Go の database/sql インターフェースを実装しています:
大規模データセット向けストリーミングクエリ
メモリに収まりきらない大規模なデータセットを処理するには、ストリーミングクエリを使用します。
クエリストリーミングの利点:
- メモリ効率が高い - すべてをメモリに読み込まずに大規模データセットを処理できる
- リアルタイム処理 - 最初のチャンクが到着し次第、すぐに処理を開始できる
- キャンセルのサポート -
Cancel()を使って長時間実行中のクエリをキャンセルできる - エラー処理 - ストリーミング中に
Error()でエラーを確認できる
API ドキュメント
chDB-go は高レベル API と低レベル API の両方を提供します:
- 高レベル API ドキュメント - ほとんどのユースケースでの利用を推奨
- 低レベル API ドキュメント - きめ細かな制御が必要な高度なユースケース向け
システム要件
- Go 1.21 以降
- Linux、macOS に対応