文字数の多いデータに最適なデータベース

このQ&Aのポイント
  • Web+DBのシステムで、文字数の多いデータを管理するためには適切なデータベースを選ぶ必要があります。SQL Server 2000では文字数制限の問題がありますが、XMLファイルに変換する方法もあります。ただし、Webサーバの負荷が増える可能性があるため、他のデータベースを検討することも重要です。
  • 一般的には、教えてgoo!などの質問欄のデータ管理では、どのようなデータベースを使用しているのでしょうか?負荷の軽減にはどのような処理が行われているのでしょうか?
  • 文字数の多いデータを効率的に管理するためには、適切なデータベースとデータ処理方法が必要です。SQL Server 2000では文字数制限があるため、他のデータベースを検討することが重要です。また、XMLファイルに変換することも一つの選択肢ですが、Webサーバの負荷に注意が必要です。
回答を見る
  • ベストアンサー

文字数の多いデータに最適なデータベース

お世話になります。 文字数の多いデータに最適なデータベースについての質問です。 Web+DBのシステムで、テキストファイルを変換したデータ(負荷の軽減のため予め変換したHTMLの自動リンクを埋め込みます)をデータベースに登録したいのですが、SQL Server 2000では文字数が制限を超えてしまいます。 ブログのようにXMLファイルに変換すれば、文字数の問題は無くなるとは思いますが、Webサーバ側の負荷が気になります。 ブログはXMLファイルのようですが、こちらの教えてgoo!等の質問欄のデータの管理等には、一般的にはどのようなデータベースを使い、負荷の軽減等でどのような処理を行っているものなのでしょうか? 初歩的な質問で申し訳ございませんが、よろしくお願いいたします。

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

  • ベストアンサー
noname#182251
noname#182251
回答No.1

Text型は2の31乗文字まで扱えませんか?

wa2_1973
質問者

お礼

ありがとうござました! Text型があることを失念しておりました。 おかげさまで解決いたしました。 お礼が遅くなり申し訳ございませんでした。

関連するQ&A

  • データベース数などの制限について

    お世話になります。 現在、データベースについて学習中なのですが、いくつか疑問点があり質問させていただきます。 まず、初歩的な事かと思いますが、データベース数、テーブル数、データ数に制限はあるのでしょうか?いくらでもそれは作っても問題ないのでしょうか? また、やはり作れば作るだけサーバの負荷やスピードは遅くなってしまうのでしょうか? また、 (1)testというデータベースにtest1というテーブルがあり、その中に1万件のデータが入っている場合。 (2)testというデータベースにtest1,test2,test3・・・test10というテーブルがあり、それぞれのテーブルに1000件のデータが入っている場合。 上記の場合、一つのデータを取り出す際に(1)と(2)のどちらがサーバの負荷的にもスピード的にも優れているのでしょうか? どなたかご存知の方、宜しくお願いします。

    • ベストアンサー
    • MySQL
  • PHPからデータベースへの登録について

    はじめまして。現在、仕事の関係でPHPのプログラムを勉強している者です。 早速ですが、質問させていただきます。 PHPで作成したフォームメールから別で用意したデータベースに 入力データを登録しようとしているのですが、エラーでうまく動作しません。 PHP側のコードミスもあるかもしれませんが、PHPを動作させているサーバーと データベースサーバーの文字コードが違う点も原因しているのでは?と調べている状況です。 フォームからのデータを送るPHP ⇒ Shift_jis PHPをアップしているWebサーバー ⇒ Shift_jis データベースサーバー ⇒ EUC-JP データベースへの接続は問題なく行えているようですので、 登録処理するコードの部分のみを書きます。(↓) ******************************************************************************** // データベースへの登録 $sql = "INSERT INTO FORM_DATA(DataNumber, Time, Name, Email, Area, Sex, Interest, Commnet, OS, IP) VALUES('$tsvcount', '$ymdhis', '$sender_name', '$mail_address', '$mail_area', '$mail_sex', '$mail_interest', '$mail_body', '$os', '$ip')"; $sql = mb_convert_encoding($sql, 'EUC-JP', 'sjis'); mysql_query("SET NAMES 'EUC-JP'"); $db_result = mysql_query($sql); print $sql; print $db_result; if (!$db_result) { exit('Error! データを登録できませんでした。'); } // データベースとの接続解除 $db = mysql_close($db); if (!$db) { exit('データベースとの接続を閉じれませんでした。'); } **************************************************************************** PHP&Webサーバーとデータベースの文字コードを統一すればいい話かもしれませんが、 事情により異なる文字コードの環境で開発しております。 上記の通り、データベースに送信するSQL文はmb_convert_encoding()で「EUC-JP」に変換し、 mysql_query($sql);でデータベースに送信している形です。 この状態で送信すると、エラーとなり送ったSQL文を処理してくれません。 文字コードの変換処理、コードの記述など何が原因なのか分からず困っています。 考えられる原因と、解決策があればご教授いただきたいです。 ちなみに私はPHPはもちろんプログラム自体もまだ経験が浅く、 基礎的なことも理解していないことがかなりあります。 その上でご説明いただけますと大変有難いです。 ではよろしくお願い致します。

    • 締切済み
    • PHP
  • データベースの正しい定義は?

    初歩的な質問ですが、データベースを正しく定義するとどのようになりますか? SQLとファイルシステムを一緒にしたものがデータベースですか? また、データベースとデータベースエンジンの境界ってどこになりますか? データベースを論じる記事を頻繁に目にしますが、さっぱり分かりません。データベースとオラクル、DB2、あるいは、SQLサーバーなどは必ずしも同じではないと思うのですが.. これらは単なる製品ではないでしょうか。製品の使い方を論じることはデータベースを論じることではないような気がしています。 データベースって何ですか?ご意見をお聞かせください。

  • データの移行について

    いつもお世話になっております。 MySQLのデータに移行について質問させていただきます。 サーバの移転に伴い、データベースも移行することになりました。 MySQLの文字コードが変わっているため、新しいサーバで文字化けを 起こしてしまいます。 1)データのダンプ   $ mysqldump --user=root --password --default-character-set=latin1 DB名 > dump.sql 2)新しいサーバで文字コード変換   $ perl -pi -e 's/utf-8/latin1/' dump.sql 3)インポート   $ mysql --user=root --password DB名 < dump.sql 上記の方法で問題がありますでしょうか。 ご教示よろしくお願いいたします。 <旧サーバ>  MySQL:3.23.58  文字コード:euc-jp <新サーバ>  MySQL:5.0.45  文字コード:utf-8

  • mysqlのデータベースの文字コードの変換について

    mysqlのデータベースの文字コードの変換について教えてください。 テストサーバー環境で誤って文字コードUTF-8のデータベースを作成し、文字コードEUC-JPのデータを投入してしまいました。 それでもテストサーバー環境では文字化けせずにウェブアプリを表示できていましたが、テストサーバーのデータをエクスポートすると、テキストエディタで開いた時点で文字化けしています。 (文字コードはUTF-8、EUC-JPのいずれでも) もちろんそのデータを本番サーバーにインポートしても文字化けしてしまいます。 (データベース文字コードはUTF-8、EUC-JPのいずれでも) テストサーバーからデータをエクスポートする前に文字コードを変換することは可能でしょうか? もしくは他に問題を解決する方法はありますでしょうか? ご存知の方がいらっしゃいましたら教えてください。

    • ベストアンサー
    • MySQL
  • データベースサーバー構築

    質問場所がここで良いか少し不安ですが 主にWebで公開するデータベースのシステムを作ろうとしています 自分のスキルの範囲でやろうとしていますが少し分からないことがあるので 教えてください まず 自分のできること(やっていること)は ・Windows系サーバー(IIS)を使ってVBスクリプト(ASP)で ローカルにあるMDBファイルにアクセスし商品を紹介する動的ページの作成 です。 今後複数ユーザーでデータベースを使うことになるので システムを変えていく必要がでてきて MDBはダメだという事になり色々調べた結果、今後のことも考えWebサーバーとは別に データーベースサーバーを作ってやると言う結論になりました 分からないこと(あやふやな理解になっていること) 1.データベースサーバーとは何か?  これは OSは別として、SQL Server、オラクル、MYSQLといった  RDBMSをインストールしただけのデータベース置き場専用という感じのPCを指すと言うことで良いでしょうか?  例えば Win2000のIISでwebサーバーを作りその中のASPページから  別PCにあるデータベースにアクセスする構成がデータベースサーバーを別に設けると言うことで正しいのかどうかと言うことなのです。 2.データベースは何がよいか?(SQL Serverでよいか?)  本来であれば、webで商品在庫を公開することがメインで更新頻度が少ないデータベース  (300人ぐらいで共有し1万~3万レコードです)です、なおかつ複雑なSQLは発行しません。  ほぼASPからの接続で抽出(ID=** という単純な抽出条件)しか使わない、あとは並び替え位なので  MYSQLが向いているようでしたが、私はLinux系は全く分かりません。  なので メンテナンスの面や勉強する時間の節約からすれば  Windowsで動くSQL Serverが良いと思うのですが(MYSQLもWindowsで  動くけど得意とする高速性はLinux系でないと発揮しないみたいなのでやめようと思っています)  上記のような条件と使い方の場合、そんなに処理時間やマシンの負荷に両者間では大差があるのでしょうか?  MDBの時でもあまり不具合を感じなかったので、それよりは格段にSQL Serverは早いし負荷が少ないと聞いていますので  大丈夫かなと思っています。 3.SQL ServerをインストールするPCは何が最適か?  先も述べたようにデータベース専用として使う予定ですが  Win2000でよいのでしょうか?(XPより2000の方が安定がよいと思うので) それともWin2003Serverに  インストールできるならその方がよいでしょうか?  とにかく安定度が一番なのですが、そもそもWin2003Serverに  インストールできるのでしょうか?(もうすぐ2008?がでるからそれにしようかとも検討中です) 4.最終的に自分の思っていることと実体の構成(理解)は理解は以下のような感じで正しいのでしょうか?    複数でデータベースを共有するため、MDBでなくネットワークに強い (共有データベースで壊れにくい?壊れない?)データベースに変えるため、windowsで動くSQL Serverを使う  そのSQL ServerはwebサーバーがあるPCとは別のPCにインストールして使う  (データベースサーバーを別に用意する)ことでwebサーバーの負荷も減らし、データベースも快適に動くようにする 最終的にはWin2003Server×2台で1方はwebサーバー1方はSQL Server をインストールして使うことで上記を実現させる 5.SQL ServerのデータベースはMDBのような最適化というような作業が必要なのでしょうか?  そもそも 似ているようで違う MDBとSQL Serverでその特徴がきちんと理解できていないので  愚問なのかもしれませんが 気になるので教えてください 6.オラクルと違いSQL Serverはレコードの更新や追加の時  その行(レコード)だけロックすると言うことができない?  ようなので、Aさんが自分の商品を更新中にBさんも更新する  と言うようなことが起こった場合(MDBはこれになると壊れると書いているので MDBをやめました)  Aさんの更新が終わるまでBさんは更新できない(更新終了まで待つ)と言うことになるのでしょうか?  また、このとき商品一覧を要求された場合、更新中の情報はどの様になるのでしょうか?(更新終了まで見れない?) なんか 分かりにくい質問になってしまいましたが、お金をかけて 買ったはいいが、理解不足でやりたいことができなかったと言うことは 避けたいので ご教授下さい。 よろしくお願いします。

  • 1つのデータベースに2つのWordPressを設置

    WordPressを使って、それぞれまったく別の独自ドメインでブログを2つ設置したいと考えています。 レンタルサーバーとして、ロリポップの「ロリポ」を考えていますが、MySQLのデータベースが1つしかありません。 ロリポップのホームページを見ると、MySQLのデータベース1つに複数のWordPressをインストールして使うことが「ロリポ」でもできるとしてマニュアルが載っています。 しかし、ネットでいろんなレンタルサーバーを使っているユーザーの意見をいろいろ調べてみると、ブログを運営している人の中には、「1つのデータベースにWordPressは1個だけの方がいい。複数のWordPressを置くとエラーが出やすい。データベースに負荷をかけ、サーバーが遅くなったり、エラーが起きたりする。だからデータベースの個数も運営したいブログの数だけは欲しいところ」というような感じの記述が複数で見られます。 実際のところはどうなのでしょうか。 設置するブログは、ひとつはすでに別のレンタルサーバーにMovableTypeを置いて運営中のものです。これをロリポップのロリポにWordPressを置いて移築したいと考えていますが、このブログの記事数は現在のところ約1000です。1週間に1回の更新(1つの記事が増える)程度で、1日のアクセス数は普段は40~100程度しかありません。(多いときで年に数回300程度、過去最大で確か600程度が1度だけ) 追加で新しく作るブログは、これよりさらに更新もアクセス数もずっと少ないと思います。 2つともいわゆる個人ブログです。 この程度のブログなら、データベース1つに、WordPressでブログ2つを置いても負荷とはならず支障はないでしょうか。

    • ベストアンサー
    • MySQL
  • csvファイルを読み込んでデータベースのデータと比較して異なっていた場

    csvファイルを読み込んでデータベースのデータと比較して異なっていた場合は更新するようにしたいと考えています。 csvデータ…10 データベースから取得したデータ…10.0 ※比較するテーブルのフィールドのデータ型はFLOAT型です。 文字列を数値変換して比較、またはデータベースから取得したデータを文字列に変換して比較、どっちがいいのでしょうか。 またどのように比較すればいいのでしょうか。 くだらない質問かもしれませんが宜しくお願いします。

  • データベースと連動するCGI

    実はDBとWEBを連動させたいのですが、DBのほうのスキルがまったくありません。(ACCESS程度) 会社が予算をとってくれないため、自分でなんとかしなければなりません。 SQLとか難しいものではなくて、CGIで動くデータベースはありませんでしょうか? さらにアップしたときに、地域とか職種というようなもので検索できるものがあればベストなのですが。。。 htmlで作っていると一人に1ファイル、100人いたら100ページもhtmlを作らなくてはならないため、できればデータベースを使いたいのです。 どなたか教えてください。 よろしくお願いします。

  • データベースについて

    csv形式のファイル(データ)があるのですが、これを PHP又はPRELを利用して検索できるようにしたいのです。 データの項目数は5×12000件です。 MySQLというのがインストールされているサーバなのですがCSV形式のファイルをデータベース形式に変換して(?)インターネット上からブラウザで検索できるような CGI又はPHPをご存知ありませんか?