반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 대용량 처리
- 데이터 엔지니어링
- 데이터
- 스파크 스트리밍
- 델타레이크
- kafka rest api
- Redshift
- Data engineering
- spark
- docker
- airflow
- 데이터 엔지니어
- s3
- MySQL
- 데이터 웨어하우스
- 카프카
- AWS
- Zookeeper
- Data Engineer
- 컬럼 기반
- 카프카 구축
- delta lake
- spark streaming
- 레드시프트
- kafka
- Schema Registry
- Parquet
- Data Warehouse
- 스파크
- 에어플로우
Archives
- Today
- Total
데이터 엔지니어 기술 블로그
[🔥Spark] StreamingQueryException: Cannot find earliest offsets of Set(topic-name-0) 본문
데이터 엔지니어링
[🔥Spark] StreamingQueryException: Cannot find earliest offsets of Set(topic-name-0)
jun_yeong_park 2021. 11. 2. 23:53반응형
전체 에러 메세지
StreamingQueryException: Cannot find earliest offsets of Set(topic-name-0). Some data may have been missed. Some data may have been lost because they are not available in Kafka any more; either the data was aged out by Kafka or the topic may have been deleted before all the data in the topic was processed. If you don't want your streaming query to fail on such cases, set the source option "failOnDataLoss" to "false".
원인
1. 스트리밍 쿼리가 실행되다가 어떠한 이유로 종료가 되었다. 마지막으로 처리한 오프셋은 4이다.
2. 새로운 메세지가 20까지 들어온다.
3. 카프카에서 메세지 보존 정책으로 10이하의 모든 메세지가 삭제된다.
4. 스트리밍 쿼리를 다시 실행했을 때 오프셋 5부터 시작해야하지만 메세지는 11부터 있으므로 오류가 발생한다.
해결 방법
1. failOnDataLoss 옵션을 false로 둔다.
failOnDataLoss란?
Whether to fail the query when it's possible that data is lost (e.g., topics are deleted, or offsets are out of range). This may be a false alarm. You can disable it when it doesn't work as you expected.
- topic이 삭제되거나 offset이 범위를 벗어난 경우 쿼리를 실패한다.
- 잘못된 경보일 수 있으니 예상대로 동작하지 않으면 비활성화하면 된다.
- 이 값을 false로 두고, 실패 후 재시작시 토픽의 first offset 부터 시작한다.
- .option("failOnDataLoss", "false")
2. 기존의 체크포인트 파일을 삭제하거나 다른 이름으로 바꾼다.
반응형
'데이터 엔지니어링' 카테고리의 다른 글
[Apache Thrift] 아파치 쓰리프트 간단하게 이해하기 (0) | 2022.01.20 |
---|---|
[🔥Spark] java.lang.AssertionError: assertion failed: Concurrent update to the log. Multiple streaming jobs detected 해결방법 (0) | 2021.11.04 |
[🔥Spark] 스파크 설정하는 방법(Spark Configuration, SparkConf) (0) | 2021.11.01 |
[🔥Spark] Spark Streaming + Kafka 연동하기 (0) | 2021.10.29 |
[🔥Spark] 스파크 AccessControlException: Permission denied 해결방법 (0) | 2021.10.29 |
Comments