Apache Spark SQL - краткое описание


Apache Spark SQL - позволяет относительно лего смешать SQL запросы с Spark программой

Поддерживает разные способы доступа включая Hive, Avro, Parquet, ORC, JSON, and JDBC or ODBC стандарты

Сильным приемуществом  Spark SQL является его глубокая интеграция с Spark, позволяющий использовать другие библиотеки(MLlibSpark streaming, GraphX и т.д.) очень просто.

Пример кода:
       
df_ads = sqlContext.read.format("com.databricks.spark.csv").options(delimiter="\t").options(header="true").load("/Volumes/work/data/kaggle/avitocontextadd/AdsInfo.tsv")
df_ads.registerTempTable("ads")

df_test = sqlContext.read.format("com.databricks.spark.csv").options(delimiter="\t").options(header="true").load("/Volumes/work/data/kaggle/avitocontextadd/testSearchStream.tsv")

#Filter only contextual data from training dataset
trainingdata = df_test.filter(df_test["ObjectType"] == 3)
trainingdata.registerTempTable("train")

#basic sql join on each dataframes in apache spark
#Join AdsInfo with filter trainingdata
df_trainads = sqlContext.sql("SELECT t.*,c.Params,c.Price,c.Title FROM train t JOIN ads c ON t.AdID = c.AdID")
df_trainads.registerTempTable("trainads")
 

Полезные ссылки:

Документация

Коментарі

Популярні дописи з цього блогу

Минимальные требование для кластера Hadoop(with Spark)

Apache Spark - основные команды

Apache Spark Resource Management и модель приложений от YARN