<glossdef>
<para>
More generically, the term <firstterm>schema</firstterm> is used to mean
all data descriptions (<glossterm linkend="glossary-table">table</glossterm> definitions,
<glossterm linkend="glossary-constraint">constraints</glossterm>, comments, etc.)
for a given <glossterm linkend="glossary-database">database</glossterm> or
subset thereof.
</para>
<para>
For more information, see
<xref linkend="ddl-schemas"/>.
</para>
</glossdef>
</glossentry>
<glossentry>
<glossterm>Segment</glossterm>
<glosssee otherterm="glossary-file-segment" />
</glossentry>
<glossentry id="glossary-select">
<glossterm>Select</glossterm>
<glossdef>
<para>
The <acronym>SQL</acronym> command used to request data from a
<glossterm linkend="glossary-database">database</glossterm>.
Normally, <command>SELECT</command> commands are not expected to modify the
<glossterm linkend="glossary-database">database</glossterm> in any way,
but it is possible that
<glossterm linkend="glossary-function">functions</glossterm> invoked within
the query could have side effects that do modify data.
</para>
<para>
For more information, see
<xref linkend="sql-select"/>.
</para>
</glossdef>
</glossentry>
<glossentry id="glossary-sequence">
<glossterm>Sequence (relation)</glossterm>
<glossdef>
<para>
A type of relation that is used to generate values.
Typically the generated values are sequential non-repeating numbers.
They are commonly used to generate surrogate
<glossterm linkend="glossary-primary-key">primary key</glossterm>
values.
</para>
</glossdef>
</glossentry>
<!-- XXX should define all other isolation levels (and improve this definition)
<glossentry id="glossary-serializable">
<glossterm>Serializable (isolation level)</glossterm>
<glossdef>
<para>
Transactions defined as <literal>SERIALIZABLE</literal> are unable to
see changes made within other transactions. In effect, for the
initializing session the entire <glossterm linkend="glossary-database">database</glossterm>
appears to be frozen for the duration of the
<glossterm linkend="glossary-transaction">Transaction</glossterm>.
</para>
</glossdef>
</glossentry>
-->
<glossentry id="glossary-server">
<glossterm>Server</glossterm>
<glossdef>
<para>
A computer on which <productname>PostgreSQL</productname>
<glossterm linkend="glossary-instance">instances</glossterm> run.
The term <firstterm>server</firstterm> denotes real hardware, a
container, or a <firstterm>virtual machine</firstterm>.
</para>
<para>
This term is sometimes used to refer to an instance or to a host.
</para>
</glossdef>
</glossentry>
<glossentry id="glossary-session">
<glossterm>Session</glossterm>
<glossdef>
<para>
A state that allows a client and a backend to interact,
communicating over a <glossterm linkend="glossary-connection">connection</glossterm>.
</para>
</glossdef>
</glossentry>
<glossentry id="glossary-shared-memory">
<glossterm>Shared memory</glossterm>
<glossdef>
<para>
<acronym>RAM</acronym> which is used by the processes common to an
<glossterm linkend="glossary-instance">instance</glossterm>.
It mirrors parts of <glossterm linkend="glossary-database">database</glossterm>
files, provides a transient area for
<glossterm linkend="glossary-wal-record">WAL records</glossterm>,
and stores additional common information.
Note that shared memory belongs to the complete instance, not to a single
database.
</para>
<para>
The largest part of shared memory is known as <firstterm>shared buffers</firstterm>
and is used to mirror part of data files, organized into pages.
When a page is modified, it is called a dirty page until it is
written back to the