KuiBaDB —— Rust 重写的 PostgreSQL
KuiBaDB 是使用 Asynchronous Rust 重写的 PostgreSQL,专注于 OLAP 分析。
KuiBaDB 构建在 kbio 和 tokio 之上,只使用 tokio 的 'rt-multi-thread', 'rt' 和 'io-util' 特性。所有 IO,包括文件 IO 和网络 IO,以及异步系统调用都由 kbio 提供支持。
KuiBaDB 仅包含 OLAP 数据库所需的基本功能,例如支持事务但不包含子事务。KuiBaDB 使用矢量化引擎,也是目录驱动的。KuiBaDB 使用了 Hologres 中引入的列式存储。不过作者删除了 Delete Map 并为每行添加了 xmin,xmax,xmin/xmax 保存在行存储中。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
每日一博 | 深入剖析 Spring WebFlux
一、WebFlux 简介 WebFlux 是 Spring Framework5.0 中引入的一种新的反应式Web框架。通过Reactor项目实现Reactive Streams规范,完全异步和非阻塞框架。本身不会加快程序执行速度,但在高并发情况下借助异步IO能够以少量而稳定的线程处理更高的吞吐,规避文件IO/网络IO阻塞带来的线程堆积。 1.1 WebFlux 的特性 WebFlux 具有以下特性: 异步非阻塞- 可以举一个上传例子。相对于 Spring MVC 是同步阻塞IO模型,Spring WebFlux这样处理:线程发现文件数据没传输好,就先做其他事情,当文件准备好时通知线程来处理(这里就是输入非阻塞方式),当接收完并写入磁盘(该步骤也可以采用异步非阻塞方式)完毕后再通知线程来处理响应(这里就是输出非阻塞方式)。 响应式函数编程- 相对于Java8 Stream 同步、阻塞的Pull模式,Spring Flux 采用Reactor Stream 异步、非阻塞Push模式。书写采用Javalambda 方式,接近自然语言形式且容易理解。 不拘束于Servlet- 可以运行在传统...
- 下一篇
Linux 或将重新实现 retpoline 改写逻辑
邮件列表显示,英特尔工程师和长期的内核开发人员 Peter Zijlstra 发布了一组 9 个补丁,重写了Retpoline 的改写逻辑代码。 Retpoline是 Google 开发的针对 Spectre 漏洞的技术,它允许将间接分支与推测执行隔离开来。这可用于保护敏感二进制文件(例如操作系统或管理程序实现)免受针对其间接分支的分支目标注入攻击。Linux 内核于 2018 年开始支持 Retpoline 技术。 此次提交的补丁重写了 retpoline 的改写方式。Zijlstra 表示,目前 objtool 为大多数 retpoline 调用发出了替代条目,然而非常难以扩展,因此,该补丁让 objtool 发出一个 .retpoline_sites 部分,列出所有编译器生成的 retpoline thunk 调用,然后,内核可以更方便地处理它们。 根据补丁描述,这个重写的代码将确保 Retpolines 被改写为间接指令,并在编译器允许的情况下将 AMD Retpoline 处理重写为间接 LFENCE。x86 的 BPF代码也被更新,以匹配内核其他部分在 Retpoline ...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- Docker安装Oracle12C,快速搭建Oracle学习环境
- CentOS8安装Docker,最新的服务器搭配容器使用
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- CentOS7设置SWAP分区,小内存服务器的救世主
- CentOS8编译安装MySQL8.0.19
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- Docker快速安装Oracle11G,搭建oracle11g学习环境