클릭하우스
ClickHouse| 개발자 | Click House, Inc. |
|---|---|
| 초기 릴리즈 | 2016년 6월 , 전( |
| 안정된 릴리스 | v22.7.2.15 안정 / 2022년 8월 3일, 전[1] |
| 저장소 | github |
| 기입처 | C++ |
| 운영 체제 | Linux, FreeBSD, macOS |
| 면허증. | Apache 라이센스 2.0 |
| 웹 사이트 | clickhouse |
ClickHouse는 SQL 쿼리를 사용하여 실시간으로 분석 보고서를 생성할 수 있는 온라인 분석 처리(OLAP)용 오픈소스 컬럼 지향 DBMS(Columnar Database Management System)입니다.ClickHouse Inc.는 네덜란드 암스테르담에 본사를 둔 자회사인 ClickHouse B.V.와 함께 미국 캘리포니아 베이 에리어에 본사를 두고 있습니다.
2021년 9월, ClickHouse는 Yandex N.[2]V 등의 참여로 Index Ventures 및 Benchmark Capital로부터 초기 5,000만 달러를 투자받아 오픈 소스 기술을 수용하기 위해 설립되었습니다.2021년 10월 28일 Coatue Management, Altimeter Capital 및 기타 투자자들로부터 20억 달러의 평가에서 총 2억 5천만 달러의 시리즈 B 자금을 지원받았습니다.이 회사는 오픈 소스 프로젝트와 엔지니어링 클라우드 기술을 계속 구축하고 있습니다.
역사
ClickHouse의 기술은 러시아 최대 [3]기술 회사인 Yandex에서 10년 전에 처음 개발되었습니다.2009년 Alexey Milovidov와 개발자는 실시간으로 추가되는 집계되지 않은 데이터에서 실시간으로 분석 보고서를 생성할 수 있는지 가설을 확인하는 실험 프로젝트를 시작했습니다.개발자들은 이 가설을 증명하기 위해 3년을 소비했고, 2012년 Click House는 Yandex에 전력을 공급하기 위해 처음으로 생산에 착수했다.Metrica는 Google Analytics에 이어 세계에서 두 번째로 큰 웹 분석 플랫폼입니다.
이전에 사용되었던 커스텀 데이터 구조와는 달리 ClickHouse는 데이터베이스 관리 시스템으로서 보다 일반적으로 사용할 수 있었습니다.ClickHouse의 성능과 유틸리티는 진정한 열 지향 DBMS를 제공했으며, 이를 통해 시스템은 몇 페타바이트의 원시 데이터에서 몇 초 미만의 지연 시간으로 보고서를 생성할 수 있었습니다.Yandex에서는 Yandex를 포함해 Click House가 널리 채택되었습니다.탱크 부하 테스트 도구 및 얀덱스.사이트의 접근성과 KPI를 감시하는 시장.
2016년 ClickHouse 프로젝트는 2016년 6월 Apache 2 라이센스에 따라 오픈 소스 소프트웨어로 출시되어 전 세계의 분석 활용 사례에 힘을 실어 주었습니다.당시 시스템은 초당 10만 행의 서버 throughput을 제공했지만 Click House는 초당 수억 행의 throughput으로 이 속도를 수행했습니다.
2016년 ClickHouse가 오픈 소스로 출시된 이후, Uber, Comcast, eBay, Cisco와 같은 업계 최고의 기업들이 ClickHouse의 인기는 기하급수적으로 증가했습니다.ClickHouse는 CERN의 LHCb 실험에서도 구현되어 이벤트당 1000개 이상의 속성을 가진 100억 개의 이벤트에 메타데이터를 저장하고 처리했습니다.
특징들
ClickHouse DBMS의 주요 기능은 다음과 같습니다.[4]
- True 열 지향 DBMS. 값과 함께 저장되는 것은 없습니다.예를 들어, 정수 길이 값은 값 옆에 길이 "숫자"가 저장되지 않도록 하기 위해 지원됩니다.
- 선형 확장성서버를 추가하여 클러스터를 확장할 수 있습니다.
- 폴트 톨러런스시스템은 샤드의 클러스터이며, 여기서 각 샤드는 복제본의 그룹입니다.ClickHouse는 비동기 멀티 마스터 복제를 사용합니다.데이터는 사용 가능한 복제본에 작성된 후 나머지 모든 복제본에 배포됩니다.ZooKeeper는 프로세스를 조정하는 데 사용되지만 쿼리 처리 및 실행에는 관여하지 않습니다.
- 페타바이트 단위의 데이터를 저장하고 처리하는 기능.
- SQL 지원ClickHouse는 배열 및 중첩된 데이터 구조, 근사 및 URI 함수, 외부 키 값 저장소를 연결할 수 있는 가용성을 포함하는 확장 SQL 유사 언어를 지원합니다.
- 하이 퍼포먼스[5]
- 데이터 압축
- 하드 디스크 드라이브(HDD)의 최적화.시스템은 랜덤 액세스 메모리(RAM)에 맞지 않는 데이터를 처리할 수 있습니다.
- 데이터베이스(DB) 접속용 클라이언트.데이터베이스 연결 옵션에는 콘솔클라이언트, HTTP API 또는 래퍼 중 하나가 포함됩니다(랩퍼는 Python,[6] PHP,[7] NodeJS,[8] Perl[9], Ruby[10] 및 R에 사용 가능).ClickHouse용 [11][12]ODBC 드라이버 및 JDBC 드라이버도 사용할 수 있습니다.
제한 사항
Click House에는 단점으로 간주되는 몇 가지 기능이 있습니다.
- 트랜잭션은 지원되지 않습니다.
- 본격적인 UPDATE/DELETE 구현이 없다.
사용 사례
Click House는 OLAP [4]쿼리용으로 설계되었습니다.
- 이 기능은 다수의 열을 포함하는 소수의 테이블에서 작동합니다.
- 쿼리는 DB에서 추출된 많은 행을 사용할 수 있지만 열의 일부만 사용할 수 있습니다.
- 쿼리는 비교적 드물어요(통상 서버당 100 RPS 정도).
- 단순한 쿼리의 경우 약 50밀리초의 지연이 허용됩니다.
- 컬럼 값은 상당히 작으며 보통 숫자와 짧은 문자열(예를 들어 URL당 60바이트)로 구성됩니다.
- 단일 쿼리를 처리할 때는 높은 스루풋이 필요합니다(서버당 최대 수십억 행/초).
- 쿼리 결과는 대부분 필터링되거나 집계됩니다.
- 데이터 업데이트는 간단한 시나리오(일반적으로 배치 전용이며 복잡한 트랜잭션은 없습니다)를 사용합니다.
Click House의 일반적인 사례 중 하나는 서버 로그 분석입니다.ClickHouse에 정기적으로 데이터를 업로드한 후(1000개 이상의 행이 있는 꽤 큰 배치로 데이터를 삽입하는 것이 좋습니다) 즉석 쿼리를 사용하여 사고를 분석하거나 오류율, 응답 시간 등의 서비스 메트릭을 모니터링할 수 있습니다.
Click House는 사내 분석가의 내부 데이터 웨어하우스로도 사용할 수 있습니다.ClickHouse는 서로 다른 시스템(예: Hadoop 또는 특정 로그)의 데이터를 저장할 수 있으며 분석가는 이 데이터로 내부 대시보드를 구축하거나 비즈니스 목적으로 실시간 분석을 수행할 수 있습니다.
벤치마크 결과
개발자가 [5]실시한 벤치마크 테스트에 따르면 OLAP 쿼리의 경우 ClickHouse는 Hive(Hadoop 기술 스택 기반 DBMS) 또는 MySQL(일반 RDBMS)보다 100배 이상 빠릅니다.
「 」를 참조해 주세요.
레퍼런스
- ^ "Release v22.7.2.15-stable". Github. Retrieved 8 August 2022.
- ^ https://www.businesswire.com/news/home/20211028005287/en/ClickHouse-Raises-250M-Series-B-To-Scale-Groundbreaking-OLAP-Database-Management-System-Globally.
{{cite news}}:누락 또는 비어 있음title=(도움말) - ^ "Yandex, Russia's biggest technology company, celebrates 20 years". The Economist. 30 September 2017.
- ^ a b "ClickHouse Guide". clickhouse.yandex. Retrieved 2016-11-10.
- ^ a b "Performance comparison of analytical DBMS". clickhouse.yandex. Retrieved 2016-11-10.
- ^ "smi2/phpClickHouse". GitHub. Retrieved 2016-11-10.
- ^ "apla/node-clickhouse". GitHub. Retrieved 2016-11-10.
- ^ "elcamlost/perl-DBD-ClickHouse". GitHub. Retrieved 2016-11-10.
- ^ "archan937/clickhouse". GitHub. Retrieved 2016-11-10.
- ^ "hannesmuehleisen/clickhouse-r". GitHub. Retrieved 2016-11-10.
- ^ "ClickHouse/clickhouse-odbc". GitHub. 13 December 2021.
- ^ "ClickHouse/clickhouse-jdbc". GitHub. 11 December 2021.