• ベストアンサー

テーブルの多寡とカラムの多寡

100万行ほどのデータ管理を想定しています。 行数が多いのでこのデータをひとつのテーブルで管理するか、一万行のテーブル百個に分割して管理するか迷っています、双方のメリット、デメリットを教えていただけますでしょうか。よろしくお願いいたします。

  • MySQL
  • 回答数2
  • ありがとう数3

質問者が選んだベストアンサー

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

>一万行のテーブル百個に分割して管理 量より質の問題なので、正規化してインデックスをうまくはって管理すれば 100万行ならそれほど負荷が高くはなく、スピードもかなり速く処理できる はずです。 1万行にわけると、検索処理が異様にめんどくさくなると推測されますが 一部のデータに集中的にアクセスにいくのであれば、めったに使わない 古いデータにアクセスに行かなくなる分相応の高速化は期待できます。

osama_vin_ladin
質問者

お礼

アドバイスありがとうございます。 100万行は感覚的に多いかと思っていましたが、私の鈍い感覚はあてにならないようなのでテーブルひとつでやってみます。

その他の回答 (1)

  • nda23
  • ベストアンサー率54% (777/1415)
回答No.2

百個のテーブルに分割するとありますが、分割の基準ははっきりしているのでしょうか? 単に量で分けるというと、管理基準が曖昧になり、数年後には収集がつかないのでは? 100万レコードは多い方ですが、あり得ない量ではありませんし、インデックスなどを 使用することで検索速度の劣化は防げます。 (1)分割基準が明確である (2)更新頻度が高い (3)めったに参照しない 以上の条件を満たす場合のみ分割を考慮すべきでしょう。

osama_vin_ladin
質問者

お礼

回答ありがとうございます。 大変参考になりました。もう少し自分で勉強してみます。

関連するQ&A

  • Access2000でピボットテーブル

    Access2000でピボットテーブルフォームというのがあります。 Accessのテーブルからピボットテーブルがつくれるのですが、この場合に Accessのテーブルのデータ数が65536行を超えるデータ(エクセルの最大の行数) でもピボットテーブルは作成できるのでしょうか? ご存知の方教えてください

  • テーブルのデータ型をメモ型にするデメリットは?

    テーブルのデータ型をメモ型にするデメリットはありますか? 文字を300文字くらい入力したいのでメモ型にしようと思うのですが あとあと不便が生じるのであればフィールドを分割してなどの対策をとろうと思うのですが メモ型にデメリットはありますか?

  • テーブル構成について

    Perl + PostgreSQL でWEBシステムを作成しております。 まず例を記載致します。 テーブル例: [ 顧客情報 ] 名前,携帯電話キャリア区分,情報A,情報B,・・・ 上記のようなテーブルが存在していたとします。 「携帯電話キャリア区分」のカラムには、'1'か'2'か'3'が入力されます。 1はDoCoMo、 2はKDDI、 3はVodafone と云う風に決めておきます。 以下質問 キャリア区分に1~3が存在し、数字がそれぞれのキャリア名と結びついています。この携帯キャリア管理をDB上に被参照テーブルを作成しそこで行うか、この程度の項目数とデータ数であれば、テキストデータとして作成し管理しておくか、どちらで行おうか非常に悩んでおります。 そこで皆さんのご意見を参考とさせて頂きたく投稿させて頂きました。 ちなみに私の考えたそれぞれのメリット・デメリットは以下の通りです。 ■DB上での管理 全データを一元的に管理できる 柔軟性が乏しい(仮に運用途中でテーブル項目が増えたりしたら面倒) ■テキストデータの管理 バックエンドとの通信がない為処理が早い DBとテキストでデータ管理が分かれる 柔軟性が高い(オープンソースなんで・・・) 以上です。 よろしくお願い致します。

  • エクセルのテーブル使用について

    お世話になります。 エクセルで大量のデータを扱うため、データテーブルを作成し、 データを追加していきたいのですが、書式設定がうまく出来ません。 テーブルを使うのが初めてで慣れてないため、初心者的な質問でしたら 申し訳ありません。 やりたいこと 1.タイトルの太字を解除したい。 (太字をとっても太いままなのです) 2.下にデータを追加したときに、上の行の数式や色は反映されるよう なのですが、行の高さが反映されない。 (毎回手作業で直していて、手間なので・・・) テーブルのメリットとしては、データを追加した時に、ピボットの範囲が 自動的に変わる、上の行の書式や数式が反映される、という認識ですが 他にも何かメリットはありますか? 取り急ぎ、上記2点を解決できたらとても助かります。 宜しくお願い致します。

  • ドリームウィーバー セルの増やし方

    ドリームウィーバーの行セルの増やし方についてご質問させていただきます。 ドリームウィーバーでテーブルを作成した後、行数が足らなくなってしまいました。 テーブルをクリックして、行数を増やしたり、セルの分割をすれば増えることは増えるのですが、それぞれの最下部に新しいセルが加えられてしまいす。 最上部に増やしたりセル分割で上段に分割部分を作ることは出来ないのでしょうか?

  • テーブルの作り方について

    はじめまして。 SQLは初心者なんですが、テーブル構成の仕方について質問です。 ある場面で使用するのは、A,B,C,D,Eというデータで、 別のある場面で使用するのは、A,B,F,G,Hという場合にはテーブル(A,B,C,D,E,F,G,H)を作って1つのテーブルにするのはいいのでしょうか?悪いのでしょうか? メンテナンスや、大量のデータ取得などをするのにこの構成が適しているのかどうかがわかりません。 別々に作るのと、まとめて作ることそれぞれの メリット、デメリットがあったら教えてください。

  • Acessのテーブルについて

    お世話になります。 Acessで作った、データが大量にあるテーブル内での指定したレコード(行数)に移動するときに スクロールバーを押し続けるのは大変なので指定した件数を飛ばす方法はありますでしょうか? 先頭から2000行目といった感じで・・・ 左下の方に、テキストボックスがあってその隣に矢印が何種類か有るのですが それも関係してくるのでしょうか? うまく説明できてないですけど、よろしくお願いします。

  • テーブルにスクロールバーをつける

    テーブルにスクロールバーをつけることは出来るでしょうか。 行数は画面に表示させておくのが5行くらいで、5行以降はスクロールバーで移動させ表示させると言う感じにしたいのです。 HTMLで出来なければ他の方法も教えて下さい。

    • ベストアンサー
    • HTML
  • テーブルの作成

    テーブルで思うように作れないので 教えてください。 よこ2列 たて3行で (1)→(2) (3)→(4) (5)→(6) と6分割されているものを (1)+(3) (4)+(6)と表示させたい場合は  ((2)・(5)はそのままです) どのようにしたらよろしいのでしょうか教えてください。 宜しくお願いいたします。

  • ASP.NET 動的に行を増やすTable

    ASP.NET(VB)アプリケーションでボタンが押される度に、 行を追加するTableを作りたいです。 初期表示時にPage_Initで5行のtableを作成するようにしています。 ボタンクリックイベントで行数を増やしていくのですが、 他のコントロール(asp.textbox)のテキストチェンジイベントでPostBackが発生すると、 元の5行に戻ってしまいます。 Page_Initで5行と指定しているためなので、 ここの指定数をPostBack前に保持した行数にすれば良いと思ったのですが、 もっと他にスマートな方法はありませんでしょうか? もし、保持する方法をとる場合は、セッションなどで保持するべきでしょうか?