2017-01-28 9 views
0

作業コードがあります。それはそうと同じように、Bigtableのへの接続を取得するために返すようにBigtableConfigurationオブジェクトを使用しています。返さBigtableConfiguration v Bigtableエミュレーターを実行しているときのBigtableOptions

var connection = BigtableConfiguration.connect("myProject", "myCluster") 

接続はタイプcom.google.cloud.bigtable.hbase.Connectionです。

私は現在、ローカルで使用するBigtableエミュレータがあることを理解しています。私はテストでそれを使用したいと考えています。だから私はそれをいかに活用するかを理解しようとしています。

とても似エミュレータのenv VARに基づいて自動設定を利用するためには、あなたは、BigtableOptionsと呼ばれる別の設定型クラスを使用する必要があるようです:

val options = new BigtableOptions.Builder() 
    .setProjectId("myProject") 
    .setInstanceId("myCluster") 
    .setUserAgent("whatever") 
    .build() 

このクラスはthe logicにしていますエミュレータを検出します。しかし、私はそれを私の既存のBigtableConfiguration.connect()メソッドに渡すことはできません。

この新しいBigtableOptionsクラスを既存のコードでどのように使用できるのか混乱しています。私はBigtableSessionオブジェクトを使用するルートを辿ることができますが、これは書き直しを意味します。

env varが設定されている場合、私はエミュレータが約束した自動設定を利用したいと思いますが、今私はthis oneのような答えに賛成して放棄することを検討しています。

ありがとうございます!

答えて

1

環境変数が設定されている場合、Cloudt Bigtable 0.9.4クライアントはエミュレータで動作します。実装の詳細については、BigtableOptionsソースコードのhereを参照してください。

それがうまくいかない場合は、github issueでの議論を続けてください。

+0

すべての作品が更新されました。だから、 'BigtableOptions'は何らかの形で使われているようで、明示的に設定する必要はありません。助けてくれてありがとう。 –

関連する問題