List:Commits« Previous MessageNext Message »
From:jon Date:May 2 2006 12:29pm
Subject:svn commit - mysqldoc@docsrva: r1989 - in trunk: refman-4.1 refman-5.0 refman-5.1
View as plain text  
Author: jstephens
Date: 2006-05-02 14:29:01 +0200 (Tue, 02 May 2006)
New Revision: 1989

Log:

Rewrite of Cluster Nodes & Replicas section (Mikael et al.)



Modified:
   trunk/refman-4.1/ndbcluster.xml
   trunk/refman-5.0/ndbcluster.xml
   trunk/refman-5.1/ndbcluster.xml

Modified: trunk/refman-4.1/ndbcluster.xml
===================================================================
--- trunk/refman-4.1/ndbcluster.xml	2006-05-02 12:23:39 UTC (rev 1988)
+++ trunk/refman-4.1/ndbcluster.xml	2006-05-02 12:29:01 UTC (rev 1989)
@@ -374,6 +374,10 @@
         Jeb Miller, and Hartmut Holzgraefe
       </remark>
 
+      <remark role="note">
+        Revised with feedback from Mikael Ronström and bug reports
+      </remark>
+
       <para>
         This section discusses the manner in which MySQL Cluster divides
         and duplicates data for storage.
@@ -408,17 +412,18 @@
             It is common for the terms <quote>node</quote> and
             <quote>data node</quote> to be used interchangeably when
             referring to an <command>ndbd</command> process; where
-            mentioned, management nodes (<command>ndb_mgmd</command>
-            processes) and SQL nodes (<command>mysqld</command>
-            processes) are specified as such in this discussion.
+            mentioned, management (MGM) nodes
+            (<command>ndb_mgmd</command> processes) and SQL nodes
+            (<command>mysqld</command> processes) are specified as such
+            in this discussion.
           </para>
         </listitem>
 
         <listitem>
           <para>
             <emphasis role="bold">Node Group</emphasis>: A node group
-            consists of one or more nodes, and stores a partition, or
-            set of <firstterm>replicas</firstterm> (see next item).
+            consists of one or more nodes, and stores partitions, or
+            sets of <firstterm>replicas</firstterm> (see next item). 
           </para>
 
           <para>
@@ -431,15 +436,15 @@
           <para>
             <emphasis role="bold">Partition</emphasis>: This is a
             portion of the data stored by the cluster. There are as many
-            cluster partitions as node groups participating in the
-            cluster, and each node group is responible for keeping at
-            least one copy of the partition assigned to it (that is, at
-            least one replica) available to the cluster.
+            cluster partitions as nodes participating in the
+            cluster. Each node is responible for keeping at least one
+            copy of any partitions assigned to it (that is, at least one
+            replica) available to the cluster.
           </para>
 
           <para>
-            A partition belongs entirely to a single node group; a node
-            group can store several partitions.
+            A replica belongs entirely to a single node; a node can
+            (and usually does) store several replicas.
           </para>
         </listitem>
 
@@ -457,11 +462,13 @@
 
       <para>
         The following diagram illustrates a MySQL Cluster with four data
-        nodes, arranged in two node groups of two nodes each. Note that
-        no nodes other than data nodes are shown here, although a
-        working cluster requires an <command>ndb_mgm</command> process
-        for cluster management and at least one SQL node to access the
-        data stored by the cluster.
+        nodes, arranged in two node groups of two nodes each; nodes 1
+        and 2 belong to node group 0, and nodes 3 and 4 belong to node
+        group 1. Note that only data (<command>ndbd</command>) nodes are
+        shown here; although a working cluster requires an
+        <command>ndb_mgm</command> process for cluster management and at 
+        least one SQL node to access the data stored by the cluster,
+        these have been omitted in the figure for clarity.
       </para>
 
       <mediaobject>
@@ -475,25 +482,56 @@
       </mediaobject>
 
       <para>
-        The data stored by the cluster is divided into two partitions,
-        labeled <emphasis role="bold">A</emphasis> and
-        <emphasis role="bold">B</emphasis> in the diagram. Each
-        partition is stored &mdash; in multiple copies &mdash; on a node
-        group. The data making up Partition
-        <emphasis role="bold">A</emphasis> is stored on Node
-        <emphasis role="bold">A-1</emphasis>, and this data is identical
-        to that stored by Node <emphasis role="bold">A-2</emphasis>. The
-        data stored by Nodes <emphasis role="bold">B-1</emphasis> and
-        <emphasis role="bold">B-2</emphasis> is also the same &mdash;
-        these two nodes store identical copies of the data making up
-        Partition <emphasis role="bold">B</emphasis>.
+        The data stored by the cluster is divided into four partitions,
+        numbered 0, 1, 2, and 3. Each partition is stored &mdash; in
+        multiple copies &mdash; on the same node group. Partitions are
+        stored on alternate node groups:
+          Partition 2 is stored on .
       </para>
-
+      
+      <itemizedlist>
+        <listitem>
+          <para>
+            Partition 0 is stored on node group 0; a <firstterm>primary
+              replica</firstterm> (primary copy) is stored on node 1,
+            and a <firstterm>backup replica</firstterm> (backup copy of
+            the partition) is stored on node 2.
+          </para>
+        </listitem>
+        
+        <listitem>
+          <para>
+            Partition 1 is stored on the other node group (node group
+            1); this partition's primary replica is on node 3, and its
+            backup replica is on node 4.
+          </para>
+        </listitem>
+        
+        <listitem>
+          <para>
+            Partition 2 is stored on node group 0. However, the placing
+            of its two replicas is reversed from that of Partition 0;
+            for Partition 2, the primary replica is stored on node 2,
+            and the backup on node 1.
+          </para>
+        </listitem>
+        
+        <listitem>
+          <para>
+            Partition 3 is stored on node group 1, and the placement of
+            its two replicas are reversed from those of partition 1.
+            That is, its primary replica is located on node 4, with the
+            backup on node 3.
+          </para>
+        </listitem>
+      </itemizedlist>
+      
+      
       <para>
         What this means so far as the continued operation of a MySQL
         Cluster is this: so long as each node group participating in the
-        cluster has at least one <quote>live</quote> node, the cluster
-        has a complete copy of all data and remains viable. This is
+        cluster has at least one node operating, the cluster has a
+        complete copy of all data and remains viable. This is
         illustrated in the next diagram.
       </para>
 
@@ -513,16 +551,15 @@
 
       <para>
         In this example, where the cluster consists of two node groups
-        of two nodes each, any combination of at least one node in Node
-        Group <emphasis role="bold">A</emphasis> and at least one node
-        in Node Group <emphasis role="bold">B</emphasis> is sufficient
+        of two nodes each, any combination of at least one node in node
+        group 0 and at least one node in node group 1 is sufficient
         to keep the cluster <quote>alive</quote> (indicated by arrows in
-        the diagram). However, if both nodes from either node group
-        fail, the remaining two nodes are not sufficient (shown by
-        arrows marked out with an <emphasis role="bold">X</emphasis>);
-        in either case, the cluster has lost an entire partition and so
-        can no longer provide access to a complete set of all cluster
-        data.
+        the diagram). However, if <emphasis>both</emphasis> nodes from
+        <emphasis>either</emphasis> node group fail, the remaining two
+        nodes are not sufficient (shown by the arrows marked out with an
+        <emphasis role="bold">X</emphasis>); in either case, the cluster
+        has lost an entire partition and so can no longer provide access
+        to a complete set of all cluster data.
       </para>
 
       <remark role="todo">
@@ -530,11 +567,6 @@
         multiple CPUs.
       </remark>
 
-      <remark role="todo">
-        [js] Add description of memory requirements based on Hartmut's
-        example scripts.
-      </remark>
-
     </section>
 
   </section>

Modified: trunk/refman-5.0/ndbcluster.xml
===================================================================
--- trunk/refman-5.0/ndbcluster.xml	2006-05-02 12:23:39 UTC (rev 1988)
+++ trunk/refman-5.0/ndbcluster.xml	2006-05-02 12:29:01 UTC (rev 1989)
@@ -374,6 +374,10 @@
         Jeb Miller, and Hartmut Holzgraefe
       </remark>
 
+      <remark role="note">
+        Revised with feedback from Mikael Ronström and bug reports
+      </remark>
+
       <para>
         This section discusses the manner in which MySQL Cluster divides
         and duplicates data for storage.
@@ -408,17 +412,18 @@
             It is common for the terms <quote>node</quote> and
             <quote>data node</quote> to be used interchangeably when
             referring to an <command>ndbd</command> process; where
-            mentioned, management nodes (<command>ndb_mgmd</command>
-            processes) and SQL nodes (<command>mysqld</command>
-            processes) are specified as such in this discussion.
+            mentioned, management (MGM) nodes
+            (<command>ndb_mgmd</command> processes) and SQL nodes
+            (<command>mysqld</command> processes) are specified as such
+            in this discussion.
           </para>
         </listitem>
 
         <listitem>
           <para>
             <emphasis role="bold">Node Group</emphasis>: A node group
-            consists of one or more nodes, and stores a partition, or
-            set of <firstterm>replicas</firstterm> (see next item).
+            consists of one or more nodes, and stores partitions, or
+            sets of <firstterm>replicas</firstterm> (see next item). 
           </para>
 
           <para>
@@ -431,15 +436,15 @@
           <para>
             <emphasis role="bold">Partition</emphasis>: This is a
             portion of the data stored by the cluster. There are as many
-            cluster partitions as node groups participating in the
-            cluster, and each node group is responible for keeping at
-            least one copy of the partition assigned to it (that is, at
-            least one replica) available to the cluster.
+            cluster partitions as nodes participating in the
+            cluster. Each node is responible for keeping at least one
+            copy of any partitions assigned to it (that is, at least one
+            replica) available to the cluster.
           </para>
 
           <para>
-            A partition belongs entirely to a single node group; a node
-            group can store several partitions.
+            A replica belongs entirely to a single node; a node can
+            (and usually does) store several replicas.
           </para>
         </listitem>
 
@@ -457,11 +462,13 @@
 
       <para>
         The following diagram illustrates a MySQL Cluster with four data
-        nodes, arranged in two node groups of two nodes each. Note that
-        no nodes other than data nodes are shown here, although a
-        working cluster requires an <command>ndb_mgm</command> process
-        for cluster management and at least one SQL node to access the
-        data stored by the cluster.
+        nodes, arranged in two node groups of two nodes each; nodes 1
+        and 2 belong to node group 0, and nodes 3 and 4 belong to node
+        group 1. Note that only data (<command>ndbd</command>) nodes are
+        shown here; although a working cluster requires an
+        <command>ndb_mgm</command> process for cluster management and at 
+        least one SQL node to access the data stored by the cluster,
+        these have been omitted in the figure for clarity.
       </para>
 
       <mediaobject>
@@ -475,25 +482,56 @@
       </mediaobject>
 
       <para>
-        The data stored by the cluster is divided into two partitions,
-        labeled <emphasis role="bold">A</emphasis> and
-        <emphasis role="bold">B</emphasis> in the diagram. Each
-        partition is stored &mdash; in multiple copies &mdash; on a node
-        group. The data making up Partition
-        <emphasis role="bold">A</emphasis> is stored on Node
-        <emphasis role="bold">A-1</emphasis>, and this data is identical
-        to that stored by Node <emphasis role="bold">A-2</emphasis>. The
-        data stored by Nodes <emphasis role="bold">B-1</emphasis> and
-        <emphasis role="bold">B-2</emphasis> is also the same &mdash;
-        these two nodes store identical copies of the data making up
-        Partition <emphasis role="bold">B</emphasis>.
+        The data stored by the cluster is divided into four partitions,
+        numbered 0, 1, 2, and 3. Each partition is stored &mdash; in
+        multiple copies &mdash; on the same node group. Partitions are
+        stored on alternate node groups:
+          Partition 2 is stored on .
       </para>
-
+      
+      <itemizedlist>
+        <listitem>
+          <para>
+            Partition 0 is stored on node group 0; a <firstterm>primary
+              replica</firstterm> (primary copy) is stored on node 1,
+            and a <firstterm>backup replica</firstterm> (backup copy of
+            the partition) is stored on node 2.
+          </para>
+        </listitem>
+        
+        <listitem>
+          <para>
+            Partition 1 is stored on the other node group (node group
+            1); this partition's primary replica is on node 3, and its
+            backup replica is on node 4.
+          </para>
+        </listitem>
+        
+        <listitem>
+          <para>
+            Partition 2 is stored on node group 0. However, the placing
+            of its two replicas is reversed from that of Partition 0;
+            for Partition 2, the primary replica is stored on node 2,
+            and the backup on node 1.
+          </para>
+        </listitem>
+        
+        <listitem>
+          <para>
+            Partition 3 is stored on node group 1, and the placement of
+            its two replicas are reversed from those of partition 1.
+            That is, its primary replica is located on node 4, with the
+            backup on node 3.
+          </para>
+        </listitem>
+      </itemizedlist>
+      
+      
       <para>
         What this means so far as the continued operation of a MySQL
         Cluster is this: so long as each node group participating in the
-        cluster has at least one <quote>live</quote> node, the cluster
-        has a complete copy of all data and remains viable. This is
+        cluster has at least one node operating, the cluster has a
+        complete copy of all data and remains viable. This is
         illustrated in the next diagram.
       </para>
 
@@ -513,16 +551,15 @@
 
       <para>
         In this example, where the cluster consists of two node groups
-        of two nodes each, any combination of at least one node in Node
-        Group <emphasis role="bold">A</emphasis> and at least one node
-        in Node Group <emphasis role="bold">B</emphasis> is sufficient
+        of two nodes each, any combination of at least one node in node
+        group 0 and at least one node in node group 1 is sufficient
         to keep the cluster <quote>alive</quote> (indicated by arrows in
-        the diagram). However, if both nodes from either node group
-        fail, the remaining two nodes are not sufficient (shown by
-        arrows marked out with an <emphasis role="bold">X</emphasis>);
-        in either case, the cluster has lost an entire partition and so
-        can no longer provide access to a complete set of all cluster
-        data.
+        the diagram). However, if <emphasis>both</emphasis> nodes from
+        <emphasis>either</emphasis> node group fail, the remaining two
+        nodes are not sufficient (shown by the arrows marked out with an
+        <emphasis role="bold">X</emphasis>); in either case, the cluster
+        has lost an entire partition and so can no longer provide access
+        to a complete set of all cluster data.
       </para>
 
       <remark role="todo">
@@ -530,11 +567,6 @@
         multiple CPUs.
       </remark>
 
-      <remark role="todo">
-        [js] Add description of memory requirements based on Hartmut's
-        example scripts.
-      </remark>
-
     </section>
 
   </section>

Modified: trunk/refman-5.1/ndbcluster.xml
===================================================================
--- trunk/refman-5.1/ndbcluster.xml	2006-05-02 12:23:39 UTC (rev 1988)
+++ trunk/refman-5.1/ndbcluster.xml	2006-05-02 12:29:01 UTC (rev 1989)
@@ -371,6 +371,10 @@
         Jeb Miller, and Hartmut Holzgraefe
       </remark>
 
+      <remark role="note">
+        Revised with feedback from Mikael Ronström and bug reports
+      </remark>
+
       <para>
         This section discusses the manner in which MySQL Cluster divides
         and duplicates data for storage.
@@ -405,17 +409,18 @@
             It is common for the terms <quote>node</quote> and
             <quote>data node</quote> to be used interchangeably when
             referring to an <command>ndbd</command> process; where
-            mentioned, management nodes (<command>ndb_mgmd</command>
-            processes) and SQL nodes (<command>mysqld</command>
-            processes) are specified as such in this discussion.
+            mentioned, management (MGM) nodes
+            (<command>ndb_mgmd</command> processes) and SQL nodes
+            (<command>mysqld</command> processes) are specified as such
+            in this discussion.
           </para>
         </listitem>
 
         <listitem>
           <para>
             <emphasis role="bold">Node Group</emphasis>: A node group
-            consists of one or more nodes, and stores a partition, or
-            set of <firstterm>replicas</firstterm> (see next item).
+            consists of one or more nodes, and stores partitions, or
+            sets of <firstterm>replicas</firstterm> (see next item). 
           </para>
 
           <para>
@@ -428,15 +433,15 @@
           <para>
             <emphasis role="bold">Partition</emphasis>: This is a
             portion of the data stored by the cluster. There are as many
-            cluster partitions as node groups participating in the
-            cluster, and each node group is responible for keeping at
-            least one copy of the partition assigned to it (that is, at
-            least one replica) available to the cluster.
+            cluster partitions as nodes participating in the
+            cluster. Each node is responible for keeping at least one
+            copy of any partitions assigned to it (that is, at least one
+            replica) available to the cluster.
           </para>
 
           <para>
-            A partition belongs entirely to a single node group; a node
-            group can store several partitions.
+            A replica belongs entirely to a single node; a node can
+            (and usually does) store several replicas.
           </para>
         </listitem>
 
@@ -454,11 +459,13 @@
 
       <para>
         The following diagram illustrates a MySQL Cluster with four data
-        nodes, arranged in two node groups of two nodes each. Note that
-        no nodes other than data nodes are shown here, although a
-        working cluster requires an <command>ndb_mgm</command> process
-        for cluster management and at least one SQL node to access the
-        data stored by the cluster.
+        nodes, arranged in two node groups of two nodes each; nodes 1
+        and 2 belong to node group 0, and nodes 3 and 4 belong to node
+        group 1. Note that only data (<command>ndbd</command>) nodes are
+        shown here; although a working cluster requires an
+        <command>ndb_mgm</command> process for cluster management and at 
+        least one SQL node to access the data stored by the cluster,
+        these have been omitted in the figure for clarity.
       </para>
 
       <mediaobject>
@@ -472,25 +479,56 @@
       </mediaobject>
 
       <para>
-        The data stored by the cluster is divided into two partitions,
-        labeled <emphasis role="bold">A</emphasis> and
-        <emphasis role="bold">B</emphasis> in the diagram. Each
-        partition is stored &mdash; in multiple copies &mdash; on a node
-        group. The data making up Partition
-        <emphasis role="bold">A</emphasis> is stored on Node
-        <emphasis role="bold">A-1</emphasis>, and this data is identical
-        to that stored by Node <emphasis role="bold">A-2</emphasis>. The
-        data stored by Nodes <emphasis role="bold">B-1</emphasis> and
-        <emphasis role="bold">B-2</emphasis> is also the same &mdash;
-        these two nodes store identical copies of the data making up
-        Partition <emphasis role="bold">B</emphasis>.
+        The data stored by the cluster is divided into four partitions,
+        numbered 0, 1, 2, and 3. Each partition is stored &mdash; in
+        multiple copies &mdash; on the same node group. Partitions are
+        stored on alternate node groups:
+          Partition 2 is stored on .
       </para>
-
+      
+      <itemizedlist>
+        <listitem>
+          <para>
+            Partition 0 is stored on node group 0; a <firstterm>primary
+              replica</firstterm> (primary copy) is stored on node 1,
+            and a <firstterm>backup replica</firstterm> (backup copy of
+            the partition) is stored on node 2.
+          </para>
+        </listitem>
+        
+        <listitem>
+          <para>
+            Partition 1 is stored on the other node group (node group
+            1); this partition's primary replica is on node 3, and its
+            backup replica is on node 4.
+          </para>
+        </listitem>
+        
+        <listitem>
+          <para>
+            Partition 2 is stored on node group 0. However, the placing
+            of its two replicas is reversed from that of Partition 0;
+            for Partition 2, the primary replica is stored on node 2,
+            and the backup on node 1.
+          </para>
+        </listitem>
+        
+        <listitem>
+          <para>
+            Partition 3 is stored on node group 1, and the placement of
+            its two replicas are reversed from those of partition 1.
+            That is, its primary replica is located on node 4, with the
+            backup on node 3.
+          </para>
+        </listitem>
+      </itemizedlist>
+      
+      
       <para>
         What this means so far as the continued operation of a MySQL
         Cluster is this: so long as each node group participating in the
-        cluster has at least one <quote>live</quote> node, the cluster
-        has a complete copy of all data and remains viable. This is
+        cluster has at least one node operating, the cluster has a
+        complete copy of all data and remains viable. This is
         illustrated in the next diagram.
       </para>
 
@@ -510,16 +548,15 @@
 
       <para>
         In this example, where the cluster consists of two node groups
-        of two nodes each, any combination of at least one node in Node
-        Group <emphasis role="bold">A</emphasis> and at least one node
-        in Node Group <emphasis role="bold">B</emphasis> is sufficient
+        of two nodes each, any combination of at least one node in node
+        group 0 and at least one node in node group 1 is sufficient
         to keep the cluster <quote>alive</quote> (indicated by arrows in
-        the diagram). However, if both nodes from either node group
-        fail, the remaining two nodes are not sufficient (shown by
-        arrows marked out with an <emphasis role="bold">X</emphasis>);
-        in either case, the cluster has lost an entire partition and so
-        can no longer provide access to a complete set of all cluster
-        data.
+        the diagram). However, if <emphasis>both</emphasis> nodes from
+        <emphasis>either</emphasis> node group fail, the remaining two
+        nodes are not sufficient (shown by the arrows marked out with an
+        <emphasis role="bold">X</emphasis>); in either case, the cluster
+        has lost an entire partition and so can no longer provide access
+        to a complete set of all cluster data.
       </para>
 
       <remark role="todo">
@@ -527,11 +564,6 @@
         multiple CPUs.
       </remark>
 
-      <remark role="todo">
-        [js] Add description of memory requirements based on Hartmut's
-        example scripts.
-      </remark>
-
     </section>
 
   </section>

Thread
svn commit - mysqldoc@docsrva: r1989 - in trunk: refman-4.1 refman-5.0 refman-5.1jon2 May