List:Commits« Previous MessageNext Message »
From:jon Date:June 9 2007 5:24pm
Subject:svn commit - mysqldoc@docsrva: r6740 - trunk/ndbapi
View as plain text  
Author: jstephens
Date: 2007-06-09 17:24:02 +0200 (Sat, 09 Jun 2007)
New Revision: 6740

Log:

Reorganised NDB Glossary; added new terms.

More info on kernel blocks.



Modified:
   trunk/ndbapi/ndb-internals.xml


Modified: trunk/ndbapi/ndb-internals.xml
===================================================================
--- trunk/ndbapi/ndb-internals.xml	2007-06-08 22:41:57 UTC (rev 6739)
+++ trunk/ndbapi/ndb-internals.xml	2007-06-09 15:24:02 UTC (rev 6740)
Changed blocks: 14, Lines Added: 333, Lines Deleted: 85; 17824 bytes

@@ -8559,6 +8559,12 @@
         </itemizedlist>
       </para>
 
+      <para>
+        <literal>CMVMI</literal> is implemented as the
+        <literal>Cmvmi</literal> class, defined in
+        <filename>storage/ndb/src/kernel/blocks/cmvmi/Cmvmi.hpp</filename>.
+      </para>
+
     </section>
 
     <section id="ndb-internals-kernel-blocks-dbacc">

@@ -8566,7 +8572,8 @@
       <title>The <literal>DBACC</literal> Block</title>
 
       <para>
-        This is the access control and lock management module, found in
+        Also referred to as the <literal>ACC</literal> block, this is
+        the access control and lock management module, found in
         <filename>storage/ndb/src/kernel/blocks/dbacc</filename>. It
         contains the following files:
 

@@ -8593,6 +8600,32 @@
         </itemizedlist>
       </para>
 
+      <para>
+        The <literal>ACC</literal> block handles the database index
+        structures, which are stored in 8K pages. Database locks are
+        also handled in the <literal>ACC</literal> block.
+      </para>
+
+      <para>
+        When a new tuple is inserted, the <literal>TUP</literal> block
+        stores the tuple in a suitable space and returns an index (a
+        reference to the address of the tuple in memory).
+        <literal>ACC</literal> stores both the primary key and this
+        tuple index of the tuple in a hash table.
+      </para>
+
+      <para>
+        Like the <literal>TUP</literal> block, the
+        <literal>ACC</literal> block implements part of the checkpoint
+        protocol. It also performs undo logging. It is implemented by
+        the <literal>Dbacc</literal> class, which is defined in
+       
<filename>storage/ndb/src/kernel/blocks/dbacc/DbaccMain.hpp</filename>.
+      </para>
+
+      <para>
+        See also <xref linkend="ndb-internals-kernel-blocks-dbtup"/>.
+      </para>
+
     </section>
 
     <section id="ndb-internals-kernel-blocks-dbdict">

@@ -8601,10 +8634,14 @@
 
       <para>
         This block, the data dictionary block, is found in
-        <filename>storage/ndb/src/kernel/blocks/dbdict</filename>. It is
-        responsible for managing metadata via the cluster's master node
-        such as table and index definitions, as well as many Disk Data
-        operations. This block contains the following files:
+        <filename>storage/ndb/src/kernel/blocks/dbdict</filename>. Data
+        dictionary information is replicated to all
+        <literal>DICT</literal> blocks in the cluster. This is the only
+        block other than <literal>DBTC</literal> to which applications
+        can send requests. <literal>DBDICT</literal> responsible for
+        managing metadata via the cluster's master node such as table
+        and index definitions, as well as many Disk Data operations.
+        This block contains the following files:
 
         <itemizedlist>
 

@@ -8689,6 +8726,12 @@
         </itemizedlist>
       </para>
 
+      <para>
+        This block is implenented as the <literal>Dbdict</literal>
+        class, defined in
+        <filename>storage/ndb/src/kernel/blocks/dblqh/Dbdict.hpp</filename>.
+      </para>
+
     </section>
 
     <section id="ndb-internals-kernel-blocks-dbdih">

@@ -8754,6 +8797,12 @@
         global checkpoints and system restarts.
       </para>
 
+      <para>
+        This block is implemented as the Dbdih class, whose definition
+        may be found in the file
+        <filename>storage/ndb/src/kernel/blocks/dbdih/Dbdih.hpp</filename>.
+      </para>
+
     </section>
 
     <section id="ndb-internals-kernel-blocks-dblqh">

@@ -8762,8 +8811,13 @@
 
       <para>
         This is the local, low-level query handler block, which manages
-        data and transactions local to the cluster's data nodes. It is
-        made up of the following files, found in
+        data and transactions local to the cluster's data nodes, and
+        acts as a coordinator of 2-phase commits. It is responsible
+        (when called on by the transaction coordinator) for performing
+        operations on tuples, accomplishing this task with help of
+        <literal>DBACC</literal> block (which manages the index
+        structures) and <literal>DBTUP</literal> (which manages the
+        tuples). It is made up of the following files, found in
         <filename>storage/ndb/src/kernel/blocks/dblqh</filename>:
 
         <itemizedlist>

@@ -8810,6 +8864,9 @@
         <literal>DBACC</literal>, <literal>DBTUP</literal>,
         <literal>LGMAN</literal>, <literal>TSMAN</literal>,
         <literal>PGMAN</literal>, and <literal>BACKUP</literal>
blocks.
+        It is implemented as the class <literal>Dblqh</literal>, defined
+        in the file
+        <filename>storage/ndb/src/kernel/blocks/dblqh/Dblqh.hpp</filename>.
       </para>
 
     </section>

@@ -8851,16 +8908,31 @@
 
         <note>
           <para>
-            Any data may act as the transaction coordinator.
+            Any data node may act as the transaction coordinator.
           </para>
         </note>
       </para>
 
       <para>
-        This block also handles unique indexes, which must co-ordinated
-        across all data nodes simultaneously.
+        This block also handles unique indexes, which must be
+        co-ordinated across all data nodes simultaneously.
       </para>
 
+      <para>
+        The transaction coordinator is the kernel interface to which
+        applications send their requests. It establishes connections to
+        different blocks in the system to carry out the transaction and
+        decides which node will handle each transaction, sending a
+        confirmation signal on the result to the application so that the
+        application can verify that the result received from the TUP
+        block is correct.
+      </para>
+
+      <para>
+        The <literal>DBTC</literal> block is implemented as the
+        <literal>Dbtc</literal> class.
+      </para>
+
     </section>
 
     <section id="ndb-internals-kernel-blocks-dbtup">

@@ -9178,9 +9250,10 @@
       <title>The <literal>LGMAN</literal> Block</title>
 
       <para>
-        This block is responsible for handling the undo logs for Disk
-        Data tables. It consists of these files in the
-        <filename>storage/ndb/src/kernel/blocks</filename> directory:
+        This block, the log group manager, is responsible for handling
+        the undo logs for Disk Data tables. It consists of these files
+        in the <filename>storage/ndb/src/kernel/blocks</filename>
+        directory:
 
         <itemizedlist>
 

@@ -9436,6 +9509,13 @@
         startup.
       </para>
 
+      <para>
+        The <literal>QMGR</literal> block is implemented by the
+        <literal>Qmgr</literal> class, whose definition is found in the
+        file
+        <filename>storage/ndb/src/kernel/blocks/qmgr/Qmgr.hpp</filename>.
+      </para>
+
     </section>
 
     <section id="ndb-internals-kernel-blocks-restore">

@@ -9527,11 +9607,11 @@
       <title>The <literal>TRIX</literal> Block</title>
 
       <para>
-        This kernel block is responsible for the building of unique
-        indexes. This block, like <literal>DBUTIL</literal>, is a
-        utility block containing many helper functions for building
-        indexes and handling signlas betweens nodes. It is found in the
-        directory
+        This kernel block is responsible for the handling of internal
+        triggers and unique indexes. <literal>TRIX</literal>, like
+        <literal>DBUTIL</literal>, is a utility block containing many
+        helper functions for building indexes and handling signals
+        betweens nodes. It is found in the directory
         <filename>storage/ndb/src/kernel/blocks/trix</filename>, and
         includes these files:
 

@@ -9552,6 +9632,12 @@
         </itemizedlist>
       </para>
 
+      <para>
+        This block is implemented as the <literal>Trix</literal> class,
+        defined in
+        <filename>storage/ndb/src/kernel/blocks/trix/Trix.hpp</filename>.
+      </para>
+
     </section>
 
     <section id="ndb-internals-kernel-blocks-misc">

@@ -9643,108 +9729,270 @@
     <itemizedlist>
 
       <listitem>
-        <para>
-          <emphasis role="bold">ACC</emphasis>
-        </para>
+        <formalpara>
 
-        <para>
-          <emphasis role="bold">ACC</emphasis>elerator or
-          <emphasis role="bold">ACC</emphasis>ess manager. Handles hash
-          indexes of primary keys, providing fast access to records.
-        </para>
+          <title>ACC</title>
+
+          <para>
+            <emphasis role="bold">ACC</emphasis>elerator or
+            <emphasis role="bold">ACC</emphasis>ess manager. Handles
+            hash indexes of primary keys, providing fast access to
+            records. See
+            <xref linkend="ndb-internals-kernel-blocks-dbacc"/>.
+          </para>
+
+        </formalpara>
       </listitem>
 
       <listitem>
-        <para>
-          <emphasis role="bold">DBTC</emphasis>
-        </para>
+        <formalpara>
 
-        <para>
-          The transaction coordinator.
-        </para>
+          <title>CMVMI</title>
+
+          <para>
+            Stands for <emphasis role="bold">C</emphasis>luster
+            <emphasis role="bold">M</emphasis>anager
+            <emphasis role="bold">V</emphasis>irtual
+            <emphasis role="bold">M</emphasis>achine
+            <emphasis role="bold">I</emphasis>nterface. An
+            <literal>NDB</literal> kernel handling non-signal requests
+            to the operating system, as well as configuration
+            management, interaction with the cluster management server,
+            and interaction between various kernel blocks and the
+            <literal>NDB</literal> virtual machine. See
+            <xref linkend="ndb-internals-kernel-blocks-cmvmi"/>, for
+            more information.
+          </para>
+
+        </formalpara>
       </listitem>
 
       <listitem>
-        <para>
-          <emphasis role="bold">DIH</emphasis>
-        </para>
+        <formalpara>
 
-        <para>
-          <emphasis role="bold">DI</emphasis>stribution
-          <emphasis role="bold">H</emphasis>andler.
-        </para>
+          <title>CNTR</title>
+
+          <para>
+            Stands for restart
+            <emphasis role="bold">C</emphasis>oordi<emphasis
role="bold">N</emphasis>a<emphasis
role="bold">T</emphasis>o<emphasis role="bold">R</emphasis>.
+            See <xref linkend="ndb-internals-kernel-blocks-ndbcntr"/>,
+            for more information.
+          </para>
+
+        </formalpara>
       </listitem>
 
       <listitem>
-        <para>
-          <emphasis role="bold">LQH</emphasis>
-        </para>
+        <formalpara>
 
-        <para>
-          <emphasis role="bold">L</emphasis>ocal
-          <emphasis role="bold">Q</emphasis>uery
-          <emphasis role="bold">H</emphasis>andler.
-        </para>
+          <title>DBTC</title>
+
+          <para>
+            The transaction coordinator (also sometimes written simply
+            as <emphasis role="bold">TC</emphasis>). See
+            <xref linkend="ndb-internals-kernel-blocks-dbtc"/>, for more
+            information.
+          </para>
+
+        </formalpara>
       </listitem>
 
       <listitem>
-        <para>
-          <emphasis
role="bold"><literal>SUMA</literal></emphasis>
-        </para>
+        <formalpara>
 
-        <para>
-          <emphasis role="bold">SU</emphasis>bscription
-          <emphasis
-            role="bold">MA</emphasis>nager.
-        </para>
+          <title>DICT</title>
+
+          <para>
+            The <literal>NDB</literal> data
+            <emphasis role="bold">DICT</emphasis>ionary kernel block.
+            Also <emphasis role="bold">DBDICT</emphasis>. See
+            <xref linkend="ndb-internals-kernel-blocks-dbdict"/>.
+          </para>
+
+        </formalpara>
       </listitem>
 
       <listitem>
+        <formalpara>
+
+          <title>DIH</title>
+
+          <para>
+            <emphasis role="bold">DI</emphasis>stribution
+            <emphasis role="bold">H</emphasis>andler. An
+            <literal>NDB</literal> kernel block. See
+            <xref linkend="ndb-internals-kernel-blocks-dbdih"/>.
+          </para>
+
+        </formalpara>
+      </listitem>
+
+      <listitem>
+        <formalpara>
+
+          <title>LGMAN</title>
+
+          <para>
+            The <emphasis role="bold">L</emphasis>og
+            <emphasis role="bold">G</emphasis>roup
+            <emphasis role="bold">MAN</emphasis>ager
+            <literal>NDB</literal> kernel block, used for MySQL Cluster
+            Disk Data tables. See
+            <xref linkend="ndb-internals-kernel-blocks-lgman"/>.
+          </para>
+
+        </formalpara>
+      </listitem>
+
+      <listitem>
+        <formalpara>
+
+          <title>LQH</title>
+
+          <para>
+            <emphasis role="bold">L</emphasis>ocal
+            <emphasis role="bold">Q</emphasis>uery
+            <emphasis role="bold">H</emphasis>andler.
+            <literal>NDB</literal> kernel block, discussed in
+            <xref linkend="ndb-internals-kernel-blocks-dblqh"/>.
+          </para>
+
+        </formalpara>
+      </listitem>
+
+      <listitem>
+        <formalpara>
+
+          <title>MGM</title>
+
+          <para>
+            <emphasis role="bold">M</emphasis>ana<emphasis
role="bold">G</emphasis>e<emphasis role="bold">M</emphasis>ent
+            node (or management server). Implemented as the
+            <command>ndb_mgmd</command> server daemon. Responsible for
+            passing cluster configuration information to data nodes and
+            performing functions such as starting and stopping nodes.
+            Accessed by the user by means of the cluster management
+            client (<command>ndb_mgm</command>). A discussion of
+            management nodes can be found in
+            <xref linkend="mysql-cluster-ndb-mgmd-process"/>.
+          </para>
+
+        </formalpara>
+      </listitem>
+
+      <listitem>
+        <formalpara>
+
+          <title>QMGR</title>
+
+          <para>
+            The cluster management block in the <literal>NDB</literal>
+            kernel. It responsibilities include monitoring heartbeats
+            from data and API nodes. See
+            <xref linkend="ndb-internals-kernel-blocks-qmgr"/>, for more
+            information.
+          </para>
+
+        </formalpara>
+      </listitem>
+
+      <listitem>
+        <formalpara>
+
+          <title>RBR</title>
+
+          <para>
+            <emphasis role="bold">R</emphasis>ow-<emphasis
role="bold">B</emphasis>ased
+            <emphasis role="bold">R</emphasis>eplication. MySQL Cluster
+            Replication is row-based replication. See
+            <xref linkend="mysql-cluster-replication"/>.
+          </para>
+
+        </formalpara>
+      </listitem>
+
+      <listitem>
+        <formalpara>
+
+          <title>SUMA</title>
+
+          <para>
+            The cluster <emphasis role="bold">SU</emphasis>bscription
+            <emphasis role="bold">MA</emphasis>nager. See
+            <xref linkend="ndb-internals-kernel-blocks-suma"/>.
+          </para>
+
+        </formalpara>
+      </listitem>
+
+      <listitem>
         <para>
           <emphasis role="bold">TC</emphasis>
         </para>
 
-        <para>
-          <emphasis role="bold">T</emphasis>ransaction
-          <emphasis role="bold">C</emphasis>o-ordinator
-        </para>
+        <formalpara>
+
+          <title>TC</title>
+
+          <para>
+            <emphasis role="bold">T</emphasis>ransaction
+            <emphasis role="bold">C</emphasis>oordinator. See
+            <xref linkend="ndb-internals-kernel-blocks-dbtc"/>.
+          </para>
+
+        </formalpara>
       </listitem>
 
       <listitem>
-        <para>
-          <emphasis
role="bold"><literal>Tsman</literal></emphasis>
-        </para>
+        <formalpara>
 
-        <para>
-          <emphasis role="bold">T</emphasis>able<emphasis
-            role="bold">s</emphasis>pace
-          <emphasis
-            role="bold">m</emphasis>anager.
-        </para>
+          <title>TRIX</title>
+
+          <para>
+            Stands for <emphasis role="bold">TR</emphasis>ansactions and
+            <emphasis role="bold">I</emphasis>nde<emphasis
role="bold">X</emphasis>es,
+            which are managed by the <literal>NDB</literal> kernel block
+            having this name. See
+            <xref linkend="ndb-internals-kernel-blocks-trix"/>.
+          </para>
+
+        </formalpara>
       </listitem>
 
       <listitem>
-        <para>
-          <emphasis role="bold">TUP</emphasis>
-        </para>
+        <formalpara>
 
-        <para>
-          <emphasis role="bold">TUP</emphasis>le. Unit of data storage.
-        </para>
+          <title>TSMAN</title>
+
+          <para>
+            <emphasis role="bold">T</emphasis>able
+            <emphasis role="bold">s</emphasis>pace
+            <emphasis role="bold">m</emphasis>anager. Handles
+            tablespaces for MySQL Cluster Disk Data. See
+            <xref linkend="ndb-internals-kernel-blocks-tsman"/>, for
+            more information.
+          </para>
+
+        </formalpara>
       </listitem>
 
-<!--      
-        <listitem>
-        <para>
-        <emphasis role="bold"></emphasis>
-        </para>
-        
-        <para>
-        
-        </para>
-        </listitem>
-      -->
+      <listitem>
+        <formalpara>
 
+          <title>TUP</title>
+
+          <para>
+            <emphasis role="bold">TUP</emphasis>le. Unit of data
+            storage. Also used (along with
+            <emphasis role="bold">DBTUP</emphasis>) to refer to the
+            <literal>NDB</literal> kernel's tuple management block,
+            which is discussed in
+            <xref linkend="ndb-internals-kernel-blocks-dbtup"/>.
+          </para>
+
+        </formalpara>
+      </listitem>
+
     </itemizedlist>
 
   </section>


Thread
svn commit - mysqldoc@docsrva: r6740 - trunk/ndbapijon9 Jun