できる店の多くのデータ(<=4GB)一つのテーブルです。ものなのでしょうか?
-
21-09-2019 - |
質問
への長い話を短くすれば、一部のようにニーズを店舗やや大量のデータをデータベースのための別の部分の好みや希望、予算に合。通常は < 2000列ができ、時を超え300,000さい。のデータを一時的に保存および削除することができます。
ていたんで遊んでいる様々なアイデアもいただくこともできます。の LONGTEXT
データ型を保存でき、最大2^32バイトをする化による競争力の強化に取り組4GBにサンプルがあります。現在では、このコミュニケーションも楽しみのもう一つのテーブルです。されているということを、そのデータであろうがを超えないもの 60株~80株MB のです。私の質問は、良いアイデアを実際にい。
二つの解になっていましたtoyingを用いていて思ったこと。
- 挿入データとして個人の行を"一時的"テーブルが切り捨て後の仕上がりです。
- 挿入データとして直列化された文字列を
LONGTEXT
カラム列が削除された後の仕上がりです。
純粋な性能面でより良い保存のデータとして潜在的に>300,000個別の行として、60MB LONGTEXT
へのエントリーはお済ですか?
た場合は、洗いの LONGTEXT
オプションとしてのことができるとされていること、一部のアプリをピックのデータやすくなりました。ものであることの提携により良いという部分が増加し、全体の性能のものに限ります。
私は皆さまからのご意思います。
解決
LONGTEXT
にすべてのデータをシリアル化...冒涜!! :)
冗談はさておき、あなたがそれを行うならば、あなたは1、巨人、作品にそれをすべて抽出するよりも、選択肢がないだろうと私に起こります。あなたは一方で、個々の行にそれを広めている場合、あなたは自分のフロントエンドは小さなバッチでそれを取得することができます。
少なくとも、自分でそのオプションを与えることは行うには、スマートなものと思われます。 の(データは致命的なエラーことができたら、将来のサイズ要件を過小評価することに留意してください!)の
そして、あなたは右のあなたのテーブルを設計する場合、私は300.000行を超える60MiBデータの広がりは、テキストの60MiBを取得して解析するよりも、任意の少ない効率的になることは非常に多くの疑問そのフロントエンドでます。
最終的に質問です:あなたはあなたのフロントエンドは、MySQLはそれを取得することができますよりも効率的にテキストを解析することができると思います。
?他のヒント
このとき 使用メモリストレージエンジン.MySQLでは、このメモリストレージエンジンの代わりにMysqlはMyISAMです。その他ディスクの使用についてはお持ちのアプリを膝.
どのような種類のデータとどのようにそれが使用されるのですか?おそらくそれははるかに良い店になると、アプリケーションのメモリにそれを処理します。少なくとも、それははるかに高速になり、DBエンジンをロードしません。
き常に大切に保管してくださのデータベースとしての300,000行フォーマットを使memcachedキャッシュのデータをかけていを設定することができます。ごmemcached店舗でのメモリーの機械がご使用の多くのデータだに低く設定す期限が切です。が瞬時に大幅な速度の時間を取得したデータで頂いクエリでは、各ページ負荷時のものです。
あなたの代わりに、共有ファイル・システム上の一時ファイルへの書き込みを考えるかもしれません。