Hadoop 13. 그 외의 기술들

skh951225·2023년 4월 19일
0

Hadoop 입문

목록 보기
14/14

Impala

  • Clouder 버전의 Hive
  • Hadoop위에 구축된 거대 병렬 SQL engine
  • 오픈소스 이지만 cloudera가 관리
  • Impla의 가장 큰 특징은 always running
    • Hive를 실행할때의 start-up 비용을 줄여서 빠르다.
    • BI-style query를 위해 만들어 졌다.
  • Impala가 Hive에 비해 빠르지만 Hive는 많은 곳에서 사용되고 connectivity가 Impala에 비해서 좋다.
  • Cloudera를 사용한다면 Hive대신 Impala를 사용하는 것을 고려해볼만 하다.

Accumulo

  • HBase와 유사한 Bigtable clone
  • 더 나은 보안 기능을 제공함
    • Cell-based access control
  • server-side programming을 제공. 서버측에서 데이터를 변환할 수 있음
  • 복잡한 보안 요구 사항이 있고 HBase 같은 NoSQL 데이터베이스가 필요하다면 Accumulo를 고려해볼만 하다.
    • 하지만 호환이 되는지 먼저 확인해야함

Redis

  • Memcache와 직접적인 관련은 없지만 같은 목적을 가지고 있음
    • 애플리케이션이 빈번히 액세스하는 정보를 메모리 안에 저장할 수 있게해줌
  • Memcache처럼 단순히 key-value 데이터를 저장하지 않고 해시 맵 등의 전체 데이터 구조를 저장
  • 또한 그 데이터를 자동적으로 디스크에 유지할 수도 있다.
  • 추가적인 기능을 함에도 불구하고 Memcache 만큼 빠르다.
  • 웹 앱에서 Redis는 유명한 캐시 레이어

Ignite

  • Ignite는 Redis의 대안
  • Ignite는 Apache project이며 in-meory data fabric
  • database에 더 가깝다.
    • ACID 보장
    • SQL 지원
  • financial transaction을 하는 app에 적합
  • 데이터를 in-memory processing 해야하고 database처럼 사용해야한다면 고려해볼만함

Elasticsearch

  • distributed document search and analytics engine
  • Wikipedia, Stack Overflow ... 등에서 이용
    • Wikipedia에서 검색하면 Elasticsearch가 가장 적절한 문서를 찾아줌
  • Hadoop과 직접적인 연관은 없지만 Elasticsearch에 데이터를 보내거나 가져오는 일을 해야할 수도있음
  • realtime query를 다룰 수 있음
  • Kibana와 함께 사용하면 interactive exploration이 가능함
  • AWS에서 Elasticsearch 서비스를 제공

AWS

  • Kinesis - Kafka
  • 그 외의 AWS 서비스
  • 분산저장 솔루션 : S3 - HDFS
  • Elasticsearch Service/ CloudSearch
  • DynamoDB - Cassandra
  • Amazon RDS - MySQL
  • in-memory cache : ElasticCache - Redis
  • AI / ML services
  • EMR(Elastic MapReduce) - Hadoop + Spark

Apache NiFi

  • data routing하는 directed graph
  • 클러스터로 들어오는 데이터의 흐름을 체계화하는 수단으로 사용
  • Kafka, HDFS, Hive 같은 소스에 연결할 수 있음
  • Web UI를 통해 복잡한 시스템이나 dataflow를 디자인할 수 있음
  • IoT sensor 데이터를 관리하는데 자주 쓰임
  • SparkStreaming, Storm과 같은 것의 입력 소스로 자주 사용

Falcon

  • Falcon은 Oozie 위에서 작동하는 'data governance engine'입니다
  • Hortonworks에 포함
  • NiFi 처럼 data processing graph의 construction을 담당하기도 하지만 주된 사용 목적은 이미 cluster에 들어온 data의 흐름을 관리한다.
  • Oozie에 너무 많은 workflow가 있어서 일종의 관리자가 필요할 때 Falcon을 사용하면 된다.

Apache Slider

  • Hortonworks에 포함
  • YARN 클러스터에 분산하려는 범용 애플리케이션을 위한 도구
  • 만약 여러분이 직접 작성한 애플리케이션이 있다면 Slider를 사용해 그것을 클러스터에 배치하고 모니터링하며 시간에 따라 그 용량을 늘리거나 줄임
  • Slider를 사용해 애플리케이션의 인스턴스를 얼마나 많이 작동할지 그리고 필요에 따라 시작하고 멈출지를 통제

0개의 댓글