Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1jJvRw-0007iR-1D for pgsql-hackers@arkaria.postgresql.org; Thu, 02 Apr 2020 08:43:44 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1jJvRu-0005ha-Ow for pgsql-hackers@arkaria.postgresql.org; Thu, 02 Apr 2020 08:43:42 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1jJvRt-0005hT-Ur for pgsql-hackers@lists.postgresql.org; Thu, 02 Apr 2020 08:43:42 +0000 Received: from mail-qv1-xf41.google.com ([2607:f8b0:4864:20::f41]) by makus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1jJvRl-0005iv-Dp for pgsql-hackers@postgresql.org; Thu, 02 Apr 2020 08:43:40 +0000 Received: by mail-qv1-xf41.google.com with SMTP id g4so1219667qvo.12 for ; Thu, 02 Apr 2020 01:43:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=2ndquadrant-com.20150623.gappssmtp.com; s=20150623; h=date:from:to:cc:subject:message-id:mime-version:content-disposition :content-transfer-encoding:in-reply-to:user-agent; bh=2Ff+iuL/cjfRn9RnWN2ZZ/m/ohAtZc+cbIHVfX/ab+c=; b=NGeE4nLk4VytpXr1QwUWo+USAUzvGZ3y0tukXXRtENnnfK9+Cyjx0wPC7wQv6av8e7 eIf7q6DfO9XhxS1g7hqs7OjPE5ZE6HMEsX7HSy+PpiiUp4JkalKgBbJrVZ17uJ6aYodB xiha1oXlwwdD0gThDwDaOmpNiV7+C5fjvNV6lJ2iiCH+X4GbQGVkaCms87eqkyw7Dm99 Q6wR0cxzs36dqnIQCMeW2prMzGEMiUaAAMHOJrurM4hLENgIJXsiKvFTxdPyuoUlkwA4 nV7+RHGqvFbg+kt8yNQb1CkLYRc9mDYb2+icicW4dxyDMaiGlCJoKD7ACDUpjD41m5aJ 3Zmw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:mime-version :content-disposition:content-transfer-encoding:in-reply-to :user-agent; bh=2Ff+iuL/cjfRn9RnWN2ZZ/m/ohAtZc+cbIHVfX/ab+c=; b=kOAsvCXhu+eZSZeMoIfvvTCUPQceAJCTUqAK60GK3/o6qCBv6iJDT5QVQTBzzYlmcG NzTb9QVUYOsHw0RFv44TVGH08h/f5n4Ysz68sgQdRjxFDPkk3tE9d8c360kHO+ruPx7B q1v2kQYO5OhEK5pzsX+n0JJoLY8NAInywwyvsn/whKKkGm8plykT0IADlwlVJNhyrepl HWq9aen2lT58TgTYrys8J0rYwAbeW39gvNmjd/KEI/gekSn9bM9RcccHy8clzRUQlBYl 9pJdlq6Hvk4AIctUU4tOeo71Y8o+vq+fgQCpw18r7lm/rCcZdN7uQWvTfBkyqm3+gP8L ijIQ== X-Gm-Message-State: AGi0Pubbunmwr6y1mGgrjC2Yiba1KmLNcCaI0baQrvo/GNvTZPEz2Kup +xQKOcbBOVaco9ofML1h9qzAwg== X-Google-Smtp-Source: APiQypKati5h/wUktrykXItGzdvU9BJF9JZP7R4MpJz+XUGPGUOLAGY8UlMGA4sZQSdZAluqYMc3jQ== X-Received: by 2002:a05:6214:17c4:: with SMTP id cu4mr2020041qvb.129.1585817012318; Thu, 02 Apr 2020 01:43:32 -0700 (PDT) Received: from nimloth.alvh.no-ip.org ([190.95.18.252]) by smtp.gmail.com with ESMTPSA id 79sm3121263qkg.38.2020.04.02.01.43.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 02 Apr 2020 01:43:30 -0700 (PDT) Received: by nimloth.alvh.no-ip.org (Postfix, from userid 1000) id 2FD30300A9D; Thu, 2 Apr 2020 05:43:28 -0300 (-03) Date: Thu, 2 Apr 2020 05:43:28 -0300 From: Alvaro Herrera To: Corey Huinker Cc: Justin Pryzby , pgsql-hackers@postgresql.org Subject: Re: Add A Glossary Message-ID: <20200402084328.GA19037@alvherre.pgsql> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="LQksG6bCIzRHxTLp" Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: User-Agent: Mutt/1.10.1 (2018-07-13) List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk --LQksG6bCIzRHxTLp Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit On 2020-Apr-01, Corey Huinker wrote: > > I propose we define "planner" and make "optimizer" a entry. > > I have no objection to more entries, or edits to entries, but am concerned > that the process leads to someone having to manually merge several > start-from-scratch patches, with no clear sense of when we'll be done. I > may make sense to appoint an edit-collector. I added "query planner" (please suggest edits) and "query" (using Justin's def) and edited the defs of the ACID terms a little bit (in particular moved the definition of atomic transaction to "atomicity" from "atomic", and made the latter reference the former instead of the other way around). Also removed "Aggregating" as suggested upthread. I moved "master" over to "primary (server)", keeping the ref; we don't use the former much. There's only one "serious" mistake in the defs AFAICS which is that of "global objects". Only roles, tablespace, databases are global objects. Objects that are not in a schema (extensions, etc) are not "global" in that sense. I think all used in definitions should have linkend. I hope to get this committed today, but I'm going to sleep now so if you want to suggest further edits, now's the time. I think the terms proposed by Justin are good to have -- please discuss the defs he proposed -- only "normalized" I'd rather stay away from. Thanks, -- Álvaro Herrera https://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services --LQksG6bCIzRHxTLp Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0001-glossary-v6.patch" diff --git a/doc/src/sgml/filelist.sgml b/doc/src/sgml/filelist.sgml index 1043d0f7ab..cf21ef857e 100644 --- a/doc/src/sgml/filelist.sgml +++ b/doc/src/sgml/filelist.sgml @@ -170,6 +170,7 @@ + diff --git a/doc/src/sgml/glossary.sgml b/doc/src/sgml/glossary.sgml new file mode 100644 index 0000000000..fb4934d322 --- /dev/null +++ b/doc/src/sgml/glossary.sgml @@ -0,0 +1,1580 @@ + + Glossary + + This is a list of terms and their meaning in the context of + PostgreSQL and relational database + systems in general. + + + + + Aggregate Function + + + A function that + combines (aggregates) multiple input values, + for example by counting, averaging or adding, + yielding a single output value. + + + For more information, see + . + + + + + + + Analyze (operation) + + + The process of collecting statistics from data in + tables + and other relations + to help the query planner + to make decisions about how to execute + queries. + + + + + + Analytic Function + + + + + Atomic + + + In reference to a datum: + the fact that its value that cannot be broken down into smaller + components. + + + + + In reference to a + database transaction: + see atomicity. + + + + + + Atomicity + + + The property of a transaction + that either all its operations complete as a single unit or none do. + This is one of the ACID properties. + + + + + + Attribute + + + An element with a certain name and data type found within a + tuple or + table. + + + + + + Autovacuum + + + Background processes that routinely perform + Vacuum and Analyze + operations. + + + For more information, see + . + + + + + + Backend (process) + + + Processes of an Instance which act on behalf of + client Connections and handle their requests. + + + (Don't confuse this term with the similar terms + Background Worker or + Background Writer). + + + + + + Background Worker (process) + + + Individual processes within an Instance, which + run system- or user-supplied code. A typical use case is a process + which handles parts of an SQL query to take + advantage of parallel execution on servers with multiple + CPUs. + + + For more information, see + . + + + + + + Background Writer (process) + + + A process that continuously writes dirty pages from + Shared Memory to the file system. + It wakes up periodically, but + works only for a short period in order to distribute its expensive + I/O activity over time, instead of generating fewer + larger I/O peaks which could block other processes. + + + For more information, see + . + + + + + + Cast + + + A conversion of a Datum from its current data + type to another data type. + + + + + + Catalog + + + The SQL standard uses this term to + indicate what is called a Database in + PostgreSQL's terminology. + + + This should not be confused with the + System Catalog. + + + For more information, see + . + + + + + + Check Constraint + + + A type of Constraint defined on a + Relation which restricts the values allowed in + one or more Attributes. The + Check Constraint can make reference to any + attribute in the Relation, but cannot reference + other Rows of the same + relation or other relations. + + + For more information, see + . + + + + + + Checkpointer (process) + + + A process that writes dirty pages to the file system and creates a special + checkpoint WAL record. This process is initiated when predefined + conditions are met, such as a specified amount of time has passed, or + a certain volume of records has been written. + + + + + + Checkpoint + + + A point in time when all older dirty pages of the + Shared Memory, all older WAL Records, + and a special Checkpoint record + have been written and flushed to disk. + + + For more information, see + . + + + + + + Class + + + + + Cluster + + + A group of Databases plus their + Global SQL Objects. The + Cluster is managed by exactly one + Instance. A newly created + Cluster will have three + Databases created automatically. They are + template0, template1, and + postgres. It is expected that an application will + create one or more additional Databases aside + from these three. + + + Don't confuse the PostgreSQL-specific term + Cluster with the SQL command + CLUSTER. + + + + + + Column + + + An Attribute found in a + Table or View. + + + + + + Commit + + + The act of finalizing a transaction + within the Database, which makes it visible to other + transactions and assures its + durability. + + + For more information, see + . + + + + + + Concurrency + + + The concept that multiple independent operations happen within the + Database at the same time. + + + + + + Connection + + + An established line of communication between a client process + and a backend, + usually over a network. + + + For more information, see + . + + + + + + Consistency + + + The property that the data in the database + is always in compliance with its own rules such as Table + structure, Constraints, + uniqueness, etc. + This is one of the ACID properties. + + + + + + Constraint + + + A restriction on the values of data allowed within a + Table. + + + For more information, see + . + + + + + + Data Area + + + + + Data Directory + + + The base directory on the filesystem of a + Server that contains all data files and + subdirectories associated with a Cluster with + the exception of Tablespaces. The environment + variable PGDATA often — but not always — + refers to the Data Directory. + + + For more information, see + . + + + + + + Database + + + A named collection of SQL Objects. + + + For more information, see + . + + + + + + Database Server + + + + + Datum + + + The internal representation of one value of a SQL + data type. + + + + + + Delete + + + A SQL command which removes + Rows from a given Table + or Relation. + + + For more information, see + . + + + + + + Durability + + + The assurance that once a transaction + has been Committed, the changes remain even after + a system failure or crash. + This is one of the ACID properties. + + + + + + File Segment + + + A physical file which stores data for a given + Heap or Index object. + File Segments are limited in size by a + configuration value and if that size is exceeded, it will be split + into multiple physical files. + + + For more information, see + . + + + (Don't confuse this term with the similar term + WAL Segment). + + + + + + Foreign Data Wrapper + + + A means of representing data that is not contained in the local + Database so that it appears as if were in local + Table(s). With a Foreign Data Wrapper it is + possible to define a Foreign Server and + Foreign Tables. + + + For more information, see + . + + + + + + Foreign Key + + + A type of Constraint defined on one or more + Columns in a Table which + requires the value(s) in those Columns to + identify exactly one Row in another (or the same) + Table. + + + + + + Foreign Server + + + A named collection of Foreign Tables which all + use the same Foreign Data Wrapper and have + other configuration values in common. + + + For more information, see + . + + + + + + Foreign Table + + + A Relation which appears to have + Rows and Columns similar + to a regular Table, but will forward requests + for data through its Foreign Data Wrapper, + which will return Result Sets structured + according to the definition of the Foreign Table. + + + For more information, see + . + + + + + + Function + + + Any defined transformation of data. Many functions are already defined + within PostgreSQL itself, but user-defined + ones can also be added. + + + For more information, see + . + + + + + + Global SQL Object + + + SQL Objects which do not belong to a specific + Schema. + + + Objects that exist at the Database level + include Extensions such as + Foreign Data Wrappers. + + + Objects that exist at the Cluster level + include Roles, + Tablespaces, + Replication origins, and subscriptions + for logical replication. + + + + + + Grant + + + A SQL command that is used to allow + Users or Roles to access + specific objects within the Database. + + + For more information, see + . + + + + + + Heap + + + Contains the values of Row attributes + (i.e. the data). The Heap is realized within + Database files. + + + + + + Host + + + + + Index + + + A Relation that contains data derived from a + Table (or Relation types + such as a Materialized View). Its internal + structure supports fast retrieval of and access to the original + data. + + + For more information, see + . + + + + + + Insert + + + A SQL command used to add new data into a + Table. + + + For more information, see + . + + + + + + Instance + + + An Instance is a group of processes plus their + common Shared Memory running on a single + Server. The Instance + handles all key features of a DBMS: read and write + access to files and shared memory, assurance of + the ACID paradigm, MVCC, + Connections to client programs, backup, + recovery, replication, privileges, etc. + + + An Instance manages exactly one + Cluster. + + + Many Instances can run on the same server as + long as their TCP/IP ports do not conflict. + Different instances on a server may use the + same or different versions of PostgreSQL. + + + + + + Isolation + + + The property that the effects of a transaction are not visible to + concurrent transactions + before it commits. + This is one of the ACID properties. + + + For more information, see . + + + + + + Join + + + A SQL keyword used in SELECT statements for + combining data from multiple Relations. + + + + + + Key + + + A means of identifying a Row within a + Table or Relation by + values contained within one or more Attributes + in that Table. + + + + + + Lock + + + A mechanism that allows a process to limit or prevent simultaneous + access to a resource. + + + + + + Log File + + + Log Files contain human-readable text lines about + events. Examples include login failures, long-running queries, etc. + + + For more information, see + . + + + + + + Logger (process) + + + If activated, the + Logger process + writes information about database events into the current + Log File. When reaching certain time- or + volume-dependent criteria, a new log file is created. + Also called syslogger. + + + For more information, see + . + + + + + + Log Record + + + Archaic term for a WAL Record. + + + + + + Logged + + + A Table is considered + Logged if changes to it are sent to the + WAL Log. By default, all regular + Tables are Logged. A + table can be specified as Unlogged either at + creation time or via the ALTER TABLE command. + + + + + + Master (server) + + + + + Materialized + + + The act of storing information rather than just the method of accessing + the information. This term is used in Materialized + Views, meaning that the data derived from the + View is actually stored on disk separately from + the sources of that data. When using the term + Materialized to refer to + multi-step queries, it means that the data of a given step is stored + in memory, but that storage may spill over onto disk. + + + + + + Materialized View + + + A Relation that is defined in the same way that + a View is, but stores data in the same way + that a Table does. It cannot be modified via + INSERT, UPDATE, or + DELETE operations. + + + For more information, see + . + + + + + + Null + + + A concept of non-existence that is a central tenet of Relational + Database Theory. It represents the absence of value. + + + + + + Optimizer + + + + + Partition + + + In reference to a Table: + A Table that can be queried directly, + or via a partitioned table, which is a collection of + sub-tables, each capable of holding one defined + subset of information that does not overlap with any other + table in the collection. + + + In reference to a Analytic Function: + a partition is a definition that identifies which neighboring + Rows can be considered by the + function. + + + + + + Postmaster (process) + + + The very first process of an Instance. It + starts and manages the other auxiliary processes and creates + backend processes + on demand. + + + For more information, see + . + + + + + + Primary (server) + + + When two or more Databases are linked via + Replication, the Server + that is considered the authoritative source of information is called + the Primary, + also known as a master. + + + + + + Primary Key + + + A special case of a Unique Index defined on a + Table or other Relation + that also guarantees that all of the Attributes + within the Primary Key do not have + Null values. As the name implies, there can be + only one Primary Key per + table, though it is possible to have multiple + unique indexes that also have no null-capable attributes. + + + + + + Procedure + + + A defined set of instructions for manipulating data within a + Database. A Procedure can + be written in a variety of programming languages. They may seem + similar to Functions, but are different in that + they must be invoked via the CALL command rather + than the SELECT or PERFORM + commands, and they are allowed to make transactional statements such + as COMMIT and ROLLBACK. + + + For more information, see + . + + + + + + Query + + + A request sent by a client to a backend, + usually to return results or to modify data on the database. + + + + + + Query Planner + + + The part of PostgreSQL that is devoted to + determining (planning) the most efficient way to + execute queries. + Also known as query optimizer, + optimizer, or simply planner. + + + + + + Record + + + + + Recycling + + + + + Referential Integrity + + + A means of restricting data in one Relation + by a Foreign Key + so that it must have matching data in another + Relation. + + + + + + Relation + + + The generic term for all objects in a Database + that have a name and a list of Attributes + defined in a specific order. Tables, + Views, Foreign Tables, + Materialized Views, and + Indexes are all relations. + + + Class is an archaic synonym for + relation. + + + + + + Replica + + + A Database that is paired with a + primary + database and is maintaining a copy of some or + all of the primary Database's data. The foremost + reasons for doing this are to allow for greater access to that data, + and to maintain availability of the data in the event that the + primary becomes unavailable. + + + + + + Replication + + + The act of reproducing data on one Server onto + another server called a Replica. This can take the + form of physical replication, where all file + changes from one server are copied verbatim, + or logical replication where a defined subset + of data changes are conveyed using a higher-level representation. + + + + + + Result Set + + + A data structure transmitted from a Backend Process to + client program upon the completion of a SQL + command, usually a SELECT but it can be an + INSERT, UPDATE, or + DELETE command if the RETURNING + clause is specified. The data structure consists of zero or more + Rows with the same ordered set of + Attributes. + + + + + + Revoke + + + A command to prevent access to a named set of + Database objects for a named list of + Users and Roles. + + + For more information, see + . + + + + + + Role + + + A collection of access privileges to the + Database. Roles are + themselves a privilege that can be granted to other roles. This is + often done for convenience or to ensure completeness when multiple + Users need the same privileges. + + + For more information, see + . + + + + + + Rollback + + + A command to undo all of the operations performed since the beginning + of a Transaction. + + + For more information, see + . + + + + + + Row + + + + + Savepoint + + + A special mark inside the sequence of steps in a + Transaction. Data modifications after this + point in time may be reverted to the time of the savepoint. + + + For more information, see + . + + + + + + Schema + + + A Schema is a namespace for + SQL objects, which all reside in the same + database. Each + SQL object must reside in exactly one + Schema. + + + In general, the names of SQL Objects in the + schema are unique — even across different types of objects. The lone + exception is the case of Unique + Constraints, in which case there + must be a Unique Index + with the same name and Schema as the + Constraint. There is no restriction on reusing + a name in multiple Schemas. + + + Many SQL Objects reside in the default + Schema public, but it is + expected that more schemas are created to hold application-specific + SQL Objects. + + + More generically, the term Schema is used to + mean all data descriptions (Table definitions, + Constraints, comments) for a given + Database. + + + For more information, see + . + + + + + + Segment + + + + + Select + + + The SQL command used to query a Database. + Normally, SELECTs are not expected to modify the + Database in any way, but it is possible that + Functions invoked within the query could have + side effects that do modify data. + + + For more information, see + . + + + + + + Serializable + + + Transactions defined as SERIALIZABLE are unable to + see changes made within other transactions. In effect, for the + initializing session the entire Database + appears to be frozen for the duration of the + Transaction. + + + + + + Server + + + A computer on which PostgreSQL + instances run. + The term server denotes real hardware, a + container, or a Virtual Machine. + + + + + + Session + + + A Connection to the Database. + + + + + + Sequence + + + A Database object which represents the + mathematical concept of a numerical integral sequence. It can be + thought of as a Table with exactly one + Row and one Column. The + value stored is known as the current value. A + Sequence has a defined direction (usually + increasing) and an interval step (usually 1). Whenever the + NEXTVAL pseudo-column of a + Sequence is accessed, the current value is moved + in the defined direction by the defined interval step, that value + is returned to the invoking query, and the current value of the + sequence is updated to reflect the new value. The value can be updated + multiple times in a single query, the net effect being that each row + selected will have a different value. Values taken from a + Sequence are never reverted, even in the case of + a Rollback, which means that the + Sequence will never generate the same number twice, + which makes it useful for generating + Primary Key values. + + + For more information, see + . + + + + + + Shared Memory + + + RAM which is used by the processes common to an + Instance. It mirrors parts of + Database files, provides an area for + WAL Records, and stores additional common + information. Note that Shared Memory belongs to + the complete Instance, not to a single + Database. + + + Shared Memory is organized into pages. If a + page is modified, it is called a dirty page until it is written back + to the file system. + + + For more information, see + . + + + + + + SQL Object + + + A Table, View, + Materialized View, + Index, Constraint, + Sequence, Function, + Procedure, Trigger, + data type, or operator. Every SQL Object + belongs to exactly one Schema. + + + For more information, see + . + + + + + + Stats Collector + + + This process collects statistical information about the + Cluster's activities. + + + For more information, see + . + + + + + + System Catalog + + + A collection of Tables and + Views which describe the structure of all + SQL objects of the Database + and the Global SQL Objects of the + Cluster. The System + Catalog resides in the schema + pg_catalog. Main parts are mirrored as + Views in the Schema + information_schema. + + + For more information, see + . + + + + + + Table + + + A collection of Tuples (also known as + Rows or Records) having + a common data structure (the same number of + Attributes, in the same order, having the same + name and type per position). A Table is the + most common form of Relation in + PostgreSQL. + + + For more information, see + . + + + + + + Tablespace + + + A named location on the server filesystem. All SQL Objects + which require storage beyond their definition in the + System Catalog + must belong to a single tablespace. + + + For more information, see + . + + + + + + Temporary Table + + + Tables that exist either for the lifetime of a + Session or a + Transaction, as specified at the time of creation. The + data in them is not visible to other sessions, + and is not Logged. + Temporary Tables are often used to store + intermediate data for a multi-step operation. + + + For more information, see + . + + + + + + Transaction + + + A combination of commands that must act as a single + Atomic command: they all succeed or all fail + as a single unit, and their effects are not visible to other + Sessions until + the Transaction is complete. + + + For more information, see + . + + + + + + Trigger + + + A Function which can be defined to execute + whenever a certain operation (INSERT, + UPDATE, DELETE, + TRUNCATE) is applied to a Relation. + A Trigger + executes within the same Transaction as the + statement which invoked it, and if the Function + fails, then the invoking statement also fails. + + + For more information, see + . + + + + + + Tuple + + + A collection of Attributes in a fixed order. + That order may be defined by the Table where + the Tuple is found, in which case the + Tuple is often called a + Row or Record. It may + also be defined by the structure of a + Result Set. + + + + + + Unique + + + The condition of having no duplicate values in the same + Column of a Relation. + Often used in the concept of + Unique Indexes. + + + + + + Unlogged + + + Changes to an unlogged Relation are not + reflected in the WAL Log. This disables + replication and crash recovery for these relations. + + + The primary use of unlogged tables is for storing + transient work data that must be shared across processes. + + + Temporary Tables are always unlogged. + + + + + + Update + + + A SQL command used to modify Rows + that may already exist in a specified Table. + It cannot create or remove rows. + + + For more information, see + . + + + + + + User + + + A Role that has the LOGIN + privilege is said to be a User. + + + + + + User Mapping + + + The translation of login credentials in the local + Database to credentials in a remote data system + defined by a Foreign Data Wrapper. + + + For more information, see + . + + + + + + Vacuum + + + The process of removing outdated MVCC + Tuples from a Heap or + Index. This can be initiated through the use of + the VACUUM command, but can also be handled automatically + via Autovacuum processes. + + + For more information, see + . + + + + + + View + + + A Relation that is defined by a + SELECT statement, but has no storage of its own. + Any time a query references a View, the + definition of the View is substituted into the + query as if the user had typed that subquery instead of the name of + the View. + + + For more information, see + . + + + + + + WAL Archiver (process) + + + A process that saves copies of WAL Files + for the purposes of creating backups or keeping + Replicas current. + + + For more information, see + . + + + + + + WAL File + + + Each of the numerically-numbered files that provide storage space for + WAL. + The files are all of the same predefined size + and are written in sequential order, interspersing changes + as they occur in multiple simultaneous sessions. + If the system crashes, the files are read in order, and each of the + changes are replayed to restore the system to the state as it was + before the crash. + + + Each WAL file can be released after a + checkpoint + writes all the changes in it to the corresponding data files. + Releasing the file can be done either by deleting it, or by changing its + name so that it will be used in the future, which is called + recycling. + + + + For more information, see + . + + + + + + WAL + + + + + WAL Record + + + A low-level description of an individual data change. + It contains sufficient information for the data change to be + re-executed (replayed) in case a system failure + causes the change to be lost. + WAL records use a non-printable binary format. + + + For more information, see + . + + + + + + WAL Segment + + + + + WAL Writer (process) + + + A process that writes WAL records + from shared memory to + WAL files. + + + For more information, see + . + + + + + + Window frame + + + In a result set, a subset of neighboring rows that match some user + specified criteria form a window frame. + For example, in a query that returns employees across several departments, + the employees from each specific department can form one window frame. + + + + + + Window Function + + + A type of function whose + result is based on values found in + rows of the same + window frame. + All aggregate functions + can be used as window functions, but window functions can also be + used to, for example, give ranks to each of the rows in the window frame. + Also known as analytic functions. + + + For more information, see + . + + + + + + Write-Ahead Log + + + The journal that keeps track of the changes in the + Instance as user- and system-invoked + operations take place. It comprises many individual + WAL records written + sequentially to WAL files. + + + + + diff --git a/doc/src/sgml/postgres.sgml b/doc/src/sgml/postgres.sgml index 1f7bd32878..ba3d626102 100644 --- a/doc/src/sgml/postgres.sgml +++ b/doc/src/sgml/postgres.sgml @@ -278,6 +278,7 @@ &docguide; &limits; &acronyms; + &glossary; &color; --LQksG6bCIzRHxTLp--