【赵渝强老师】Kafka消息的消费模式

2025-03-01
阅读 1 分钟
1.6k
这种消息的消费模式需要记录消费者的消费者状态。当把一条消息推送给消费者后,需要维护消息的状态。如果这条消息已经被消费将会对消息进行标记。这种方式无法很好地保证消息被处理。如果要保证消息被处理,发送完消息后需要将其状态设置为“已发送”;而收到消费者的确认后才将其状态更新为“已消费”,这就需要Kafka记录所...
封面图

【赵渝强老师】Kafka的消费者与消费者组

2025-02-26
阅读 1 分钟
1.5k
上图展示的是单消费者模型。单消费者模型存在一些问题。如果Kafka上游生产的数据很快,超过了单个消费者的消费速度,那么就会导致数据堆积。视频讲解如下:[链接]
封面图

【赵渝强老师】Kafka生产者的消息发送方式

2025-02-23
阅读 5 分钟
1.5k
该方式把消息发送给Kafka的Broker之后不关心其是否正常到达。在大多数情况下消息会正常到达,即使出错了生产者也会自动重试。但这种方式可能造成Kafka Broker没有接收到生产者的消息。因此这种方式适用于允许消息的丢失、并对吞吐量要求大的场景,比如用户点击日志上传。代码如下:
封面图

【赵渝强老师】Kafka生产者的执行过程

2025-02-22
阅读 1 分钟
1.4k
在主线程中将创建一个KafkaProducer对象,并由KafkaProducer创建一个ProducerRecord对象。该对象代表了生产者Producer发送到Kafka服务器端的一个消息对象。ProducerRecord对象是一个Key-Value键值对的对象,其中包含了主题名称、主题中的分区号、时间戳以及其他Key-Value键值对,其中最重要的就是Kafka服务器端的主题名称。
封面图

【赵渝强老师】Spark RDD的缓存机制

2025-02-19
阅读 2 分钟
1.5k
Spark RDD通过persist方法或cache方法可以将计算结果的缓存,但是并不是这两个方法被调用时立即缓存,而是触发后面的action时,该RDD才会被缓存在计算节点的内存中并供后面重用。下面是persist方法或cache方法的函数定义:
封面图

【赵渝强老师】Spark的容错机制:检查点

2025-02-13
阅读 2 分钟
1.4k
由于Spark的计算是在内存中完成,因此任务执行的生命周期lineage(血统)越长,执行出错的概念就会越大。Spark通过检查点Checkpoint的方式,将RDD的状态写入磁盘进行持久化的保存从而支持容错。如果在检查点之后有节点出现了问题,Spark只需要从检查点的位置开始重新执行lineage就可以了,这样就减少了开销。设置checkpo...
封面图

【赵渝强老师】达梦数据库的产品系列

2025-02-06
阅读 1 分钟
1.6k
​达梦数据库是达梦公司在总结DM系列产品研发与应用经验的基础上,坚持开放创新、简洁实用的理念,推出的新一代自研数据库。达梦数据库吸收借鉴当前先进新技术思想与主流数据库产品的优点,融合了分布式、弹性计算与云计算的优势,对灵活性、易用性、可靠性、高安全性等方面进行了大规模改进,多样化架构充分满足不同场景...
封面图

【赵渝强老师】Spark RDD的依赖关系和任务阶段

2025-02-01
阅读 2 分钟
1.4k
Spark RDD彼此之间会存在一定的依赖关系。依赖关系有两种不同的类型:窄依赖和宽依赖。窄依赖:如果父RDD的每一个分区最多只被一个子RDD的分区使用,这样的依赖关系就是窄依赖;宽依赖:如果父RDD的每一个分区被多个子RDD的分区使用,这样的依赖关系就是宽依赖。map、filter、union等操作都是典型的窄依赖操作,如下图所...
封面图

【赵渝强老师】K8s中Pod探针的TCPSocketAction

2025-01-30
阅读 2 分钟
1.4k
在K8s集群中,当Pod处于运行状态时,kubelet通过使用探针(Probe)对容器的健康状态执行检查和诊断。K8s支持三种不同类型的探针,分别是:livenessProbe(存活探针)、readinessProbe(就绪探针)和startupProbe(启动探针)。不同类型的探针都支持三种方式检查方法,分别是:HTTPGetAction、ExecAction和TCPSocketAction。
封面图

【赵渝强老师】K8s中Pod探针的ExecAction

2025-01-27
阅读 2 分钟
1.5k
在K8s集群中,当Pod处于运行状态时,kubelet通过使用探针(Probe)对容器的健康状态执行检查和诊断。K8s支持三种不同类型的探针,分别是:livenessProbe(存活探针)、readinessProbe(就绪探针)和startupProbe(启动探针)。不同类型的探针都支持三种方式检查方法,分别是:HTTPGetAction、ExecAction和TCPSocketAction。
封面图

【赵渝强老师】K8s中Pod探针的HTTPGetAction

2025-01-22
阅读 2 分钟
1.5k
在K8s集群中,当Pod处于运行状态时,kubelet通过使用探针(Probe)对容器的健康状态执行检查和诊断。K8s支持三种不同类型的探针,分别是:livenessProbe(存活探针)、readinessProbe(就绪探针)和startupProbe(启动探针)。不同类型的探针都支持三种方式检查方法,分别是:HTTPGetAction、ExecAction和TCPSocketAction。
封面图

【赵渝强老师】Kubernetes中Pod的探针

2025-01-19
阅读 1 分钟
1.4k
在K8s集群中,当Pod处于运行状态时,kubelet通过使用探针(Probe)对容器的健康状态执行检查和诊断。Kubernetes支持的三种类型的探针。视频讲解如下:[链接]
封面图

【赵渝强老师】什么是NoSQL数据库?

2025-01-11
阅读 2 分钟
1.5k
随着大数据技术的兴起,NoSQL数据库得到了广泛的应用。NoSQL的全称是Not Only SQL,中文含义是不仅仅是SQL。它泛指所有的非关系型数据库,即:在NoSQL数据库中存储数据的模型可能不是二维表的行和列。NoSQL数据库不遵循关系型数据库范式的要求,因此在NoSQL数据库中可能会造成数据的冗余。视频讲解如下:[链接]
封面图

【赵渝强老师】MongoDB写入数据的过程

2025-01-04
阅读 1 分钟
1.2k
在MongoDB数据更新时,WiredTiger存储引擎使用预写日志的机制先将数据更新写入到Journal日志文件中。然后在创建检查点操作开始时,再将日志文件中记录的操作刷新到数据文件。换句话说,通过预写日志和检查点机制可以保证将数据更新持久化到数据文件中,并实现数据的一致性。
封面图

【赵渝强老师】MongoDB文档级别的并发控制

2025-01-01
阅读 2 分钟
1.6k
MongoDB在执行写操作时,WiredTiger存储引擎会在文档级别进行并发控制。换句话说在同一时间点上,多个写操作能够修改同一个集合中的不同文档;而当多个写操作修改同一个文档时,必须以序列化方式执行。这意味着如果当前文档正在被修改,其他写操作必须等待该文档上的写操作完成之后才能进行修改。对于大部分的文档读写操...
封面图

【赵渝强老师】MongoDB的Journal日志

2024-12-28
阅读 1 分钟
1.3k
数据是MongoDB的核心,MongoDB通过使用Journal日志保证数据的安全。Journal日志用于记录上一个检查点之后发生的数据更新,并将更新的信息顺序写入Journal日志文件中。通过使用Journal日志能够将数据库从系统异常终止事件中还原到一个有效的状态。通过6.5.1.3小节的介绍了解到,MongoDB使用预写日志机制实现数据的持久化...
封面图

【赵渝强老师】MongoDB逻辑存储结构

2024-12-25
阅读 1 分钟
1.2k
MongoDB的逻辑存储结构是一种层次结构,主要包括了三个部分,即:数据库(Database)、集合(Collection,也可以叫做表)和文档(Document,也可以叫做记录)。MongoDB的逻辑存储结构是面向用户使用的,使用mongoshell或者应用程序操作MongoDB时,主要就是操作的MongoDB逻辑存储结构。视频讲解如下:[链接]
封面图

【赵渝强老师】PostgreSQL的参数文件

2024-12-21
阅读 1 分钟
1.5k
PostgreSQL数据库的参数文件主要包括四个,它们分别是postgresql.conf、pg_hba.conf、pg_ident.conf和postgresql.auto.conf。下面将详细介绍这四个参数文件。视频讲解如下:[链接]
封面图

【赵渝强老师】PostgreSQL的控制文件

2024-12-09
阅读 3 分钟
1.3k
PostgreSQL数据库的物理存储结构主要是指硬盘上存储的文件,包括:数据文件、日志文件、参数文件、控制文件、WAL预写日志文件等等。下面重点讨论一下PostgreSQL的控制文件。视频讲解如下:[链接]
封面图

【赵渝强老师】PostgreSQL的服务器日志文件

2024-12-06
阅读 2 分钟
1.1k
PostgreSQL数据库的物理存储结构主要是指硬盘上存储的文件,包括:数据文件、日志文件、参数文件、控制文件、WAL预写日志文件等等。下面重点讨论一下PostgreSQL的服务器日志文件。视频讲解如下:[链接]
封面图

【赵渝强老师】PostgreSQL的WAL预写日志文件

2024-12-05
阅读 2 分钟
1.3k
PostgreSQL数据库的物理存储结构主要是指硬盘上存储的文件,包括:数据文件、日志文件、参数文件、控制文件、WAL预写日志文件等等。下面重点讨论一下PostgreSQL的WAL预写日志文件。
封面图

【赵渝强老师】PostgreSQL的运行日志文件

2024-12-04
阅读 4 分钟
1.3k
PostgreSQL数据库的物理存储结构主要是指硬盘上存储的文件,包括:数据文件、日志文件、参数文件、控制文件、WAL预写日志文件等等。而PostgreSQL的日志文件又分为运行日志、WAL预写日志、事务日志和服务器日志。
封面图

【赵渝强老师】PostgreSQL的数据文件

2024-12-03
阅读 1 分钟
1.2k
PostgreSQL数据库的物理存储结构主要是指硬盘上存储的文件,包括:数据文件、日志文件、参数文件、控制文件、WAL预写日志文件等等。下面重点讨论一下PostgreSQL的数据文件。
封面图

【赵渝强老师】PostgreSQL的物理存储结构

2024-12-02
阅读 2 分钟
1.3k
PostgreSQL在执行initdb的数据库集群初始化时会指定一个目录。该目录通过环境变量$PGDATA来表示。当数据库集群初始化完成后,会在这个目录生成相关的子目录以及一些文件。这些生成的文件就是PostgreSQL的物理存储结构中的文件。如下图所示。
封面图

【赵渝强老师】PostgreSQL的段、区和块

2024-12-01
阅读 1 分钟
1.3k
PostgreSQL的逻辑存储结构主要是指数据库集群、数据库、表空间、段、区、块等;同时PostgreSQL的逻辑存储结构也包括数据库中的各种数据库对象,如:表、索引、视图等等。所有数据库对象都有各自的对象标识符oid(object identifiers),它是一个无符号的四字节整数,相关对象的oid都存放在相关的系统目录表中,比如数据库...
封面图

【赵渝强老师】PostgreSQL中的模式

2024-11-30
阅读 1 分钟
1.2k
在PostgreSQL中,所有的数据库对象都是属于模式中的对象。这里的数据库对象包括:表、索引、视图、存储过程、触发器等等。所有数据库对象都有各自的对象标识符oid(object identifiers),它是一个无符号的四字节整数,相关对象的oid都存放在相关的系统目录表中,比如数据库的oid和表的oid分别存放在pg_database,pg_class...
封面图

【赵渝强老师】PostgreSQL的表空间

2024-11-29
阅读 2 分钟
1.4k
在PostgreSQL中,数据库在逻辑上分成多个存储单元,该单元称作表空间。表空间用作把逻辑上相关的数据结构放在一起。数据库逻辑上是由一个或多个表空间组成。在数据库初始化的时候,会自动创建pg_default和pg_global两个表空间。其中:
封面图

【赵渝强老师】PostgreSQL的数据库

2024-11-28
阅读 2 分钟
1.2k
PostgreSQL的逻辑存储结构主要是指数据库中的各种数据库对象,包括:数据库集群、数据库、表、索引、视图等等。所有数据库对象都有各自的对象标识符oid(object identifiers),它是一个无符号的四字节整数,相关对象的oid都存放在相关的系统目录表中,比如数据库的oid和表的oid分别存放在pg_database,pg_class表中。下图...
封面图

【赵渝强老师】PostgreSQL的数据库集群

2024-11-26
阅读 1 分钟
940
PostgreSQL的逻辑存储结构主要是指数据库中的各种数据库对象,包括:数据库集群、数据库、表、索引、视图等等。所有数据库对象都有各自的对象标识符oid(object identifiers),它是一个无符号的四字节整数,相关对象的oid都存放在相关的系统目录表中,比如数据库的oid和表的oid分别存放在pg_database,pg_class表中。下图...
封面图

【赵渝强老师】PostgreSQL的逻辑存储结构

2024-11-25
阅读 2 分钟
1.1k
PostgreSQL的逻辑存储结构主要是指数据库中的各种数据库对象,包括:数据库集群、数据库、表、索引、视图等等。所有数据库对象都有各自的对象标识符oid(object identifiers),它是一个无符号的四字节整数,相关对象的oid都存放在相关的系统目录表中,比如数据库的oid和表的oid分别存放在pg_database,pg_class表中。下图...
封面图