日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

什么是 ClickHouse(实时数据分析数据库)

發布時間:2024/3/26 数据库 70 豆豆
生活随笔 收集整理的這篇文章主要介紹了 什么是 ClickHouse(实时数据分析数据库) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄

  • 什么是 ClickHouse
    • 軟件介紹
      • 簡介
      • 市場環境
      • 目前國內社區火熱,各個大廠紛紛跟進大規模使用:
    • 特點
    • 優點
      • 1、真正的面向列的DBMS
      • 2、數據壓縮
      • 3、磁盤存儲的數據
      • 4、多核并行處理
      • 5、在多個服務器上分布式處理
      • 6、SQL 支持
      • 7、向量化引擎
      • 8、實時數據更新
      • 9、支持近似計算
      • 10、數據復制和對數據完整性的支持
    • 缺點
    • 環境搭建
      • 下載軟件
      • 上傳安裝
      • 配置文件
      • 啟動服務
      • 可視化工具 DBeaver 連接

什么是 ClickHouse

軟件介紹


簡介

  • 1、ClickHouse 是俄羅斯搜索巨頭 Yandex 公司早 2016年 開源的一個極具 " 戰斗力 " 的實時數據分析數據庫,開發語言為C++
  • 2、是一個用于聯機分析 (OLAP:Online Analytical Processing) 的列式數據庫管理系統(DBMS:Database Management System),簡稱 CK
  • 3、工作速度比傳統方法快100-1000倍,ClickHouse 的性能超過了目前市場上可比的面向列的DBMS。 每秒鐘每臺服務器每秒處理數億至十億多行和數十千兆字節的數據。

市場環境

  • 1、隨著業務的迅猛增長,Yandex.Metrica目前已經成為世界第三大Web流量分析平臺,每天處理超過200億個跟蹤事件。能夠擁有如此驚人的體量,在它背后提供支撐的ClickHouse功不可沒。
  • 2、ClickHouse已經為Yandex.Metrica存儲了超過20萬億行的數據,90%的自定義查詢能夠在1秒內返回,其集群規模也超過了400臺服務器。雖然ClickHouse起初只是為了Yandex.Metrica而研發的,但由于它出眾的性能,目前也被廣泛應用于Yandex內部其他數十個產品上。

目前國內社區火熱,各個大廠紛紛跟進大規模使用:

  • 今日頭條 內部用ClickHouse來做用戶行為分析,內部一共幾千個ClickHouse節點,單集群最大1200節點,總數據量幾十PB,日增原始數據300TB左右。
  • 騰訊 內部用ClickHouse做游戲數據分析,并且為之建立了一整套監控運維體系。
  • 攜程 內部從18年7月份開始接入試用,目前80%的業務都跑在ClickHouse上。每天數據增量十多億,近百萬次查詢請求。
  • 快手 內部也在使用ClickHouse,存儲總量大約10PB, 每天新增200TB, 90%查詢小于3S。

特點


1、開源的列存儲數據庫管理系統,支持線性擴展簡單方便高可靠性

2、容錯跑分快:比Vertica快5倍,比Hive快279倍,比MySQL快800倍,其可處理的數據級別已達到10億級別

  • 速度對比圖

3、功能多:支持數據統計分析各種場景,支持類SQL查詢異地復制部署

優點


1、真正的面向列的DBMS

  • ClickHouse是一個DBMS,而不是一個單一的數據庫。它允許在運行時創建表和數據庫、加載數據和運行查詢,而無需重新配置和重新啟動服務器

2、數據壓縮

  • 一些面向列的DBMS(INFINIDB CE 和 MonetDB)不使用數據壓縮。但是,數據壓縮確實是提高了性能

3、磁盤存儲的數據

  • 許多面向列的DBMS(SPA HANA和GooglePowerDrill))只能在內存中工作。但即使在數千臺服務器上,內存也太小了。

4、多核并行處理

  • 多核多節點并行化大型查詢

5、在多個服務器上分布式處理

  • 在clickhouse中,數據可以駐留在不同的分片上。每個分片都可以用于容錯的一組副本,查詢會在所有分片上并行處理

6、SQL 支持

  • ClickHouse sql 跟真正的sql有不一樣的函數名稱。不過語法基本跟SQL語法兼容,支持JOIN/FROM/INJOIN子句標量子查詢支子查詢

7、向量化引擎

  • 數據不僅按列式存儲,而且由矢量-列的部分進行處理,這使得開發者能夠實現高CPU性能

8、實時數據更新

  • ClickHouse支持主鍵表。為了快速執行對主鍵范圍的查詢,數據使用合并樹(MergeTree)進行遞增排序。由于這個原因,數據可以不斷地添加到表中)

9、支持近似計算

  • 統計全國到底有多少人?143456754 14.3E

10、數據復制和對數據完整性的支持

  • ClickHouse使用異步多主復制。寫入任何可用的復本后,數據將分發到所有剩余的副本。系統在不同的副本上保持相同的數據。數據在失敗后自動恢復

缺點


  • 沒有完整的事務支持,不支持Transaction想快就別Transaction

  • 缺少完整Update/Delete操作,缺少高頻率、低延遲的修改或刪除已存在數據的能力,僅用于批量刪除或修改數據。

  • 聚合結果必須小于一臺機器的內存大小

  • 支持有限操作系統,正在慢慢完善

  • 不適合Key-value存儲,不支持Blob等文檔型數據庫

環境搭建


下載軟件

  • 官網下載

  • 備用下載地址

  • 安裝包類別

    • clickhouse-common-static — ClickHouse編譯的二進制文件
    • clickhouse-server — 創建 clickhouse-server 軟連接,并安裝默認配置服務
    • clickhouse-client — 創建 clickhouse-client 客戶端工具軟連接,并安裝客戶端配置文件

上傳安裝

通過rz 或者 Xshell 上傳文件

  • 安裝

    • [root@node01 ~]# rpm -ivh clickhouse-common-static-21.6.8.62-2.x86_64.rpm

    • [root@node01 ~]# rpm -ivh clickhouse-server-21.6.8.62-2.noarch.rpm

      • 輸入密碼:123456
    • [root@node01 ~]# rpm -ivh clickhouse-client-21.6.8.62-2.noarch.rpm

  • 查看

    • [root@node01 ~]# rpm -qa | grep clickhouse

      • 列出所有包含 clickhouse 字段的軟件信息
    • [root@node01 ~]# rpm -ql clickhouse-server-21.6.8.62-2.noarch

      • 查看rpm包安裝的詳細路徑
    • [root@node01 ~]# ll /etc/clickhouse-server/

      • 查看路徑下文件

配置文件

  • 1、修改權限

    • [root@node01 ~]# chmod 644 /etc/clickhouse-server/config.xml
    • [root@node01 ~]# chmod 644 /etc/clickhouse-server/users.xml
  • 2、修改配置文件 config.xml

    • [root@node01 ~]# vim /etc/clickhouse-server/config.xml
    • 配置內容
    <!-- 需要主動添加這一行 --> 166 <listen_host>::</listen_host> <!-- 關鍵配置,默認不需要修改 --> 73 <http_port>8123</http_port> 82 <tcp_port>9000</tcp_port> 336 <path>/var/lib/clickhouse/</path> 515 <default_profile>default</default_profile> 530 <default_database>default</default_database>
  • 3、修改配置文件 users.xml

    • [root@node01 ~]# vim /etc/clickhouse-server/users.xml
    • 配置內容
    64 <password>123456</password>

啟動服務

  • 1、開啟服務

    • [root@node01 ~]# systemctl start clickhouse-server.service
  • 2、客戶端登錄

    • [root@node01 ~]# clickhouse-client -h 192.168.88.101 -u default --password

      • 默認用戶 default 密碼 123456
  • 3、查看節點的信息

    • select * from system.clusters;

可視化工具 DBeaver 連接


底線。。。

總結

以上是生活随笔為你收集整理的什么是 ClickHouse(实时数据分析数据库)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。