Настройка StreamingContext в Apache Zeppelin

Моя цель - прочитать потоковые данные из потока (в моем случае aws kinesis) и затем запросить данные. Проблема в том, что я хочу запрашивать данные за последние 5 минут на каждом интервале. И я обнаружил, что возможно хранить данные в потоке в течение определенного периода (используя метод StreamingContext.remember(продолжительность)). Искровой интерпретатор Zeppelin автоматически создает SparkSession, и я не знаю, как настроить StreamingContext. Вот что я делаю:

val df = spark
  .readStream
  .format("kinesis")
  .option("streams", "test")
  .option("endpointUrl", "kinesis.us-west-2.amazonaws.com")
  .option("initialPositionInStream", "latest")
  .option("format", "csv")
  .schema(//schema definition)
  .load

Все идет нормально. Затем, насколько я вижу, потоковый контекст запускается, когда поток записи установлен и запущен:

df.writeStream
  .format(//output source)
  .outputMode("complete")
  .start()

Но имея только SparkSession, я не знаю, как выполнить запрос по данным за последние X минут. Какие-либо предложения?

0 ответов

Другие вопросы по тегам