Я использую подход 2 от http://spark.apache.org/docs/latest/streaming-kafka-integration.html, я использую проверку чек, и когда мне приходилось менять код и передислоцировать мой код, иногда контрольная точка бросает исключения, и если по какой-то причине мне пришлось удалить checkpoint directory, как я могу повторно использовать папки каталога контрольных точек для получения сообщений от kafka, я думаю, что в каталоге контрольной точки хранятся кафкинские смещения.spark kafka integration checkpoint повторное использование
ответ
Да, я это видел. Повторно скомпилированный код иногда генерирует исключение (очень странные) при использовании контрольной точки.
Справедливости ради, точка контрольной точки заключается в том, что если есть проблема, связанная с данными, вы сможете восстановить ее.
Да: Когда вы делаете контрольную точку для KafkaDstream, ваши смещения сохраняются. Итак, когда вы выздоравливаете, вы начинаете с того места, где вы ушли последним.
Если вы хотите более мелкозернистый контроль ваших смещений Kafka, взгляните на cody's example. Он парень, который написал Direct KafkaDstream.
как я могу повторно использовать папки каталога контрольных точек, чтобы получать сообщения от Кафка, я думаю, что контрольная точка каталог имеет Кафка зачетов хранятся
Если вы изменили свой код, вы не можете. Контрольная точка Spark Streaming не только сохраняет базовый RDD, но также сохраняет метаданные, например, искровой график, выполняемый в момент времени, поэтому он может восстанавливать линию при возобновлении после сбоя, например.
Это означает, что если вы измените свой код, вам нужно будет удалить любые контрольные данные перед возобновлением вашей потоковой работы. Это также означает, что смещения kafka, хранящиеся в вашем каталоге контрольных точек, вам бесполезны. Вот почему рекомендуется вручную сохранять ваши смещения, если вы используете подход без потоков, введенный в Spark 1.3.
From the documentation (курсив мой):
Обратите внимание, что один недостаток этого подхода заключается в том, что она не обновляет смещения в Zookeeper, следовательно Zookeeper основе Кафка инструменты мониторинга не будет показывать прогресс. Однако вы можете получить доступ к смещениям обработанных с помощью этого подхода в каждой партии и обновить Zookeeper самостоятельно (см. ниже).
Там даже фрагмент кода, чтобы вы начали:
// Hold a reference to the current offset ranges, so it can be used downstream
var offsetRanges = Array[OffsetRange]()
directKafkaStream.transform { rdd =>
offsetRanges = rdd.asInstanceOf[HasOffsetRanges].offsetRanges
rdd
}.map { // Do stuff
}.foreachRDD { rdd =>
for (o <- offsetRanges) {
println(s"${o.topic} ${o.partition} ${o.fromOffset} ${o.untilOffset}")
}
}
- 1. Spark Invalid Checkpoint Directory
- 2. Повторное использование кэшированного Spark RDD
- 3. Kafka Storm Integration
- 4. Spring Integration Kafka
- 5. Spark Streaming, kafka: java.lang.StackOverflowError
- 6. Прямой подход Spark и Kafka
- 7. Spring Integration Kafka threading config
- 8. spring integration kafka xml exception
- 9. Spring Integration Kafka Tomcat issue
- 10. Kafka + Spark Streaming: ClosedChannelException
- 11. Spark Streaming Kafka Consumer
- 12. spark kafka security kerberos
- 13. Spark Kafka WordCount Python
- 14. Spark Streaming Kafka stream
- 15. Spark Streaming Kafka противодавление
- 16. Kafka Spring Integration: заголовки не подходят для потребителя kafka
- 17. spring-integration-kafka Maven Ошибка сборки: Не могу найти spring-integration-kafka: jar: 1.2.2.BUILD-SNAPSHOT
- 18. Как конвертировать из spring-integration-kafka 1.0.0M (XML config) в spring-integration-kafka 1.2.1 (Java config)?
- 19. EvaluationContext Null With Spring Integration и Kafka
- 20. Kafka Spark-Streaming offset issue
- 21. Spark Streaming + kafka «JobGenerator» java.lang.NoSuchMethodError
- 22. Spark streaming + пропускная способность kafka
- 23. Spark Streaming от Kafka Consumer
- 24. DSE Spark Streaming + Kafka NoSuchMethodError
- 25. Spark Python Avro Kafka Deserialiser
- 26. Ошибка преобразования Memsql Spark-Kafka
- 27. Pause Spark Kafka Direct Stream
- 28. Спарк Checkpoint
- 29. Spark Stream Kafka и Hbase Config
- 30. Использование многопроцессорной обработки python с помощью Spark и Kafka
Посмотрите на это: http://blog.cloudera.com/blog/2015/03/exactly-once-spark -streaming-из-апаша-Кафка / – Markon