clickHouse-日志引擎

本文介绍了ClickHouse的三种日志引擎:TinyLog、StripeLog和Log。TinyLog适用于一次性写入、多次读取的小表,不支持并发读写;StripeLog将所有列存储在一个文件中,支持并发读取;Log引擎有单独的标记文件,支持并行读取,但写入时会阻塞读取。这三种引擎在并发访问和读取性能上各有特点,适用于不同的场景。
摘要由CSDN通过智能技术生成

日志引擎:
具有最小功能的轻量级引擎。当您需要快速写入许多小表(最多约100万行)并在以后整体读取它们时,该类型的引擎是最有效的。

TinyLog引擎(数据不分块)
- 数据存储在磁盘上,每列都存储在单独的压缩文件中.
- 写入时,数据将附加到文件末尾。
- 只支持并发读,读写同时进行将抛异常。
- 同时写入多个查询中的表,则数据将被破坏。
- 这种表引擎的典型用法是 write-once:首先只写入一次数据,然后根据需要多次读取。此引擎适用于相对较小的表(建议最多1,000,000行)。如果有许多小表,则使用此表引擎是适合的,因为它比需要打开的文件更少。当拥有大量小表时,可能会导致性能低下。 不支持索引。
建表: create table tb_tinylog(id Int8 , name String , age Int8) engine=TinyLog ;
插入数据: insert into tb_tinylog values(1,‘zs’,33),(2,‘ls’,44),(3,‘ww’,55) ;
查询: select * from tb_tinylog;

StripeLog(数据分块列在一起)
- 在你需要写入许多小数据量(小于一百万行)的表的场景下使用这个引擎。
- StripeLog 引擎将所有列存储在一个文件中.
- 对每一次 Insert 请求,ClickHouse 将数据块追加在表文件的末尾,逐列写入。
- data.bin — 数据文件。
index.mrk — 带标记的文件。标记包含了已插入的每个数据块中每列的偏移量
- StripeLog 引擎不支持 ALTER

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值