非常に大きなデータベース MySQL テーブルがあり、めったに使用されない (少数のレコードにのみ使用される) 小さなテキスト フィールド列を追加したい場合、VARCHAR(255) または TINYTEXT を使用する方が効率的ですか?
TINYTEXT はテーブルの外に格納されているため (そしてそのスペースにアクセスするにはペナルティがあります)、私の場合は問題ないと思います。そのペナルティはめったに利用されないからです。
VARCHAR を使用すると、テーブル内にテキスト ストレージが配置され、ほとんど空の値が格納され、スペース (?) が使用されるため、テーブル全体に影響します。したがって、VARCHAR は私にとって良い選択ではないかもしれません。
この評価は正確ですか?
https://stackoverflow.com/a/28184635/2883328は、上で述べたようにストレージ技術をさらに深く掘り下げるためのいくつかのアイデアを提供し、以下のコメントで述べたように、2 番目のテーブルの使用についても説明します。