![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
例からなんですが、インターネットの掲示板のデータベースとかでMySQL等を使って保存するやり方があると思います。
しかし、書き込み内容などが増えれば当然保存する量が増えて重くなったりすると思うのですが、mixiや2chなどの大規模なサイトになってくると書き込み内容の量が相当なものになりデータベースの行数も相当なものになると思うのですが、これらのサイトはどういう風にして膨大な書き込み内容などを管理しているのでしょうか?またMySQLはどのくらいの行数までが軽快な動作を保てるのでしょうか?
データベースはSQL文一つでデータの検索やソートなどができるし今後も使い続けたいものなので教えてもらえると幸いです。
No.1ベストアンサー
- 回答日時:
理論的にはディスク容量が許す限り記録可能だと思います。
しかしトラフィックには限界があるわけなので下記のリンクにあるように分散処理するのが一般的でしょうね。
どのくらいで快適に動作するかは環境によって違いますので一概には言えません。
参考URL:http://techtarget.itmedia.co.jp/tt/news/0709/12/ …
回答ありがとうございます。
mixiのデータベースは1つのテーブルで管理してるのでは無くて複数のサーバーと複数のテーブルをつなぎ合わせて管理しているんですね。私自身テーブルの結合などしたことがなくそのくらいの負荷分散をしなければ運営できないようなWEBサービスを持っていませんが、ただMySQLで何かしらのものを作るとすぐに100,1000とデータの量が多くなり、どのくらいまでなら軽快に利用できる範囲なんだろうと今後ユーザー数100,200と増えた場合どうしようなどと悩んでました。参考記事を見るとmixiはユーザー数が1万くらいでようやく負荷対策をはじめたらしいので、と言うことは極小規模なサイトであればちょっとやそっとの負荷を気にすることは無い?ということですね。おおよそ負荷対策をしなければならないサイトの規模などの目安がわかりましたので安心しました。すこし神経質になってました。ありがとうございました。それでは失礼します。
No.2
- 回答日時:
「行数の上限」といった制限は、主要なRDBMSの一般的な機能ではありません。
RDBMS側の論理設計上の制限より、OSやディスク容量などの制限に、先に引っ掛かります。そのため、実際に格納可能な行数は、ディスク容量や表の行長などで変動します。
またある程度の規模のシステムでは複数サーバで負荷分散しますから、サーバ数、HDD数などの掛け算で、最終的にどの程度の行を格納できるかが変わってきます。
MySQLのスペース管理については詳しくないですが、主要なRDBMSでは、格納時の空き領域を探す効率的な仕組みを持っています。具体的に言うと、ビットマップなどで空ページを管理しています。
検索については、インデクスが有効利用できる条件(=、BETWEEN、IN、LIKEの前方一致など)であれば、B-TREE構造で母体データ件数が増えても、I/O増は対数の関係なので極端に性能劣化はしません。また、ORDER BYやGROUP BY、DISTINCTでは、検索条件との組み合わせで有効利用できるインデクスを定義していおけばソート抑止できます。
データベースって言うのはデータ件数が増えてもインデックスを利用している限り使っていてさほど気にするほどのものではないんですね。
ただ以前まで掲示板などを作ってるときデータは全てテキストで管理していたのでMySQLに乗り換えたときその利用しやすさ(検索やソートなども余裕テキスト管理では考えられない)から1つのデータベースに沢山のテーブルを作って色々なものに利用したので果たしてこんな使い方をしてもデータベース1つで大丈夫なんだろうか?などと色々悩んでましたが、今回の質問で目安ですが1つのデータベースを利用するに当たり小規模であればあまり負荷のことは気にせず利用できることがわかりましたので、負荷対策などは負荷と実感できるくらいのものを作ったときに考えていきたいと思います。
ご丁寧な回答ありがとうございました。それでは失礼します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
並べ替えについて
-
Excelの数値でのソートについて
-
Windowsでファイル名でソートさ...
-
アクセスに関して。クエリの並...
-
エクセル、並び替え正しくソー...
-
ファイルの漢数字の順番につい...
-
OracleとAccessの出力順の違い
-
ハイフンの入ったデータの並べ替え
-
レコードの登録順がおかしい
-
MSDOS ソート sortf 使用方法
-
文字列のソート
-
EXCELでの住所録の並べ替え
-
月末日のみソートしたい
-
MySQLで行番号を得たい
-
accessでDISTINCT 句と矛盾
-
文字型の順番がうまく並ばない。
-
ファイルメーカーでソート後の...
-
エクセルでの一つのシートだけ...
-
エクセルのソートができなくなった
-
エクセルでダブルクリックして...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ファイルの漢数字の順番につい...
-
並べ替えについて
-
レコードの登録順がおかしい
-
エクセル、並び替え正しくソー...
-
アクセスに関して。クエリの並...
-
1の行を固定した上でVBAを用い...
-
月末日のみソートしたい
-
SQLで曜日のソートを月火水木金...
-
テーブルレーコードをソートし...
-
ハイフンの入ったデータの並べ替え
-
リストボックス内を昇順並べる方法
-
accessでDISTINCT 句と矛盾
-
ファイルメーカーでソート後の...
-
コンボボックスのソートについて
-
Selectした時のレコードの取得順
-
アクセスで曜日の並び順を変えたい
-
Excelの並び替え(文字数と画数...
-
WORDの「並べ替え」について
-
文字2桁、3桁交じりの文字列...
-
エクセルの縦列のソートできま...
おすすめ情報