Spark SQL ThriftサーバーではJDBCおよびODBCインターフェースを使用して、クライアントをCassandraに接続します。
Spark SQL ThriftサーバーではJDBCおよびODBCインターフェースを使用して、クライアントをCassandraに接続します。
大量のデータの読み取りや書き込みを行う場合、DataStaxではCassandraベースのDataFramesを使用して、Spark Cassandra Connectorの使用とそれに付属しているチューニング・パラメーターのメリットを活用することを推奨しています。
Sparkとともに使用する場合、
hive-site.xmlファイルのデフォルトの場所は次のとおりです。
Installer-Servicesおよびパッケージ・インストール |
/etc/dse/spark/hive-site.xml
|
Installer-No Servicesおよびtarボール・インストール |
install_location/resources/spark/conf/hive-site.xml
|
手順
-
ファイルで、Spark SQL Thriftサーバー用のCassandra認証情報を構成します。
Sparkディレクトリー内の
hive-site.xmlファイルを必ず使用してください。
Installer-Servicesおよびパッケージのインストール |
/etc/dse/spark/hive-site.xml |
Installer-No Servicesおよびtarボールのインストール |
install_location/resources/spark/conf/hive-site.xml
|
-
Sparkがサービスとして有効になっている状態で、またはスタンドアローンのインストールで、DataStax Enterpriseを起動します。
-
Sparkディレクトリーへの書き込みパーミッションがあるユーザーとしてdse
spark-sql-thriftserver startコマンドを入力し、サーバーを起動します。
サーバーのデフォルトの設定を上書きするには、--hiveconfオプションを使用して構成プロパティを渡します。構成プロパティの全リストについては、HiveServer2のドキュメントを参照してください。
dse spark-sql-thriftserver start
デフォルトでは、サーバーは起動元のノードにあるlocalhostインターフェースのポート10000でリッスンします。サーバーは特定のポートで起動するように指定できます。たとえば、サーバーをポート10001で起動するには、--hiveconf hive.server2.thrift.port=10001オプションを使用します。ポートの構成とアドレスのバインドは、resources/spark/conf/spark-env.shのHIVE_SERVER2_THRIFT_PORTとHIVE_SERVER2_THRIFT_BIND_HOSTでそれぞれ行うことができます。
dse spark-sql-thriftserver start --hiveconf hive.server2.thrift.port=10001
-
CassandraベースのDataFramesを使用して、大量のデータの読み取りと書き込みを行います。たとえば、
table_a
を参照しながらCassandraベースのDataFrameを使用するtable_a_cass_df
テーブルを作成するには、次のコマンドを実行します。
CREATE TABLE table_a_cass_df using org.apache.spark.sql.cassandra OPTIONS (table "table_a", keyspace "ks")
注: CassandraベースのDataFramesでは、JDBCドライバーを使用してデータを挿入する際に、UUIDおよびInet型に関して互換性の問題が生じます。
-
Spark Cassandra Connectorチューニング・パラメーターを使用して、読み取りと書き込みを最適化します。
-
サーバーを停止するには、dse
spark-sql-thriftserver stopコマンドを入力します。
dse spark-sql-thriftserver stop
次のタスク
これで、JDBCを使用して jdbc:hive2://hostname:port
number
のURIのサーバーにアプリケーションを接続するか、dse spark-beelineを使用できるようになりました。