314.7. Hive ジョブ
Instead of working with RDDs or DataFrame Spark component can also receive Hive SQL queries as payloads. To send Hive query to Spark component, use the following URI:
Spark RDD producer
spark:hive
次のスニペットは、ジョブへの入力としてメッセージを送信し、結果を返す方法を示しています。
Spark ジョブの呼び出し
long carsCount = template.requestBody("spark:hive?collect=false", "SELECT * FROM cars", Long.class); List<Row> cars = template.requestBody("spark:hive", "SELECT * FROM cars", List.class);
クエリーを実行するテーブルは、クエリーを実行する前に HiveContext に登録する必要があります。たとえば、Spring では、このような登録は次のようになります。
Spark RDD 定義
@Bean Dataset<Row> cars(HiveContext hiveContext) { jsonCars = hiveContext.read().json("/var/data/cars.json"); jsonCars.registerTempTable("cars"); return jsonCars; }