A.2 数据节点配置参数

  • Arbitration:如何执行仲裁以避免节点故障时出现裂脑问题。

  • ArbitrationTimeout: 数据库分区等待仲裁信号的最长时间(毫秒)。

  • BackupDataBufferSize:备份数据缓冲区的默认大小(以字节为单位)。

  • BackupDataDir:存储备份的路径。请注意,字符串“/BACKUP”始终附加到此设置,因此 *有效* 默认值为 FileSystemPath/BACKUP。

  • BackupDiskWriteSpeedPct: 设置数据节点分配的最大写入速度 (MaxDiskWriteSpeed) 的百分比,以在开始备份时为 LCP 保留。

  • BackupLogBufferSize:备份日志缓冲区的默认大小(以字节为单位)。

  • BackupMaxWriteSize:备份进行的文件系统写入的最大大小(以字节为单位)。

  • BackupMemory:为每个节点的备份分配的总内存(以字节为单位)。

  • BackupReportFrequency:备份期间备份状态报告的频率,以秒为单位。

  • BackupWriteSize:备份进行的文件系统写入的默认大小(以字节为单位)。

  • BatchSizePerLocalScan: 用于计算持有锁扫描的锁记录数。

  • BuildIndexThreads:在系统或节点重启期间用于构建有序索引的线程数。在运行 ndb_restore --rebuild-indexes 时也适用。将此参数设置为 0 将禁用有序索引的多线程构建。

  • CompressedBackup:使用 zlib 在写入时压缩备份。

  • CompressedLCP: 使用 zlib 编写压缩的 LCP。

  • ConnectCheckIntervalDelay:数据节点连接检查阶段之间的时间。数据节点在 1 个间隔后被认为是可疑的,在 2 个间隔后没有响应而死亡。

  • CrashOnCorruptedTuple:启用后,强制节点在检测到损坏的元组时关闭。

  • DataDir:此节点的数据目录。

  • DataMemory:每个数据节点上分配用于存储数据的字节数;取决于可用的系统 RAM 和 IndexMemory 的大小。

  • DefaultHashMapSize:设置大小(以桶为单位)以用于表哈希映射。支持三个值:0、240 和 3840。

  • DictTrace:启用DBDICT调试;用于新开发银行的发展。

  • DiskIOThreadPool:文件访问的未绑定线程数,仅适用于磁盘数据。

  • Diskless: 不使用磁盘运行。

  • DiskPageBufferEntries: 在 DiskPageBufferMemory 中分配的内存;非常大的磁盘事务可能需要增加此值。

  • DiskPageBufferMemory:分配给磁盘页面缓冲区缓存的每个数据节点上的字节数。

  • DiskSyncSize:强制同步前写入文件的数据量。

  • EnablePartialLcp:启用部分LCP(真);如果禁用 (false),则所有 LCP 都写入完整的检查点。

  • EnableRedoControl:启用自适应检查点速度以控制重做日志的使用。

  • EventLogBufferSize:数据节点内 NDB 日志事件的循环缓冲区大小。

  • ExecuteOnComputer: 引用先前定义的 COMPUTER 的字符串。

  • ExtraSendBufferMemory: 除了由 TotalSendBufferMemory 或 SendBufferMemory 分配的任何内存之外,用于发送缓冲区的内存。默认 (0) 允许最多 16MB。

  • FileSystemPath:数据节点存储其数据的目录路径(目录必须存在)。

  • FileSystemPathDataFiles:数据节点存储其磁盘数据文件的目录路径。默认值为 FilesystemPathDD,如果已设置;否则,如果设置了 FilesystemPath,则使用它;否则,使用 DataDir 的值。

  • FileSystemPathDD:数据节点存储其磁盘数据和撤消文件的目录路径。默认值为 FileSystemPath,如果已设置;否则,使用 DataDir 的值。

  • FileSystemPathUndoFiles:数据节点存储其磁盘数据撤消文件的目录路径。默认值为 FilesystemPathDD,如果已设置;否则,如果设置了 FilesystemPath,则使用它;否则,使用 DataDir 的值。

  • FragmentLogFileSize:每个重做日志文件的大小。

  • HeartbeatIntervalDbApi:API节点数据节点心跳之间的时间。(API 连接在 3 次心跳丢失后关闭)。

  • HeartbeatIntervalDbDb:数据节点到数据节点心跳之间的时间;数据节点在 3 次心跳丢失后被认为已死亡。

  • HeartbeatOrder:设置数据节点检查彼此心跳以确定给定节点是否仍处于活动状态并连接到集群的顺序。对于所有数据节点必须为零或对于所有数据节点必须为不同的非零值;请参阅文档以获取更多指导。

  • HostName:此数据节点的主机名或 IP 地址。

  • IndexMemory:每个数据节点上分配用于存储索引的字节数;取决于可用的系统 RAM 和 DataMemory 的大小。

  • IndexStatAutoCreate:在创建索引时启用/禁用自动统计收集。

  • IndexStatAutoUpdate:监视索引的变化并触发自动统计更新。

  • IndexStatSaveScale:用于确定存储索引统计信息大小的比例因子。

  • IndexStatSaveSize:每个索引保存的统计信息的最大大小(以字节为单位)。

  • IndexStatTriggerPct:索引统计信息更新的 DML 操作的阈值百分比变化。值按 IndexStatTriggerScale 缩小。

  • IndexStatTriggerScale:按此数量缩小 IndexStatTriggerPct,乘以索引大小的以 2 为底的对数,以获得大型索引。设置为 0 以禁用缩放。

  • IndexStatUpdateDelay:给定索引的自动索引统计更新之间的最小延迟。0 表示没有延迟。

  • InitFragmentLogFiles:初始化片段日志文件,使用稀疏或完整格式。

  • InitialLogFileGroup:描述在初始启动期间创建的日志文件组。有关格式,请参阅文档。

  • InitialNoOfOpenFiles:每个数据节点打开的初始文件数。(每个文件创建一个线程)。

  • InitialTablespace:描述在初始启动期间创建的表空间。有关格式,请参阅文档。

  • InsertRecoveryWork:用于插入行的 RecoveryWork 的百分比;除非正在使用部分本地检查点,否则无效。

  • LateAlloc:在建立与管理服务器的连接后分配内存。

  • LcpScanProgressTimeout:在关闭节点以确保系统范围的 LCP 进度之前,本地检查点片段扫描可以停止的最长时间。使用 0 禁用。

  • LockExecuteThreadToCPU: 以逗号分隔的 CPU ID 列表。

  • LockMaintThreadsToCPU:CPU ID,指示哪个CPU运行维护线程。

  • LockPagesInMainMemory: 0=禁用锁定,1=内存分配后锁定,2=内存分配前锁定。

  • LogLevelCheckpoint:打印到标准输出的本地和全局检查点信息的日志级别。

  • LogLevelCongestion:打印到标准输出的拥塞级别信息。

  • LogLevelConnection:打印到标准输出的节点连接/断开信息的级别。

  • LogLevelError:传输器,心跳错误打印到标准输出。

  • LogLevelInfo:心跳和日​​志信息打印到stdout。

  • LogLevelNodeRestart:节点重启级别和节点故障信息打印到stdout。

  • LogLevelShutdown:打印到标准输出的节点关闭信息级别。

  • LogLevelStartup: 打印到标准输出的节点启动信息级别。

  • LogLevelStatistic:打印到标准输出的事务、操作和传输信息的级别。

  • LongMessageBuffer:在每个数据节点上为内部长消息分配的字节数。

  • MaxAllocate: 不再使用;没有效果。

  • MaxBufferedEpochs:允许订阅节点可以落后的纪元数(未处理的纪元)。超过会导致滞后的订阅者断开连接。

  • MaxBufferedEpochBytes:分配给缓冲时期的字节总数。

  • MaxDiskWriteSpeed:没有重新启动时,LCP 和备份每秒可以写入的最大字节数。

  • MaxDiskWriteSpeedOtherNodeRestart:当另一个节点重新启动时,LCP 和备份每秒可以写入的最大字节数。

  • MaxDiskWriteSpeedOwnRestart:此节点重新启动时,LCP 和备份每秒可以写入的最大字节数。

  • MaxFKBuildBatchSize:用于构建外键的最大扫描批量大小。增加此值可能会加速外键的构建,但也会影响正在进行的流量。

  • MaxDMLOperationsPerTransaction:限制交易规模;如果需要的 DML 操作多于此,则中止事务。

  • MaxLCPStartDelay:LCP 轮询检查点互斥锁(以允许其他数据节点完成元数据同步)的时间(以秒为单位),然后将其自身放入锁定队列以并行恢复表数据。

  • MaxNoOfAttributes:建议存储在数据库中的属性总数(所有表的总和)。

  • MaxNoOfConcurrentIndexOperations:可以在一个数据节点上同时执行的索引操作总数。

  • MaxNoOfConcurrentOperations: 事务协调器中的最大操作记录数。

  • MaxNoOfConcurrentScans:在数据节点上并发执行的最大扫描数。

  • MaxNoOfConcurrentSubOperations:并发订户操作的最大数量。

  • MaxNoOfConcurrentTransactions: 该数据节点上并发执行的最大事务数,可以并发执行的事务总数是该值乘以集群中的数据节点数。

  • MaxNoOfFiredTriggers:可以在一个数据节点上同时触发的触发器总数。

  • MaxNoOfLocalOperations:在此数据节点上定义的最大操作记录数。

  • MaxNoOfLocalScans:在此数据节点上并行扫描的最大片段数。

  • MaxNoOfOpenFiles:每个数据节点打开的最大文件数。(每个文件创建一个线程)。

  • MaxNoOfOrderedIndexes: 系统中可定义的有序索引总数。

  • MaxNoOfSavedMessages:写入错误日志的错误消息的最大数量和要保留的跟踪文件的最大数量。

  • MaxNoOfSubscribers:最大订阅者数。

  • MaxNoOfSubscriptions:最大订阅数(默认 0 = MaxNoOfTables)。

  • MaxNoOfTables:建议存储在数据库中的 NDB 表的总数。

  • MaxNoOfTriggers:可以在系统中定义的触发器总数。

  • MaxNoOfUniqueHashIndexes:可以在系统中定义的唯一哈希索引的总数。

  • MaxParallelCopyInstances:节点重启期间的并行副本数。默认值为 0,即使用两个节点上的 LDM 数量,最大为 16。

  • MaxParallelScansPerFragment:每个片段的最大并行扫描数。一旦达到这个限制,扫描就会被序列化。

  • MaxReorgBuildBatchSize:用于重组表分区的最大扫描批处理大小。增加此值可能会加快表分区重组,但也会影响正在进行的流量。

  • MaxStartFailRetries:数据节点启动失败时的最大重试次数,需要 StopOnError = 0。设置为 0 会导致启动尝试无限期地继续。

  • MaxUIBuildBatchSize:用于构建唯一键的最大扫描批量大小。增加此值可能会加快唯一密钥的构建,但也会影响正在进行的流量。

  • MemReportFrequency: 以秒为单位的内存报告频率;0 = 仅在超过百分比限制时报告。

  • MinDiskWriteSpeed:LCP 和备份每秒可以写入的最小字节数。

  • MinFreePct:为重新启动保留的内存资源百分比。

  • NodeGroup:数据节点所属的节点组;仅在集群初始启动期间使用。

  • NodeId: 集群中所有节点中唯一标识数据节点的编号。

  • NoOfFragmentLogFiles:属于数据节点的 4 个文件集中每个 16 MB 重做日志文件的数量。

  • NoOfReplicas:数据库中所有数据的副本数。

  • Numa:(仅限 Linux;需要 libnuma)控制 NUMA 支持。设置为 0 允许系统确定数据节点进程对交错的使用;1表示由数据节点决定。

  • ODirect: 尽可能使用 O_DIRECT 文件读写。

  • ODirectSyncFlag: O_DIRECT 写入被视为同步写入;当 ODirect 未启用时忽略,InitFragmentLogFiles 设置为 SPARSE,或两者。

  • RealtimeScheduler:当为真时,数据节点线程被调度为实时线程。默认为假。

  • RecoveryWork:LCP 文件的存储开销百分比:值越大,意味着正常操作的工作越少,恢复期间的工作越多。

  • RedoBuffer:分配用于写入重做日志的每个数据节点上的字节数。

  • RedoOverCommitCounter:当多次超过 RedoOverCommitLimit 时,事务将中止,并且将按照 DefaultOperationRedoProblemAction 指定的方式处理操作。

  • RedoOverCommitLimit: Each time that flushing current redo buffer takes longer than this many seconds, number of times that this has happened is compared to RedoOverCommitCounter.

  • ReservedSendBufferMemory: This parameter is present in NDB code but is not enabled.

  • RestartOnErrorInsert: Control type of restart caused by inserting error (when StopOnError is enabled).

  • SchedulerExecutionTimer: Number of microseconds to execute in scheduler before sending.

  • SchedulerResponsiveness: Set NDB scheduler response optimization 0-10; higher values provide better response time but lower throughput.

  • SchedulerSpinTimer: Number of microseconds to execute in scheduler before sleeping.

  • ServerPort: Port used to set up transporter for incoming connections from API nodes.

  • SharedGlobalMemory: Total number of bytes on each data node allocated for any use.

  • StartFailRetryDelay: Delay in seconds after start failure prior to retry; requires StopOnError = 0.

  • StartFailureTimeout: Milliseconds to wait before terminating. (0=Wait forever).

  • StartNoNodeGroupTimeout: Time to wait for nodes without nodegroup before trying to start (0=forever).

  • StartPartialTimeout: Milliseconds to wait before trying to start without all nodes. (0=Wait forever).

  • StartPartitionedTimeout: Milliseconds to wait before trying to start partitioned. (0=Wait forever).

  • StartupStatusReportFrequency: Frequency of status reports during startup.

  • StopOnError: When set to 0, data node automatically restarts and recovers following node failures.

  • StringMemory: Default size of string memory (0 to 100 = % of maximum, 101+ = actual bytes).

  • TcpBind_INADDR_ANY: Bind IP_ADDR_ANY so that connections can be made from anywhere (for autogenerated connections).

  • TimeBetweenEpochs: Time between epochs (synchronization used for replication).

  • TimeBetweenEpochsTimeout: Timeout for time between epochs. Exceeding causes node shutdown.

  • TimeBetweenGlobalCheckpoints: Time between group commits of transactions to disk.

  • TimeBetweenGlobalCheckpointsTimeout: Minimum timeout for group commit of transactions to disk.

  • TimeBetweenInactiveTransactionAbortCheck: Time between checks for inactive transactions.

  • TimeBetweenLocalCheckpoints: Time between taking snapshots of database (expressed in base-2 logarithm of bytes).

  • TimeBetweenWatchDogCheck: Time between execution checks inside data node.

  • TimeBetweenWatchDogCheckInitial: Time between execution checks inside data node (early start phases when memory is allocated).

  • TotalSendBufferMemory: Total memory to use for all transporter send buffers..

  • TransactionBufferMemory: Dynamic buffer space (in bytes) for key and attribute data allocated for each data node.

  • TransactionDeadlockDetectionTimeout: Time transaction can spend executing within data node. This is time that transaction coordinator waits for each data node participating in transaction to execute request. If data node takes more than this amount of time, transaction is aborted.

  • TransactionInactiveTimeout: Milliseconds that application waits before executing another part of transaction. This is time transaction coordinator waits for application to execute or send another part (query, statement) of transaction. If application takes too much time, then transaction is aborted. Timeout = 0 means that application never times out.

  • TwoPassInitialNodeRestartCopy: Copy data in 2 passes during initial node restart, which enables multithreaded building of ordered indexes for such restarts.

  • UndoDataBuffer: Unused; has no effect.

  • UndoIndexBuffer: Unused; has no effect.

  • UseShm: Use shared memory connections between this data node and API node also running on this host.

  • MaxNoOfExecutionThreads: For ndbmtd only, specify maximum number of execution threads.

  • NoOfFragmentLogParts: Number of redo log file groups belonging to this data node.

  • ThreadConfig: Used for configuration of multithreaded data nodes (ndbmtd). Default is empty string; see documentation for syntax and other information.