当前位置: 首页 > news >正文

PostgreSQL架构

目录

一、PostgreSQL核心特性与优势

1.PostgreSQL简介

2.PostgreSQL的核心特点

(1)开源与自由

(2)高度符合SQL标准

(3)丰富的数据类型

(4)事务与并发控制

(5)扩展性

(6)安全性

3.PostgreSQL的竞争优势

(1)性能优化

(2)高可用性

(3)应用场景多样性

二、PostgreSQL安装全流程解析

1.编译安装(以OpenEuler24系统为例)

(1)环境准备

(2)源码编译

(3)系统配置

(4)初始化与启动

2.DNF安装(以OpenEuler24系统为例)

(1)快速部署

三、PostgreSQL架构深度剖析

1.逻辑结构分层

(1)数据库集群(Database Cluster)

(2)数据库(Database)

(3)模式(Schema)

(4)对象层级

(5)表空间(Tablespace)

2.物理存储机制

(1)数据目录结构

(2)文件类型详解

(3)OID(对象标识符)

3.存储优化实践

(1)表空间管理

(2)分区表设计

(3)索引策略

四、总结与展望


一、PostgreSQL核心特性与优势

1.PostgreSQL简介

PostgreSQL(简称PG)是一款开源的对象关系型数据库管理系统(ORDBMS),起源于加州大学伯克利分校的Ingres项目。经过数十年的发展,PG凭借其强大的功能、高可靠性以及活跃的社区支持,已成为企业级应用的首选数据库之一。其设计哲学强调扩展性、标准符合性与灵活性,支持复杂查询、事务处理及非结构化数据管理,适用于OLTP、OLAP、GIS、物联网等多种场景。

核心历史与发展

  • 起源:基于Ingres的Post-Ingres项目演化而来,首次发布于1996年。
  • 开源特性:遵循PostgreSQL许可证,允许自由使用、修改与分发。
  • 社区驱动:全球开发者共同维护,版本迭代迅速,生态工具链丰富(如PostGIS、TimescaleDB)。

2.PostgreSQL的核心特点

(1)开源与自由

  • 无版权限制:企业可免费用作商业用途,降低技术成本。
  • 可定制性:用户可根据需求修改源码,例如优化查询引擎或集成自定义数据类型。
  • 社区生态:全球开发者贡献插件(如Citus分布式扩展)、文档与技术支持。

(2)高度符合SQL标准

  • 支持复杂语法:包括窗口函数(Window Functions)、公共表表达式(CTE)、递归查询(WITH RECURSIVE)等。
  • 跨版本兼容性:SQL语法兼容ANSI标准,减少迁移成本。

(3)丰富的数据类型

  • 基础类型:整数、浮点数、字符串、布尔值等。
  • 高级类型:
    • JSON/JSONB:支持半结构化数据存储与索引。
    • 几何类型:通过PostGIS扩展支持GIS数据处理。
    • 范围类型(Range Types):如日期范围、数值区间。
    • 数组与枚举:直接存储多维数据与固定值集合。
(4)事务与并发控制
  • MVCC机制(多版本并发控制):
    • 通过事务ID(XID)标记数据版本,实现读写无锁并发。
    • 避免脏读、不可重复读与幻读问题,支持四种隔离级别(如Read Committed、Serializable)。
    • 嵌套事务与保存点:支持事务部分回滚,增强业务逻辑的容错性。

(5)扩展性

  • 插件机制:可动态加载扩展模块(如pg_partman分区管理)。
  • 自定义对象:支持定义新数据类型、操作符、索引方法(如GiST、SP-GiST)。
  • FDW(外部数据包装器):集成外部数据源(如MySQL、MongoDB)为本地表。

(6)安全性

  • 访问控制:基于角色的权限管理(RBAC),细化到列级权限。
  • 加密支持:数据传输加密(SSL)、数据存储加密(pgcrypto模块)。
  • 审计日志:记录用户操作,满足合规性要求。

3.PostgreSQL的竞争优势

(1)性能优化

  • 查询计划优化:基于代价的优化器(CBO)自动选择最优执行路径。
  • 并行查询:支持并行顺序扫描、聚合与JOIN操作,提升大规模数据处理效率。
  • 分区表:按范围、列表或哈希分区,减少全表扫描开销。

(2)高可用性

  • 流复制:主从异步/同步复制,支持级联复制架构。
  • 逻辑复制:跨版本数据同步,支持表级订阅(如pglogical插件)。
  • 故障切换:结合Patroni或pgPool实现自动故障转移。

(3)应用场景多样性

  • 企业应用:ERP、CRM系统依赖ACID事务保障数据一致性。
  • 数据分析:支持窗口函数与物化视图,适配OLAP场景。
  • GIS应用:通过PostGIS扩展实现空间数据索引与计算。
  • 物联网:时序数据高效存储(TimescaleDB插件)。

二、PostgreSQL安装全流程解析

1.编译安装(以OpenEuler24系统为例)

(1)环境准备

  • 依赖安装
yum -y install gcc make libicu-devel readline-devel zlib-devel

(2)源码编译

  • 解压与配置:
tar zxvf postgresql-16.3.tar.gz
cd postgresql-16.3
./configure --prefix=/usr/local/pgsql

(3)系统配置

  • 用户与目录:
useradd postgres
mkdir /usr/local/pgsql/data
chown postgres /usr/local/pgsql/data
  • 环境变量:
# 共享库与路径配置
export LD_LIBRARY_PATH=/usr/local/pgsql/lib
export PATH=/usr/local/pgsql/bin:$PATH

(4)初始化与启动

postgresql-setup --initdb
systemctl start postgresql
su - postgres
psql
  • 初始化数据库集群:
su - postgres
initdb -D /usr/local/pgsql/data
  • 启动服务:
pg_ctl -D /usr/local/pgsql/data -l logfile start
psql  # 进入交互式终端

2.DNF安装(以OpenEuler24系统为例)

(1)快速部署

  • 安装包管理:
dnf install -y postgresql-server
  • 初始化与启动
postgresql-setup --initdb
systemctl start postgresql
su - postgres
psql

编译安装vsDNF安装

  • 灵活性:编译安装支持自定义路径与优化参数,适合生产环境。
  • 便捷性:DNF安装适合快速部署测试环境,但版本可能滞后。

三、PostgreSQL架构深度剖析

1.逻辑结构分层

(1)数据库集群(Database Cluster)

  • 定义:由单个PostgreSQL实例管理的数据库集合,包含全局系统表(如pg_database)。
  • 物理映射:对应数据目录(如/usr/local/pgsql/data)。

(2)数据库(Database)

  • 独立性:数据库之间逻辑隔离,无法跨库直接查询。
  • 模板库:
    • ​​​​​​​template0:纯净模板,用于恢复损坏的数据库。
    • template1:默认模板,新建数据库时复制其结构。

(3)模式(Schema)

  • 命名空间隔离:同一数据库内,不同模式可包含同名对象(如表、视图)。
  • 权限控制:模式级权限管理,限制用户访问范围。

(4)对象层级

  • 表与索引:数据存储核心,支持堆表与索引组织表(IOT)。
  • 函数与触发器:通过PL/pgSQL编写业务逻辑。

(5)表空间(Tablespace)

  • 物理解耦:表空间将逻辑对象映射到独立存储路径(如SSD与HDD分离)。
  • 默认表空间:
    • ​​​​​​​pg_default:用户表与索引默认存储位置。
    • pg_global:存储系统目录(如pg_control)。

2.物理存储机制

(1)数据目录结构

  • .核心目录:
    • base/:各数据库子目录(以OID命名),存储表与索引文件。
    • global/:全局系统表(如pg_database、pg_authid)。
    • pg_wal/:预写日志(WAL),保障事务持久性与崩溃恢复。
    • pg_tablsc/:表空间符号链接目录。

(2)文件类型详解

  • 数据文件:
    • ​​​​​​​表文件(如16384)由多个Page(8KB块)组成,包含元组(Tuple)与空闲空间映射。
    • 辅助文件:.vm(可见性映射)、.fm(空闲空间管理)。
  • 配置文件:
    • ​​​​​​​postgresql.conf:核心参数(内存、并发连接数)。
    • pg_hba.conf:客户端认证规则(IP、SSL、密码策略)。

(3)OID(对象标识符)

  • 唯一性:4字节无符号整数,标识数据库、表、索引等对象。
  • 系统表查询:
SELECT datname, oid FROM pg_database;  -- 查看数据库OID
SELECT relname, oid FROM pg_class;     -- 查看表OID

3.存储优化实践

(1)表空间管理

  • 自定义空间:
CREATE TABLESPACE mytbs LOCATION '/mnt/ssd_data';
CREATE TABLE mytable (...) TABLESPACE mytbs;
  • 优势:隔离热点数据至高性能存储,优化IO效率。

(2)分区表设计

  • 范围分区:
CREATE TABLE logs (log_date DATE) PARTITION BY RANGE (log_date);
CREATE TABLE logs_2023 PARTITION OF logs FOR VALUES FROM ('2023-01-01') TO ('2024-01-01');
  • 查询优化:分区裁剪减少扫描数据量。

(3)索引策略

  • 多类型索引:
    • ​​​​​​​B-Tree:默认索引,适合范围查询。
    • GiST:支持地址数据与全文搜索。
    • BRIN:块范围索引,适合时序数据。

四、总结与展望

PostgreSQL凭借其开源特性、功能完备性与高性能,已成为现代数据架构的核心组件。从安装部署到存储优化,从逻辑设计到物理管理,其多层次架构设计体现了数据库技术的精髓。未来,随着云原生与分布式需求的增长,PostgreSQL将通过扩展(如Citus、CockroachDB兼容层)持续引领数据库技术演进,为开发者与企业提供更强大的数据服务能力。

相关文章:

PostgreSQL架构

目录 一、PostgreSQL核心特性与优势 1.PostgreSQL简介 2.PostgreSQL的核心特点 (1)开源与自由 (2)高度符合SQL标准 (3)丰富的数据类型 (4)事务与并发控制 (5&…...

苍穹外卖系统结构与功能报告

一、系统简介 苍穹外卖系统是为餐饮企业定制的数字化解决方案,包含管理端后台和用户端小程序两部分。管理端面向餐饮企业员工,支持菜品、套餐、订单等核心业务的数字化管理;用户端面向消费者,提供在线点餐、支付、订单跟踪等功能…...

CAU数据库class3 关系型数据库基础

关系数据库模型的3个要素 数据结构 二维表 数据操作 特点 操作的对象为元组,操作的结果为元组高度非过程化,用户不关系是怎么实现的 完整性约束 数据完整性是指保证数据真确的特性 实体完整性参照完整性用户定义完整性 关系的形式定义 例子&…...

【Qt】在OrinNX上,使用命令安装qtmultimedia5-dev时报错

1、问题描述 在OrinNX+Ubuntu20.04上,使用命令安装qtmultimedia5-dev时报错 sudo apt install qtmultimedia5-devThe following packages have unmet dependencies: qtmultimedia5-dev : Depends: libpulse-dev but it is not going to be installed E: Unable to correct p…...

阿里云CDN刷新预热--刷新URL

文章目录 一、全英文URL刷新预热二、掺杂中文的URL刷新预热2.1 对带中文URL进行编码2.2 预热刷新 三、CDN刷新-核心作用与价值3.1 核心作用3.2 核心价值3.3 典型使用场景 *最后我想说:请你不要相信我说的每一句话,这只是我的个人经验* 一、全英文URL刷新…...

anaconda、miniconda、conda的关系及miniconda安装

anaconda、miniconda、conda的关系及miniconda安装 文章目录 前言正文定义关系Linux安装miniconda新建一个python3.8环境 参考 前言 本文用于记录关于Anaconda、conda和Miniconda的定义及其关系的总结123: 正文 定义 conda 一个跨平台的开源包管理和环境管理工具…...

SpringBoot实现本地对象存储【minio、阿里云、七牛云】

引入依赖 <!-- minio --> <dependency><groupId>io.minio</groupId><artifactId>minio</artifactId><version>8.5.12</version> </dependency><!-- 阿里云oss --> <dependency><groupId>com.aliyun.…...

阿里云百炼(1) : 阿里云百炼应用问答_回答图片问题_方案1_提问时上传图片文件

直接用于拍照答题不大理想, 可能适用其他用途, 更好的方案: 阿里云百炼(1) : 阿里云百炼应用问答_回答图片问题_方案2_提取题目再提问-CSDN博客 1.实现代码 package cn.nordrassil.ly.test.拍照答题;import com.alibaba.dashscope.app.Application; import com.alibaba.dashsc…...

理解阿里云的MQTT

一、阿里云的mqtt分几种 阿里云提供的MQTT服务主要分为‌标准MQTT协议‌和‌P2P模式MQTT‌两种类型&#xff0c;二者在通信模式及适用场景上有显著差异&#xff1a; 1、标准MQTT与P2P MQTT的区别 ‌特性‌‌标准MQTT‌‌P2P模式MQTT‌‌通信模式‌发布/订阅&#xff08;Pub/S…...

HarmonyOS5云服务技术分享--云缓存快速上手指南

大家好&#xff0c;今天我们来聊聊如何快速上手华为AppGallery Connect&#xff08;AGC&#xff09;的云缓存服务。作为一款基于Serverless架构的Key-Value型缓存服务&#xff0c;它不仅能自动弹性伸缩&#xff0c;还能免去运维烦恼&#xff0c;非常适合高并发场景下的数据快速…...

FreeSWITCH rtcp-mux 测试

rtcp 跟 rtp 占用同一个端口&#xff0c;这就是 rtcp 复用 Fs 呼出是这样的&#xff1a; originate [rtcp_muxtrue][rtcp_audio_interval_msec5000]user/1001 &echo 需要同时指定 rtcp_audio_interval_msec&#xff0c;否则 rtcp_mux 不能生效 Fs 呼入不需要配置&#xf…...

浏览器播放 WebRTC 视频流

源码&#xff08;vue&#xff09; <template><video ref"videoElement" class"video" autoplay muted playsinline></video> </template><script setup lang"ts">import { onBeforeUnmount, onMounted, ref } fr…...

SpringBoot3+Vue3(1)-后端 请求头校验,jwt退出登录,mybaits实现数据库用户校验

1.后端&#xff1a;jwt请求头校验 解析 工具类jwtUtils 解析token 令牌是否过期&#xff0c;验证 正常、异常、运行时错误 倒入工具类是resource 工具类中添加解析用户的方法&#xff1a; 在 在工具类添加id解析 此处调用 添加controller做测试 测试&…...

Oracle RAC 中的 RBAL 进程

Oracle RAC 中的 RBAL 进程 RBAL 进程概述 RBAL&#xff08;ReBalancer&#xff09;是 Oracle RAC 和 ASM&#xff08;Automatic Storage Management&#xff09;环境中的一个关键后台进程&#xff0c;主要负责 ASM 磁盘组的重新平衡操作。 主要功能 磁盘组监控&#xff1a…...

mac上将 Excel 文件的扩展名从 .xls 改为 .xlsx 后,打开时报错:“文件格式或文件扩展名无效”。

方法一&#xff1a;使用 Excel for Mac 打开并另存为 打开 Excel 应用程序。 打开你的 .xls 文件&#xff1a; 如果 Excel 能正常打开它&#xff0c;说明文件没问题。 在菜单栏点击&#xff1a;文件 → 另存为。 在文件格式中选择&#xff1a;Excel 工作簿 (.xlsx)。 点击保存…...

【算法-栈】深入栈模拟题:从题型特征到实现技巧

算法相关知识点可以通过点击以下链接进行学习一起加油&#xff01;双指针滑动窗口二分查找前缀和位运算模拟链表哈希表字符串模拟 在算法学习中&#xff0c;栈是最基础也是最容易上手的数据结构之一。然而&#xff0c;当它被用于模拟复杂操作流程时&#xff0c;却常常成为区分“…...

OK536N-C测评:开箱体验以及在Linux下如何管理开发板

前言 OK536N-C终于到我手上了&#xff0c;因为我的主要领域是做嵌入式音视频。例如相机类产品&#xff0c;录像类产品&#xff0c;直播类产品都是我所涉及到的。本片文章一起来开箱见证下OK536N-C有哪些魅力&#xff0c;据说很强。 对于一个嵌入式领域的开发者来说&#xff0…...

【强化学习】深度强化学习 - Deep Q-Network(DQN)算法

文章目录 摘要一、DQN核心原理1. Q-learning回顾2. 用深度网络逼近Q函数3. 经验回放&#xff08;Experience Replay&#xff09;4. 目标网络&#xff08;Target Network&#xff09;5. 损失函数6. ε-贪心策略&#xff08;ε-greedy&#xff09; 二、算法流程与伪代码三、典型实…...

Python实例题:PyOt实现简易浏览器

目录 Python实例题 题目 代码实现 功能说明 基本浏览功能&#xff1a; 标签页支持&#xff1a; 用户界面&#xff1a; 使用方法 注意事项 Python实例题 题目 PyOt实现简易浏览器 代码实现 import sys from PyQt5.QtWidgets import (QApplication, QMainWindow, QT…...

MinerU可视化界面程序部署(Windows环境)

前提是要安装好MinerU&#xff0c;才能部署可视化程序&#xff08;这个可视化程序的源码是MinerU自带的&#xff09;&#xff0c;安装MinerU的步骤参考&#xff1a; MinerU安装(pdf转markdown、json)-CSDN博客 下面进行可视化界面的部署操作&#xff08;在Windows环境部署&…...

STM32之定时器(TIMER)与脉冲宽度调制(PWM)

一、STM32定时器的原理与应用 基本概念 定时器的作用一般是为了使用定时功能和中断功能&#xff08;洗衣机、微波炉、电风扇、智能空调......&#xff09;&#xff0c;当然在STM32中也可以利用定时器产生周期性的脉冲信号来控制不同的外设&#xff08;电机的转速、舵机的角度…...

Linux jq 命令使用详解

简介 jq 是一个命令行 JSON 处理器&#xff0c;允许解析、过滤、转换和格式化 JSON 数据&#xff0c;提取特定字段或重构 JSON&#xff0c;高效使用 JSON 中的 API 或配置文件。 安装 Debian/Ubuntu sudo apt install jqCentOS/RHEL sudo yum install jq或sudo dnf insta…...

【25软考网工】第七章 (2)UOS Linux文件和目录管理、用户和组管理

博客主页&#xff1a;christine-rr-CSDN博客 ​​专栏主页&#xff1a;软考中级网络工程师笔记 ​​​ 大家好&#xff0c;我是christine-rr !目前《软考中级网络工程师》专栏已经更新三十多篇文章了&#xff0c;每篇笔记都包含详细的知识点&#xff0c;希望能帮助到你&#x…...

1.3 C++之变量与数据类型

变量与数据类型教程 目标 理解变量是存储数据的“容器”&#xff0c;数据类型决定容器中能放什么。掌握 int, float, char, bool 的使用。学会声明变量、赋值&#xff0c;定义常量 const。 一、什么是变量&#xff1f; 生活比喻&#xff1a;变量就像“贴了标签的盒子” 盒子…...

SAR ADC 比较器寄生电容对性能的影响

比较器的输入端直接连接CDAC的输出,那比较器的输入端的寄生电容对SAR ADC的性能是否有影响,我们来分析一下。 这是一个单端传统的SAR ADC,SAR ADC 转换只需要采样阶段和转换两个阶段,其中采样阶段一般包含比较器的offset的校正。 采样阶段:接Vin的开关闭合,接Vcom的开关…...

20250520在全志H3平台的Nano Pi NEO CORE开发板上运行Ubuntu Core16.04.3时跑通4G模块EC20

1、h3-sd-friendlycore-xenial-4.14-armhf-20210618.img.gz 在WIN10下使用7-ZIP解压缩/ubuntu20.04下使用tar 2、Win32DiskImager.exe 写如32GB的TF卡。【以管理员身份运行】 3、TF卡如果已经做过会有3个磁盘分区&#xff0c;可以使用SD Card Formatter/SDCardFormatterv5_WinE…...

探秘汽车门槛梁内板右后段成型工艺

引言&#xff1a;汽车制造的关键环节 在汽车制造的复杂体系中&#xff0c;每一个零部件都扮演着不可或缺的角色&#xff0c;其中汽车门槛梁内板右后段虽看似平凡&#xff0c;却对汽车的整体性能和安全起着关键作用。它是车身结构的重要组成部分&#xff0c;犹如建筑的基石&…...

阅读笔记---城市计算中用于预测学习的时空图神经网络研究综述

摘要 随着近年来传感技术的进步&#xff0c;智能城市产生并记录了无数的时空数据。预测时空数据的演变模式是城市计算的一个重要而又苛刻的方面&#xff0c;它可以增强各个领域的智能管理决策&#xff0c;包括交通、环境、气候、公共安全、医疗保健等。传统的统计和深度学习方…...

SpringBootDay1|面试题

目录 一、springboot框架 1、什么是springboot 2、Spring Boot的主要优点 3、springboot核心注解 4、定义banner&#xff08;springboot的logo&#xff09; 5、springboot配置文件 6、springboot 整合 jdbc 二、面试题 1&#xff09;springmvc的作用 ​编辑 2&#x…...

PyCharm2025的字体的设置

前言 Pycharm中的字体调节&#xff0c;看起来似乎无足轻重。但是&#xff0c;能从容的调节&#xff0c;也是蛮好的&#xff0c;特别是做程序演示的时候。 当前PyCharm采用的是最新的2025.1.1版本&#xff08;Community&#xff09;,当前的操作系统是Windows。 一、初始状态 …...

【Linux】进程间通信(三):命名管道

&#x1f4dd;前言&#xff1a; 这篇文章我们来讲讲Linux 进程间通信&#xff08;三&#xff09;——命名管道 &#x1f3ac;个人简介&#xff1a;努力学习ing &#x1f4cb;个人专栏&#xff1a;Linux &#x1f380;CSDN主页 愚润求学 &#x1f304;其他专栏&#xff1a;C学习…...

人工智能+:职业技能培训的元命题与能力重构

当“人工智能”成为各行各业的热门命题时&#xff0c;我们似乎跳过了一个更根本的思考&#xff1a;人类究竟需要怎样的AI能力&#xff1f;这个问题不解决&#xff0c;任何技术赋能都可能沦为无本之木。真正的挑战不在于如何应用AI&#xff0c;而在于如何定义人与AI的能力边界—…...

HarmonyOS5云服务技术分享--云存储SDK文章整理

在HarmonyOS ArkTS应用中集成华为云存储SDK指南 大家好呀&#xff01;今天咱们来聊聊如何将华为云存储SDK集成到基于ArkTS&#xff08;API 9-11&#xff09;的HarmonyOS应用中。这篇指南会手把手带你完成从环境准备到代码实现的完整流程&#xff0c;过程中遇到的常见问题也会贴…...

《财务自由之路Ⅱ》理论篇

欢迎来到啾啾的博客&#x1f431;。 记录学习点滴。分享工作思考和实用技巧&#xff0c;偶尔也分享一些杂谈&#x1f4ac;。 欢迎评论交流&#xff0c;感谢您的阅读&#x1f604;。 目录 引言认知赚钱方式收入与负债都很重要整天工作的人&#xff0c;没有时间赚钱 一些建议做法…...

AI筑基,新质跃升|英码科技亮相华为广东新质生产力创新峰会,发布大模型一体机新品,助力产业智能化转型

5月15日&#xff0c;以“AI筑基&#xff0c;新质跃升”为主题的华为中国行2025广东新质生产力创新峰会在惠州圆满召开。本次峰会聚焦人工智能、算力基础设施等新ICT技术如何驱动“新质生产力”&#xff0c;共探广东高质量发展新路径。英码科技受邀出席本次峰会&#xff0c;并携…...

【C++】C++的拷贝构造函数介绍使用

拷贝构造函数 1.作用示例代码1&#xff1a;拷贝构造函数的调用示例代码2&#xff1a;系统默认的拷贝构造做的事情示例代码3&#xff1a;写法1-4示例代码4&#xff1a;写法5示例代码5&#xff1a;C编译器默认给类提供了4中隐含的方法 2.语法规则示例代码&#xff1a; 3.深拷贝和…...

能管理MySQL、Oracle、达梦数据库的桌面管理软件开源了

能管理MySQL、Oracle、达梦数据库的桌面管理软件开源了 能管理MySQL、Oracle、达梦数据库的桌面管理软件开源了1.项目介绍2. 项目源码开发2.1克隆项目2.2 配置并运行 3.使用3.1添加数据库连接3.2新增表3.3操作表3.4 运行sql 4.总结 能管理MySQL、Oracle、达梦数据库的桌面管理…...

5.20打卡

浙大疏锦行 DAY 31 文件的规范拆分和写法 知识点回顾 1. 规范的文件命名 2. 规范的文件夹管理 3. 机器学习项目的拆分 4. 编码格式和类型注解 作业&#xff1a;尝试针对之前的心脏病项目&#xff0c;准备拆分的项目文件&#xff0c;思考下哪些部分可以未来复用。 预处理&am…...

unity XCharts插件生成曲线图在UICanvas中

【推荐100个unity插件之22】基于UGUI的功能强大的简单易用的Unity数据可视化图表插件——XCharts3.0插件的使用_unity xcharts-CSDN博客...

创建thinkphp项目并配置数据库

配置环境并引入UI ssr模式 使用 composer 命令在指定的目录安装 Thinkphp6.x composer create-project topthink/think tp6demo出现Fatal error: Directive ‘track_errors’ is no longer available in PHP in Unknown on line 0说明你的php版本较高&#xff0c;在php.ini中…...

头歌实践平台:动态NAT配置

第一&#xff1a;打开GNS3&#xff0c;创建名为nat的项目文件 第二&#xff1a;创建网络拓扑结构如下&#xff1a; note:s端口线需要在关闭路由器的情况下双击进入&#xff0c;选配4T端口&#xff08;不要忘记点击OK&#xff09; 第三&#xff1a;打开所有设备&#xff08;所…...

贝叶斯优化+CNN+LSTM=小论文创新点

2周速成小论文可能吗&#xff1f;有点悬&#xff0c;但有可能。今天我就给论文er推荐一个高潜力、易创新、适合速发的小论文选题&#xff1a;贝叶斯优化CNNLSTM&#xff01; 这种“三结合”的优势在于技术成熟度高&#xff08;经典CNN和LSTM&#xff09;、创新点灵活性强&…...

软考中级软件设计师——计算机网络 IP地址与子网掩码相关题型

一、常见题型分类 题型考查重点解题关键子网划分根据需求划分子网&#xff0c;计算网络地址、广播地址、可用主机范围等二进制与十进制转换&#xff0c;子网掩码计算&#xff0c;网络位与主机位划分子网掩码转换CIDR表示法&#xff08;如/24&#xff09;与点分十进制&#xff…...

bi报表是什么意思?如何制作一张bi报表?

目录 一、BI 报表是什么意思&#xff1f; 1. BI 报表的基本概念 2. BI 报表的特点 3. BI 报表的作用 二、制作 BI 报表的前期准备 1. 明确报表的目标和需求 2. 确定数据来源 3. 选择合适的 BI 工具 三、制作 BI 报表的具体步骤 1. 数据收集与整理 2. 数据分析 3. 可…...

vivado fpga程序固化

一般下载到fpga上的程序在掉电之后就会丢失&#xff0c;如果想要掉电之后程序不丢失&#xff0c;就需要将比特流文件固化到板载的flash上。 以下以我的7a100t开发板为例&#xff0c;介绍程序固化的流程 点击OK就可以下载了。...

人生的真谛杂谈

文章目录 自我的哲学奠基自我存在的真实性身体与思想的决定关系自由意志自我的当代解构 三观的意义系统构建世界观&#xff1a;认知世界的根基人生观&#xff1a;生命意义的探索价值观&#xff1a;行为选择的准则三观构建的终极目标 价值的哲学解构价值的本体论价值客观性的形而…...

【Java】继承和多态在 Java 中是怎样实现的?

extends 关键字 class 子类 extends 父类 {... } // 类继承是单继承父类的哪些成员被继承 ? 访问修饰符 public 和 protected 修饰的父类成员字段和成员方法可以被继承 , 父类的默认方法只能在同包下继承 , 父类的 private 成员和构造方法不可继承 . super 关键字 表示父类…...

输出字母在字符串中位置索引

输入一个字符串&#xff0c;再输入两个字符&#xff0c;求这两个字符在字符串中的索引。 输入格式: 第一行输入字符串 第二行输入两个字符&#xff0c;用空格分开。 输出格式: 从右向左输出字符和索引&#xff0c;即下标最大的字符最先输出。每行一个。 输入样例: 在这里…...

Oracle中如何解决LATCH:CACHE BUFFERS LRU CHAIN

简单来讲&#xff0c;Oracle为了高效管理BUFFER CACHE主要使用以下2种LRU列&#xff1a; LRU列&#xff0c;又叫替换列&#xff08;replacement list&#xff09;&#xff0c;其中又分为主列和辅助列。 主列&#xff1a;已使用的缓冲区列&#xff0c;分为HOT和COLD区域。HOT区…...

FPGA:基于Vivado的仿真流程与波形调试实践

在FPGA开发过程中&#xff0c;仿真是验证设计逻辑正确性的关键环节。尤其在复杂系统中&#xff0c;单靠硬件板级调试远远不够&#xff0c;往往需要依赖仿真工具提前发现潜在问题&#xff0c;提升开发效率。本文将结合Xilinx Vivado设计套件&#xff0c;系统梳理从仿真环境构建到…...