★★Java質問・相談スレッド162★★at TECH★★Java質問・相談スレッド162★★ - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト550:デフォルトの名無しさん 13/07/04 06:23:06.78 Javaでデータベースを操作するアプリを作ってるのですが質問があります 毎日レコードが追加されるテーブルがあります このテーブルを最新の半年分の情報とそれ以前の情報で別のテーブルに分けて管理する設計って悪い設計ですか? 新しい情報と古い情報は同じサーバーにあり格納するテーブルだけが違います アクセスは新しい情報に集中します 551:デフォルトの名無しさん 13/07/04 06:47:00.49 >>550 あまり良い設計だとは思わないけど、実物見ないと何とも言えない。 アプリの形態はWeb? DBMSは何? 一日に何レコード追加されるの? 1レコードあたり、およびトータルのデータ量は? たぶん、適切なインデックスを張るとか、最近のデータだけmemcachedするとか、工夫の余地は色々あると思う。 あと、Javaよりもデータベースのスレで聞いた方かいいような。 552:デフォルトの名無しさん 13/07/04 06:53:07.50 DB板で聞くべき話だとは思うけどどのRDBMSを使っていてどんなスキーマでどんなクエリ を投げるのか解らないと誰もアドバイス出来ないと思う。 ただし一般論としては、そういうテーブル分割を手作りすると古いレコードの移動とか それに伴いアプリ側で生成するクエリを変更するとか、運用面で余計な手間やバグの 温床を抱えることが多い。RDBMSに詳しくない人が思いつきレベルで分けたのであれば 率直に言ってあまり関わりたくない、そういう設計。 まずはインデックスでどうにかならないか、あるいはシャーディングなどと呼ばれる 機能が使えないか調べることをお薦めする。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch