› MySQL 5.5 Community Server
› MySQL 5.6 Community Server
› Percona Configuration Wizard
› XtraBackup 搭建主从复制
Great Sites on MySQL
› Percona
› MySQL Performance Blog
› Severalnines
推荐管理工具
› Sequel Pro
› phpMyAdmin
推荐书目
› MySQL Cookbook
MySQL 相关项目
› MariaDB
› Drizzle
参考文档
› http://mysql-python.sourceforge.net/MySQLdb.html
iamfenges
V2EX  ›  MySQL

请教一下 clickhouse 的使用问题

  •  
  •   iamfenges · Jun 27, 2023 · 5410 views
    This topic created in 1186 days ago, the information mentioned may be changed or developed.
    clickhouse 能作为 mysql 的从库吗?官网这个 MaterializedMySQL 引擎又写着是试验性的。你们是怎么使用的
    31 replies  •  2023-06-27 23:02:58 +08:00
    wmz000
        1
    wmz000  
       Jun 27, 2023
    想知道啥需求为啥要使用 ck 做 mysql 的从库?
    vincent7245
        2
    vincent7245  
       Jun 27, 2023   ❤️ 1
    1 可以,但是前提是,ck 是做分析用的,而且数据有延迟,不能做业务

    2 我们用 impala+kudu ,性质和 ck 差不多,但是仅做分析用,数据是通过读取 binlog 同步的,自己写的中间件

    3 不要用分析数据库做业务,不要用分析数据库做业务,不要用分析数据库做业务
    ianEros
        3
    ianEros  
       Jun 27, 2023
    我咋记得这个引擎是类似外表,在 ck 做的映射,查询的时候 ck 还是连到 mysql 查

    一般的方案都是用 canal 同步到 ck ,或者直接用 ck
    经常修改的数据同步到 ck 还要区分版本,有时候还要 merge
    iamfenges
        4
    iamfenges  
    OP
       Jun 27, 2023
    @wmz000 就做一些数据统计,不是业务用的

    @vincent7245 是的,只做业务分析
    iamfenges
        5
    iamfenges  
    OP
       Jun 27, 2023
    @ianEros 你说的是 MYSQL 的表引擎,会直接查 mysql ,现在就是用这个,所以内存爆了
    ianEros
        6
    ianEros  
       Jun 27, 2023
    @iamfenges #5 内存多大 ck 巨吃内存
    iamfenges
        7
    iamfenges  
    OP
       Jun 27, 2023
    @ianEros 感谢,准备改成用 canal 同步试试
    iamfenges
        8
    iamfenges  
    OP
       Jun 27, 2023
    @ianEros 才 8G[捂脸]
    wmz000
        9
    wmz000  
       Jun 27, 2023
    @wmz000 #1 我理解由于这两个的数据模型和查询语句等差距,用 ck 做 mysql 你需要做不少转换类的工作吧,比起加一层同步数据的工作量呢?
    ianEros
        10
    ianEros  
       Jun 27, 2023
    @iamfenges #8
    我说错了,映射表的引擎是 mysql
    8g 有点小,数据量大一点就不够用,如果用 canal 同步的话,离线数据还好,如果数据经常修改的话同步也很麻烦,MergeTree 同一条数据每次修改会存一条记录,同一条记录会存好几个版本
    rongpx95
        11
    rongpx95  
       Jun 27, 2023
    可以是可以,但是考虑到性能,你还需要定时把 MySQL 视图的数据,同步到 CK, 后面基于 CK 做分析
    wmz000
        12
    wmz000  
       Jun 27, 2023
    @iamfenges #8 看你数据量啦,稍微大点,8g 怕是不够 ck 吃的,哈哈
    IDAEngine
        13
    IDAEngine  
       Jun 27, 2023
    @iamfenges 最好 64G 内存起,玩 ck 的话,
    qzwmjv
        14
    qzwmjv  
       Jun 27, 2023
    8G 就别考虑 ck 了
    mywowo
        15
    mywowo  
       Jun 27, 2023
    8G 玩个啥 clickhouse
    sadfQED2
        16
    sadfQED2  
       Jun 27, 2023 via Android
    做从库没听说过,我们是 mysql binlog>kafka>flink>ck
    weijancc
        17
    weijancc  
       Jun 27, 2023
    楼上说内存的, 我用的是个假的 clickhouse 吗, 300w 数据量才占了 700m 内存
    nulIptr
        18
    nulIptr  
       Jun 27, 2023
    @weijancc 300w 数据要啥 ck 。数据少就 mysql 自己玩呗,量上来了再整后面的
    weijancc
        19
    weijancc  
       Jun 27, 2023
    @nulIptr 做 olap 的, 刚部署 10 来天, 一个月后数据就千万了.
    weijancc
        20
    weijancc  
       Jun 27, 2023
    @nulIptr 而且数据量小用 clickhouse 也没什么问题, 我之前数据量 50w, 在低价云主机上的 mysql 执行复杂查询+group 要 7 秒, 而 clickhouse 是秒出结果
    wxf666
        21
    wxf666  
       Jun 27, 2023
    @weijancc #20 好奇你原来的 SQL 是啥? 50W 数据量要 7 秒?
    Frankcox
        22
    Frankcox  
       Jun 27, 2023
    Clickhouse 的内存占用跟什么有关?我们有个单机 8C8G 的 Clickhouse ,里面有七八个表,两三个表有十几亿行,剩下的几千万行,日常任务都是很简单的单表根据 Time 间隔 Select ,看语句执行情况内存占用很少,只有几十还是几百 M ,但是 CPU 拉满了,且一般都是分钟级别查询。
    refits
        23
    refits  
       Jun 27, 2023
    clickhouse 可以把 Mysql 表做外表,你想要分析方便,直接建立外表,然后 insert select 语法把数据快速导入到 clickhouse , 之后再基于 clickhouse 做聚合分析就行了。
    ethsol
        24
    ethsol  
       Jun 27, 2023
    @sadfQED2 flink 是做什么,kafka 不是能直接到 ck 吗
    sadfQED2
        25
    sadfQED2  
       Jun 27, 2023 via Android
    @zong400 流式计算引擎,通过 flink 能够在插入前做各种处理,比如拼表,过滤某些字段等等
    wu00
        26
    wu00  
       Jun 27, 2023
    @iamfenges canal 也挺不稳定的,小项目用 docker 部署了一个单机版的用来监控 binlog ,隔三岔五的假死,翻遍了日志就是没有异常;有条件还是用云服务省心。
    brader
        27
    brader  
       Jun 27, 2023
    可以的,但是我建议你 clickhouse 库只做数据统计用,不要用于强依赖数据一致性的业务。另外 clickhouse 库一定一定要分开专门的服务器来安装,因为 clickhouse 会极致利用服务器资源,和其他软件掺杂一起,可能会影响其他软件的运行。
    自动同步数据的话,你可以看看这个项目,我觉得挺好用,主要是轻量
    https://github.com/brokercap/Bifrost
    v2orz
        28
    v2orz  
       Jun 27, 2023
    @ianEros #3
    canal 不好用,维护更新少,建议换别的 CDC 方案,比如 flink CDC ,或者 DataX
    vgbhfive
        29
    vgbhfive  
       Jun 27, 2023
    可以把数据实时同步到 ck ,然后 ck 做数据分析,我公司就是这么搞得,实时同步工具参考 clickhouse-mysql-data-reader
    iluckypig
        30
    iluckypig  
       Jun 27, 2023
    分析可以,业务不行。
    lixintcwdsg
        31
    lixintcwdsg  
       Jun 27, 2023
    现在大部分公司就是这么用的,从 mysql binlog 那边同步入 CK
    ck 就是个只读的从库
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2378 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 114ms · UTC 11:12 · PVG 19:12 · LAX 04:12 · JFK 07:12
    ♥ Do have faith in what you're doing.