clickhouse
-
Sentry 에서 Clickhouse 를 택한 이유개발 2024. 8. 20. 21:38
Sentry 에서 Snuba 라는 검색 인프라를 도입한 이유를 설명한 아티클인데 이벤트 데이터베이스를 Postgres 에서 Clickhouse 로 넘어간 이유를 중점적으로 다루고 있어 Clickhouse 또는 OLAP 에 관심 있는 개발자라면 참고할 만하다. Sentry 는 모바일이나 서버에서 보내는 에러를 실시간으로 수집하고 사용자에게 알럿을 보내주는 오픈소스 모니터링 툴이다. 하루에도 수백만개의 에러가 들어오곤하니 대용량 데이터의 실시간 처리가 무엇보다 중요한 서비스다. Sentry 에선 원래 이벤트 데이터를 Postgres 에 넣어두고 비정규화 방식을 적용하면서 관리했다. 예를 들어 Time Seen 처럼 누적 통계 데이터 값을 읽어오는 경우 매번 count 쿼리를 치는게 아니라 Time Seen ..
-
OLAP vs OLTP 데이터베이스개발/기술 2024. 4. 16. 11:36
데이터베이스는 어떤 기능에 초점을 두느냐에 따라 OLAP, OLTP 데이터베이스로 나뉜다. 좀 거칠게 단순화하면 쓰기 성능은 떨어지더라도 읽기 성능을 극대화 할때는 OLAP (Online Analytic Processing), 읽기 성능이 떨어지더라도 안정적인 트랜잭션을 제공하는데 초점을 둔다면 OLTP (Online Transaction Processing) 데이터베이스로 구분할 수 있다. 사용 케이스에 따라 구분할 수 있는데 은행, 온라인 쇼핑, 항공기 예약처럼 사용자의 쓰기 데이터가 빠르게 처리돼야 하는 경우 OLTP 데이터베이스를 사용하고 데이터 분석 툴처럼 복잡한 쿼리 검색이 빠르게 처리돼야 하는 경우 OLAP 데이터베이스를 사용한다. MySQL, PostgreSQL, Maria DB 처럼 우리..
-
Clickhouse 가 빠른 이유개발/기술 2024. 4. 11. 11:48
Clickhouse 는 Online Analytic Processing(OLAP) 에 최적화된 데이터베이스로 다른 데이터베이스에 비해 월등한 검색 속도를 자랑한다. 이번 포스트에서는 어떤 요소들 때문에 Clickhouse 가 속도가 빠른지 정리했다 Column oriented DBMS Clickhouse 는 칼럼형 데이터베이스를 사용하고 있다. 칼럼형 구조가 생소할 수 있는데 먼저 이것과 반대되는 개념인 로우형(Row-oriented) 데이터베이스에 대해서 먼저 알아보자 Row-oriented DBMS 같은 행에 있는 데이터 단위로 저장되는 형태다. MySQL 과 PostgreSQL 이 대표적인 Row 형 데이터베이스다 만약 (시간, 주소, 전화번호) 정보를 저장하는 데이터베이스라면 세가지 데이터를 같은..