【databricks】Claude MCPをdatabricksで使ってみた3: 結局genie挟むの、挟まないの?
これまでの2回では1. Unity catalogとclaudeを接続する方法、2. genieとclaudeを接続する方法、を試しましてきました。今回の第3回ではそれぞれの方法を大きく分けて3つの点で比較していきたいと思います!
初めに
これまでの2回では1. Unity catalogとclaudeを接続する方法、2. genieとclaudeを接続する方法、を試しましてきました。今回の第3回ではそれぞれの方法を大きく分けて3つの点で比較していきたいと思います!
それぞれのイメージ図は以下の通りです。
1. Unity catalogとclaude

2. genieとclaude

1. 柔軟性
・エラーに対する対応力
・genieの出力はテーブル形式ではない場合にエラーが起こってしまうため、柔軟性はない
・Unity Catalogの出力もエラーが起こることはあるが、そこの対処はClaudeが修正コードを書くための論理を組み立てるため問題になりづらい
・回答の柔軟性
・genieでは事前に使用するデータを限定するため柔軟性は低い。逆に言えば、欲しいデータのみを参照できる為、データの混同は起こりづらい
・Unity Catalog参照だと、すべてのデータを参照するため、claudeの回答は高い柔軟性がある。しかしながら参照にするデータによってはデータの混同が起こる可能性がある。
2. コスト
・genie参照の場合、1での解説の通り、参照にするデータが少ないため、時間がかかりづらい。しかし、genie APIを使っているトークンのコストは別でかかる。
・Unity Catalog参照の場合、見たいデータにClaudeが辿り着くまで時間がかかってしまう。さらにクエリの応答だけで相当時間がかかってしまうため、時間的コストはかなり高い。genieへのアクセスがない分、APIコストは少なく済むが、Claudeの使用トークン数はかなり嵩む。
3. セキュリティ
・アクセス制御ができる点はどちらも変わらない。強いていうとgenieの方がアクセスするデータベース自体を制限できる分セキュリティが安定していると言えるか
まとめ
どちらの方がいいか、という点においてはやはり結論を出すのは難しいという所感です。短い時間で決められたデータを見たい場合genieを使い、その他の場合はUnity catalog参照をする、という使いわけで良いと思います。
どちらにしてもデータ分析を一つ先のレベルに持っていってくれることは間違い無いでしょう!
