このページは機械翻訳したものです。
        ndbmtd
        はマルチスレッドバージョンの
        ndbd
        であり、NDBCLUSTER
        ストレージエンジンを使用してテーブル内のすべてのデータを処理するために使用されるプロセスです。ndbmtd
        は、複数の CPU
        コアを持つホストコンピュータでの使用を目的としています。
        特に明記されていないかぎり、ndbmtd
        は ndbd
        と同じ方法で機能するため、このセクションでは、ndbmtd
        が ndbd
        と異なる方法に集中しており、シングルスレッドバージョンとマルチスレッドバージョンの両方のデータノードプロセスに適用される
        NDB Cluster
        データノードの実行に関する追加情報については、セクション23.4.1「ndbd — NDB Cluster データノードデーモン」
        に問い合わせてください。
      
ndbd で使用されるコマンド行オプションおよび構成パラメータは、ndbmtd にも当てはまります。 これらのオプションおよびパラメータについては、それぞれセクション23.4.1「ndbd — NDB Cluster データノードデーモン」およびセクション23.3.3.6「NDB Cluster データノードの定義」を参照してください。
        また、ndbmtd は ndbd
        とファイルシステム互換です。
        言い換えると、ndbd
        を実行しているデータノードを停止し、バイナリを
        ndbmtd
        に置き換えて、データ損失なしに再起動できます
        (ただし、ndbmtd
        をマルチスレッド方式で実行する場合は、ノードを再起動する前に、MaxNoOfExecutionThreads
        が適切な値に設定されていることを確認する必要があります。)
        同様に、ノードを停止し、マルチスレッドバイナリのかわりに
        ndbd
        を起動するだけで、ndbmtd
        バイナリを ndbd
        に置き換えることができます。 これらの 2
        つを切り替えるときに、--initial
        を使用してデータノードバイナリを開始する必要はありません。
      
ndbmtd を使用した場合は、ndbd を使用した場合と 2 つの重要な点で異なります。
ndbmtd はデフォルトではシングルスレッドモードで実行されるため (つまり、ndbd のように動作します)、マルチスレッドを使用するように構成する必要があります。 これを行うには、
config.iniファイルのMaxNoOfExecutionThreads構成パラメータまたはThreadConfig構成パラメータに適切な値を設定します。MaxNoOfExecutionThreadsは簡単に使用できますが、ThreadConfigにはより柔軟性があります。 これらの構成パラメータおよびその使用方法については、マルチスレッドの構成パラメータ (ndbmtd)を参照してください。トレースファイルは ndbmtd プロセスで重大なエラーが発生したときに生成されますが、ndbd で障害が発生したときにこれらが生成される仕組みとは若干異なります。 これらの相違については、次のいくつかの段落で説明します。
        ndbd と同様に、ndbmtd
        は config.ini 構成ファイルの
        DataDir
        で指定されたディレクトリに配置される一連のログファイルを生成します。
        トレースファイルを除き、これらは
        ndbd
        で生成されるものと同様に生成され、同じ名前が付けられます。
      
        重大なエラーが発生した場合、ndbmtd
        はエラーが発生する直前に発生した事象を示すトレースファイルを生成します。
        これらのファイルはデータノード
        DataDir にあり、NDB
        Cluster
        開発およびサポートチームによる問題の分析に役立ちます。
        各 ndbmtd スレッドに対して 1
        つのトレースファイルが生成されます。
        これらのファイルの名前には次のパターンがあります。
      
ndb_node_id_trace.log.trace_id_tthread_id,
        このパターンで、node_id
        はクラスタ内のデータノード一意のノード ID
        を表し、trace_id
        はトレースシーケンス番号であり、thread_id
        はスレッド ID です。 たとえば、NDB Cluster
        データノードとして実行されている
        ndbmtd プロセスがノード ID 3
        を持ち、MaxNoOfExecutionThreads
        が 4 である場合、4
        つのトレースファイルがデータノードデータディレクトリに生成されます。
        このノードで障害が発生したのがはじめてであった場合、これらのファイルには
        ndb_3_trace.log.1_t1、ndb_3_trace.log.1_t2、ndb_3_trace.log.1_t3、および
        ndb_3_trace.log.1_t4
        と名前が付けられます。
        内部的には、これらのトレースファイルは
        ndbd
        トレースファイルと同じ形式です。
      
データノードプロセスが予期せずに停止されたときに生成される ndbd の終了コードおよびメッセージは、ndbmtd でも使用されます。 これらのリストについては、Data Node Error Messagesを参照してください。
ndbd と ndbmtd は、同じ NDB Cluster 内の異なるデータノードで同時に使用できます。 ただし、そのような構成は十分にテストされていないため、現時点で本番設定でこれを行うことはお勧めできません。