MySQLでのテーブル設計について質問させてください。
現在、MySQLで運用中のシステムがありますが、そこでデータ量が数百万レコードがあるテーブルがあります。
ここに機能追加で保存したい変数を追加することが度々あるのですが、データ量の大きなテーブルへのカラムの追加は処理コストが大きいので避けたいと考えています。
※現在は、カラムを追加したいときは、新しいテーブルを作ってデータをコピーしてからテーブル名の変更をしているので、システムを止めるほどではないですが、コピーに数時間がかかるので差分を後で追加するなど細々とした手間がかかります。
そこで、インデックスを貼らない、検索対象にはならない、他のテーブルとジョインしたりしないようなデータに関しては、なんでも入れることができるようなテキスト型のカラムを一つ作っておいて、そこにjson形式で保存しておこうかと考えています。
それであれば、機能追加で保存しておきたい変数が増えても、jsonデータの中に追加しておくだけで住みますので、テーブルの変更は必要ありません。
こういった使い方はあまり良くない、こんなデメリットがあるなどありましたら教えてください。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/06/22 06:31