## 1. 什么是事务事务是数据库管理系统(DBMS)执行过程中的一个逻辑单位(不可再进行分割),由一个有限的数据库操作序列构成(多个DML语句,select语句不包含事务),要不全部成功,要不全部不成功。如 A 给 B 要划钱,... 理论上在某个事务对某个数据进行访问时,其他事务应该进行排队,当该事务提交之后,其他事务才可以继续访问这个数据,这样的话并发事务的执行就变成了串行化执行。但是对串行化执行性能影响太大,我们既想保持事务的一...
# 简介众所周知,在数据库存储引擎侧通常有两类存储模型,行式存储NSM(N-ary Storage Model)和列式存储DSM(Decomposition Storage Model),两种存储模型各有其特定的擅长场景。在以前,主流存储设备是机械磁盘的情况... 理论上不存在读写放大,如处理一个query,通过使用table索引,可以快速寻址到页,然后根据页尾的索引能快速寻址到行首,将数据返回,这个特点非常符合OLTP的workload场景,所以在OLTP场景主要使用行存;但是行存不是完美的...
纵观整个数据库发展史,关系型数据库系统是历史最悠久并且使用最广泛的一类数据库系统,其理论基础是基于IBM 研究员 E.F.Codd 博士在1970年提出的“关系模型(Relational model)”。关系型数据库也是过去几十年里各行... 包含关系型数据库与NoSQL数据库。OLAP与大数据相关不在本文讨论范围。# 2、选型基本方法论在开始介绍数据库选型方法论之前,首先需要介绍一个理念:“数据库选型没有银弹”。就是说没有任何一款数据库可以满足所...
其中关系型数据库管理系统是所有数据库中使用最广泛的一类。同时,根据卡内基梅隆大学维护的全球数据库信息库(dbdb.io)显示,数据库系统种类已经多达 870 种,可谓是欣欣向荣,让人眼花缭乱。![image.png](https://p6-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/7fc9549bb9204de5b6e605dc5b533383~tplv-k3u1fbpfcp-5.jpeg?)纵观整个数据库发展史,关系型数据库系统是历史最悠久并且使用最广泛的一类数据库系统,其理论基础是基于 IB...
纵观整个数据库发展史,关系型数据库系统是历史最悠久并且使用最广泛的一类数据库系统,其理论基础是基于 IBM 研究员 E.F.Codd 博士在 1970 年提出的“关系模型(Relational model)”。关系型数据库也是过去几十年里各... 包含关系型数据库与 NoSQL 数据库**。OLAP 与大数据相关不在本文讨论范围。 选型基本方法论 在开始介绍数据库选型方法论之前,首先需要介绍一个理念: **“数据库选型没有银弹”...
我们知道关系型数据库强调 CAP 理论:Consistency,Availability 和 Partition Tolerance,这三者不可兼得。谈到 NoSQL,我们会引入 BASE 概念:- **Basically Available**:分布式系统在出现故障时允许损失部分可用... 目前 ByteGraph 基本支持了字节跳动全系产品,除核心数据管理之外,BytrGraph 也支持以下典型场景:- 风控反作弊:在风控场景,业界以前的常用做法是使用 HBase 加上一个计算引擎。实际上图计算对于风控反作弊的异常...
主要介绍了 NoSQL 的前世今生和发展脉搏,以及字节跳动 NoSQL 的实践。**作者:王佳毅|火山引擎存储&数据库解决方案负责人**## NoSQL 应用的现状什么是 NoSQL?我们知道关系型数据库强调 CAP 理论:Consistency... 目前 ByteGraph 基本支持了字节跳动全系产品,除核心数据管理之外,BytrGraph 也支持以下典型场景:- 风控反作弊:在风控场景,业界以前的常用做法是使用 HBase 加上一个计算引擎。实际上图计算对于风控反作弊的异常识...
Redis 拥有高性能的数据读写功能,被我们广泛用在缓存场景,一是能提高业务系统的性能,二是为数据库抵挡了高并发的流量请求,[点我 -> 解密 Redis 为什么这么快的秘密](https://mp.weixin.qq.com/s/z4VjDaDDbspFz1rIB... **在读耗时的基础上加几百毫秒作为延迟时间即可**。### 4.2 删除缓存重试机制> 缓存删除失败怎么办?比如延迟双删的第二次删除失败,那岂不是无法删除脏数据。使用重试机制,保证删除缓存成功。比如重试三次,...
数据库的数据仓库,其实都面临如下问题:- 怎么组织数据仓库中的数据?- 怎么组织才能使得数据的使用最为方便和便捷?- 怎么组织才能使得数据仓库具有良好的可扩展性和可维护性?> **Ralph Kimball 维度建模理论很... 涵盖其基本理论、一般过程、维度表设计和事实表设计等各个方面,也为我们后面讲Hadoop 数据仓库实战打下基础。## 维度建模关键概念### 度量和环境维度建模是支持对业务过程的分析,所以它是通过对业务过程度量进...
分布式数据库架构简介 ![picture.image](https://p6-volc-community-sign.byteimg.com/tos-cn-i-tlddhu82om/4880b517a7794b5bbfba24c6cbdf7121~tplv-tlddhu82om-image.image?=&rk3s=8031ce6d... 我们要做的是把计算层的基本单元(Page),映射到存储层的基本单元(Segment)。这个映射规则可以基于哈希或者如图所示的 round-robin,或者任意自定义规则,只要能正确寻址和保证地址唯一性即可。当把 Page 映射到 Se...
HyperLogLog(HLL) 算法是一种估算海量数据基数的方法,被广泛用于各个数据库产品中。与精确的基数统计算法相比,HLL 具备**可合并性 (mergeability)** ,因而可以方便地对海量数据进行并行计算,被广泛地用于大数据多维分析场景中。例如分别统计一款 APP 每个小时的 UV 以及全天的 UV,这类问题就非常适合使用 HLL 算法。本文将会由浅入深,从基本概念讲起,引导读者从直观上理解 HLL 算法背后蕴含的基本思想。# 基数统计基数 (...
当某个数据源数据库中的 API 请求量比较大,超数据库性能负载时;或当数据库出现抖动异常,影响 API 查询性能时,数据服务可为您提供数据源切流操作,快速切换至另一个目标集群查询,自定义切流比例,来保障 API 查询性能... 解决方案:理论上可 join 的表都来自同一个物理集群,所以建议通过同一个数据源新建物理表,并在逻辑表上修改字段映射到新的物理表上。 切流比例 设置切流的阈值比例,可设置 [0,100]。
(单机数据库本地调用,分布式数据库涉及存算分离),且不用考虑分布式事务的冲突检测。所以总体的访问 RT 要低于 TiDB,具体数据这边就不罗列了,社区有不少性能压测的帖子。关于聚合查询。互联网公司在 C 端基本不存... 所以理论上通过加机器就能扩展计算能力,从我们实际使用的场景来看也是如此,这部分的能力就要优于 MySQL。具体的效果在本文最后的章节会有体现。关于优化器。这个是大家对 TiDB 一直以来吐槽的点之一,有时候统计信...