소개대규모 스트리밍 분산 처리 프레임 워크배치 처리도 스트리밍처럼 처리 가능상태 기반 처리Flink 데이터 파이프 라인 예시이벤트 기반 애플리케이션하나 이상의 이벤트 스트림에서 이벤트를 수집계산, 상태 업데이트 또는 외부 작업을 실행상태 저장 처리를 통해 수집된 이벤트 기록에 따라 단일 메시지 변환 이상의 논리를 구현 가능데이터 분석 애플리케이션데이터에서 정보와 인사이트를 추출지속적인 업데이트, 쿼리 스트리밍 또는 수집된 이벤트를 실시간으로 처리결과를 지속적으로 내보내고 업데이트하여 분석데이터 파이프라인 애플리케이션한 데이터 스토리지에서 다른 데이터 스토리지로 이동할 데이터를 변환 및 강화프로세스가 지속적으로 작동하여 짧은 대기 시간으로 데이터를 다른 대상으로 이동 가능Flink의 이점구분내용비고무제한..

현재 데이터 레이크 구조로된 플랫폼을 운영하고 있다보니 자연스레 데이터 메시 아키텍쳐에 관심이 생겨 조금은 공부한 내용을 이번 포스트를 통해 정리하고자 한다. 해당 포스트에서는 데이터 메시의 개념과 등장 배경, 기존 중앙 집중형 데이터 아키텍처와의 차이점, 데이터 메시의 4대 원칙, 그리고 실무에서의 도입 방법에 대해서 정리할 생각이다.데이터 메시의 개념과 등장 배경데이터 메시(Data Mesh)는 대규모로 분산된 데이터를 효과적으로 관리하고 활용하기 위한 새로운 접근 방식이자 아키텍처이다. 기존의 중앙 집중형 데이터 아키텍처는 데이터 웨어하우스나 데이터 레이크와 같은 중앙 저장소에 모든 데이터를 모아 관리하는 방식을 취했습니다. 그러나 이러한 방식은 데이터의 양과 다양성이 폭발적으로 증가하는 현대 비즈..
NiFi jks로 인한 재기동 실패 문제 해결법Caused by: java.security.UnrecoverableKeyException: Password verification failed at sun.security.provider.JavaKeyStore.engineLoad(JavaKeyStore.java:790) ... 25 common frames omitted /nifi/conf 경로에 기존 jks 삭제keystore.jks, trustore.jks삭제 이후 재기동시 자동으로 jks 파일들 생성
Apache iceberg는 방대한 분석 데이터 세트를 위한 오픈 테이블 포맷SQL 테이블처럼 작동하는 고성능 테이블 포맷 사용Spark, Trino, PrestoDB, Flink, Impala를 포함한 컴퓨팅 엔진에 테이블을 추가주요 특징스키마 진화(Schema Evolution)추가, 삭제, 업데이트 또는 이름 바꾸기를 지원 → 테이블의 스키마를 유연하게 변경Hive와의 차이Hive에서 스키마 변경은 제한적Hive는 새로운 컬럼 추가는 가능 기존 컬럼의 삭제나 데이터 타입 변경은 어려움숨겨진 파티셔닝(Hidden Partitioning)파티션 관리 방식을 단순화하여 실수로 인한 잘못된 결과나 성능 저하를 방지 → 복잡한 쿼리에서도 잘못된 파티셔닝 회피Hive와의 차이Hive에서도는 파티셔닝을 사용자가..

hdfs federationhadoop에서 가장 중요한 노드를 꼽으라면 당연 네임노드가 가장 중요한 노드라고 할 수 있다. 모든 사용자는 hdfs에서 접근하기 위해서 네임노드를 통해서 데이터 노드 위치를 확인하여 데이터 노드에 데이터를 읽거나 쓸 수 있다.이렇게나 중요한 네임노드는 HA를 위해서 Active, Stand by 노드로 2개 이상 노드로 구성하지만 실질적인 쓰기 작업에는 Active 네임 노드만을 사용한다.(옵저버 네임노드를 사용하면 데이터 읽기는 네임 노드 부하 분산 가능) 그렇기에 Active 네임노드에 문제가 발생하면은 hdfs 자체를 사용할 수 없는 SPOF(단일 장애 지점)이다. 적재되는 데이터 수가 작다면은 생성되는 파일 갯수가 적어 네임노드가 관리해야할 메타 데이터 적어서 괜찮..

Overview Driver SparkSession/SparkContext를 생성 Job을 submit하고, Job을 Task로 변환 Worker 간의 Task 실행을 조정하는 주요 프로세스 Executor 계산 작업을 수행하고 결과를 Driver에게 반환 Spark는 Task 수행시 모든 계산이 메모리 내에서 발생 메모리 할당량이 너무 크면 리소스를 많이 차지 메모리 할당량이 작으면 오버 플로 및 GC 문제가 쉽게 발생 Driver, Executor로 이루어진 두 JVM 프로세스 존재 Executor 메모리 On Heap Memory Object는 JVM heap에 할당 GC에 의해 바인딩 Off Heap Memory Object는 직렬화에 의해 JVM 외부 메모리에 할당 Application에 의해 ..

Spark Driver 하나의 노드에서 실행 스파크 전체의 main() 함수 실행 SparkContext 객체 생성 Application 내 정보의 유지, Executor의 실행 및 실행 분석 등의 역할 수행 사용자의 Job을 Task 단위로 변환 Cluster 모드 Spakr Application 실행시 Application Master Process 생성 → Spark Driver를 실행하는 컨테이너 Spark Driver와 Yarn Resource Manager가 협상을 통해 Application 실행을 위한 리소스 요구 할당 받은 Resource를 Yarn Node Manager에게 Spark Executor 실행을 위한 컨테이너 생성 지시 spark context가 execurtor로 job(t..
Nifi의 클러스터 환경에서 특정 노드만 재기동시 이전 상태와 다르게 service들이 disabled 되는 경우가 있다. 실제로 flow.xml을 확인해보면 재기동 전과 후가 달라져 있는 것으로 볼 수 있으며, 이전 파일은 archive 폴더도 아니고 그 자리에 백업 시간으로 이루어진 백업본 파일이 만들어진다. 이전 flow.xml.gz -> flow-2024-01-23-08-09-34.xml.gz 형태로 변환 5e58b636-018a-1000-0000-00000c588f0e JsonTreeReader org.apache.nifi.json.JsonTreeReader org.apache.nifi nifi-record-serialization-services-nar 1.15.2 true ... 재기동 전 ..
- Total
- Today
- Yesterday
- 설정에러
- bigdata #data_mesh
- MAT
- Apache Nifi
- 실시간처리
- flink
- Federation
- Item Prototypes
- exporter
- OOM
- Discovery Rule
- prometheus
- flow.xml.gz
- nifi
- zabbix
- nifi.flowcontroller.autoResumeState
- hdfs
- java8
- Bigdata
- 빅데이터
- Nifi Architecture
- lld
- hadoop
- error
- openjdk1.8
- Nifi Service
- namenode
- spark driver
- Apache
- Dataflow
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |