このページは機械翻訳したものです。
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 内の異なるデータノードで同時に使用できます。 ただし、そのような構成は十分にテストされていないため、現時点で本番設定でこれを行うことはお勧めできません。