Spring Data - Cassandra (SDC) で、同じ DataStax ドライバー セッションを再利用したいが、現在 Cassandra にアクセスしているテナント (マルチテナント SaaS モデル) に応じて異なるキースペースにアクセスしたい。とはいえ、私の調査では、キースペースを追加して完全修飾クエリを作成することが、これを達成するための好ましい方法であるようです。
SDC にはこれを行うためのフックがありますか? Hibernate のマルチテナンシー サポートに似たものを探しています。Hibernate では、同じ接続プールを再利用できます。このアプリは、どのテナントが現在のコンテキストにあるかを Hibernate に伝える方法を提供し、Hibernate のセッションの接続方法を制御できます。JDBC 接続などで "SET SCHEMA 'foo_tenant_schema' " を呼び出すことにより、テナントごとに異なるスキーマになる可能性があります。
そうでない場合は、自分で書く必要があります。それはいいです。「tenantID-to-keyspace」のマップをロードし、何らかの形で動的に追加して、完全修飾呼び出しを行うことを考えています。これが DataStax セッションの PreparedStatements などにどのように影響するかはわかりません。
より良い方法についての考えがあれば、教えてください。