logo
logo
Hive에서 실시간으로 쇼핑 데이터를 조회할 수 있게 ETL 개선하기
코드너리  |  2022. 09. 26
데이터 파이프라인
데이터 인프라
사용된 기술:
hbase-image
hive-image
hadoop-image
kafka-image
content

얻은 것:

  1. 첫 번째는 대용량 데이터의 사용성이 증대된 것입니다.
    그동안에는 여러 사용처에서 ETL이 완료될 시점을 공유 받아 후속 배치 작업을 실행하곤 했습니다. 이 때문에 간혹 Hadoop 지연이 발생하면 하루 전에 생성된 데이터를 사용해 버리는 문제가 발생했습니다.
    하지만 일 주기, 시간 주기 또는 준실시간 주기로 업데이트된 테이블을 뷰로 제공할 수 있게 되면서 문제가 사라졌습니다. Hadoop 지연이 발생하더라도 비교적 최근 데이터를 제공할 수 있게 됐고, 시간 제약이 사라지면서 사용처가 원하는 시간에 대용량 데이터를 다루는 마이크로 배치를 많이 사용할 수 있게 됐습니다. 예를 들어 이전에는 통계 데이터를 하루 단위로 밖에 만들 수 없었지만 이제는 시간 단위로 만들 수 있게 된 것입니다.
     
  2. 두 번째는 이벤트 드리븐 아키텍처의 운영 및 유지 보수 비용이 감소한 것입니다.
    판매자가 상품 데이터를 잘못 올리거나 유입된 상품 데이터를 잘못 정제해 문제가 발생할 수 있습니다. 이런 경우 디버깅하며 원인을 찾아야 하는데 LINE 쇼핑의 경우 상품 정보 데이터가 많다 보니 쉽지 않았습니다. Kafka에 존재하는 많은 메시지를 확인하는 것 자체도 어려운데 보유 기한도 짧아 문제가 발생한 지 며칠이 지나면 원인을 찾을 수 없었기 때문입니다. 이 문제를 해결하기 위해 KSQL과 Elasticsearch를 도입해 활용하고 있었지만 비용 문제로 활용도를 더 높이기는 어려웠습니다.
    하지만 이제 Hive에 실시간 데이터를 입력하고 업데이트할 수 있게 되면서 고민거리가 해결됐습니다. SQL 문법을 사용할 수 있는 HiveQL로 손쉽게 상품 데이터를 찾을 수 있고, 상대적으로 비용이 저렴한 HDFS를 사용하면서 보유 기한도 늘릴 수 있습니다.
Copyright © 2024. Codenary All Rights Reserved.