Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
P
Postgres FD Implementation
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Abuhujair Javed
Postgres FD Implementation
Commits
6346355a
Commit
6346355a
authored
Nov 22, 2006
by
Bruce Momjian
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Wording and term clarification for HA docs, per Markus Schiltknecht.
parent
84151d06
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
24 additions
and
22 deletions
+24
-22
doc/src/sgml/high-availability.sgml
doc/src/sgml/high-availability.sgml
+24
-22
No files found.
doc/src/sgml/high-availability.sgml
View file @
6346355a
<!-- $PostgreSQL: pgsql/doc/src/sgml/high-availability.sgml,v 1.1
1 2006/11/22 04:01:40
momjian Exp $ -->
<!-- $PostgreSQL: pgsql/doc/src/sgml/high-availability.sgml,v 1.1
2 2006/11/22 17:36:52
momjian Exp $ -->
<chapter id="high-availability">
<title>High Availability and Load Balancing</title>
...
...
@@ -49,13 +49,13 @@
meaning that a data-modifying transaction is not considered
committed until all servers have committed the transaction. This
guarantees that a failover will not lose any data and that all
load-balanced servers will return consistent results
with little
propagation delay. Asynchronous updating has a delay between the
t
ime of commit and its propagation to the other servers, opening
the possibility that some transactions might be lost in the switch
t
o a backup server, and that load balanced servers might return
slightly stale results. Asynchronous communication is used whe
n
synchronous would be too slow.
load-balanced servers will return consistent results
no matter
which server is queried. Asynchronous updating has a delay between
t
he time of commit and its propagation to the other servers,
opening the possibility that some transactions might be lost in
t
he switch to a backup server, and that load balanced servers
might return slightly stale results. Asynchronous communicatio
n
is used when
synchronous would be too slow.
</para>
<para>
...
...
@@ -110,7 +110,7 @@ https://forge.continuent.org/pipermail/sequoia/2006-November/004070.html
Oracle RAC is a shared disk approach and just send cache invalidations
to other nodes but not actual data. As the disk is shared, data is
only commited once to disk and there is a distributed locking
only commit
t
ed once to disk and there is a distributed locking
protocol to make nodes agree on a serializable transactional order.
-->
...
...
@@ -178,29 +178,29 @@ protocol to make nodes agree on a serializable transactional order.
using two-phase commit (<xref linkend="sql-prepare-transaction"
endterm="sql-prepare-transaction-title"> and <xref
linkend="sql-commit-prepared" endterm="sql-commit-prepared-title">.
Pgpool
is
an example of this type of replication.
Pgpool
and Sequoia are
an example of this type of replication.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Synchonous Multi-Master Replication</term>
<term>Synch
r
onous Multi-Master Replication</term>
<listitem>
<para>
In synchonous multi-master replication, each server can accept
In synch
r
onous multi-master replication, each server can accept
write requests, and modified data is transmitted from the
original server to every other server before each transaction
commits. Heavy write activity can cause excessive locking,
leading to poor performance. In fact, write performance is
often worse than that of a single server. Read requests can
be sent to any server. Some implementations use
cluster-wide
shared memory or shared disk to reduce the communication
overhead. Clustering is best for mostly read workloads, though
its big advantage is that any server can accept write requests
— there is no need to partition workloads between master
and slave servers, and because the data changes are sent from
one
server to another, there is no problem with non-deterministic
be sent to any server. Some implementations use
shared disk
to reduce the communication overhead. Synchronous multi-master
replication is best for mostly read workloads, though its big
advantage is that any server can accept write requests —
there is no need to partition workloads between master and
slave servers, and because the data changes are sent from one
server to another, there is no problem with non-deterministic
functions like <function>random()</>.
</para>
...
...
@@ -222,9 +222,11 @@ protocol to make nodes agree on a serializable transactional order.
<para>
For servers that are not regularly connected, like laptops or
remote servers, keeping data consistent among servers is a
challenge. One simple solution is to allow each server to
modify the data, and have periodic communication compare
databases and ask users to resolve any conflicts.
challenge. Using asynchronous multi-master replication, each
server works independently, and periodically communicates with
the other servers to identify conflicting transactions. The
conflicts can be resolved by users or conflict resolution rules.
rules.
</para>
</listitem>
</varlistentry>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment