JavaのSpark SQLを使用したデータベース・データのクエリー
複数のテーブルにまたがって探索するJavaアプリケーションでSpark SQLクエリーを実行できます。Spark SQLを使用して、テーブル・データのクエリーを行うJavaアプリケーションでは、セッションのインスタンスが必要になります。
Spark SQLを使用してテーブル・データのクエリーを行うJavaアプリケーションでは、最初にorg.apache.spark.sql.SparkSessionのインスタンスが必要になります。
Sparkセッション・オブジェクトを使用して、DataStax Enterpriseに接続します。
builder interfaceを使用して、Sparkセッション・インスタンスを作成します。
SparkSession spark = SparkSession
.builder()
.appName("My application name")
.config("option name", "option value")
.master("dse://1.1.1.1?connection.host=1.1.2.2,1.1.3.3")
.getOrCreate();
Sparkセッション・インスタンスの作成後は、このインスタンスを使用してクエリーからDataFrameインスタンスを作成できます。クエリーは、SparkSession.sqlメソッドを呼び出すことによって実行されます。
DataFrame employees = spark.sql("SELECT * FROM company.employees");
employees.registerTempTable("employees");
DataFrame managers = spark.sql("SELECT name FROM employees WHERE role = 'Manager' ");
返されるDataFrameオブジェクトは、標準のSpark処理をサポートします。
employees.collect();