Apache Cassandra 사례 연구

NoSQL 개념

Miriam Antona

Software engineer

Apache Cassandra - 개요

Apache Cassandra 로고

  • 인기 있는 열 패밀리 데이터베이스
  • 원래 Facebook에서 개발
  • 오픈 소스
  • 최종적으로 Apache 재단 프로젝트로 편입
NoSQL 개념

Apache Cassandra - 특징

  • 분산형
    • 데이터가 클러스터 노드 전반에 분산
    • 모든 노드가 동일한 역할
    • 마스터 노드 없음
  • 고가용성
  • 단일 장애 지점 없음
  • 노드 추가로 수평 확장
  • Cassandra 클라이언트 드라이버: C#, Java, Python, Scala 등
NoSQL 개념

Apache Cassandra - 특징

  • Cassandra Query Language(약칭 CQL)
    • 데이터 조회
    • SQL과 유사한 문법
    • 테이블(열 패밀리), 행, 열
    • CQL과 SQL의 차이:
      • 조인 없음
      • 외래 키 없음
      • 서브쿼리 없음 등
      • 행마다 열 개수가 달라질 수 있음
SELECT * FROM users WHERE user_id IN (212, 213, 214);
NoSQL 개념

Apache Cassandra - 생태계

  • 서드파티 Cassandra 프로젝트, 도구, 제품, 서비스
    • 클라우드 제공
    • 설치 도구
    • 개발자 프레임워크
    • 커넥터
    • 기타
NoSQL 개념

Apache Cassandra - 고객사

일부 Apache Cassandra 고객 로고

NoSQL 개념

Bigmate 사례 연구 - 개요

  • 위치 추적
  • 산업 센서
  • 생산성

Bigmate 로고

NoSQL 개념

Bigmate 사례 연구 - 문제와 해결

  • IoT 플랫폼:
    • 서로 다른 데이터를 대량 수집·처리
    • IoT 센서·디바이스·다른 플랫폼과 통합
    • 실시간 처리
    • 여러 지역에 규모 확장·배포
    • 애플리케이션 예:
      • Thermy -> 사람의 피부 온도 측정
      • Warny -> 충돌 가능성 감지
  • MySQL, MongoDB, Apache Cassandra 등 테스트
    • Apache Cassandra 선택
    • 더 우수한 확장성
NoSQL 개념

Bigmate 사례 연구 - 결과

  • 동시 사용자 수백만 건의 운영
  • 단일 고객에 실시간 데이터 20,000포인트 표시
  • 장애 허용(데이터 복제)
NoSQL 개념

Bigmate 사례 연구 - 결과

  • 동시 사용자 수백만 건의 운영
  • 단일 고객에 실시간 데이터 20,000포인트 표시
  • 장애 허용(데이터 복제)
1 https://cassandra.apache.org/case-studies/
NoSQL 개념

연습해 봅시다!

NoSQL 개념

Preparing Video For Download...