Spark SQLを使用したHiveQLクエリーの実行

Spark SQLは、HiveQL(Sparkジョブに変換されるクエリーを生成するSQL系言語)を使用して作成されたクエリーをサポートします。

Spark SQLは、HiveQL(Sparkジョブに変換されるクエリーを生成するSQL系言語)を使用して作成されたクエリーをサポートします。HiveQLはSpark SQLよりも成熟度が高く、より複雑なクエリーに対応できます。HiveQLクエリーを構築するには、まず新しいHiveContextインスタンスを作成し、sqlメソッドをそのHiveContextインスタンスに対して呼び出すことによってクエリーをサブミットします。

HiveQLの完全な構文については、Hive言語マニュアルを参照してください。

注: DEFERRED REBUILDを使用したインデックスの作成は、Spark SQLではサポートされていません。

手順

  1. Sparkシェルを起動します。
    $ bin/dse spark
  2. 表示されるHiveContextのインスタンスsqlContextを使用して、sqlメソッドをsqlContextオブジェクトに対して呼び出すことによって新しいクエリーをHiveQLで作成します。
    scala> val results = sqlContext.sql("SELECT * FROM my_keyspace.my_table")