摘要: Oracle数据库中最重要的部分就是它的体系架构,只有掌握Oracle的体系架构才能很好地使用它。Oracle数据库的体系架构是进行数据库管理、数据库备份恢复以及数据库性能诊断和优化的基础。同时由于关系型数据库的相通性,掌握了Oracle数据库的体系架构对于进一步学习其他类型数据库将会有非常大的帮助 阅读全文
posted @ 2025-12-16 19:50 赵渝强老师 阅读(11) 评论(0) 推荐(0)
摘要: Oracle数据库的还原数据都是存储在还原表空间中,其作用主要体现在以下3个方面: 首先,还原数据用于支持查询的一致性读取。为了保证在同一个事务中前后读取数据的一致性,原始信息必须作为还原数据存在。只要保留的还原数据,Oracle数据库就能通过重建数据来满足读取一致性查询的要求。 其次,闪回技术也是 阅读全文
posted @ 2025-12-16 19:47 赵渝强老师 阅读(8) 评论(0) 推荐(0)
摘要: ​Oracle数据库软件安装成功后需要使用NetManager创建监听器,然后才可以创建Oracle数据库并启动数据库的实例。Oracle NetManager是Oracle数据库的网络配置工具,主要用于管理客户端与服务器之间的网络连接配置,支持监听程序配置、服务命名解析及网络命名方法的维护。Net 阅读全文
posted @ 2025-12-16 19:45 赵渝强老师 阅读(9) 评论(0) 推荐(0)
摘要: Oracle数据库采用的客户端-服务器的Client-Server的架构。Oracle的客户端需要通过使用Oracle数据库提供的网络环境来建立与服务器端通信,从而实现正常的数据库访问。Oracle的网络环境如下图所示。 监听程序在Oracle网络服务的作用是非常重要的。监听程序会负责为客户端建立与 阅读全文
posted @ 2025-12-16 18:55 赵渝强老师 阅读(6) 评论(0) 推荐(0)
摘要: 在默认情况下,Oracle RMAN将备份时产生的元信息保存到控制文件中。RMAN在执行恢复时,就需要读取控制文件,从而找到备份的信息来完成数据库的恢复。因此,如果控制文件发生了丢失和损坏将导致数据库无法执行恢复。另一方面随着备份的不断增多,也会导致控制文件的大小无限增长。为了更好地管理RMAN备份 阅读全文
posted @ 2025-12-16 18:53 赵渝强老师 阅读(6) 评论(0) 推荐(0)
摘要: ​Oracle的闪回数据归档(Flashback Data Archive)的本质就是给表创建一个快照,便于用于保护重要表中的数据。 点击这里查看视频讲解:【赵渝强老师】Oracle的闪回数据归档 一、 闪回数据归档简介 闪回数据归档可以将表中的还原数据进行归档,从而提供全面的历史数据查询。因此这便 阅读全文
posted @ 2025-12-16 18:51 赵渝强老师 阅读(5) 评论(0) 推荐(0)
摘要: ​Oracle数据库的闪回事务查询(Flashback Transaction Query)实际上闪回版本查询的一个扩充,通过它可以审计某个事务甚至撤销一个已经提交的事务。 点击这里查看视频讲解:【赵渝强老师】Oracle的闪回事务查询 一、 闪回事务查询简介 闪回事务处理查询是一种诊断工具,可以用 阅读全文
posted @ 2025-12-16 18:48 赵渝强老师 阅读(6) 评论(0) 推荐(0)
摘要: Oracle的闪回删除(Flashback Drop)实际上从Oracle数据库的回收站中将已删除的对象,恢复到删除之前的状态。 一、 闪回删除简介 回收站是所有被删除对象及其相依对象的逻辑存储容器,例如当一个表被删除时,该表及其依赖的对象并不会马上被数据库彻底删除,而是被保存到回收站中。使用闪回删 阅读全文
posted @ 2025-12-16 18:47 赵渝强老师 阅读(8) 评论(0) 推荐(0)
摘要: Oracle的闪回数据库(Flashback Database)类似于数据库的倒带按钮,可以在用户对数据库造成了逻辑数据损坏的情况下,将数据库恢复到正确的状态。下图说明了闪回数据库的过程。 点击这里查看视频讲解:【赵渝强老师】Oracle的闪回数据库 一、 闪回数据库简介 使用闪回数据库时,通过还原 阅读全文
posted @ 2025-12-16 18:45 赵渝强老师 阅读(9) 评论(0) 推荐(0)
摘要: Oracle的闪回表(Flashback Table)实际上是将表中的数据快速回退到过去的一个是时间点或者系统改变号SCN上,从而达到恢复数据的目的。 点击这里查看视频讲解:【赵渝强老师】Oracle数据库的闪回表 一、 闪回表简介 闪回表可以将一张或多张表恢复到特定的时间点,并且整个恢复的过程是不 阅读全文
posted @ 2025-12-16 18:43 赵渝强老师 阅读(8) 评论(0) 推荐(0)
摘要: Oracle数据库的闪回版本查询(Flashback Version Query)提供了一个审计行改变的查询功能,通过它可以查找到所有已经提交了的行记录。 点击这里查看视频讲解:【赵渝强老师】Oracle的闪回版本查询 一、 闪回版本查询简介 使用闪回版本查询可以获取在给定的时间区间中,指定的行的不 阅读全文
posted @ 2025-12-16 18:41 赵渝强老师 阅读(4) 评论(0) 推荐(0)
摘要: ​Oracle数据库的闪回查询(Flashback Query)是对查询语句select的扩展,它会从还原数据中提取所需要的历史数据以反映数据在历史的某个时间段上的状态。 点击这里查看视频讲解:【赵渝强老师】Oracle的闪回查询 一、 闪回查询简介 使用闪回查询可以用于查询在特定时间点存在的所有历 阅读全文
posted @ 2025-12-16 18:40 赵渝强老师 阅读(7) 评论(0) 推荐(0)
摘要: 在Oracle数据库的操作过程中,会不可避免地出现操作失误或者用户失误,例如不小心删除了一个表或者提交了一个错误的事务等。这些失误和错误可能会造成重要数据的丢失,最终导致Oracle数据库停止。 在传统意义上,当发生数据丢失、数据错误问题时,解决的主要办法是数据的导入导出或者使用备份恢复技术。但是这 阅读全文
posted @ 2025-12-16 18:37 赵渝强老师 阅读(7) 评论(0) 推荐(0)
摘要: ​安装并成功创建Oracle数据库后,便可以使用客户端工具来连接Oracle数据库。Oracle官方提供的客户端工具主要有:SQL*Plus和SQL Developer。 一、 【实战】使用命令行工具SQL*Plus 在Oracle数据库系统中,用户对数据库的操作主要是通过SQL_Plus来完成的。 阅读全文
posted @ 2025-12-16 18:35 赵渝强老师 阅读(19) 评论(0) 推荐(0)
摘要: 一、Oracle的参数文件 在Oracle数据库中,参数文件在通常情况下指的就是初始化参数文件(Initialization Parameter File)。在参数文件中包括了初始化参数文件和服务器端参数文件。在Oracle数据库启动的时候就会读取参数文件,然后根据参数文件中的参数值来分配内存和启动 阅读全文
posted @ 2025-12-16 18:31 赵渝强老师 阅读(6) 评论(0) 推荐(0)
摘要: 一、控制文件(Control File) 在Oracle数据库中,一个数据库至少要有一个控制文件,控制文件中存放了Oracle数据库的物理结构信息。这些物理结构信息就包括: 数据库的名字。 数据文件和联机日志文件的名字及位置。 创建数据库时的时间戳。 RMAN备份的元信息。 点击这里查看视频讲解:【 阅读全文
posted @ 2025-12-16 18:28 赵渝强老师 阅读(8) 评论(0) 推荐(0)
摘要: 在Oracle数据库中,一个数据库可以有多个联机重做日志文件,它记录了数据库的变化。例如,当Oracle数据库产生异常时,导致对数据的改变没有及时写入到数据文件中。这时Oracle数据库就会根据联机重做日志文件中的信息来获得数据库的变化信息,并根据这些信息把这些改变写到数据文件中。换句话来说,联机重 阅读全文
posted @ 2025-12-16 18:26 赵渝强老师 阅读(5) 评论(0) 推荐(0)
摘要: 在Oracle数据库中,一个数据库由多个表空间组成,而表空间可以由多个数据文件组成的,数据文件是真正存放数据库数据的。一个数据文件就是一个硬盘上的文件。表和索引中的数据在物理上是被存放在数据文件中的。当查询表中数据的时候,如果内存中没有该表的数据,那么Oracle数据库的服务器进程将读取该表所在的数 阅读全文
posted @ 2025-12-16 18:23 赵渝强老师 阅读(6) 评论(0) 推荐(0)
摘要: Oracle的物理存储结构就是指的Oracle数据库在硬盘上存储的各种文件,包括:数据文件、联机日志文件、控制文件、归档日志文件、参数文件、告警日志文件、跟踪文件和备份文件等。 点击这里查看视频讲解:【赵渝强老师】Oracle的物理存储结构 下面分别介绍这些文件以及它们的作用。 数据文件(Data 阅读全文
posted @ 2025-12-16 18:21 赵渝强老师 阅读(6) 评论(0) 推荐(0)
摘要: 冷备份与冷恢复是指发生在数据库已经正常关闭的情况下进行的备份和恢复。由于此时数据库已经关闭,通过冷备份可以将数据库的关键性文件拷贝到另外存储位置。冷备份因为只是拷贝文件,因此备份的速度非常快。在执行恢复时,只需将文件再拷贝回去就可以很容易恢复到某个时间点上。冷备份的最大缺点在于在冷备份过程中,数据库 阅读全文
posted @ 2025-12-16 18:19 赵渝强老师 阅读(6) 评论(0) 推荐(0)
摘要: 备份数据库就是将数据库中的数据,以及保证数据库系统正常运行的有关信息保存起来,以备系统出现故障后恢复数据库时使用。备份的对象不限于数据本身,也包括和数据相关的数据库对象、用户及权限、数据库环境等等。恢复数据库是将数据库系统从故障或者瘫痪状态恢复到可正常运行的状态,并能够将数据恢复到可接受状态的活动。 阅读全文
posted @ 2025-12-16 18:17 赵渝强老师 阅读(3) 评论(0) 推荐(0)
摘要: ​数据字典是Oracle存放有关数据库信息的地方,几乎所有的数据库信息和对象信息都可在数据字典中进行查询,它是随着数据库的建立而建立的。数据字典是Oracle数据库系统的信息核心,它是一组提供有关数据库信息的表和视图的集合。对于普通用户而言,这些表和视图是只读的。Oracle数据库的管理员sys用户 阅读全文
posted @ 2025-12-16 18:16 赵渝强老师 阅读(6) 评论(0) 推荐(0)
摘要: ​数据库在运行过程中会出现各种故障,因此对数据库进行必要的备份是非常重要的。有了数据库的备份就可以在数据库出现错误时保证数据的安全。因此TiDB数据库提供了强大的数据库备份与恢复机制。 点击这里查看视频讲解:【赵渝强老师】TiDB的备份恢复策略 一、 TiDB备份和恢复基础 基于Raft协议和合理的 阅读全文
posted @ 2025-12-16 18:13 赵渝强老师 阅读(10) 评论(0) 推荐(0)
摘要: 达梦数据库数据库出现的故障有很多,但主要可以划分为几下几种主要的类型:语句错误、用户进程错误、网络故障、用户错误、实例错误和介质故障。下面分别介绍这几种故障类型以及相应的解决方案。 点击这里查看视频讲解:【赵渝强老师】达梦的数据库故障类型 语句错误 语句错误是指在操作单个数据库时发生了失败,如执行s 阅读全文
posted @ 2025-12-16 18:09 赵渝强老师 阅读(14) 评论(0) 推荐(0)
摘要: 达梦数据库实例包含MOUNT、OPEN和SUSPEND三种状态。下表说明了数据库实例每种状态的含义。 注意:OPEN状态与MOUNT和SUSPEND能相互转换,但是MOUNT和SUSPEND之间不能相互转换。 点击这里查看视频讲解:【赵渝强老师】达梦数据库实例的状态 达梦数据库实例包含NORMAL、 阅读全文
posted @ 2025-12-16 18:05 赵渝强老师 阅读(13) 评论(0) 推荐(0)
摘要: DMSQL程序是达梦数据库对标准SQL语言的扩展,是一种过程化SQL语言。在DMSQL程序中,包括一整套数据类型、条件结构、循环结构和异常处理结构等,DMSQL程序中可以执行SQL语句,SQL语句中也可以使用DMSQL函数。 点击这里查看视频讲解:【赵渝强老师】达梦数据库的DMSQL DMSQL程序 阅读全文
posted @ 2025-12-16 18:03 赵渝强老师 阅读(10) 评论(0) 推荐(0)
摘要: 达梦数据库提供的闪回技术主要是在数据库发生逻辑错误的时候,能提供快速且最小损失的恢复。闪回技术旨在快速恢复数据库的逻辑错误。对于物理介质的损坏或者物理文件丢失,就不能使用闪回进行恢复。闪回特性可应用在以下方面: 自我维护过程中的修复:当一些重要的记录被意外删除,用户可以向后移动到一个时间点,查看丢失 阅读全文
posted @ 2025-12-16 18:01 赵渝强老师 阅读(12) 评论(0) 推荐(0)
摘要: 达梦数据库服务器使用“对称服务器构架”的单进程、多线程结构。这种对称服务器构架在有效地利用了系统资源的同时又提供了较高的可伸缩性能,这里所指的线程即为操作系统的线程。服务器在运行时由各种内存数据结构和一系列的线程组成,线程分为多种类型,不同类型的线程完成不同的任务。线程通过一定的同步机制对数据结构进 阅读全文
posted @ 2025-12-16 17:58 赵渝强老师 阅读(12) 评论(0) 推荐(0)
摘要: ​数据库管理系统是一种对内存申请和释放操作频率很高的软件,如果每次对内存的使用都使用操作系统函数来申请和释放,效率会比较低,加入自己的内存管理是DBMS系统所必须的。通常内存管理系统会带来以下好处: 申请、释放内存效率更高; 能够有效地了解内存的使用情况; 易于发现内存泄露和内存写越界的问题。 达梦 阅读全文
posted @ 2025-12-16 17:56 赵渝强老师 阅读(20) 评论(0) 推荐(0)
摘要: 达梦数据库由硬盘上的文件组成,而要读写数据需要通过达梦实例来完成。那么,达梦数据库是如何存储数据的呢?要搞清楚这个问题,就需要理解什么是达梦数据库的存储结构。达梦数据库的存储结构是由逻辑存储结构和物理存储结构组成。一般来说数据库无论是关系型数据库,还是NoSQL数据库在存储结构上,都是通过逻辑存储结 阅读全文
posted @ 2025-12-16 17:54 赵渝强老师 阅读(7) 评论(0) 推荐(0)
摘要: ​达梦数据库由硬盘上的文件组成,而要读写数据需要通过达梦实例来完成。那么,达梦数据库是如何存储数据的呢?要搞清楚这个问题,就需要理解什么是达梦数据库的存储结构。达梦数据库的存储结构是由逻辑存储结构和物理存储结构组成。一般来说数据库无论是关系型数据库,还是NoSQL数据库在存储结构上,都是通过逻辑存储 阅读全文
posted @ 2025-12-16 17:49 赵渝强老师 阅读(10) 评论(0) 推荐(0)
摘要: 达梦数据库中包含各种数据库对象,主要分为两大类型:基本数据库对象和复杂数据库对象。下面分别进行介绍。 点击这里查看视频讲解:【赵渝强老师】达梦数据库的数据库对象 一、 基本数据库对象 常见的基本数据库对象有:表、索引、视图、序列、同义词等。之所以叫做基本数据库对象是因为这些对象直接使用一条DDL(D 阅读全文
posted @ 2025-12-16 17:46 赵渝强老师 阅读(19) 评论(0) 推荐(0)
摘要: ​Docker是一个客户端服务器(Client-Server)架构。Docker客户端和Docker守护进程交流,而Docker的守护进程是运作Docker的核心,起着非常重要的作用(如构建、运行和分发Docker容器等)。达梦官方提供了DM 8在Docker容器中进行部署的镜像文件,下面通过具体的 阅读全文
posted @ 2025-12-16 17:44 赵渝强老师 阅读(41) 评论(0) 推荐(0)
摘要: ​为了支持海量数据存储和处理等方面的需求,为高端数据仓库提供解决方案,达梦数据库提供了大规模并行处理MPP架构,以极低的成本代价,提供高性能的并行计算。通过使用MPP可以解决以下问题: 需要较高的系统性能支持以支持大量的复杂查询操作 硬件束缚对数据库响应能力的影响 降低数据库成本 点击这里查看视频讲 阅读全文
posted @ 2025-12-16 17:42 赵渝强老师 阅读(11) 评论(0) 推荐(0)
摘要: 达梦数据库工具包括:DM数据库配置助手、SQL交互式查询工具、DM管理工具、DM服务查看器、DM控制台工具和DM数据迁移工具。 点击这里查看视频讲解:【赵渝强老师】达梦数据库的客户端工具 一、 disql交互式查询工具 disql是一款命令行客户端工具,用于进行SQL交互式查询。disql工具一般用 阅读全文
posted @ 2025-12-16 17:37 赵渝强老师 阅读(67) 评论(0) 推荐(0)
摘要: 达梦数据库的备份与恢复都需要使用到重做日志文件。在默认的情况下,达梦数据库采用的非归档模式。通过执行下面的语句可以查看当前数据库实例的日志模式。 SQL> select arch_mode from v$database; #输出的信息如下: 行号 ARCH_MODE 1 N # 提示:这里输出的N 阅读全文
posted @ 2025-12-16 17:33 赵渝强老师 阅读(7) 评论(0) 推荐(0)
摘要: ​达梦数据库安装成功后,通过使用Linux的tree命令可以非常方便地查看DM 8的目录结构。 tree -L 1 -d /home/dmdba/dmdbms #输出的信息如下: /home/dmdba/dmdbms ├── bin 存放DM数据库的可执行文件,例如disql命令等。 ├── bin 阅读全文
posted @ 2025-12-16 17:31 赵渝强老师 阅读(6) 评论(0) 推荐(0)
摘要: OceanBase数据库是多租户设计的数据库,同一个进程会运行着多个租户的请求,从租户资源划分上可以分为三类,500租户内存、系统租户内存、业务租户内存。 _500_是个特殊的虚拟租户,共享性的、非实体租户消耗的内存都被OceanBase数据库划归500租户。 _系统租户_是OceanBase数据库 阅读全文
posted @ 2025-12-16 17:29 赵渝强老师 阅读(4) 评论(0) 推荐(0)
摘要: ​为保证单一机器故障时同一分区的多数派副本可用,OceanBase数据库会保证同一个分区的多个副本不调度在同一台机器上。由于同一个分区的副本分布在不同的Zone/Region下,在城市级灾难或者数据中心故障时既保证了数据的可靠性,又保证了数据库服务的可用性,达到可靠性与可用性的平衡。OceanBas 阅读全文
posted @ 2025-12-16 17:27 赵渝强老师 阅读(6) 评论(0) 推荐(0)
摘要: ​OceanBase数据库是多租户的数据库系统,一个集群内可包含多个相互独立的租户,每个租户提供独立的数据库服务。在OceanBase数据库中,使用资源配置(Unit Config)、资源单元(Unit)和资源池(Resource Pool)三个概念,对各租户的可用资源进行管理。 点击这里查看视频讲 阅读全文
posted @ 2025-12-16 17:24 赵渝强老师 阅读(4) 评论(0) 推荐(0)
摘要: OceanBase OBServer节点工作目录下通常有audit、bin、etc、etc2、etc3、log、run、store等目录,但这些目录并非都是安装必须的。在启动OBServer节点前需要保证etc、log、run、store这4的目录存在,同时store下应该有clog、slog、ss 阅读全文
posted @ 2025-12-16 12:17 赵渝强老师 阅读(7) 评论(0) 推荐(0)
摘要: OceanBase数据库代理ODP(OceanBase Database Proxy,又称OBProxy)是OceanBase数据库的接入层,负责将用户的请求转发到合适的OceanBase数据库实例上进行处理。ODP是独立的进程实例,独立于OceanBase数据库实例部署。ODP监听网络端口,兼容M 阅读全文
posted @ 2025-12-16 12:15 赵渝强老师 阅读(8) 评论(0) 推荐(0)
摘要: ​OceanBase OBServer节点的SQL层将用户的SQL请求转化成对一个或多个Tablet的数据访问。SQL层会按照以下顺序经过一系列组件来处理一个SQL: Parser -->Resolver-->Transformer-->Optimizer-->CodeGenerator-->Exe 阅读全文
posted @ 2025-12-16 12:13 赵渝强老师 阅读(10) 评论(0) 推荐(0)
摘要: OceanBase集群的数据库实例(OBServer)内部由不同的组件相互协作。逻辑上看,这些组件从底层向上由多租户层、存储层、复制层、均衡层、事务层、SQL层、接入层组成。 下面重点讨论一下OBServer的存储层。 点击这里查看视频讲解:【赵渝强老师】OceanBase OBServer节点的存 阅读全文
posted @ 2025-12-16 12:11 赵渝强老师 阅读(2) 评论(0) 推荐(0)
摘要: ​OCP的全称是OceanBase Cloud Platform,即:OceanBase云平台。OCP面向有OceanBase管理需求的中小型用户,提供了基础的主机管理、OceanBase 集群和租户运维等能力。在OCP中主要包含两个组成部分,它们分别是:MetaDB和OCP Server。Meta 阅读全文
posted @ 2025-12-16 12:08 赵渝强老师 阅读(12) 评论(0) 推荐(0)
摘要: obd全称为OceanBase Deployer,是OceanBase安装部署工具,通过命令行部署或白屏界面部署的方式,将复杂配置流程标准化,降低集群部署难度。 命令行支持编辑配置文件,可以更加灵活的进行配置调整,适用于需要深度了解OceanBase的用户,有一定的使用门槛;白屏界面配置简单,通过页 阅读全文
posted @ 2025-12-16 12:03 赵渝强老师 阅读(9) 评论(0) 推荐(0)
摘要: 租户是一个逻辑概念。在OceanBase数据库中,租户是资源分配的单位,是数据库对象管理和资源管理的基础,对于系统运维,尤其是对于云数据库的运维有着重要的影响。租户在一定程度上相当于传统数据库的"实例"概念。租户之间是完全隔离的。在数据安全方面,OceanBase数据库不允许跨租户的数据访问,以确保 阅读全文
posted @ 2025-12-16 12:01 赵渝强老师 阅读(14) 评论(0) 推荐(0)
摘要: ​OceanBase是一款开源的国产分布式关系型数据库。通过使用OceanBase提供的obd和OCP均可以部署OceanBase数据库集群。 点击这里查看视频讲解:【赵渝强老师】OceanBase部署工具 下面分别进行介绍。 一、 使用obd部署OceanBase obd全称为OceanBase 阅读全文
posted @ 2025-12-16 11:58 赵渝强老师 阅读(20) 评论(0) 推荐(0)
摘要: OceanBase数据库支持无共享(Shared-Nothing,SN)模式和共享存储(Shared-Storage,SS)模式两种部署架构。 一、 无共享(Shared-Nothing,SN)模式 在SN模式下,各个节点之间完全对等,每个节点都有自己的SQL引擎、存储引擎、事务引擎,运行在普通PC 阅读全文
posted @ 2025-12-16 11:55 赵渝强老师 阅读(19) 评论(0) 推荐(0)
摘要: TiDB是PingCAP公司自主设计、研发的开源分布式关系型数据库,是一款同时支持在线事务处理与在线分析处理(Hybrid Transactional and Analytical Processing,HTAP)的融合型分布式数据库产品,具备水平扩容或者缩容、金融级高可用、实时HTAP、云原生的分 阅读全文
posted @ 2025-12-16 11:52 赵渝强老师 阅读(11) 评论(0) 推荐(0)
摘要: ​在内核设计上,TiDB分布式数据库将整体架构拆分成了多个模块,各模块之间互相通信,组成完整的TiDB系统。对应的架构图如下: 与传统的单机数据库相比,TiDB具有以下优势: 纯分布式架构,拥有良好的扩展性,支持弹性的扩缩容 支持SQL,对外暴露MySQL的网络协议,并兼容大多数MySQL的语法,在 阅读全文
posted @ 2025-12-16 11:50 赵渝强老师 阅读(9) 评论(0) 推荐(0)
摘要: ​TiDB实例将表中的每一行数据映射成RocksDB中的键值对,则需要考虑如何构造Key和Value。首先,OLTP场景下有大量针对单行或者多行的增、删、改、查等操作,要求数据库具备快速读取一行数据的能力。因此,对应的Key最好有一个唯一ID(显示或隐式的ID),以方便快速定位。其次,很多OLAP型 阅读全文
posted @ 2025-12-16 11:46 赵渝强老师 阅读(7) 评论(0) 推荐(0)
摘要: 在TiDB数据库集群中,TiProxy是PingCAP的官方代理组件,它放置在客户端和TiDB server之间,为TiDB提供负载均衡、连接保持、服务发现等功能。 提示:TiProxy是可选组件,也可以使用第三方的代理组件,或者直接连接到TiDB Server。 下图展示了基于TiProxy的Ti 阅读全文
posted @ 2025-12-16 11:44 赵渝强老师 阅读(8) 评论(0) 推荐(0)
摘要: ​TiDB节点的SQL层,即TiDB Server,它负责将SQL翻译成Key-Value操作,将其转发给共用的分布式Key-Value存储层TiKV,然后组装TiKV返回的结果,最终将查询结果返回给客户端。这一层的节点都是无状态的,节点本身并不存储数据,节点之间完全对等。因此很容易实现失败迁移,从 阅读全文
posted @ 2025-12-16 11:41 赵渝强老师 阅读(9) 评论(0) 推荐(0)
摘要: ​TiDB是一款开源的国产分布式关系型数据库。TiKV是TiDB的行存引擎,它支持多版本并发控制(Multi-Version Concurrency Control,MVCC)。假设有这样一种场景:某客户端A在写一个Key,另一个客户端B同时在对这个Key进行读操作。如果没有数据的多版本控制机制,那 阅读全文
posted @ 2025-12-16 11:40 赵渝强老师 阅读(10) 评论(0) 推荐(0)
摘要: ​TiDB是一款开源的国产分布式关系型数据库。在TiDB的生态圈中提供了各种组件,视频讲解如下: 点击这里查看视频讲解:【赵渝强老师】TiDB生态圈组件 下面分别进行介绍: 1、 TiKV TiKV是TiDB的行存引擎通过使用TiKV支持OLTP的应用场景。下图展示了TiKV的体系架构: 2、 Ti 阅读全文
posted @ 2025-12-16 11:37 赵渝强老师 阅读(5) 评论(0) 推荐(0)
摘要: 随着数据库在企业应用系统和互联网上的广泛使用,为了保护数据库中存储数据的安全,数据库应提供相应的审计功能以减少对隐私政策和做法的担忧。TiDB数据库提供了相应的审计功能,让系统管理员能够实施增强的保护措施,及时发现可疑活动,做出精心优化的安全应对。 点击这里查看视频讲解:【赵渝强老师】使用TiDB的 阅读全文
posted @ 2025-12-16 11:33 赵渝强老师 阅读(7) 评论(0) 推荐(0)
摘要: TiDB作为数据保存系统,首先要决定数据的存储模型,即数据的保存形式。TiKV选择使用Key-Value模型,并提供有序遍历方法。TiKV数据存储的两个关键点: TiKV实现了一个巨大的Map用于存储Key-Value Pairs(键值对)。 Map中的键值对按照键的二进制顺序排序。 点击这里查看视 阅读全文
posted @ 2025-12-16 11:31 赵渝强老师 阅读(8) 评论(0) 推荐(0)
摘要: ​从TiDBv4.0起,提供了包管理工具TiUP,负责管理TiDB、PD、TiKV等组件。用户只需通过TiUP命令即可运行这些组件,显著降低了管理难度。TiUP程序只包含少数几个命令,用来下载、更新、卸载组件。TiUP通过各种组件来扩展其功能。组件是一个可以运行的程序或脚本,通过tiup 运行组件时 阅读全文
posted @ 2025-12-16 11:28 赵渝强老师 阅读(13) 评论(0) 推荐(0)
摘要: TiDB集群的配置文件主要包括:TiKV、TiDB、PD和TIFlash的配置文件,执行下面的命令可以查看到所有相关的配置文件。 # tree /tidb-deploy/{tidb*,pd*,tikv*,tiflash*}/conf 输出的信息如下: /tidb-deploy/tidb-4000/c 阅读全文
posted @ 2025-12-16 11:27 赵渝强老师 阅读(6) 评论(0) 推荐(0)
摘要: TiDB数据库提供了以下几款命令行工具,用于操作和管理TiDB集群中的节点。 这几款工具主要包括: TiDB的命令行工具:tidb-ctl TiKV的命令行工具:tikv-ctl PD的命令行工具:pd-ctl 集群管理工具:TiUP 点击这里查看视频讲解:【赵渝强老师】TiDB提供的命令行工具 下 阅读全文
posted @ 2025-12-16 11:25 赵渝强老师 阅读(8) 评论(0) 推荐(0)
摘要: TiDB的TiFlash提供列式存储,且拥有借助ClickHouse高效实现的协处理器层。除此以外,它与TiKV非常类似,依赖同样的Multi-Raft体系,以Region为单位进行数据复制和分散。TiFlash以低消耗不阻塞TiKV写入的方式,实时复制TiKV集群中的数据,并同时提供与TiKV一样 阅读全文
posted @ 2025-12-16 11:23 赵渝强老师 阅读(10) 评论(0) 推荐(0)
摘要: TiDB的存储架构分为TiKV和TiFlash。TiVK是行存引擎,主要用于OLTP场景;而TiFlash是列存引擎,主要用于OLAP场景。下面重点讨论一下TiDB的行存引擎:TiKV,它的体系架构如下图所示: ​ 点击这里查看视频讲解:【赵渝强老师】TiDB的行存引擎:TiKV 该类型的节点负责以 阅读全文
posted @ 2025-12-16 11:20 赵渝强老师 阅读(8) 评论(0) 推荐(0)
摘要: TiDB是PingCAP公司自主设计、研发的开源分布式关系型数据库,是一款同时支持在线事务处理与在线分析处理(Hybrid Transactional and Analytical Processing,HTAP)的融合型分布式数据库产品,具备水平扩容或者缩容、金融级高可用、实时HTAP、云原生的分 阅读全文
posted @ 2025-12-16 11:18 赵渝强老师 阅读(9) 评论(0) 推荐(0)
摘要: TiDB是PingCAP公司自主设计、研发的开源分布式关系型数据库,是一款同时支持在线事务处理与在线分析处理(Hybrid Transactional and Analytical Processing,HTAP)的融合型分布式数据库产品,具备水平扩容或者缩容、金融级高可用、实时HTAP、云原生的分 阅读全文
posted @ 2025-12-16 11:15 赵渝强老师 阅读(6) 评论(0) 推荐(0)
摘要: 在了解了大数据各个生态圈所包含的组件及其功能特性后,就可以利用这些组件来搭建一个大数据平台从而实现数据的存储和数据的计算。下图展示了大数据平台的整体架构。 点击这里查看视频讲解:【赵渝强老师】大数据平台的Lambda架构 点击这里查看视频讲解:【赵渝强老师】大数据平台的Kappa架构 大数据平台的总 阅读全文
posted @ 2025-12-16 11:13 赵渝强老师 阅读(12) 评论(0) 推荐(0)
摘要: Yarn作为一个资源和任务调度的平台,在实际应用中往往不止一个应用程序运行在Yarn之上,例如:在Yarn上同时运着MapReduce任务、Spark任务和Flink任务等等。这时候Yarn就需要有一种机制进行调度去分配资源给这些应用程序。 点击这里查看视频讲解:【赵渝强老师】Yarn的资源调度策略 阅读全文
posted @ 2025-12-16 11:10 赵渝强老师 阅读(6) 评论(0) 推荐(0)
摘要: 下图为大家展示了Hadoop生态圈体系中的主要组件以及它们彼此之间的关系。 点击这里查看视频讲解:【赵渝强老师】Hadoop生态圈组件 这里先简单说明每一个组件的作用功能。 一、HDFS 它的全称是Hadoop Distributed File System,它是Hadoop分布式文件系统,用于解决 阅读全文
posted @ 2025-12-16 11:07 赵渝强老师 阅读(11) 评论(0) 推荐(0)
摘要: Spark的生态圈体系架构与Hadoop略有不同。因为在Spark中只有数据的计算部分,没有数据的存储部分,因为Spark的核心就是它的执行引擎。下图展示了Spark的生态圈体系,以及访问每个模块的访问接口。 点击这里查看视频讲解:【赵渝强老师】Spark生态圈组件 ​ 1、离线执行引擎Spark 阅读全文
posted @ 2025-12-16 11:05 赵渝强老师 阅读(4) 评论(0) 推荐(0)
摘要: Flink与Spark一样也是大数据计算引擎,可以完成离线的批处理计算和流处理计算。Flink的优势在它的流处理引擎DataStream。下图展示了Flink的生态圈体系架构。 点击这里查看视频讲解:【赵渝强老师】Flink生态圈组件 从下往上可以将Flink的生态圈体系划分成三层,分别是:平台部署 阅读全文
posted @ 2025-12-16 11:03 赵渝强老师 阅读(5) 评论(0) 推荐(0)
摘要: ​在部署Hadoop之前,需要对Hadoop的目录结构要有一定了解。 点击这里查看视频讲解:【赵渝强老师】部署Hadoop本地模式 先执行下面的语句将Hadoop的安装介质解压的/root/training目录。 tar -zxvf hadoop-3.1.2.tar.gz -C ~/training 阅读全文
posted @ 2025-12-16 11:01 赵渝强老师 阅读(3) 评论(0) 推荐(0)
摘要: 在Hadoop的HDFS中客户端的操作请求,无论是上传数据或者下载数据都是由NameNode负责接收和处理。最终将数据按照数据块的形式保存到数据节点DataNode上。下图说明了HDFS数据上传的过程。 点击这里查看视频讲解:【赵渝强老师】HDFS数据上传的过程 假设需要上传200M大小的一个文件。 阅读全文
posted @ 2025-12-16 10:57 赵渝强老师 阅读(7) 评论(0) 推荐(0)
摘要: 由于Flink集成了批计算和流计算,因此可以使用Flink构建流批一体的系统架构,主要包含数据集成的流批一体架构、数仓架构的流批一体架构和数据湖的流批一体。 一、数据集成的流批一体架构 在大数据场景下经常需要数据同步或者数据集成,也就是将数据库中的数据同步到大数据的数仓或者其他存储中。下图中的左边是 阅读全文
posted @ 2025-12-16 10:54 赵渝强老师 阅读(4) 评论(0) 推荐(0)
摘要: Kafka消息系统是一个典型的分布式系统,其组成部分包括:消息生产者(Producer)、消息消费者(Consumer)、消息服务器(Broker)以及分布式协调服务ZooKeeper。一个典型的Kafka消息系统的集群架构如下图所示。 点击这里查看视频讲解:【赵渝强老师】Kafka的体系架构 下表 阅读全文
posted @ 2025-12-16 10:51 赵渝强老师 阅读(7) 评论(0) 推荐(0)
摘要: 在Hadoop体系中提供数据分析引擎Hive。它允许使用SQL语句来分析处理数据,而不需要编程复杂的Java程序。同时Hive提供了丰富的数据模型来创建各种表结构,帮助数据分析人员建立数据模型。 点击这里查看视频讲解:【赵渝强老师】Hive的体系架构 ​ Hive是基于Hadoop之上的数据仓库平台 阅读全文
posted @ 2025-12-16 10:48 赵渝强老师 阅读(4) 评论(0) 推荐(0)
摘要: Kafka中的消息以主题为单位进行归类,生产者负责将消息发送到特定的主题,而消费者负责订阅主题进行消费。主题可以分为多个分区,一个分区只属于某一个主题。下面为列举了主题和分区的关系: 同一主题下的不同分区包含的消息不同。生产者发送给主题的消息都是具体发送到某一个分区中。 消息被追加到分区日志文件的时 阅读全文
posted @ 2025-12-16 10:38 赵渝强老师 阅读(9) 评论(0) 推荐(0)
摘要: 在Kafka中每个主题可以有多个分区,每个分区又可以有多个副本。在这多个副本中,只有一个副本的角色是Leader,而其他副本的角色都是Follower。仅有Leader副本所在的Kafka Broker可以对外提供服务。Follower副本通常不会存放在Leader副本所在的Kafka Broker 阅读全文
posted @ 2025-12-16 10:35 赵渝强老师 阅读(4) 评论(0) 推荐(0)
摘要: ​要开发Spark Streaming应用程序,核心是通过StreamingContext创建DStream。因此DStream对象就是Spark Streaming中最核心的对象。DStream的全称是Discretized Stream,翻译成中文是离散流。它是Spark Streaming对流 阅读全文
posted @ 2025-12-16 10:32 赵渝强老师 阅读(4) 评论(0) 推荐(0)
摘要: 在最新的Hadoop版本中又实现了基于Router的联盟架构,并且在这个架构之上还实现了许多增强集群管理能力的特性。Router将挂载表从客户端中抽离了出来,解决了ViewFS存在的问题。 点击这里查看视频讲解:【赵渝强老师】基于RBF的HDFS联邦架构 为了对用户屏蔽联盟的实现细节,将ViewFS 阅读全文
posted @ 2025-12-16 10:30 赵渝强老师 阅读(6) 评论(0) 推荐(0)
摘要: RDD(Resilient Distributed Dataset)叫做弹性分布式数据集,它是Spark中最基本、也是最重要的的数据模型。它由分区组成,每个分区被一个Spark的Worker从节点处理,从而支持分布式的并行计算。RDD通过检查点Checkpoint的方式提供自动容错的功能,并且具有位 阅读全文
posted @ 2025-12-16 10:26 赵渝强老师 阅读(5) 评论(0) 推荐(0)
摘要: ​大数据平台所要解决的问题是数据的存储和数据的计算,其核心思想采用的是分布式集群的思想。另一方面,分布式集群的思想在Google的技术系统中得到了很好的应用。因此Google将其核心技术的思想以论文的形式公开发表出来,这就是"Google的三驾马车",即:Google的文件系统、MapReduce分 阅读全文
posted @ 2025-12-16 10:24 赵渝强老师 阅读(9) 评论(0) 推荐(0)
摘要: 大数据体系架构中的组件非常多,每个组件又属于不同的生态圈系统。从最早的Hadoop生态圈体系开始,逐步有了Spark生态圈体系和Flink生态圈体系。因此在学习大数据之前有必要了解一下每一个生态圈体系中具体包含哪些组件,以及它们的作用又是什么。 点击这里查看视频讲解:【赵渝强老师】大数据生态圈中的组 阅读全文
posted @ 2025-12-16 10:20 赵渝强老师 阅读(9) 评论(0) 推荐(0)
摘要: 大数据体系架构中的核心组件都是主从架构,即:存在一个主节点和多个从节点,从而组成一个分布式环境。下图为展示了大数据体系中主从架构的相关组件。 点击这里查看视频讲解:【赵渝强老师】大数据主从架构的单点故障 ​ 从上图可以看出大数据的核心组件都是一种主从架构,而只要是主从架构就存在单点故障的问题。因为整 阅读全文
posted @ 2025-12-16 10:18 赵渝强老师 阅读(4) 评论(0) 推荐(0)
摘要: 由于在HA架构中包含的节点比较多,在进行实际部署的时候需要做好集群的规划。下表一共使用了4个节点来部署HDFS HA,它们分别是:bigdata112、bigdata113、bigdata114和bigdata115。由于Hadoop默认包含了HDFS和Yarn,因此在部署HDFS HA的时候,也可 阅读全文
posted @ 2025-12-16 10:15 赵渝强老师 阅读(3) 评论(0) 推荐(0)
摘要: ​Hive是基于HDFS之上的数据仓库,它把所有的数据存储在HDFS中,Hive并没有专门的数据存储格式。当在Hive中创建了表,可以使用load语句将本地或者HDFS上的数据加载到表中,从而使用SQL语句进行分析和处理。 Hive的数据模型主要是指Hive的表结构,可以分为:内部表、外部表、分区表 阅读全文
posted @ 2025-12-16 10:11 赵渝强老师 阅读(8) 评论(0) 推荐(0)
摘要: ​Hive的分区表跟Oracle、MySQL中分区表的概念是一样的。当表上建立了分区,就会根据分区的条件从物理存储上将表中的数据进行分隔存储。而当执行查询语句时候,也会根据分区的条件扫描特定分区中的数据,从而避免全表扫描以提高查询的效率。Hive分区表中的每个分区将会在HDFS上创建一个目录,分区中 阅读全文
posted @ 2025-12-16 10:08 赵渝强老师 阅读(8) 评论(0) 推荐(0)
摘要: Spark RDD彼此之间会存在一定的依赖关系。依赖关系有两种不同的类型:窄依赖和宽依赖。 窄依赖:如果父RDD的每一个分区最多只被一个子RDD的分区使用,这样的依赖关系就是窄依赖; 宽依赖:如果父RDD的每一个分区被多个子RDD的分区使用,这样的依赖关系就是宽依赖。 map、filter、unio 阅读全文
posted @ 2025-12-16 10:04 赵渝强老师 阅读(8) 评论(0) 推荐(0)
摘要: ​由于Spark的计算是在内存中完成,因此任务执行的生命周期lineage(血统)越长,执行出错的概念就会越大。Spark通过检查点Checkpoint的方式,将RDD的状态写入磁盘进行持久化的保存从而支持容错。如果在检查点之后有节点出现了问题,Spark只需要从检查点的位置开始重新执行lineag 阅读全文
posted @ 2025-12-16 09:59 赵渝强老师 阅读(5) 评论(0) 推荐(0)
摘要: Spark RDD通过persist方法或cache方法可以将计算结果的缓存,但是并不是这两个方法被调用时立即缓存,而是触发后面的action时,该RDD才会被缓存在计算节点的内存中并供后面重用。下面是persist方法或cache方法的函数定义: def persist(): this.type 阅读全文
posted @ 2025-12-16 09:24 赵渝强老师 阅读(4) 评论(0) 推荐(0)
摘要: ​Kafka的生产者Producer将消息序列化之后,发送到对应主题的指定分区上。下图为展示了生产者的执行过程。 整个生产者客户端由两个线程协调运行,这两个线程分别为主线程和Sender线程。 点击这里查看视频讲解:【赵渝强老师】Kafka生产者的执行过程 1、主线程 在主线程中将创建一个Kafka 阅读全文
posted @ 2025-12-16 09:10 赵渝强老师 阅读(5) 评论(0) 推荐(0)
摘要: ​Kafka生产者有三种方式进行消息的发送,这三种方式区别在于对于消息是否正常到达的处理。 点击这里查看视频讲解:【赵渝强老师】Kafka生产者的消息发送方式 ​ 下面分别介绍生产者的这三种消息发送方式。 第一种:fire-and-forget 该方式把消息发送给Kafka的Broker之后不关心其 阅读全文
posted @ 2025-12-16 09:07 赵渝强老师 阅读(4) 评论(0) 推荐(0)
摘要: 消费者就是从Kafka集群消费数据的客户端,下图展示了一个消费者从主题中消费数据的模型。 上图展示的是单消费者模型。单消费者模型存在一些问题。如果Kafka上游生产的数据很快,超过了单个消费者的消费速度,那么就会导致数据堆积。 点击这里查看视频讲解:【赵渝强老师】Kafka的消费者与消费者组 为了解 阅读全文
posted @ 2025-12-16 09:02 赵渝强老师 阅读(14) 评论(0) 推荐(0)
摘要: ​Kafka消费者组中的消息消费模型有两种,即:推送模式(push)和拉取模式(pull)。 点击这里查看视频讲解:【赵渝强老师】Kafka消息的消费模式 一、消息的推送模式 这种消息的消费模式需要记录消费者的消费者状态。当把一条消息推送给消费者后,需要维护消息的状态。如果这条消息已经被消费将会对消 阅读全文
posted @ 2025-12-16 08:56 赵渝强老师 阅读(8) 评论(0) 推荐(0)
摘要: 在Hadoop HDFS的体系架构中,包含了三个组成部分。它们分别是:NameNode、DataNode和SecondaryNameNode。下图摘至Hadoop官方的网站,它说明了HDFS的体系架构。 点击这里查看视频讲解:【赵渝强老师】史上最详细:Hadoop HDFS的体系架构 一、NameN 阅读全文
posted @ 2025-12-16 08:53 赵渝强老师 阅读(12) 评论(0) 推荐(0)
摘要: Scala是一种多范式的编程语言,其设计的初衷是要集成面向对象编程和函数式编程的各种特性。Scala运行于Java平台(Java虚拟机)之上,并兼容现有的Java程序。因此,要安装Scala环境之前,首先需要安装Java的JDK。学习Scala编程语言,将为后续学习Spark和Flink奠定基础。 阅读全文
posted @ 2025-12-16 08:48 赵渝强老师 阅读(1) 评论(0) 推荐(0)
摘要: ​HBase的逻辑存储结构主要包括:命名空间(NameSpace)、表(Table)和列族(Column Family)。 点击这里查看视频讲解:【赵渝强老师】HBase的存储结构 下面分别进行介绍。 一、 命名空间(NameSpace) HBase的命名空间相当于Oracle和MySQL中的数据库 阅读全文
posted @ 2025-12-16 08:45 赵渝强老师 阅读(5) 评论(0) 推荐(0)
摘要: 基于开源的大数据技术,阿里云开发了自己的大数据计算服务,即:MaxCompute大数据计算服务。MaxCompute原名为ODPS(Open Data Processing Service),它是阿里云提供的数据仓库解决方案,并提供大数据量(百TB、PB、EB)的结构化数据的存储和计算服务。由于Ma 阅读全文
posted @ 2025-12-16 08:41 赵渝强老师 阅读(18) 评论(0) 推荐(0)
摘要: 阿里云大数据计算服务(MaxCompute)是一种快速、完全托管的TB/PB级数据仓库解决方案。MaxCompute向用户提供了完善的数据导入方案以及多种经典的分布式计算模型,能够更快速的解决用户海量数据计算问题,有效降低企业成本,并保障数据安全。 点击这里查看视频讲解:【赵渝强老师】阿里云大数据存 阅读全文
posted @ 2025-12-16 08:35 赵渝强老师 阅读(6) 评论(0) 推荐(0)
摘要: 阿里云提供的大数据计算服务MaxCompute(原名ODPS,Open Data Processing Service的简称)是一种快速、完全托管的EB级数据仓库解决方案,主要用于实时性要求不高的离线计算分布式处理场景。因此,大数据计算服务MaxCompute不能用于数据的实时处理场景中。MaxCo 阅读全文
posted @ 2025-12-16 08:32 赵渝强老师 阅读(16) 评论(0) 推荐(0)
摘要: ​Sqoop是SQL To Hadoop的简称,它是一款开源的工具,主要用于在Hadoop(Hive)与传统的数据库(Oracle、MySQL等)间进行数据的传递。通过使用Sqoop可以将一个关系型数据库中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中。Sqoop是 阅读全文
posted @ 2025-12-16 08:28 赵渝强老师 阅读(9) 评论(0) 推荐(0)