ClickHouse Kafka 性能

2023-12-27

按照文档中的示例:https://clickhouse.yandex/docs/en/table_engines/kafka/ https://clickhouse.yandex/docs/en/table_engines/kafka/

我使用 Kafka Engine 创建了一个表和一个将数据推送到的物化视图合并树 table.

这是我的表的结构:

CREATE TABLE games (
    UserId UInt32,
    ActivityType UInt8,
    Amount Float32,
    CurrencyId UInt8,
    Date String
  ) ENGINE = Kafka('XXXX.eu-west-1.compute.amazonaws.com:9092,XXXX.eu-west-1.compute.amazonaws.com:9092,XXXX.eu-west-1.compute.amazonaws.com:9092', 'games', 'click-1', 'JSONEachRow', '3');


CREATE TABLE tests.games_transactions (
    day Date,
    UserId UInt32,
    Amount Float32,
    CurrencyId UInt8,
    timevalue DateTime,
    ActivityType UInt8
 ) ENGINE = MergeTree(day, (day, UserId), 8192);


  CREATE MATERIALIZED VIEW tests.games_consumer TO tests.games_transactions
    AS SELECT toDate(replaceRegexpOne(Date,'\\..*','')) as day, UserId, Amount, CurrencyId, toDateTime(replaceRegexpOne(Date,'\\..*','')) as timevalue, ActivityType
    FROM default.games;

在 Kafka 主题中,我每秒收到大约 150 条消息。

一切都很好,只是表中数据的更新有很大的延迟,绝对不是实时的。

似乎只有当我到达时数据才会从 Kafka 发送到表中65536 条新消息准备在 Kafka 中消费

我应该设置一些特定的配置吗?

我尝试从 cli 更改配置:

SET max_insert_block_size=1048
SET max_block_size=655
SET stream_flush_interval_ms=750

但没有任何改善

我应该更改任何特定配置吗?
我应该在创建表之前更改上述配置吗?


ClickHouse github 上有一个问题 -https://github.com/yandex/ClickHouse/issues/2169 https://github.com/yandex/ClickHouse/issues/2169.

基本上你需要设置 max_block_size (http://clickhouse-docs.readthedocs.io/en/latest/settings/settings.html#max-block-size http://clickhouse-docs.readthedocs.io/en/latest/settings/settings.html#max-block-size)在创建表之前,否则将无法工作。

我使用了覆盖 users.xml 的解决方案:

<yandex>
    <profiles>
        <default>
           <max_block_size>100</max_block_size>
        </default>
    </profiles>
</yandex>

我删除了表和数据库并重新创建了它们。它对我有用。现在表可能每 100 条记录更新一次。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ClickHouse Kafka 性能 的相关文章

随机推荐

  • 快速从基类返回子类

    我试图允许超类中的方法返回子类的实例 以便我可以在父类和子类之间使用方法链接 但是 当我尝试链接这些方法时 出现错误 BaseClass 没有名为 someOtherChainableMethod 的成员 这是我的代码 class Base
  • httpurlconnection 在 Android 4.2 上非常慢

    我可以使用 httpurlconnection 成功连接 发送和接收数据 但在我的手机 三星 s4 4 2 和 android 4 2 模拟器上加载所有数据需要很长时间 但在 Android 2 3 x 模拟器上加载图片大约需要 1 2 秒
  • R - ggplot2 等高线图

    我正在尝试用 R 复制 Andrew Ng 在 Coursera 上的机器学习课程中的代码 因为该课程是在 Octave 中 基本上我必须为多项式正则化逻辑回归绘制非线性决策边界 p 0 5 我可以使用基础库轻松复制该图 contour u
  • jQuery UI:可拖动滚动问题

    我正在尝试使用 jQuery UI 构建一个可拖放的文件夹文件视图 但我遇到了一个问题 我认为这归因于助手 这是我的代码 The HTML div span Parent Directory 1 span div span class fo
  • C++ 对 vtable 的未定义引用

    我正在学习C 我正在尝试做一个练习 用单个函数定义纯虚拟类的多个实现 我在链接使用这些实现的类时遇到问题 gt BasicMath h lt ifndef BASIC MATH H define BASIC MATH H include
  • 为什么 Crashlytics 报告的崩溃次数比 Google Play Console 少得多?

    我在 Google Play 商店上发布了一款集成了 Firebase Crashlytics 的应用程序 我在 Google Play 控制台中看到 当我取消选择 从 Google Play 安装 过滤器时 出现了许多新的崩溃 属于 从
  • 命令行查找目录中的第一个文件

    我的目录结构如下 Directory1 file1 jpg file2 jpg file3 jpg Directory2 anotherfile1 jpg anotherfile2 jpg anotherfile3 jpg Director
  • 我如何检测双卡设备中哪个卡的新拨出电话?

    我知道我可以通过该接收器检测到新的拨出呼叫
  • 大文件上传期间 Grails 连接超时

    我想防止SocketTimeoutException如果用户尝试从我的 Grails Web 应用程序中的上传表单上传大文件 大约 1 分钟后就会发生这种情况 我知道这是 Tomcat 的问题而不是 Grails 的问题 但我在修改方面有点
  • 优化以通配符开头的 LIKE 表达式

    我在 SQL Server 数据库中有一个表 其中包含地址字段 例如 1 Farnham Road Guildford Surrey GU2XFF 我想在搜索字符串之前和之后使用通配符进行搜索 SELECT FROM Table WHERE
  • 项目文件夹中的 __init__.py 破坏了鼻子测试

    项目树 bar py test init py test bar py bar py def dumb true return True 测试 test bar py import bar def test bar true assert
  • Android:关闭/丢失蓝牙连接或文件接收 -> 执行某些操作

    我想编写一个应用程序 通过以下方式监视我配对的蓝牙连接 如果文件来自配对源 则应存储该文件 如果没有文件被传递并且蓝牙连接中断 我的应用程序将存储一个虚拟文件 存储文件效果很好 我的主要问题是如何在显示器上没有活动的情况下运行整个过程 我读
  • 使用 OpenStreetMap 获取给定 GPS 坐标集的国家/地区名称

    有谁知道是否有办法使用 OpenStreetMap 离线或 API 来获取给定的 GPS 坐标集的国家 地区名称 我对使用此处提到的 Google 或 Geonames API 不感兴趣 GPS 坐标的国家 地区名称 https stack
  • 更新会员属性。不支持的方法

    我已经尝试研究我收到的异常几个小时了 但没有任何进展 我只是尝试使用以下代码更新会员资料 MembershipUser user Membership GetUser username user IsApproved false Membe
  • iOS:Google 地图 API -markerInfoWindow 与markerInfoContents

    我浏览了谷歌地图文档 https developers google com maps documentation ios sdk reference protocol g m s map view delegate p html ada4
  • 使用较小的物理内存对 10 亿个整数进行排序

    想要对 10 亿个整数进行排序 而我的系统只有 1 GB RAM 最快 最有效的排序方法是什么 假设我们在文本文件中输入每行一个整数 我们使用java程序来排序 我指定了 RAM 因为我们无法将所有输入整数保存在 RAM 中 Update
  • 创建一个序列,其值是字符和数字的混合

    我正在使用 Postgres 9 1 并且想创建一个可以用作主键的序列 它应该如下所示 entity id seq X0001 X0002 X0123 and nextval entity id seq 会回来 X0124 知道如何以及是否
  • inline 决定内部链接吗?

    我正在尝试外部内联函数 我认为它应该如何工作 a cpp inline void f int b cpp extern void f int int main f 4 但出现链接错误 然后通过阅读this https en cpprefer
  • cocos2d 3.x CCButton 设置精灵帧图像扭曲且回调/块不起作用

    我需要设置按钮的精灵框架 当我使用构造函数时它正在工作 CCSprite sprite CCSprite spriteWithImageNamed but png CCButton button CCButton buttonWithTit
  • ClickHouse Kafka 性能

    按照文档中的示例 https clickhouse yandex docs en table engines kafka https clickhouse yandex docs en table engines kafka 我使用 Kaf