- 博客(14)
- 资源 (5)
- 收藏
- 关注
原创 对于XL改进方案的初步分析
根据前一篇博客中统计的单个事务耗时分布,我们发现每个请求在datanode执行的时间与PG执行时间几乎一样。之前测试的是短事务,一个事务一个insert语句写入一条数据,这种场景对于xl来说没有什么优势,除了执行写入还要增加网络交互的耗时,且insert操作本身很快完成,相比执行网络交互耗时占的比重就大了很多。而后我们测试了一下长事务,也就是一条sql执行本身就比较耗时,且能够调动xl多个...
2019-01-25 09:44:58
476
原创 使用SystemTab统计PG-XL和PG的事务响应时间及耗时分布
本文主要为了对比PG和XL的单个事务处理时间,并统计XL处理事务的耗时分布。结论:在我们的部署环境下,XL处理单个事务的耗时约为PG的4倍,XL处理事务耗时较大的为: 获取快照、获取全局事务ID、远程执行、提交事务这几个部分。详细见后文。SystemTabSystemTap 是可以动态监控和跟踪Linux 内核的工具,具体介绍及安装使用不做赘述,参照 《Linux 自检和 System...
2019-01-04 14:56:39
1086
原创 citus调研(三)- 优势与限制
当前调研基于citus7.5开源协议citus的开源协议是GPL v3, 意味着修改和使用其代码都需要开源,但是这是建立在软件分发的基础上,如果使用代码作为服务提供,而不分发软件,则不需要开源。功能优势只是PostgreSQL的一个extension;基本兼容PostgreSQL的sql处理能力、管理工具、性能优化和功能扩展等 支持分布式事务;citus使用2pc保证数据的最终一...
2018-11-09 12:20:40
6362
原创 citus调研(二)- 架构和功能
架构架构图master: 主节点,一般称作协调器,存储数据分布相关的元数据信息worker: 存储分片表的分片数据。可以为分片表的每一个分片创建多个副本客户端访问数据时只和master节点交互。master收到请求后,会生成分布式执行计划,并将各个子任务下发到相应的worker节点执行,之后由master收集各worker的结果并处理后返回最终结果给客户端。功能Post...
2018-11-01 11:55:19
2096
1
原创 SQL Server列存储实现方案
SQL Server从2012版本开始支持列存储,但2012版本使用列存储会导致表进入只读状态;2014版本使用可更新聚集列存储索引技术解决了只读的问题,使用列存储的表支持修改;2016版本列存储支持操作分析,能够对事务工作负载运行高性能实时分析。列存储索引是一种使用列式数据格式(称为“列存储”)存储、检索和管理数据的技术。聚集列存储索引是整个表的物理存储。以下将对聚集列存储索引技术的实现...
2018-10-09 18:49:57
4844
原创 Orafce集成&调研
Orafce是PostgreSQL的一个扩展,主要是为了在PostgreSQL中兼容Oracle的部分语法、函数、字典表等。目录编译安装支持特性数据类型系统表函数常用包操作符编译安装版本:Orafce 3.6 + PostgreSQL 10.5Orafce源码:https://github.com/orafce/orafce编译安装: 解...
2018-09-11 12:24:29
2628
原创 PG extension -- 人脸对比
目的:通过PostgreSQL的fdw读取存储在oracle blob中的图片数据,与存储在PostgreSQL bytea中的图片数据进行人脸检测和对比,测试人脸对比耗时。最终结论:此场景下每次人脸对比耗时1秒左右主要步骤:安装oracle fdw extension -> 安装人脸对比的extension -> 编写sql调用测试 安装oracle fdw exte...
2018-08-28 15:06:00
488
原创 InfluxDB存储引擎—— TSI文件与数据读取
本篇文章暂未完成在上一篇文章《InfluxDB存储引擎—— TSM文件与数据写入》中,对数据写入流程和数据文件的结构进行了介绍,再了解了数据写入流程和TSM文件结构之后,我们知道数据在磁盘是按时间、按数据源、按列存储的,在这样的存储结构上,读取数据的流程是怎样的呢?采用了哪些数据结构或文件来提升查询的效率呢?这就是本篇文章要讲的内容。目录数据读取流程基于内存的倒排索引作用核...
2018-08-08 14:41:00
6569
1
原创 InfluxDB vs TimeScaleDB 功能/性能对比 (二)
在上一篇文章《 InfluxDB vs TimeScaleDB 功能/性能对比 (一)》中,主要对比了两种数据库在功能方面的差异,以及不进行任何优化的情况下,数据批量写入的性能、存储空间的占用情况。本篇主要对两种数据库在实际应用场景中的读写性能、空间占用进行对比,针对实际应用场景,两种数据库在表结构上都做了一些优化。目录测试目的及最终结论写入性能存储空间占用读取性能全表...
2018-08-08 12:17:06
8025
1
原创 InfluxDB存储引擎—— TSM文件与数据写入
在上一篇文章《InfluxDB基础知识(二)》中主要介绍了与存储引擎相关的几个非常重要的概念,本篇主要介绍InfluxDB存储引擎中非常重要的TSM文件结构,以及数据写入流程。目录数据写入流程写入内存写入磁盘TSM文件TSM文件与shardgroup、shard的关系TSM文件的作用TSM文件的结构Series Data sectionSeries Inde...
2018-08-07 17:18:32
4053
2
原创 InfluxDB vs TimeScaleDB 功能/性能对比 (一)
本篇主要对InfluxDB和TimeScaleDB进行功能和性能对比。目录目的及最终结论对比InfluxDB与TimeScaleDB的功能对比InfluxDB与TimeScaleDB数据写入性能对比InfluxDB与TimeScaleDB数据存储空间占用对比InfluxDB与TimeScaleDB数据读取性能功能对比性能对比测试环境测试机TimeScal...
2018-08-07 15:51:09
21495
1
原创 InfluxDB基础知识(二)
在上一篇文章《InfluxDB基础知识(一)》中主要介绍了时序数据库及InfluxDB的一些使用层面的基本概念,本篇将在上一篇的基础上进一步介绍InfuxDB中与底层存储相关的一些基础知识目录DatabaseRentention PolicyShardGroup & Shardshardgroupshardsharding DatabaseInflu...
2018-08-07 12:01:27
4788
2
原创 InfluxDB基础知识(一)
本篇主要介绍InfluxDB的一些基本概念以及一些重要的名词解释。如下图是一张典型的时序数据的示意图。 如图示例中,时序数据记录了每10秒各个广告在pc/web/phone三端的点击量,广告自身包含广告商、平台、广告名三个属性(相对固定)。数据源:每个广告我们可以看做一个数据源,即数据随着时间推移源源不断产生的地方,但数据源本身的属性不会有任何变化。tags: 广告本身的...
2018-08-06 18:23:58
7057
2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人