关系型数据库
阿里云关系型数据库主要有以下几种:RDS MySQL版、RDS PostgreSQL 版、RDS SQL Server 版、PolarDB MySQL版、PolarDB PostgreSQL 版、PolarDB分布式版 。
MySQL · 源码分析 · InnoDB 异步IO工作流程
之前的一篇内核月报InnoDB IO子系统 中介绍了InnoDB IO子系统中包含的同步IO以及异步IO。本篇文章将从源码层面剖析一下InnoDB IO子系统中,数据页的同步IO以及异步IO请求的具体实现过程。 在MySQL5.6中,InnoDB的异步IO主要是用来处理预读以及对数据文件的写请求的。而对于正常的页面数据读取则是通过同步IO进行的。到底二者在代码层面上的实现过程有什么样的区别? 接
PgSQL · 最佳实践 · CPU满问题处理
前言 在数据库运维当中,一个DBA比较常遇到又比较紧急的问题,就是突发的CPU满(CPU利用率达到100%),导致业务停滞。DBA不一定非常熟悉业务实现逻辑,也不能掌控来自应用的变更或负载变化情况。 所以,遇到CPU满,往往只能从后端数据库开始排查,追溯到具体SQL,最终定位到业务层。这里我们总结下这个问题具体的处理方法。 查看连接数变化 CPU利用率到达100%,首先怀疑,是不是业务高峰活
MySQL · 实现分析 · HybridDB for MySQL 数据压缩
概述 数据压缩是一个把输入数据集按照一定的算法变换成更小的数据集的过程,解压是压缩的逆过程。如果算法对数据本身的语义了解得越多,则越可能利用语义信息进行针对性的处理,获得更好的压缩效果。数据库系统中用得比较多的压缩算法可以分为两大类:基于块的压缩、基于值的压缩。前者更为常见一些,在 OLTP 以及 OLAP 系统中都会用到,例如 InnoDB、TokuDB、HybridDB 中的块压缩;后者更多
MySQL · myrocks · myrocks写入分析
写入流程 myrocks的写入流程可以简单的分为以下几步来完成 将解析后的记录(kTypeValue/kTypeDeletion)写入到WriteBatch中 将WAL日志写入log文件 将WriteBatch中的内容写到memtable中,事务完成 其中第2,3步在提交时完成 WriteBatch与Myrocks事务处理密切相关,事务中的记录提交前都以字符串的形式存储在W
MSSQL · 实现分析 · Extend Event实现审计日志对SQL Server性能影响
背景 在上一篇月报分享中,我们介绍了SQL Server实现审计日志功能的四种方法,最终的结论是使用Extend Event(中文叫扩展事件)实现审计日志方法是最优选择,详情参见MSSQL · 实现分析 · SQL Server实现审计日志的方案探索。那么,使用Extend Event实现审计日志的方案会面对如下疑问: Extend Event是否满足可靠性要求
TokuDB · 引擎特性 · HybridDB for MySQL高压缩引擎TokuDB 揭秘
HybridDB for MySQL(原名petadata)是面向在线事务(OLTP)和在线分析(OLAP)混合场景的关系型数据库。HybridDB采用一份数据存储来进行OLTP和OLAP处理,解决了以往需要把一份数据多次复制来分别进行业务交易和数据分析的问题,极大地降低了数据存储的成本,缩短了数据分析的延迟,使得实时分析决策称为可能。 HybridDB for MySQL兼容MySQL的语法及
AliSQL · 特性介绍 · 支持 Invisible Indexes
前言 MySQL 8.0 引入了 Invisible Indexes 这一个特性,对于 DBA 同学来说是一大福音,索引生命周期管理除了有和无外,又多了一种形态–可见和不可见,进而对业务SQL的调优又多了一种手段。 关于 Invisible Indexes,不管是官方还是第三方,都有非常多的介绍文档,这里推荐大家可以先看下: 官方文档: Invisible Indexes 官方 ser
MySQL · 引擎特性 · InnoDB崩溃恢复
前言 数据库系统与文件系统最大的区别在于数据库能保证操作的原子性,一个操作要么不做要么都做,即使在数据库宕机的情况下,也不会出现操作一半的情况,这个就需要数据库的日志和一套完善的崩溃恢复机制来保证。本文仔细剖析了InnoDB的崩溃恢复流程,代码基于5.6分支。 基础知识 lsn: 可以理解为数据库从创建以来产生的redo日志量,这个值越大,说明数据库的更新越多,也可以理解为更新的时刻。此外,每
阿里云Redis集群子实例内存查看
阿里云Redis集群有多个节点,用户需要查看每个子节点的内存还有key数目,本文主要介绍了云数据库Redis如何使用python查看子节点性能数据情况。
MongoDB World 2017 参会全记录
本文主要给大家分享上周(6.19-6.21)在芝加哥参加 MongoDB Wolrd 2017 的一些收获,MongoDB World 是 每年 MongoDB 数据库的盛会,来自全球的 MongoDB 技术爱好者聚集在一起讨论 MongoDB 产品及技术的发展情况。
PgSQL · 最佳实践 · 从 MaxCompute (ODPS) 迁移数据到 HybridDB
title: PgSQL · 最佳实践 · 从 ODPS 迁移数据到 HybridDB author: 义从 背景 最近,不少用户在尝试使用 HybridDB 的过程中,询问我们如何把之前在 ODPS 中的数据迁移到 HybridDB。
使用PostgreSQL逻辑订阅实现multi-master
标签 PostgreSQL , multi master , 逻辑订阅 背景 很多业务要求多活,但是多活中最难搞定的实际上是数据库,大多数业务通过分流,例如将数据根据UID切分到不同的IDC,同一个UID的数据永远只会写到一个IDC中,然后通过数据复制技术,将对应的数据复制到其他的IDC。
HybridDB for MySQL 实现在线与离线数据分离的实践
某知名企业的集团任务中心,为了保障在线数据库的性能和容量,降低总体数据存储成本,避免离线数据的使用影响在线数据的使用,希望将线上业务系统早期生成的数据转移到离线库进行保存。同时,离线海量数据对于业务分析和未来业务规划又有非常重要的价值,需要不定期的进行数据分析。迫切需要进行在线离线数据的分离。
高阶魔方与数据编排 - 数据库存储优化之路
标签 PostgreSQL , cluster , 预排 , 一维数据 , 多维数据 , 视觉编排 , 数据编排 , IO优化 背景 中华文化源远流长,比如这句古语“远水不救近火,远亲不如近邻”,在数据库的优化中亦有体现。
数据库案例集锦 - 开发者的《如来神掌》
案例 1、《多字段,任意组合(0建模) - 毫秒级实时圈人 - 最佳实践》 2、《IoT(物联网)极限写入、消费 最佳实践 - 块级(ctid)扫描》 3、数据采样和脱敏实践 《PostgreSQL 数据采样与脱敏》 《PostgreSQL 巧妙的数据采样方法》 4、数据清洗和去重实践 .
多字段,任意组合条件查询(0建模) - 毫秒级实时圈人 实践
标签 PostgreSQL , 数组 , GIN索引 , 任意字段组合查询 , 圈人 , ToB分析型业务 , 建模 背景 你也许在一家ToB的数据分析公司,你可能设计了一张表(包括用户标识,及若干已经统计好的的属性值),你也许收集了一些用户的数据,你也许要为客户提供报表,你也许需要为客户提供任意属性值的组合查询,并快速的返回结果给用户。
PostgreSQL 锁等待监控 珍藏级SQL - 谁堵塞了谁
标签 PostgreSQL , pg_locks , pg_stat_activity , 锁监控 , 谁堵塞了谁 背景 在数据库中,通过锁以及多版本并发控制可以保护数据的一致性,例如A正在查询数据,B就无法对A访问的对象执行DDL。
PgSQL · 应用案例 · "写入、共享、存储、计算" 最佳实践
背景 数据是为业务服务的,业务方为了更加透彻的掌握业务本身或者使用该业务的群体,往往会收集,或者让应用埋点,收集更多的日志。 随着用户量、用户活跃度的增长,时间的积累等,数据产生的速度越来越快,数据堆积的量越来越大,数据的维度越来越多,数据类型越来越多,数据孤岛也越来越多。 日积月累,给企业IT带来诸多负担,IT成本不断增加,收益确不见得有多高。 上图描绘了企业中可能存在的问题: 1.
MySQL · myrocks · fast data load
Fast data load Load data相比普通insert效率更高,Load data批量插入数据有效减少了解析SQL的开销。MyRocks 同其他MySQL 引擎一样也支持Load data语法,同时MyRocks对data load也做了特殊优化。RocksDB引擎有一个规律是,数据最终会存储在最底层SST文件中,MyRocks通过参数rocksdb_bulk_load控制是否直接
RocksDB · 特性介绍 · HashLinkList 内存表
Table of Contents 1. RocksDB 内存表简介 2. HashLinkList 内存表 2.1. 应用示例 2.2. 实现代码 2.2.1. Put 2.2.2. Get 2.2.3. Delete RocksDB 内存表简介 RocksDB 是一个基于 LSM 树(Log-Structured Merge-tree)结构的单机数据库引擎,内