clickhouse6-表引擎--日志引擎

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

1共同属性

  •  数据存储在磁盘上;

  • 写入时将数据追加在文件末尾;

  • 不支持突变操作;

  • 不支持索引;

  • 意味着select在范围查询时效率不高
  • 非原子地写入数据

如果某些事情破坏了写操作,如服务器的异常关闭,你将会得到一张包含了损坏数据的表

2.差异

Log与StripeLog引擎支持:

  •  并发访问数据的锁;
insert请求执行过程中会被锁定,且其他的读写数据的请求都会等待直到锁定被解除。
如果没有写请求,任意数量的读请求都可以并发执行
  • 并行读取数据。
在读取数据时,clickhouse使用多线程。每个线程处理不同的数据块,

Log引擎为表中的每一列使用不同的文件,stripelog将所有的数据存储在一个文件中,因此stripeLog引擎在操作系统中使用较少的描述符,但Log引擎提供更高的读性能。

TinyLog引擎是该系列中最简单的引擎且提供了最少的功能和最低的性能。TinyLog不支持并行读取和并发数据访问,并将每一列都存储在不同的文件中,比其余2个引擎支持并且读取的引擎的读取速度更慢,且使用和Log引擎同样多的描述符。一般在负载很低的时候使用

3.TinyLog

          以列文件的形式保存在磁盘上,不支持索引,没有并发控制。一般保存少量数据的小表,在生产环境上作用有限,可以平时练习测试用。

          并发数据访问不受任何限制:

---如果同时从表中读取的同时进行写入,则读取操作将抛出异常

---如果写入多个查询中的表,则数据将被破坏

      该表引擎的典型用法是write-once:首先只写入一次数据,然后根据需要多次读取。

create table test_tinelog(
  id Int16,
  name String
) engine=TinyLog;

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值