软考(中级-软件设计师)数据库篇(1101)
第6章 数据库系统基础知识
一、基本概念
1、数据库
数据库(Database ,DB)是指长期存储在计算机内的、有组织的、可共享的数据集合。数据库中的数据按一定的数据模型组织、描述和存储,具有较小的冗余度、较高的数据独立性和扩展性,并可为各种用户共享。
2、数据库管理系统
数据库管理系统(Database Management System,DBMS)是数据库系统的核心软件,要在操作系统的支持下工作,解决如何科学地组织和存储数据、如何高效地获取和维护数据的系统软件问题,其主要功能包括数据定义功能、数据操纵功能、数据库的运行管理、数据组织、存储、管理和数据库的建立与维护。
1.1 DBMS的特征与分类
1、DBMS的特征
- 数据结构化且统一管理
- 有较高的数据独立性
- 提供数据控制功能
2、DBMS的分类
- 关心数据库系统:是支持关系模型的数据系统。
- 面向对象的数据库系统:是支持以对象形式对数据建模的数据库系统。
- 对象关系数据库系统:在传统的关系数据模型基础上,提供元组、数组、集合等更丰富的数据类型以及处理新的数据类型操作能力,这样形成的数据模型称为对象关系数据模型,基于对象关系数据模型的DBS称为对象关系数据系统。
二、数据库三级模式两级映像
数据库系统采用三级模式结构,这是数据库管理系统内部的系统结构。
- 外模式:也称用户模式或子模式,是用户与数据库系统的接口是用户用到的那部分数据的描述,由若干个外部记录类型组成。描述外模式的数据定义语言称为外模式DDL。
- 概念模式:也称模式,是数据库中全体数据的逻辑结构和特征的描述,它由若干个概念记录类型组成,只涉及行的描述,不涉及具体的值。概念模式的一个具体值称为模式的一个实例,同一个模式可以由很多实例、
- 内模式:也称存储模式,是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式,定义所有内部记录类型、索引和文件的组织方式,以及数据控制方面的细节。描述内模式的数据定义语言称为内模式DDL。
- 外模式/模式映像:该映像存在于外部级和概念级之间,实现了外模式到概念模式之间的相互转换。
- 模式/内模式映像:该映像存在于概念级和内部级之间,实现了概念模式之间的相互转换。
- DBMS的两级映像功能保证了数据的独立性。
三、数据库的分析与设计过程
四、数据模型
模型就是对现实世界特征的模拟和抽象。
数学模型是对现实世界数据特征的抽象。
数据模型是用来描述数据的一组概念和定义。
数据模型的三要素:
- 数据机构:是所研究的对象类型的集合,是对系统静态特性的描述。
- 数据操作:是对数据库中各种搞对象的实例(值)允许执行的操作的集合,包括操作及操作规则。数据操作时对系统动态特性的描述。
- 数据的约束条件:是一组完整性规则的集合。对于具体的应用数据必须遵循特定的语义约束条件,以保证数据的正确、有效、相容。
4.1 E-R模型
实体-联系模型简称E-R模型,所采用的3个主要概念是实体、联系和属性。
4.2 关系模型
关系数据库系统采用关系模型作为数据的组织方式,在关系模型中用表格结构表达实体集以及实体集之间的联系,其最大特色是描述的一致性。
关系模型是由若干个关系模型组成的集合。一个关系模式相当于一个记录型,对应程序设计语言中类型定义的概念。
关系模型的优点是概念单一,存储路径对用户是透明的,所以具有好的数据独立性和安全保密性,简化了程序的开发和数据库建立工作。
教学数据库的4个关系模式如下:
关系模式中有下划线的属性是主码属性
- 一个实体型转换为一个关系模式
- 1:1联系
- 1:n联系
- m:n联系
- 三个以上实体间的一个多元联系
在数据库逻辑结构的设计中,将E-R模型转换为关系模型应遵循相关原则。对于三个不同实体集和它们之间的多对多联系
m:n:p
,最少可转换为( ) 个关系模式。
>
A. 2 B.3 C. 4 D.5
C
五、关系代数
教学数据库的4个关系模式如下:
候选码(键):若关系中的某一属性或属性组的值能唯一标识一个元组,则称该属性或属性组为候选码
主码(键):若一个关系有多个候选码,则选定其中一个主码。
主属性:包含在任何候选码中的诸属性称为主属性。不包含在任何候选码中的属性称为非主属性。
外码(键):如果公共属性在一个关系中是主属性,那么这个公共属性被称为另一个关系的外码。由此可见,外码表示了两个关系之间的相关联系。
全码:若关系模式的所有属性组都是这个关系模式的候选码,则称为全码。
S(Sno,Sname,SD,Sage,Sex)
:学生 S 关系模式,属性为学号、姓名、系、年龄和性别
T (Tno,Tname,Age,Sex)
:教师T关系模式,属性为教师号、姓名、年龄和性别
C (Cno,Cname,Pcno)
:课程C关系模式,属性为课程号、课程名和先修课程号
SC (Sno,Cno,Grade):
学生选课SC 关系模式,属性为学号、课程号和成绩
5.1 关系的三种类型
下面介绍关系的三种类型:
- 基本关系(又称基本表、基表):是实际存在的表,它是实际存储数据的逻辑表示。
- 查询表:查询结构对应的表。
- 视图表:是由基本表或其他视图表导出来的表。由于本身不独立存储在数据库中,数据库中只存放它的定义,所以称为虚表。
数据库系哦推给你通常采用三级模式结构:外模式、模式和内模式。这三级模式分别对应数据库的()。
A. 基本表、存储文件和视图 B.视图、基本表和存储文件
C.基本表、视图和存储文件 D.视图、存储文件和基本表
B
5.2 七种基本运算
连接(Join,也坐联接)分为 θ \theta θ连接、等值连接、自然连接3种,连接运算是从两个关系的笛卡尔积中选取满足条件的元组。
-
θ \theta θ连接:从关系R和S的笛卡尔积中选取属性间满足一定条件的元组,记作
-
等值连接:当 θ \theta θ为“=”时称为等值连接,记作
-
自然连接:是一种比较特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且结果集中把重复的属性列去掉。
给定关系R(A,B,C,D)和关系S(A,C,E,F),对其进行自然连接运算, R ⋈ S R\bowtie S R⋈S后属性列位( 1),与 σ R . B > S . E ( R ⋈ S ) \sigma R.B>S.E(R \bowtie S) σR.B>S.E(R⋈S) 等价的关系代数表达式为(2)
(1)A. 4 B. 5 C. 6 D. 8
(2)
KaTeX parse error: Got function '\hskip' with no arguments as superscript at position 1: \̲h̲s̲k̲i̲p̲1em\relax
CB
下列查询B=“大数据”且F=“开发平台”,结果集属性列为A,B,C,D,F的关系代数表达式中查询效率最高的是( )
六、数据库完整性约束
完整性规则提供了一种手段来保证当授权用户对数据库做修改时不会破坏数据的一致性,因此,完整性规则是为了防止对数据的以外破坏。
关系模型的完整性规则是对关系的某种约束条件。完整新共分为3类:
- 实体完整性:规定基本关系R的主属性A不能取空值.
- 参照完整性:若F是基本关系R的外码,它与基本关系S的主码相对应(基本关系R和S不一定是不同的关系,则对于R中的每个元组在F上的值必须为:或者取空值(F 的每个属性值均为空值),或者等于S中某个元组的主码值。
- 用户定义完整性:就是针对某一具体的关系数据库的约束条件,反应某一具体应用所涉及的数据必须满足的语义要求,由应用的环境决定。
S(Sno,Sname,SD,Sage,Sex):学生S关系模式,属性为学号、姓名、系、年龄和性别
T(Tno,Tname,Age,Sex):教师T关系模式,属性为教师号、姓名、年龄和性别
关系代数表达式查询优化的原则如下:
- 最早执行选取运算,对于有选择运算的表达式,应优化尽可能先执行选择运算的等价表达式,以得到较小的中间结果,减少运算量以及从外存读块的次数。
- 合并乘积与其后的选择运算为连接运算。
- 将投影运算与其后的其他运算同时进行,以避免重复扫描关系。
- 将投影运算和其前后的二目运算结合起来,因为没有必要为去掉某些字段再扫描一遍关系。
- 在执行连接前对关系适当地预处理,就能快速地找到要连接的元组。
- 存储公共子表达式,对于有公共子表达式的结果应存于外存(中间结果),这样,当从外存读出它的时间比计算机的时间少时,就可以节约操作时间。
七、关系型数据库SQL
简介
SQL
是在关系数据库中最皮鞭使用的语言,它不仅包含数据查询功能,还包括插入、删除、更新和数据定义功能。
SQL
具有综合统一、高度非过程化、面向集合的操作方式,两个使用方式,语言简洁且易学易用等特点。
SQL
支持关系数据库的三级模式结构:视图对应外模式、基本表对应模式、存储文件对应模式。
1、SQL
数据定义:
- 创建表
- 修改和删除表
- 创建和删除索引
- 创建和删除视图
2、SQL
数据查询
- select查询
- 简单查询
- 连接查询
- 子查询和聚集函数
3、SQL
数据更新
- 插入
- 删除
- 修改
八、关系数据库的规范化
8.1 函数依赖
- 函数依赖:设R(U)是属性集U上的关系模式,X和Y是U的子集。若对R的任何一个可能的关系r,r中不可能存在的两个元组在X上的属性值相等,而在Y上的属性值不等,则称X函数决定Y或Y函数依赖于X,记作X->Y.
- 非平凡的函数依赖:如果X->Y,但Y$\not\subset $X,则称X→Y是非平凡的函数依赖。
- 平凡的函数依赖:如果X→Y,但Y$\subset $X,则称X→Y是平凡的函数依赖。
- 完全函数依赖:在R(U)中,如果X→Y,并且对于X的任何一个真子集X’,都有X’不能决定Y,则称Y对X完全函数依赖,记作 X — > f Y X{—>}^fY X—>fY。
- 部分函数依赖:如果X→Y,但Y不完全函数依赖于X,则称Y对X部分函数依赖,记作X>Y。部分函数依赖也称局部函数依赖。
- 传递依赖:在R(U,F)中,如果X→Y, Y ⊊ X Y \subsetneq X Y⊊X,Y不能函数决定X,Y→Z,则称Z对X传递依赖。
8.2 求候选码(键)
第一步:将关系模式的函数依赖用“有向图”的方式表示。
第二步:找入度为0的属性,并以该属性集合为起点,尝试遍历有向图,若能正常遍历图中的所有结点,则该属性即为关系模式的候选键。
第三步:若入度为0的属性集不能遍历图中所有结点,则需要尝试性的将一些中间节点(既有入度,也有出度的结点)并入入度为0的属性集中,直至该结合能遍历所有结点,集合为候选键。
若给定的关系模式为R,U={A,B,C},F={AB->C,C->B},则关系R( )。
A.有2个候选关键字AC和BC,并且有3个主属性
B.有2个候选关键字AC和AB,并且有3个主属性
C.只有一个候选关键字AC,并且有1个非主属性和2个主属性
D.只有一个候选关键字AB,并且有1个非主属性和2个主属性
解:关系模式R的函数依赖关系表达式为:
B
8.3 规范化理论(非规范化存在的问题)
非规范化的关系模式,可能存在的问题包括:
数据冗余、更新异常、插入异常、删除异常
SNO | SName | DNO | DNAME | LOCATION |
---|---|---|---|---|
S01 | 张三 | D01 | 计算机系 | 1号楼 |
S02 | 李四 | D01 | 计算机系 | 1号楼 |
S03 | 王五 | D01 | 计算机系 | 1号楼 |
S04 | 赵六 | D02 | 信息系 | 2号楼 |
…… | …… | …… | …… | …… |
8.4 规范化理论(概念)
关系数据库设计的方法之一就是满足适当范式的模式。通常可以通过判断分解后的模式达到几范式来评价规范化的程度。
范式有1NF、2NF、3NF、BCNF(巴斯克斯范式)、4NF和5NF,其中1NF级别最低。这几种范式之间有 5 N F ⊂ 4 N F ⊂ B C N F ⊂ 3 N F ⊂ 2 N F ⊂ 1 N F 5NF\subset 4NF \subset BCNF \subset 3NF \subset 2NF \subset 1NF 5NF⊂4NF⊂BCNF⊂3NF⊂2NF⊂1NF成立。
通过分解,可以将一个低一级范式的关系模式转换成若干个高一级范式的关系模式,这种过程叫做规范化。
8.5 规范化理论(范式)
1、1NF(第一范式)
若关系模式R的每一个分量都是不可再分的数据项,则关系模式R属于第一范式(1NF)。
【高级职称人数】可再分
2、 2NF(第二范式)
若关系模式$R\in 1NF , 且每个非主属性完全依赖于主键,则关系模式 ,且每个非主属性完全依赖于主键,则关系模式 ,且每个非主属性完全依赖于主键,则关系模式R\in2NF$.换句话说,当1NF消除了非主属性对码的部分函数依赖,则称为2NF。
学生选课SC关系模式:属性为学号(Sno)、课程号(Cno)、成绩(Grade)和学分(Credit)
3、3NF(第三范式)
若关系模式R(U,F)中不存在这样的码X、属性组Y及非主属性Z(Z不属于Y),使得
成立,则称关系模式R∈3NF。
换句话说,当2NF消除了非主属性对码的传递函数依赖,则称为3NF。3NF的模式必是2NF的模式。产生冗余和异常的两个重要原因是部分依赖和传递依赖
学生S关系模式,属性为学号、姓名、系、年龄和性别
Sno | Sname | SD | Age | Sex |
---|---|---|---|---|
01001 | 贾皓听 | IS | 20 | 男 |
01002 | 姚勇 | IS | 20 | 男 |
01003 | 李晓红 | CS | 19 | 女 |
4、BCNF(巴克斯范式)
【定义7-7】若关系模式REINF,若X→Y,且Y属于X,X必含有码,则关系模式R ∈ \in ∈EBCNF。
换句话说,当3NF消除了主属性对码的部分和传递函数依赖,则称为BCNF。
一个满足BCNF的关系模式应具有以下性质。
- 所有非属性对每一个码都是完全函数依赖。
- 所有非主属性对每一个不包含它的码也是完全函数依赖。
- 没有任何属性完全函数依赖于非码的任何一组属性。
设有关系模式
R(A1,A2,A3,A4,A5,A6)
,其中:函数依赖集F={A1→A2,A1A3→A4,A5A6→A1,A2A5→A6,A3A5→A6}
,则_(55)_是关系模式R的一个主键,R规范化程度最高达
到(56)(55)
A.A1A4 B.A2A4 C. A3A5 D.A4A5
(56)A. INF B.2NF C. 3NF D.BCNF
CB
8.6 关系模式分解
对一个给定的模式进行分解,使得分解后的模式是否与原来的模式等价有3种情况:
- 分解具有无损连接性;
- 分解有要保持函数依赖。
- 分解既要有无损连接性,又要保持函数依赖。
例如:有关系模式R(A,B,C),并且存在函数依赖A->B,B->C
分解为 R 1 ( A , B ) 和 R 2 ( B , C ) R_1(A,B)和R_2(B,C) R1(A,B)和R2(B,C)就是保持了函数依赖
若是分解为 R 3 ( A , C ) R_3(A,C) R3(A,C)就是破坏函数依赖
无损连接分解:指将一个关系模式分解成若干个关系模式后,通过自然连接和投影等运算仍然能还原到原来的关系模式。
有关系模式:成绩(学号,姓名,课程号,课程名,分数)其中函数依赖:学号->姓名,课程号->课程名,(学号,课程号)—>分数
若将其分解为:
成绩(学号,课程号,分数)
学生(学号,姓名)
课程(课程号,课程名)
由于有函数依赖:学号→姓名
所以:成绩(学号,课程号,分数,姓名)
由于有函数依赖:课程号一课程名
所以有:成绩(学号,课程号,分数,姓名,课程名)
九、数据库的控制功能
9.1 事务管理
事务是一个操作序列,是数据库环境中不可分割的逻辑工作单位。
事务的4个特性是:原子性、一致性、隔离性、持久性:
- 原子性:事务的所有操作在数据库中要么全做,要么全都不做。
- 一致性:一个事务的独立执行的结果将保持数据的一致性,即数据不会因为事务的执行而遭受破坏。
- 隔离性:一个事务的执行不能被其他事务干扰。
- 持久性:一个事务一旦提交,它对数据库中数据的改变必须是永久的,即便系统出现故障时也是如此。
9.2 并发控制
并发操作时指在多用户共享的系统中,许多用户可能同时对同一数据进行操作。
并发操作带来问题的原因是事务的并发操作破坏了事务的隔离性。
DBMS的并发控制子系统负责协调并发事务的执行,保证了数据库的完整性不受破坏,避免用户得到不正确的数据。
并发控制的主要技术是封锁。
- 排他锁(X锁):又称写锁,若事务T对数据对象A加上X锁,则只允许T读取和修改A,其他事务都不能再对A加任何类型的锁
,直到T释放A上的锁。
- 共享锁(S锁):又称读锁,若事务T对数据对象加上S锁,则只允许T读取A,但不能修改A,其他事务只能再对A加S锁,直到T释放A上的S锁。
若事务T1对数据D1加了共享锁,事务T2、T3分别对数据D2、D3加了排他锁,则事务T1对数据(1);事务T2对数据(2)
(1)
A.D2、D3
加排他锁都成功
B.D2、D3
加共享锁都成功
C.D2加共享锁成功,D3加排他锁失败
D.D2、D3加排他锁和共享锁都失败
(2)
A.D1、D3加共性锁都失败
B.D1、D3加共享锁都成功
C.D1加共享锁成功,D3加排他锁失败
D.D1加排他锁成功,D3加共享锁失败
DC
9.3 备份和恢复
人为错误、硬盘损坏、计算机病毒、断电或是天灾人祸等都有可能造成数据的丢失,所以应该强调备份的重要性。
(1)静态转储和动态转储。静态转储是指在转储期间不允许对数据库进行任何存取、修改操作;动态转储是指在转储期间允许对数据库进行存取、修改操作,因此,转储和用户事务可并发执行。
(2)海量转储和增量转储。海量转储是指每次转储全部数据;增量转储是指每次只转储上次转储后更新过的数据。
(3)日志文件。在事务处理的过程中,DBMS把事务开始、事务结束以及对数据库的插入、删除和修改的每一次操作写入日志文件。一旦发生故障,DBMS的恢复子系统便利用日志文件撤销事务对数据库的改变,回退到事务的初始状态。因此,DBMS利用日志文件来进行事务故障恢复和系统故障恢复,并可协助后备副本进行介质故障恢复。
数据恢复有3个步骤:
- 反向扫描日志文件,查找该事务的更新操作。
- 对事务的更新操作执行逆操作。
- 继续反向扫描日志文件,查找该事务的其他更新操作,并做同样的处理,直到回到事务的开始标志。
十、数据仓库与数据挖掘基础
数据仓库(DataWarehouse),可简写为DW或DWH,数据仓库,是为了企业所有级别的决策制定计划过程,提供所有类型数据类型的战略集合。它出于分析性报告和决策支持的目的而创建。为需要业务智能的企业,为需要指导业务流程改进、监视时间,成本,质量以及控制等。数据仓库是依照分析需求、分析维度、分析指标进行设计的。
数据仓库是一个面向主题的、集成的、相对稳定的、反映历史变化的数据集合,它用于支持企业或组织的决策分析处理。是为了便于多维分析和多角度展现而将数据按特定的模式进行存储所建立起来的关系型数据库,它的数据基于OLTP源系统。
数据挖掘(DataMining)就是从大量的数据中,提取隐藏在其中的,事先不知道的但潜在有用的信息的过程。数据挖掘的目标是建立一个决策模型,根据过去的行动数据来预测未来的行为。
分类:
- 关联分析:挖掘出隐藏在数据间的相互关系。
- 序列模式分析:侧重点是分析数据监的前后关系(因果关系)
- 分类分析:为每一个记录赋予一个标记再按标记分类。
- 聚类分析:分类分析法的逆过程。
方法:
- 决策树
- 神经网络
- 遗传算法
- 关联规则挖掘算法
十一、大数据基本概念
大数据:一种规模大到在获取、存储、管理、分析方面大大超出了传统数据库软件工具能力范围的数据集合,具有海量的数据规模、快速的数据流转、多样的数据类型和价值密度低四大特征。
大数据处理系统应该具有的重要特征:
- 高度可扩展性
- 高性能
- 高度容错
- 支持异构环境
- 支持异构环境
- 较短的分析延迟
- 易用且开放的接口
- 较低成本
- 向下兼容性
比较维度 | 传统数据 | 大数据数 |
---|---|---|
数据分析需求 | 现有数据的分析与检测 | PB级或以上 |
数据分析需求 | 现有数据的分析与检测 | 深度分析(关联分析、回归分析) |
硬件凭条 | 高端服务器 | 集群平台 |
数据库完结~~
相关文章:

软考(中级-软件设计师)数据库篇(1101)
第6章 数据库系统基础知识 一、基本概念 1、数据库 数据库(Database ,DB)是指长期存储在计算机内的、有组织的、可共享的数据集合。数据库中的数据按一定的数据模型组织、描述和存储,具有较小的冗余度、较高的数据独立性和扩展…...

安装nscd及glibc包冲突降级【centos7】
安装nscd及glibc包冲突降级【centos7】 一、查看当前glibc版本二、查找可用的glibc版本三、备份系统和数据四、降级glibc五、验证降级是否成功六、解决其他依赖问题七、测试和验证八、考虑使用容器技术endl [08:41:07 rootcentos7 ~]# yum -y install nscd Loaded plugins: fas…...

Qt字符编码
目前字符编码有以下几种: 1、UTF-8 UTF-8编码是Unicode字符集的一种编码方式(CEF),其特点是使用变长字节数(即变长码元序列、变宽码元序列)来编码。一般是1到4个字节,当然,也可以更长。 2、UTF-16 UTF-16是Unicode字符编码五层次…...

Ubuntu用docker安装AWVS和Nessus(含破解)
Ubuntu安装AWVS(更多搜索:超详细Ubuntu用docker安装AWVS和Nessus) 首先安装docker,通过dockers镜像安装很方便,且很快;Docker及Docker-Compose-安装教程。 1.通过docker search awvs命令查看镜像; docker search awvs…...

tauri开发中如果取消了默认的菜单项,复制黏贴撤销等功能也就没有了,解决办法
取消默认的菜单项:清除tauri默认的菜单项,让顶部的菜单menu不显示-CSDN博客 就是通过配置空菜单,让菜单不显示,但是这个引发的问题就是复制黏贴撤销等功能也就没有了,解决办法: 新增加编辑下的子菜单&…...

HNU-小学期-专业综合设计
写在前面 选题:大数据技术-智慧交通预测系统 项目github地址(如果有用麻烦点个star与follow):https://github.com/wolfvoid/HNU-ITPS (全部代码以及如何部署参见README) 项目报告:如下&…...

Linux安装es和kibana
安装Elasticsearch 参考文档:https://www.elastic.co/guide/en/elasticsearch/reference/current/targz.html#targz-enable-indices 基本步骤下载包,解压,官网提示: wget https://artifacts.elastic.co/downloads/elasticsearc…...

第二十六章 Vue之在当前组件范围内获取dom元素和组件实例
目录 一、概述 二、获取dom 2.1. 具体步骤 2.2. 完整代码 2.2.1. main.js 2.2.2. App.vue 2.3. BaseChart.vue 三、获取组件实例 3.1. 具体步骤 3.2. 完整代码 3.2.1. main.js 3.2.2. App.vue 3.2.3. BaseForm.vue 3.3. 运行效果 一、概述 我们过去在想要获取一…...

Markdown 区块
再段落开头,使用>符号,在符号后面按空格,效果图是最左侧有一条灰色的粗线,这是一级区块 二级区块和三级区块只需要在一级的后面加>符号,就可以进入二级区块,效果如下图 还可以在区块内部签到无序列表…...

ctf文件上传题小总结与记录
解题思路:先看中间件,文件上传点(字典扫描,会员中心),绕过/验证(黑名单,白名单),解析漏洞,cms,编辑器,最新cve 文件上传漏…...

什么是QAM
什么是调制呢? 调制就是把信号形式转换成适合在信道中传输的一个过程。可分为基带调制和载波调制。我们这里所说的调制都是载波调制。 什么是载波调制呢? 就是把调制信号骑到载波上,方法就是用调制信号去控制载波的参数,使载波…...

GraphQL 与 Elasticsearch 相遇:使用 Hasura DDN 构建可扩展、支持 AI 的应用程序
作者:来自 Elastic Praveen Durairaju GraphQL 提供了一种高效且灵活的数据查询方式。本博客将解释 Hasura DDN 如何与 Elasticsearch 配合使用,以实现高性能和元数据驱动的数据访问。 此示例的代码和设置可在此 GitHub 存储库 - elasticsearch-subgraph…...

面试题整理 3
总结了某公司面试遇到的值得整理记录的面试题,比较侧重于Redis方面。 目录 Redis持久化配置 RDB AOF Redis rdb日志文件路径编辑 命令行参数设置 Redis事务 Redis事务介绍 Redis事务阶段 watch监听 Mysql隔离级别 1.READ UNCOMMITTED 2.READ COMMITTED …...

数据结构(Java)—— 认识泛型
1. 包装类 在学习泛型前我们需要先了解一下包装类 在 Java 中,由于基本类型不是继承自 Object ,为了在泛型代码中可以支持基本类型, Java 给每个基本类型都对应了一个包装类型。 1.1 基本数据类型和对应的包装类 基本数据类型包装类byteByt…...

处理后的视频如何加上音频信息?
总方案:原来模型对图像进行每帧处理,保留后的视频自然失去了audio信息,因此先用ffmpeg处理得到audio,原输出video加上audio即可,也采用ffmpeg处理。 imageio库用于读取和写入视频文件,并且你正在使用img_cartoon模型处理每一帧图像。然而,这段代码只处理了视频的图像部…...

02LangChain 实战课——安装入门
LangChain安装入门 一、大语言模型简介 大语言模型是利用深度学习技术,尤其是神经网络,来理解和生成人类语言的人工智能模型。这些模型因其庞大的参数数量而得名,能够理解和生成复杂的语言模式。它们通过预测下一个词来训练,基于…...

Python函数中关键字参数、位置参数、默认参数有何不同
在Python中,函数的参数分为三种类型:关键字参数(key arguments)、位置参数(positional arguments)和默认参数(default arguments)。它们的主要区别在于调用时如何传递值,…...

PNG 格式和 JPG 格式都什么时候用
通常我们都知道,如果是针对网络传输或者网站的格式,我们多会使用 PNG 格式。 如果是照片,大部分都是 JPG 格式的。 那么我们网站常用的截图应该保存为什么格式呢? 照片截图 照片截图应该保存为 JPG 格式。 虽然现在我们多存储…...

Qt 练习做一个登录界面
练习做一个登录界面 效果 UI图 UI代码 <?xml version"1.0" encoding"UTF-8"?> <ui version"4.0"><class>Dialog</class><widget class"QDialog" name"Dialog"><property name"ge…...

计算机视觉实验一:图像基础处理
1. 图像的直方图均衡 1.1 实验目的与要求 (1)理解直方图均衡的原理与作用; (2)掌握统计图像直方图的方法; (3)掌握图像直方图均衡的方法。 1.2 实验原理及知识点 直方图均衡化是通过灰度变换将一幅图象转换为另一幅均衡直方图,即在每个灰度级上都具有相同的象素…...

【WebApi】C# webapi 后端接收部分属性
在C#的Web API后端接收部分属性,可以使用[FromBody]特性配合JsonPatchDocument或者Delta来实现。这里提供一个使用JsonPatchDocument的示例。 首先,定义一个模型类:public class User public class User {public int Id {get; set; }...

Java 使用 Redis
Java 使用 Redis 1. 引言 Redis是一个开源的、基于内存的数据结构存储系统,可以用作数据库、缓存和消息中间件。它支持多种类型的数据结构,如字符串、哈希、列表、集合、有序集合等。由于Redis基于内存,其读写速度非常快,因此被广泛应用于需要高速缓存和实时通讯的场景。…...

【ONE·Linux || 高级IO(二)】
总言 主要内容:多路转接:epoll学习。 文章目录 总言5、多路转接:epoll5.1、相关概念与接口5.1.1、基本函数认识5.1.1.1、epoll_create5.1.1.2、epoll_ctl5.1.1.3、epoll_wait 5.1.2、epoll的工作原理5.1.2.1、准备工作(…...

将 IBM WatsonX 数据与 Milvus 结合使用,构建用于知识检索的智能 Slack 机器人
在当今快节奏的工作环境中,快速轻松地访问信息对于保持生产力和效率至关重要。无论是在 Runbook 中查找特定说明,还是访问关键知识转移 (KT) 文档,快速检索相关信息的能力都可以产生重大影响。 本教程将指导您构建一个…...

2024 网鼎杯 CTF --- Crypto wp
文章目录 青龙组Crypto1Crypto2 白虎组Crypto1Crypto2 朱雀组Crypto2Crypto3part1part2part3part4 青龙组 Crypto1 题目: from Crypto.Util.number import * from secret import flagp getPrime(512) q getPrime(512) n p * q d getPrime(299) e inverse(d,…...

深度学习基础知识-损失函数
目录 1. 均方误差(Mean Squared Error, MSE) 2. 平均绝对误差(Mean Absolute Error, MAE) 3. Huber 损失 4. 交叉熵损失(Cross-Entropy Loss) 5. KL 散度(Kullback-Leibler Divergence&…...

《逆向记录》
这里写自定义目录标题 1.什么是vmp加密VMP加密的工作原理VMP加密的应用场景和优缺点实际应用案例 2.什么是ast混淆3.魔改算法总结 1.什么是vmp加密 VMP加密(Virtual Machine Protection)是一种软件保护技术,旨在通过虚拟化和加密技术来保…...

chatgpt3.5权重参数有多少MB;llama7B权重参数有多少MB
目录 chatgpt3.5权重参数有多少MB llama7B权重参数有多少MB chatgpt3.5权重参数有多少MB 关于ChatGPT 3.5的权重参数占用的存储空间大小,虽然直接给出具体的MB数值可能较为困难(因为这取决于多种因素,如参数表示的精度、是否进行了压缩等),但可以根据其参数量来估算一个…...

ST IoT Wireless 物联网与无线技术 研讨会
一、研讨会背景与目的 ◆ 意法半导体致力于提供可靠且经济实惠的无线连接解决方案,包含Wireless NFC Security & Esim等产品。 ◆ 将智能物体连接到互联网和云,或者从更广泛的意义上说,连接到物联网(IoT)。 ◆ 远程监控、配…...

PHP实现雪花算法生成唯一ID
引言 雪花算法是Twitter开源的分布式ID生成算法,可以产生64位的ID。其中第一位是固定的正数标识,41位用于存储时间戳,剩下的为机器ID和序列号。通过时间戳、机器ID和序列号的组合,确保每个ID都是唯一的。 PHP代码 1、定义雪花算…...