成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

一個比傳統數據庫快100-1000倍的數據庫,來看一看?

數據庫 MySQL
ClickHouse 是 Yandex(俄羅斯最大的搜索引擎)開源的一個用于實時數據分析的基于列存儲的數據庫,其處理數據的速度比傳統方法快 100-1000 倍。

[[350836]]

 ClickHouse 是 Yandex(俄羅斯最大的搜索引擎)開源的一個用于實時數據分析的基于列存儲的數據庫,其處理數據的速度比傳統方法快 100-1000 倍。ClickHouse 的性能超過了目前市場上可比的面向列的 DBMS,每秒鐘每臺服務器每秒處理數億至十億多行和數十千兆字節的數據。

一、ClickHouse 是什么?

ClickHouse:是一個用于聯機分析(OLAP)的列式數據庫管理系統(DBMS)。

我們首先理清一些基礎概念

  •  OLTP:是傳統的關系型數據庫,主要操作增刪改查,強調事務一致性,比如銀行系統、電商系統
  •  OLAP:是倉庫型數據庫,主要是讀取數據,做復雜數據分析,側重技術決策支持,提供直觀簡單的結果

接著我們用圖示,來理解一下列式數據庫和行式數據庫區別

在傳統的行式數據庫系統中(MySQL、Postgres和MS SQL Server),數據按如下順序存儲:

在列式數據庫系統中(ClickHouse),數據按如下的順序存儲:

兩者在存儲方式上對比:

以上是ClickHouse基本介紹,更多可以查閱官方手冊。

二、業務問題

業務端現有存儲在Mysql中,5000萬數據量的大表及兩個輔表,單次聯表查詢開銷在3min+,執行效率極低。經過索引優化、水平分表、邏輯優化,成效較低,因此決定借助ClickHouse來解決此問題

最終通過優化,查詢時間降低至1s內,查詢效率提升200倍!

希望通過本文,可以幫助大家快速掌握這一利器,并能在實踐中少走彎路。

三、ClickHouse實踐

1.Mac下的Clickhouse安裝

我是通過docker安裝,查看教程。也可以下載CK編譯安裝,相對麻煩一些。

2.數據遷移:從Mysql到ClickHouse

ClickHouse支持Mysql大多數語法,遷移成本低,目前有五種遷移方案:

  •  create table engin mysql,映射方案數據還是在Mysql
  •  insert into select from,先建表,在導入
  •  create table as select from,建表同時導入
  •  csv離線導入
  •  streamsets

選擇第三種方案做數據遷移: 

  1. CREATE TABLE [IF NOT EXISTS] [db.]table_name ENGINE = Mergetree AS SELECT * FROM mysql('host:port', 'db', 'database', 'user', 'password')  

3.性能測試對比

類型 數據量 表大小 查詢速度
Mysql 5000萬 10G 205s
ClickHouse 5000萬 600MB 1s內

4.數據同步方案

1)臨時表

新建temp中間表,將Mysql數據全量同步到ClickHouse內temp表,再替換原ClickHouse中的表,適用數據量適度,增量和變量頻繁的場景

2)synch

開源的同步軟件推薦:synch 原理是通過Mysql的binlog日志,獲取sql語句,再通過消息隊列消費task

5.ClickHouse為什么快?

  •  只需要讀取要計算的列數據,而非行式的整行數據讀取,降低IO cost
  •  同列同類型,有十倍壓縮提升,進一步降低IO
  •  clickhouse根據不同存儲場景,做個性化搜索算法

四、遇到的坑

1.ClickHouse與mysql數據類型差異性

用Mysql的語句查詢,發現報錯:

解決方案:LEFT JOIN B b ON toUInt32(h.id) = toUInt32(ec.post_id),中轉一下,統一無符號類型關聯

2.刪除或更新是異步執行,只保證最終一致性

查詢CK手冊發現,即便對數據一致性支持最好的Mergetree,也只是保證最終一致性:

如果對數據一致性要求較高,推薦大家做全量同步來解決

五、總結

通過ClickHouse實踐,完美的解決了Mysql查詢瓶頸,20億行以下數據量級查詢,90%都可以在1s內給到結果,隨著數據量增加,ClickHouse同樣也支持集群,大家如果感興趣,可以積極嘗試 : ) 

 

責任編輯:龐桂玉 來源: ITPUB
相關推薦

2024-03-07 08:22:32

CSS變量代碼

2025-05-20 08:53:46

MySQLDocker數據庫

2020-03-04 13:55:28

c3p0數據庫連接池

2010-01-27 13:54:52

IT電影

2018-03-08 11:10:33

分布式存儲Ceph

2010-08-12 16:59:43

DB2數據庫

2011-07-20 13:40:00

SQLite數據庫查詢數據

2019-10-30 10:49:57

數據庫基礎架構IT

2011-08-18 18:18:05

MySQL數據庫優化

2016-08-01 10:38:14

華為

2021-05-14 10:45:21

PythonNoSQL數據庫

2011-06-01 10:59:59

Oceanbase海量數據庫

2017-05-18 12:16:03

LinuxPythonNoSql

2024-01-15 13:34:00

2011-07-20 12:55:17

SQLite數據庫插入數據

2021-05-28 11:30:39

物聯網互聯網IoT

2024-03-26 10:13:54

日志引擎SigLens

2018-02-25 17:30:18

2022-07-08 10:09:47

SPLSQL數據庫

2021-05-06 10:52:09

Java Spring Bo框架
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 精品一区视频 | 亚洲一区二区三区四区视频 | 丁香综合| 国产激情在线 | 久久亚洲二区 | 国产精品日本一区二区不卡视频 | 欧美成人自拍 | 久久国产精品99久久久大便 | 久久亚洲欧美日韩精品专区 | av资源中文在线 | 美女久久久久久久 | 97国产精品视频人人做人人爱 | 9久久精品 | 久久久久久九九九九 | 在线中文字幕亚洲 | 2019天天干夜夜操 | 91资源在线| 91国自视频 | 日韩色图在线观看 | 波多野结衣中文字幕一区二区三区 | 北条麻妃99精品青青久久 | 国产成人精品午夜 | 免费视频一区二区 | 国产成人久久精品一区二区三区 | 麻豆视频在线看 | 蜜月va乱码一区二区三区 | 成人av观看 | 日韩久久综合网 | 一区二区三区 在线 | 国产在线精品一区二区三区 | 久久久久久网站 | 久久丝袜视频 | 国产免费一区二区三区免费视频 | 少妇精品久久久久久久久久 | 91麻豆精品国产91久久久久久久久 | 中文字幕在线一区二区三区 | 亚洲精选久久 | 一区二区三区四区国产 | 久久精品99国产精品日本 | 91社影院在线观看 | 亚洲一区二区三区在线免费观看 |