3

4億行のInnodbテーブルをtokudbエンジンに変換しようとしています。最初"alter table ... engine=TokuDB"は非常に高速に実行されていることから始めます(SHOW PROCESSLISTを使用)。10秒ごとに約100万行を読み取っています。しかし、約1,900万〜2,000万行に達すると、読み取りが遅くなり始め、数秒ごとに1万行のようになります。

totokudbが機能する速度に影響を与えるmysqlまたはtokudb変数はありALTER TABLEますか?と他のいくつかを試しましたtmp_table_sizeが、そのハードルを乗り越えることができないようです。

何か案は?

4

2 に答える 2

3

重要な変数は次のとおりです。操作を開始する前にグローバルに設定するか、ストレージ エンジンの変更を実行するセッション内でローカルに設定してください。

  • tokudb_load_save_space : デフォルトはオフで、ディスク容量が少ない場合を除き、そのままにしておく必要があります。
  • tokudb_cache_size : 未設定の場合、TokuDB は独自のキャッシュ メカニズムに RAM の 50% を割り当てます。通常、この設定はそのままにしておくことをお勧めします。既存のサーバーで実行しているため、TokuDB、InnoDB、および MyISAM の間でメモリをオーバーコミットしていないことを確認する必要があります。
于 2012-10-08T19:42:56.573 に答える