Elasticsearch Spark, как запрашивать несколько раз?

Я на ноутбуке jupyter.

Я хотел бы использовать запрос dsl для подготовки исходного кадра данных.

Я использую conf.set("es.query", dsl_query) для этого. (https://www.elastic.co/guide/en/elasticsearch/hadoop/current/configuration.html#_querying)

Но затем я хочу применить другой запрос для подготовки другого фрейма данных, и я не могу найти способ применить новый dsl_query без создания нового SparkContext

Но я также не нашел способа воссоздать SparkContext внутри среды jupyter.

Я хочу выполнить анализ, используя QueryDSL-1 в качестве базового уровня, а затем выполнить еще один анализ, используя QueryDSL-2 в качестве еще одного базового уровня.

Есть ли способ сделать это без создания двух блокнотов?


person eugene    schedule 13.02.2019    source источник
comment
вам не нужно определять запрос в вашей конфигурации искры...   -  person eliasah    schedule 13.02.2019
comment
вы можете указать es.query в качестве опции для вашего DataFrameReader, т.е. spark.read.option("es.query", dsl_query).option("...", "...") ...   -  person eliasah    schedule 13.02.2019
comment
да, это работает, вы можете сделать это как ответ, чтобы я мог принять   -  person eugene    schedule 25.11.2019


Ответы (1)


Вам просто нужно указать es.query в качестве опции для вашего DataFrameReader, т.е.:

spark.read.option("es.query", dsl_query).option("...", "...")
person eliasah    schedule 25.11.2019