What is an SQL relation?
In SQL, a relation is a bag of objects that all share the same characteristics: a list of attributes with a known given data type.We name those objects tuples in SQL. An object with three attributes
PostgreSQL DBA(91) - PG upgrade
PostgreSQL的大版本发布周期通常为1年,而PostgreSQL 12即将发布,新版本除了修复了Bug,提供了新特性之外还对性能有所增强,对于使用旧版本但希望升级到新版本的数据库,本节介绍了PG升级的几种方法,分别是Logical Dump/restore、Binary In-Place Upgrades和Logical Replication。
PostgreSQL 源码解读(226)- Linux Kernel(进程虚拟内存#1)
PostgreSQL使用进程架构,每个连接对应一个后台进程,为了更好的理解这种架构,有必要深入理解进程的相关知识.本节主要介绍了Linux下的进程虚拟内存结构.
PostgreSQL DBA(90) - Linux(stress-ng简介)
本节简单介绍了可用于Linux平台下的压力测试工具stress-ng.
PostgreSQL DBA(89) - Linux(Buffer vs Cache)
本节简单介绍了Linux内存管理中两个容易混淆的概念:Buffer和Cache.
PostgreSQL 源码解读(225)- Transaction(子事务处理)
本节是PostgreSQL 事务管理中的关于子事务部分的说明,翻译自README文件.
PostgreSQL 源码解读(224)- Locks(The Deadlock Detection Algorithm)
本节是PostgreSQL Locks中的The Deadlock Detection Algorithm(死锁检测算法)部分,翻译自README文件.
PostgreSQL DBA(88) - Linux(CPU使用率 vs 平均负载)
本节简单介绍了Linux性能监控中的两个容易混淆的概念:CPU使用率和平均负载.
PostgreSQL 源码解读(223)- Locks(Fast Path Locking)
本节是PostgreSQL Locks中的Fast Path Locking部分,翻译自README文件.
PostgreSQL 源码解读(222)- Locks(Lock Manager Internal Locking)
本节是PostgreSQL Locks中的Lock Manager Internal Locking部分,翻译自README文件.
PostgreSQL 源码解读(221)- Locks(PROCLOCK Struct)
本节是PostgreSQL Locks中介绍PROCLOCK结构体部分,翻译自README文件.
PostgreSQL 源码解读(220)- Locks(LOCK Struct)
本节是PostgreSQL Locks中介绍LOCK结构体部分,翻译自README文件.
PostgreSQL 源码解读(219)- Locks(Overview)
本节是PostgreSQL Locks的概要部分,翻译自README文件.
PostgreSQL 源码解读(218)- spinlock的实现
本节介绍了spinlock在不同平台(主要是X86_64和aarch64)下的实现.
PostgreSQL DBA(87) - benchmarksql简介
benchmarksql是一款使用Java开发的测试工具.
PostgreSQL DBA(86) - Table Parameter(fillfactor)
本节介绍了PostgreSQL创建数据表时的参数fillfactor,该参数限制了插入数据时序预留多少空闲空间(比例),对于数据表来说默认值为100,索引是90,其解释如下:table The fillfactor for a table is a percentage between 10 and 100. 100 (complete packing) is the default. Wh
PostgreSQL 源码解读(217)- A Faster, Lightweight Trigger Function in C
本节介绍了如何使用C语言实现性能更高的轻量级触发器.
事务的性质(ACID)
A-原子性:原子性是指事务是操作的基本单元,即:事务的所有动作要么全被执行,要么就一个都不执行。All-Or-Noting。C-一致性:一致性指的是它的正确性。一个事务能正确的将数据库从一个一致状态变换到另一个一致状态。I-隔离性:隔离性是指事务的一种属性,它要求任何事务在任何时候所见到的数据库都是一致的。换句话说,在提交之前,一个执行中的事务不能向其他并发事务透露其执行结果。D-持久性:持久性是
Oracle vs PostgreSQL Develop(17) - ARRAY
PostgreSQL可用ARRAY来替代Oracle中的collection type,包括associative array/Varrays (Variable-Size Arrays)/Nested Tables Oracle简单举个例子: drop table if exists employee; create table employee(id int,name varchar(
PostgreSQL DBA(85) - Locks(lightweight locks)
本节介绍了PostgreSQL中的lightweight locks.