Apache Spark SQL - краткое описание
Apache Spark SQL - позволяет относительно лего смешать SQL запросы с Spark программой
Поддерживает разные способы доступа включая Hive, Avro, Parquet, ORC, JSON, and JDBC or ODBC стандарты
Сильным приемуществом Spark SQL является его глубокая интеграция с Spark, позволяющий использовать другие библиотеки(MLlib, Spark 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")
Полезные ссылки:
Документация
Коментарі
Дописати коментар