3

次の特性を持つテーブルの MySQL データベースを最適化しようとしています。

何か案が?(ストレージエンジンなど)

テーブル:

  • 約。10,000行

  • 各行には、次のサイズの大きなテキスト フィールドが 1 つあります。

    約。平均で 200 キロバイト。

    約。最大 1000 キロバイト。

  • 毎秒数回まで:

    行が削除され、挿入されます。

    データがテキスト フィールドに追加されます。

    テキスト フィールドが読み取られます。

Propel ORM の CLOB によって課せられているように、テキスト フィールドのタイプは現在 LONGTEXT です。

4

1 に答える 1

1

出発点として、MyISAM よりも Innodb を推奨します。

  • 更新のための行レベルのロックとテーブル レベルのロック
  • クラッシュ/破損耐性
  • 十分な RAM がある場合は、データセットをメモリ内 (innodb バッファー プール内) に置くことができます。

Innodb プラグインを備えた新しいバージョンの MySQL を使用している場合、Barracuda ファイル形式の速度と圧縮の優れたベンチマークがいくつかあります。そのメモに関する良いブログ投稿(表面的にはあなたの状況に似た状況について語っています):

http://www.mysqlperformanceblog.com/2008/04/23/real-life-use-case-for-barracuda-innodb-file-format/

于 2010-12-21T21:07:02.060 に答える