2014年4月18日金曜日

MySQL 5.5.36+ TokuDB 7.1.5のパラメーター斜め読み

TokuDB v7.1.5 with Fractal Tree Indexing for MySQL v5.5.36 User's Guide for linux の4章斜め読みメモ。
  • tokudb_commit_sync
    • InnoDBでいうinnodb-flush-log-at-trx-commitに相当する セッション変数
    • ON, OFFだけで2に相当するようなものは(この変数には)ない
  • tokudb_read_block_size
    • 1回の読み込みブロックのサイズ(解凍後のサイズ) セッション変数。
    • 値を小さくすると、狭いレンジスキャンのreadの性能が上がる(I/Oが減らせる)けど、広いレンジスキャンのread性能は落ちるよ、だそう。
    • 暗黙のデフォルトは64KB
  • tokudb_loader_memory_size
    • バルクロード(LOAD DATA INFILE)の時に使うらしい。サーバー変数。
    • 暗黙のデフォルトは100MB
    • バルクロード時に tokudb_cache_size から切り出されるから注意してね、らしい
  • tokudb_fsync_log_period
    • tokudb_commit_syncと関係なく、一定時間ごとにTokuDBログをfsyncするためのサーバー変数。
    • 暗黙のデフォルトは0。単位はミリ秒。
    • tokudb_commit_sync= 0 && tokudb_fsync_log_period= 1000でinnodb-flush-log-at-trx-commit= 2っぽい感じになるか。
  • tokudb_cache_size
    • InnoDBでいうinnodb-buffer-pool-sizeに相当。サーバー変数。
    • 暗黙のデフォルトは 物理メモリーの50%
    • tokudb_directioを使うならメモリーの80%くらい振るのがオススメ って書いてある
  • tokudb_directio
    • InnoDBでいうinnodb_flush_method= O_DIRECT
    • 暗黙のデフォルトはOFF
  • tokudb_lock_timeout
    • innodb_lock_wait_timeoutに相当するセッション変数。
    • 暗黙のデフォルトは4000(ms)。単位がmsなので注意。
  • tokudb_checkpointing_period
    • チェックポイント(TokuDBログファイルからTokuDBデータファイル(という呼び方で良いのかどうかは知らない)へのマージ)間隔
    • 暗黙のデフォルトは60で単位は秒。
    • いじらない方がいいよって書いてある。
  • tokudb_fs_reserve_percent
    • ファイルシステムにn%以上の空きがない場合、INSERTを許可しない…みたいに読める。
    • 暗黙のデフォルトは5、単位はパーセント。
    • この設定を使って、少なくとも物理メモリーの半分はリザーブしとけよ、って書いてある。

ちなみにtokudb_fs_reserve_percentを割り込んだ空き容量(75を設定して、利用率30%くらい)で何か操作をすると、

mysql> CREATE TABLE t2 (num serial) Engine= TokuDB;
ERROR 1030 (HY000): Got error 28 from storage engine

$ perror 28
OS error code  28:  No space left on device

ほほぅ。なるほど。

0 件のコメント :

コメントを投稿