목록데이터 엔지니어링 정복/Hadoop Ecosystem (27)
지구정복
1. 개념 더보기 Storm에서 특이한 데이터만 Redis에 저장하는데 여기서 특이한 데이터를 찾아내는 로직이나 룰을 정의하는 것이 Esper의 역할이다. Esper의 쿼리를 통해서 이러한 로직을 정의할 수 있다. Storm이 대규모의 실시간 데이터를 단순 가공 및 추출 처리하는 데는 문제없지만 실시간으로 발생하는 데이터로부터 복잡하거나 특이한 패턴을 가진 데이터를 찾고, 그 패턴에 따른 각각의 다른 이벤트를 처리하는 것은 어려운 일이다. 실시간으로 발생하는 데이터 간의 관계를 복합적으로 판단 및 처리하는 것을 CEP(Complex Event Processing)라고 하는데 Esper가 바로 CEP 기능을 제공한다. Esper를 이용하면 CEP처리를 위한 다양한 조건과 복합 이벤트를 하나의 룰로 쉽게 정..
1. 개념 더보기 대규모 메시지성 데이터들이 수백 수천건이 발생하고 이를 Kafka에 담는다. Kafka에는 비동기성 대규모 메시지 데이터들을 버퍼링하기 위한 Topic을 제공하고 이 Topic에 있는 데이터를 Consumer가 빠르게 빼내줘야 한다. 왜냐하면 Topic의 메모리 혹은 Broker 디스크의 한계가 발생하기 때문이다. 한계가 발생하기 전에 원천에서 데이터가 빠르게 수백 수천건이 발생한다면 Consumer도 똑같이 빠르게 수백 수천건을 빼서 소비를 해줘야 한다. 그리고 이 데이터들을 영구 저장소인 HDFS, NoSQL, RDBMS, Redis 등에 저장을 해줘야 한다. 따라서 Consumer도 빠르게 데이터를 빼서 소비를 해야 하기 때문에 분산 병렬 처리를 해줘야 한다. 이를 담당하는 것이 ..
공식 페이지 : redis.io/ 1. 개념 더보기 Redis는 분산 캐시 시스템이면서 NoSQL 데이터베이스처럼 대규모 데이터 관리 능력도 갖춘 IMDG(In-Memory Data Grid) 소프트웨어이다. 마찬가지로 키-값 형식의 데이터 구조를 분산 서버상의 메모리에 저장하면서 고성능의 응답 속도를 보장한다. HBase와의 차이점은 대규모로 발생되는 메시지성 실시간 데이터들 중에 일부 특정 데이터만 HBase에 저장하기 전에 Redis에 저장할 필요가 있을 경우에 사용된다. 그래서 다양한 데이터 타입을 지원해서 단순히 키-값 형태의 데이터뿐만 아니라 더 복잡한 데이터들도 저장할 수 있다. 또한 인메모리 데이터를 영구적으로 저장할 수 있는 스냅샷 기능을 제공하며, 데이터 유실에 대비해 AOF(Appen..
참고 사이트 flume.apache.org/FlumeUserGuide.html#flume-sources Flume 1.9.0 User Guide — Apache Flume The file_roll sink and the hdfs sink both support the EventSerializer interface. Details of the EventSerializers that ship with Flume are provided below. Body Text Serializer Alias: text. This interceptor writes the body of the event to an output stream wi flume.apache.org cyberx.tistory.com/139 데이터 수..