最適なエンジンのための小さなルックアップテーブルとフィールド
-
26-09-2020 - |
質問
以下のような質問私は設計ウェブアプリケーションで数十名の小さなルックアップテーブル:これらのテーブル硬を含むム(ID、名前、説明)カップルの行(主に50人以下で、最大で約450).
これらのルックアップテーブル変更があることが予想されな(から基準変数年に一度)のプライバシーポリシーが適用され:
- 記入オプションをhtmlを選択
- することができるその他の記録を報告
がありま SELECT
計算書上これらのテーブルの99%であったりすることが多い。
私は、データベースエンジンが最も効率的です。
ここで私の考慮事項:
メモリ
- プロジェクト非常に高速
- コン:場合はサーバがクラッシュ、すべてのデータを紛失する必要がある再現
- コン:は外部キー
圧縮デー
- プロジェクト高速
- コン:は外部キー
InnoDB
- プロジェクト外部キーサポート
うお願いであるかどうかが大きな使いに異なるもの以外 InnoDB 性能的に
おかげさZbynek
解決
私の答えは同様の問題が月2011年 るDBMSの良いデザイナーズマンションを読み込み、簡単なデータ構造ですか?
しておりますのでお聞きMySQLとなるものにすることができます。正直に言うと、つながっているとは言い難いがある珍しい場合、MyISAMでを上回るパフォーマンスをInnoDBで選択す.
ここで私の過去の投稿はこの論争
Sep 20, 2011
: ベストのMyISAMとInnoDBMay 03, 2012
: では、InnoDBはデー?Jul 05, 2012
: InnoDB vs MyISAM多くの指標Sep 26, 2012
: 選択MyISAM上InnoDBこれらのプロジェクト要件長期のオプション
いかかるので、現在なくなりました絶好のMyISAM上InnoDB?
この図が作成したヴァディム-散,Percona CTO)
MyISAMはキャッシュを目指すととテーブルが2つの指数(主キー idおよび指名)となります。一方、InnoDBは多くの可動部のためには日頃からの備えが大切で、特にInnoDBバッファプールへの負荷および解任16Kページです。
公平を期するべきます。
- マポスト その主な違いはInnoDBおよびMyISAM?.読んでます。
- 設定サーバーを使用MyISAM、すべてのテーブルを使用
ROW_FORMAT=Fixed
(私のポスト 何のパフォーマンスへの影響をCHAR vs VARCHAR、固定サイズす。 利用により大きな key_buffer_size. - 設定を他のサーバを使用はInnoDBおよび大 innodb_buffer_pool_size.
- 追加データもサーバーとクエリのよう狂いにくくなっております。●
これまでの最高評価のためのストレージエンジンは自由ですが、データセットである。
ぜひ試してみてください!!!
他のヒント
- 「圧縮ミニサム」 - それは何ですか?たぶん「アーカイブ」?
- 圧縮は不要です。テーブルが小さすぎ、すぐに完全にキャッシュされます。
-
FOREIGN KEYS
- なぜですか?コードをデバッグしました。チェックするためのぶら下がり事柄はありません。 -
MEMORY
は不合理ではありません。 -
MEMORY
MyISAM
- それは古い警備の物語です。ROW_FORMAT=FIXED
とDYNAMIC
を使用してください。 - InnoDBの「クラスタ化」
VARCHARs
は、目的のためにミニサムよりも少し速く検索を行います。 - あなたはルックアップテーブルが顕著な減速を引き起こしていることを知っていますか?私は彼らがそうであることを真剣に疑います。
- do not
PRIMARY KEY
とFLOATs
などの「連続」値の検索テーブルを使用します。
私はFKSなしでInnoDBに投票します。
所属していません dba.stackexchange