在过去,因为信息处理的业务量不大,所以信息系统使用单机版数据库已足够满足应用需求,该架构简单描述为:一台服务器或小型机部署数据库系统软件,一台磁盘阵列上作为存储系统用来存储数据库系统产生的格式化的数据文件,为了保障高可用能力,一般会部署两台数据库服务器,见以下示意图:
作者简介:李海翔,网名“那海蓝蓝”,腾讯金融云数据库技术专家。中国人民大学信息学院工程硕士企业导师。著有《数据库事务处理的艺术:事务管理和并发访问控制》、《数据库查询优化器的艺术:原理解析与SQL性能优化》,广受好评。
码到三十五 : 个人主页 心中有诗画,指尖舞代码,目光览世界,步履越千山,人间尽值得 !
导语:读书是一生的功课,技术人通过读书实现自我提升,学习优秀技术沉淀。TEG读书会本期特邀腾讯金融云专家工程师李海翔、TEG计费平台部专家工程师雷海林、MySQL数据库专家姜承尧,为大家带来数据库方向好书推荐。来看看技术大牛在读什么,国庆遇见好书,愿本期书单助您更专业。 李海翔,腾讯金融云专家工程师,从事分布式数据库TDSQL研发工作。出版著作:《数据库查询优化器的艺术 原理解析与SQL性能优化》、《数据库事务处理的艺术 事务管理与并发控制》,广受好评。中国人民大学信息学院工程硕士企业导师。 理论类
以数据为中心的架构风格是指系统的设计和运作主要围绕数据进行。这种风格下,数据的存储、管理和访问成为系统的核心。这里我们来深入浅出地解释三种主要的以数据为中心的架构风格:数据库系统、黑板系统和超文本系统。
数据库是计算机应用领域中非常重要的技术,是数据管理的最新技术,也是软件技术的一个重要分支。本期学习的主要内容是MySQL数据库基础知识。
这不但是很多CIO的痛,也是很多IT主管搅尽脑汁也解决不了的问题。可那么多从ORACLE培训班拿到OCP认证的人跑哪里去了呢?
2.数据:是记录现实世界中各种信息并可以被识别的符号,他是信息的载体,是信息的具体 表现形式
CAP 定理,估计大部分人都听说过,但CAP 定理的在实际中的价值,其实倒是鲜有人提及。
公司技术分为浓重,在众多的兴趣小组里面有一个分布式数据库的小组,本周五需要进分享,是在是惭愧,作为这个小组的 specialist, 啥都没有做,所以赶紧弄弄,要不说啥。
封面图来自 https://pixabay.com/zh/photos/beachy-head-sussex-south-downs-6209982/
而随着互联网在线业务的蓬勃发展,数据库面临着数据量大、高并发和超高峰值等诸多挑战。分布式数据库已成为业界普遍采用的有效解决方案。
数据库技术是计算机科学领域中的一个重要分支,它的发展历程也是随着计算机技术的进步而不断演化的。早期的数据库技术主要是基于文件系统的存储管理,后来随着关系型数据库的出现,数据库技术得到了快速的发展。如今,随着大数据时代的到来,数据库技术也在不断地进化和创新,涉及到的领域也越来越广泛,包括数据挖掘、机器学习、人工智能等等。
本文以MySQL数据库为研究对象,讨论与数据库索引相关的一些话题。特别需要说明的是,MySQL支持诸多存储引擎,而各种存储引擎对索引的支持也各不相同,因此MySQL数据库支持多种索引类型,如BTree索引,哈希索引,全文索引等等。为了避免混乱,本文将只关注于BTree索引,因为这是平常使用MySQL时主要打交道的索引,至于哈希索引和全文索引本文暂不讨论。 文章主要内容分为三个部分。
在关系型数据库中,锁和多版本并发控制(MVCC)是两个关键的机制,用于管理并发访问数据的方式。MySQL是一个流行的关系型数据库管理系统,它使用锁和MVCC来保证数据的一致性、隔离性和并发性。在本文中,我们将深入探讨MySQL中的锁和MVCC机制,了解它们的工作原理,并学习如何使用它们来确保数据的安全和可靠性。
先贴蓝色神秘串:http://blog.jobbole.com/55086/#article-comment
分布式数据库系统是在集中式数据库系统的基础上发展起来的,理解起来也很简单,就是将整体的数据库分开,分布到
数据库系统是以数据库技术为核心的计算机应用系统,其主要目的是处理生产和实践过程中产生的数据和信息,实现生产过程管理的自动化和信息化,提高信息管理效率。
MySQL WAL(Write-Ahead Logging)技术:是 MySQL 数据库的一种重要机制,主要关于数据库系统中的事务处理和日志管理。
前言 前面的文章中,主要都是在围绕关系数据库理论进行研究,没有涉及到数据库系统的具体实现。 虽说数据库系统的具体实现因业务环境,RDBMS等因素而异,但总体开发流程,以及开发过程中所涉及到的一些问题,也具有不少统一的套路、标准。 本文主要讨论数据库系统实现过程中的重点环节、基本开发流程、数据库管理以及数据质量工程等话题。 参照完整性约束对更新删除操作的影响 在第三篇(传送门) 中,我们已经讨论过,关系设计的目的就是为了减少冗余消除更新异常。但当时也留下一个问题:外码本身是冗余的,那么涉及到外码的更新时怎么办
在各个领域广泛应用的 PostgreSQL 是一个强大的开源关系型数据库管理系统。本博客的主题是深入了解 PostgreSQL 的架构和内部工作原理,旨在帮助读者更好地理解其工作机制,从而优化和管理 PostgreSQL 数据库。
由杜波依斯编著的《MySQL技术内幕(第4版)》介绍了MySQL的基础知识及其有别于其他数据库系统的独特功能,包括SQL的工作原理和MySQL API的相关知识;讲述了如何将MySQL与Perl或PHP等语言结合起来,为数据库查询结果生成动态Web页面,如何编写MySQL数据访问程序;详细讨论了数据库管理和维护、数据目录的组织和内容、访问控制、安全连接等。附录还提供了软件的安装信息,罗列了MySQL数据类型、函数、变量、语法、程序、API等重要细节。 《MySQL技术内幕(第4版)》是一部全面的MySQL指南,对数据库系统感兴趣的读者都能从中获益。
在当今信息时代,数据的存储和管理变得越来越重要。无论是云存储、数据库还是分布式文件系统,都需要高效的数据存储和检索方法。其中,LSM树(Log-Structured Merge Tree)是一种高性能的数据结构,广泛应用于各种分布式存储系统和数据库引擎中。本文将介绍LSM树的原理,并探讨其在不同使用场景中的应用。
最近公司业务系统中的死锁较多,比较担心,并且最近在群里面,经常听到有一些群友,提到为什么MYSQL的死锁监控上比较LOW,但还好的是MYSQL的死锁不是太多。这里触发了我关于死锁的一些看法,延伸到表设计,系统的设计。
数据库技术的发展如同一条奔流不息的河流,从最初的简单数据存储,到今天庞大复杂的分布式数据库系统,变迁和进化从未停歇。MariaDB,作为MySQL数据库的一个重要分支,承载了许多梦想和希望。本文将带您深入了解MariaDB,揭开它的神秘面纱,探索其原理与实现过程。
1.1 高并发,大流量 1.2 海量数据 存储及管理海量数据,需要大量服务器 1.3 高可用: 7 * 24 小时服务 1.4 用户分布广泛,网络环境复杂 1.5 安全环境恶劣 大型网站几乎每天都被黑客攻击 1.6 需求快速变更,发布频繁 1.7 渐进式发展
________________________________________________________________________ 从SQLSERVER,到MYSQL ,在到POSTGRESQL , MONGODB ,REDIS,数据库变了又变,现在又到了POLARDB ,你是什么数据库的DBA ,还在标签化吗, NO ,这么多年的摸爬滚打,拼的最终是变化和快速的学习的能力。
MySQL覆盖索引(Covering Index)是一种索引类型,它的特点是索引包含了查询所需要的数据,从而避免了对数据的直接查找。通过使用覆盖索引,MySQL可以仅通过索引信息来满足查询条件,而不需要进一步访问数据表,这可以大大提高查询性能。
作者 CDA 数据分析师 前言 2017年7月29日,由CDA数据分析师主办,以“跨界互联 数据未来”为主题的CDAS 2017第四届中国数据分析师行业峰会在北京中国大饭店隆重举行。 7月29日当天,除了引人眼球的主会场以外,当天同步开放11个分论坛,我们将逐一推送每个分论坛的盛况,以及演讲嘉宾速记稿整理,给每一个CDA成员奉上干货。 CDAS 2017中国数据分析师行业峰会的下午数据库与技术实战分论坛中,来自去哪儿、润乾科技、宜信等七位专家与教授,分享了数据库与技术实战自己的心得体会。 大会
概念模式(Conceptual Schema):概念模式也被称为信息模式或逻辑模式,它描述了数据库的整体结构,但不涉及具体的物理存储细节。它主要关注数据的组织、关系以及数据的完整性约束。概念模式通常由数据库管理员(DBA)或高级数据库设计师来设计和维护。
我是看李海翔的《数据库技术丛书·数据库查询优化器的艺术:原理解析与SQL性能优化》这本书的视频讲解学习的,因为数据库的知识学的不多,直接看优化有些吃力,慢慢补吧。现在要用一些优化的知识只能先看着了。
mysql索引: 是一种帮助mysql高效的获取数据的数据结构,这些数据结构以某种方式引用数据,这种结构就是索引。可简单理解为排好序的快速查找数据结构。如果要查“mysql”这个单词,我们肯定需要定位到m字母,然后从下往下找到y字母,再找到剩下的sql。
安装MySQL时自动安装一个名为mysql的数据库。mysql数据库下面存储的都是权限表。
在数据之外,数据库系统还维护着满足特定查找算法的数据结构,这些数据结构以某种方式引用(指向)数据,这样就可以在这些数据结构上实现高级查找算法。这种数据结构,就是索引。
本系列文章为笔者在校学习《数据库原理及应用》课程所作的课程笔记,文中大部分内容参考王珊的《数据库系统概论》
最近在“云和恩墨微信大讲堂”中,有很多朋友遇到性能问题,但是往往没有及时的诊断信息。我将之前书中的一章摘录出来和大家略为分享。 在数据库系统的诊断中,通常须要综合分析两个方面的因素: 主机系统的采样分析数据; 数据库系统的采样分析数据。 其中主机的采样数据可以通过操作系统的相关工具来收集,Nmon(可以用于AIX和Linux)和Oracle的OSWatcher都是很不错的轻量级采样工具;数据库的采样分析数据则可以通过Oracle的AWR采样数据获得,前者需要手工部署,后者自Oracle Database
本书是国内目前唯一的一本关于innodb的著作,由资深mysql专家亲自执笔,中外数据库专家联袂推荐,权威性毋庸置疑。
MongoDB是一种面向文档的非关系型数据库系统,采用BSON这种类似JSON的数据结构存储。在前面博客的学习中,我们知道了MongoDB的一些特性和优势,MongoDB是一种分布式的数据库系统,可以存储大量数据,并保证高性能,然后其底层结构是怎么样的?通过本博客可以先简单了解一下,因为MongoDB的底层原理相对比较杂,而且网上博客并不多,所以先进行简单的了解熟悉。
想要进入大型互联网公司,首先我们面对的就是面试这一道坎。一般而言,需要3~5面才能最终拿到offer。一面是考查基础知识,二三面是考查专业技能、项目经验等,四五面大致是HR面,也就是谈薪资了。 万丈高楼平地起,对于二三面的专业技能、项目经验等因人而异,各不相同,但是第一面的基础知识却是万变不离其宗。越是大型公司,面试官对于数据结构和计算机原理等计算机基础知识的要求也就越高。 既然决定作一个程序员,那我们就得掌握至少一门主流编程语言( 在这里我以Python为例),再加上操作系统、数据库系统、数据结构与算法、
摘要 本文以MySQL数据库为研究对象,讨论与数据库索引相关的一些话题。特别需要说明的是,MySQL支持诸多存储引擎,而各种存储引擎 对索引的支持也各不相同,因此MySQL数据库支持多种索引类型,如BTree索引,哈希索引,全文索引等等。为了避免混乱,本文将只关注于BTree索 引,因为这是平常使用MySQL时主要打交道的索引,至于哈希索引和全文索引本文暂不讨论。 数据结构及算法基础 索引的本质 MySQL官方对索引的定义为:索引(Index)是帮助MySQL高效获取数据的数据结构。提取句子主干,就可以得到
这个周末,最不开心的应该是优秀的数据库管理员了。 这些优秀的数据库管理员(以下简称数据库管理员为DBA),原本可以靠自己的本事,享受高薪,可是,好景不长了,因为即便是资质平平的DBA,以后借助AI的力量,也能瞬间达到优秀DBA的水平。 来看最近来自卡耐基梅隆数据库小组的最新研究成果,他们正用最新的深度学习技术,完成数据库的调优工作。 如果这项技术在未来进一步普及,那么,很无奈,这个行业不得不接受AI对于人员结构的改造。 DBA迎来新的革命 卡内基·梅隆大学数据库小组采用机器学习实现了数据库的自动化管理,
anduin,中国人民大学博士,腾讯基础架构部高级工程师。研究方向主要为数据库系统理论与实现、新硬件平台下的数据库系统以及TP+AP型混合系统。
1.数据库系统一般由(数据库)、应用系统、(数据库管理系统)、(数据库管理员)和用户构成。
导语 | 每一个时间段总是一个新时代,新技术层出不穷使得数据库技术焕发新生。Spanner、CockroachDB、TDSQL等分布式数据库正是这个时代的弄潮儿。本文由腾讯云数据库专家工程师 李海翔在 Techo TVP开发者峰会「数据的冰与火之歌——从在线数据库技术,到海量数据分析技术」 的《分布式数据库的演进》演讲分享整理而成,带大家品味分布式数据库架构、前沿技术和TDSQL技术实践,感受分布式数据库的技术之美。 点击可观看精彩演讲视频 一、分布式数据库架构 我今天所分享的内容主要集中在数据库技
MySQL 分析器是 MySQL 数据库系统中的一个关键组件,它负责解析 SQL 查询语句,确定如何执行这些查询,并生成查询执行计划。分析器将 SQL 语句转换为内部数据结构,以便 MySQL 可以理解和执行查询请求。
MySQL官方对索引的定义为:索引(Index)是帮助MySQL高效获取数据的数据结构。提取句子主干,就可以得到索引的本质:索引是数据结构。
二叉搜索树(Binary Search Tree,BST)是一种非常重要的数据结构,它允许我们在O(log n)的时间复杂度内进行查找、插入和删除操作。然而,如果数据被插入的顺序不佳,比如说按照排序后的顺序插入,二叉搜索树可能会退化成一个链表,这样的话,搜索的时间复杂度就会变成O(n)。为了避免这种情况,就有了平衡树。
小编寄语 主库master与从库slave的切换不管是主动的还是被动的都需要外部干预才能进行,这与数据库内核本身是按照单机来设计的理念悉悉相关,并且数据库系统本身也没有提供管理多个实例的能力,当slave数目不断增多时,这对数据库管理员来说就是一个巨大的负担。那么,深入了解Group Replication内核的引擎特性就显得异常重要了。接下来我们就深入剖析一下其引擎特性。 背景 为了创建高可用数据库系统,传统的实现方式是创建一个或多个备用的数据库实例,原有的数据库实例通常称为主库master,其它备用的数
在大数据环境中,BLOB 很常见,并且存储在关系或非关系数据库系统中,本文瑞哥带大家了解一下BLOB,让我们直接开始。
领取专属 10元无门槛券
手把手带您无忧上云