翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
オープンソースの Spark Cassandra コネクタを AmazonKeyspaces で使用するには、DataStax Java ドライバーとの接続に必要な設定をしたアプリケーション設定ファイルを用意する必要があります。接続には、サービス固有の認証情報または SigV4 プラグインを使用できます。
Starfield のデジタル証明書を TrustStore ファイルにまだ変換していない場合は、変換してください。Java ドライバー接続チュートリアルの詳細な手順については、「[開始する前に]」を参照してください。trustStore のファイルパスとパスワードを書き留めておいてください。この情報はアプリケーション設定ファイルを作成するときに必要になります。
SigV4 認証による 接続
このセクションでは、AWS 認証情報と SigV4 プラグインで接続するときに使用できるサンプル application.conf
ファイルを示します。まだ行っていない場合は、 IAM アクセスキー (アクセスキー ID とシークレットアクセスキー) を生成し、 AWS 設定ファイルまたは環境変数として保存する必要があります。詳細な手順については、「AWS CLI、、 AWS SDKまたは Cassandra クライアントドライバー用の Amazon Keyspaces SigV4 プラグインに必要な認証情報」を参照してください。
次の例では、 trustStore ファイルまでのファイルパスを置き換え、パスワードを置き換えます。
datastax-java-driver { basic.contact-points = ["cassandra.
us-east-1
.amazonaws.com:9142"] basic.load-balancing-policy { class = DefaultLoadBalancingPolicy local-datacenter =us-east-1
slow-replica-avoidance = false } basic.request { consistency = LOCAL_QUORUM } advanced { auth-provider = { class = software.aws.mcs.auth.SigV4AuthProvider aws-region =us-east-1
} ssl-engine-factory { class = DefaultSslEngineFactory truststore-path = "path_to_file
/cassandra_truststore.jks" truststore-password = "password
" hostname-validation=false } } advanced.connection.pool.local.size = 3 }
この設定ファイルを更新し、/home/user1/application.conf
という名前で保存します。次の例ではこのパスを使用しています。
サービス固有の認証情報で接続する
このセクションでは、サービス固有の認証情報で接続するときに使用できるサンプルapplication.conf
ファイルを示します。まだ作成していない場合は、Amazon Keyspaces のサービス固有の認証情報を生成する必要があります。詳細な手順については、「Amazon Keyspaces にプログラムによってアクセスするためのサービス固有の認証情報を作成する」を参照してください。
以下の例で、username
と password
を自分の認証情報あに置き換えます。また、 trustStore ファイルまでのファイルパスを置き換え、パスワードも置き換えてください。
datastax-java-driver { basic.contact-points = ["cassandra.
us-east-1
.amazonaws.com:9142"] basic.load-balancing-policy { class = DefaultLoadBalancingPolicy local-datacenter = us-east-1 } basic.request { consistency = LOCAL_QUORUM } advanced { auth-provider = { class = PlainTextAuthProvider username = "username
" password = "password
" aws-region = "us-east-1
" } ssl-engine-factory { class = DefaultSslEngineFactory truststore-path = "path_to_file
/cassandra_truststore.jks" truststore-password = "password
" hostname-validation=false } metadata = { schema { token-map.enabled = true } } } }
この構成ファイルをコード例で使用できるように /home/user1/application.conf
に更新して保存します。
固定料金で接続する
Spark エクゼキューターごとに固定レートを強制的に使用するには、リクエストスロットラーを定義します。このリクエストスロットラーで 1 秒あたりのリクエスト数を制限します。Spark Cassandra コネクタは、エクゼキューターごとに 1 つの Cassandra セッションをデプロイします。次の式を使用すると、テーブルに対して一貫したスループットを実現できます。
max-request-per-second * numberOfExecutors = total throughput against a table
この例の内容は、前に作成したアプリケーション設定ファイルに追加できます。
datastax-java-driver {
advanced.throttler {
class = RateLimitingRequestThrottler
max-requests-per-second = 3000
max-queue-size = 30000
drain-interval = 1 millisecond
}
}