• ベストアンサー

Javaで使用するデータベースの選定方法について

現在、データベースの選定に困っています。 レコードが約100万件もある場合、どういうデータベースを選定すればいいんで しょうか? Javaで扱えるデータベースとして、「Oracle」、「SQLServer」 、「Postgre」、「MySQL」は有名ですが、レコード件数が膨大である場合の 選定方法(ポイント)を教えてください。ちなみにサーバー側のOSは、Windows2000 を想定しています。皆様、宜しくお願い致します。

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

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

  • ベストアンサー
  • misoka
  • ベストアンサー率35% (56/160)
回答No.1

MySQLは、一般的に、比較的小規模の場合に利用することが多いようです。 大規模ということであれば、OracleやSQLServerということになると 思います。PostgreSQLは、(とくにWindows版は)よく知らないので 何とも言えません。 その他は、どれだけのトランザクションが発生するのか、 どういう運用を行うのか(Webで24時間運用する、とか)、 などによっても変わってくるかもしれませんが、 個人的には、Oracleがお勧めです。Javaとの相性もよいようですし (SQLJなど)、VLDB機能というのもあります (VLDBとはVery Large Database。膨大な件数でも高速な検索を 実現する機能)。また、24時間運用にも耐えられるように なっているようです。 なにかと高機能なデータベースです。 各機能の詳細は、Oracle社のWebページからPDFで参照できます。 (無料ですがメンバー登録は必要です)。

参考URL:
http://otn.oracle.co.jp/
emoemo
質問者

お礼

質問に記述しておりませんでしたが、今回始めてWeb開発をする事になりました。 過去、Visual BasicやAccessでの小規模な開発しか行った経験しかなく殆ど Web開発について無知でした。ですので、misokaさんの回答は大変参考になりました。有難うございました。 もう一つ疑問点があるのですが、良ければ教えてください。 私がJava関連のHPを閲覧する限りバックエンド側は、MicrosoftのSQLServerを 余りみかけないのですがなぜでしょうか? SQLServerはJavaと相性がよくないのでしょうか?

その他の回答 (1)

  • misoka
  • ベストアンサー率35% (56/160)
回答No.2

> 私がJava関連のHPを閲覧する限りバックエンド側は、MicrosoftのSQLServerを > 余りみかけないのですがなぜでしょうか? > SQLServerはJavaと相性がよくないのでしょうか? どうなんでしょう? すみません。そのあたりはよく分かりませんが、 たぶん、SQLServerを使うときは、IISを使うことが多いので、もともと Javaを導入することは少ないのかもしれません。 従来、SQLServerを使うのは、技術的に比較的敷居の低いIISが 利用できるから、という理由が多かったような印象があります。 そういう部分で、ちょっとした「住み分け」ができているのかも しれません。 純粋に技術的にはどうであるのか、私も情報を目にしていません。 SQLServerは、これからもJavaと対抗するような「.NET」路線で行く ようですから、何となく「系統が違う」(?)ような感じはありますね。 ギョーカイ的な仲の悪さも、関係しているのかもしれません。

emoemo
質問者

お礼

大変参考になりました。 > たぶん、SQLServerを使うときは、IISを使うことが多いので、もともと > Javaを導入することは少ないのかもしれません。 という事はSQLServerを使用する場合、ASP(Active Server Pages)という 技術を使用する頻度の方が高いって事ですよね? 質問投稿後色々と調べてみましたが、膨大なデータを扱う場合はやはりOracleが 一番多いのですね。 どうも有難うございました。

関連するQ&A

  • データベースの質問です

    phpでサイト構築を考えておりますが、データベースをmysqlかpostgresか、マイクロソフトのSQLサーバのどちらが早いのか検討しています 一日のデータの件数を5万件入れて、そのデータをselect、insert、updateなどするときに mysqlかpostgresのマイクロソフトのSQLサーバのどちらが早いのか、良くわからなくて、皆様の知恵をお借りしたいです。 シンプルに、データの件数での処理の速さで考えております。 例えば、10万件のデータをinsertする 10万件のデータを、updateする 10万件のデータを、登録する あと、どの程度データを各データベースに入れると重くなってしまうものなのか・・・ 宜しくお願い致します

  • データベースの選定について

    データベースの選定についてアドバイスお願いします。 現在は各個人用のPC数台と共用PC1台をLANで結んでいます。 共用PCにはアクセスで作成したシステムが入っており、このシステムを利用する者が必要なときに共用PCを使って作業しています。 アクセスの運用はデータ保存テーブル用MDBファイルとアプリケーション用MDBファイルを接続して利用しているという状況です。 最近になって各個人のPCからデータベースを利用する方が便利だろうということでシステムの改良を考えています。 共用PCをデータベースサーバーとして運用することで問題を解決できると思うのですが、具体的にどのような方法が最適なのかアドバイスをお願いしたいのです。 1)各個人用PCにアプリケーションMDBファイルを配布して、サーバーにはデータ保存テーブルMDBを置く。 2)SQLサーバーを導入する。 1)の方法が一番お手軽だと思っていますが、MDBは同時に複数が使用することができないということなので問題が生じる可能性があります。 しかし、そういうケースはそれほど多くないと思われますので実際の運用面では大きな問題は発生しないかもしないだろうと考えています。 ただ、あくまでもアクセスファイルは共有することを念頭に置いていないらしいので不安もあります。 2)の方法はSQLサーバー導入のハードルが高いですが、時間的余裕は多少ありますので余っているPCでテストしながらチャレンジする価値はあると考えています。 この場合、どのSQLサーバーを選定するかが問題となります。 データ件数がMDBの限界を超える心配は当面ありません。 現在のところ、一日に共有PCを使ってアクセスを利用する頻度は多くても10回までです。 SQLは無償で利用できるものを考えています。具体的にはMySQLかマイクロソフトのSQL Server Expressです。 アクセスは一般的な作業ならこなせますが、SQLサーバーは全く初心者です。もちろん勉強する意志はあります。 この状況を踏まえた上でデータベースを選定するなら、どの選択がよいでしょうか? ・導入の容易さ ・システムの安定性 の面からのご意見をお聞かせ下さい。 具体的な移行方法については自分で調べるつもりです。 宜しくお願いします。

  • データベースソフトの選定について質問があります(システム開発関係実務未

    データベースソフトの選定について質問があります(システム開発関係実務未経験です) 条件1:お金を出せるのはハードのみ。(それも格安で中古などでもよい) 条件2:所詮、個人経営の事務所に設置するレベル 条件3:サーバはLinux(Cent OSでやりたいと思います)windowsサーバを買う金が出せない 条件4:事務所のクライアント数は所詮、5台程度+サーバ1個(+αするかも) 条件5:クライアント/サーバ型のシステムを構築したい。(WEBアプリではなく) ※あえて何でサーバOSをCentOS(linux)を選ぶ?と聞かれるかもですけど、 答えは、「すべて無償でやる」だからです。 ********************************************************************************* データベースといえば、 ・Oracle (windows用やLinux用) ・SQL Server ・MySQL(PostgreSQL) (windows用やLinux用) ・Access などいろいろありますよね。多種の選択があるデータベースの中で 何を作りたいかで、使う言語やデータベースが違ってくるとは 思いますが、よく企業のシステム開発の実績として目にするのが、 VB.NET+SQL SERVERだったり VC++ +Oracle Java + Oravleだったり っていうクライアント/サーバ型って見るんですけど、 これって目的とするシステムが何を得意としなければいけないとか、 選定された言語とデータベースの相性とかデータベースの 管理がしやすさとか、どこで決めているんですか? 自分が個人事務所レベルでやりたいと思うクライアントサーバ型のシステム内容は 顧客管理や売上げ管理や現場管理など。 Accessで十分じゃね?って言われるかもしれませんが、あえて、言語とデータベースを 学びたいので、「Java + 無料のoracle」みたいなのにしたいです。 クライアント側で動作するものは自分が好きな言語使って サーバ側のデータベースも好きなものを使って。。。という具合に やってはいけないんでしょうか? (Accessはクライアントから同時アクセスされたとき、処理しきれない?ことがある? とか聞くので、これは使わないとして。。。) 具体的には クライアント側で動くプログラム:VB.NETまたはJAVAまたはVC++など サーバ側データベース:MySQL(CentOSもMySQLも無償だから) みたいに、データベースを勝手に無償だからという理由だけでWEBアプリケーション でもないのに、MySQLにするなど、そこでMySQLは使わないでしょ?みたいなのって あるんでしょうか? 以上の条件で、今後独学で何を勉強するしながら独自開発するなら 言語は何がいいかとか、 言語とデータベースの組み合わせはこれでやってみたら?ってのがあれば教えてください。 何もかもクライアント側はJAVA一本でやれば?ってなら、それを頑張ります。 レベルの低い質問かもしれませんが 教えてください。

  • データベースは何が良いでしょうか?

    現在、データベースを使用するシステムを構築しようとしています。 現在、想定している環境は、以下の通りです。 1.Windows2000上で動作する。 2.データベースの読み書き用のプログラムは、VB.NETを使用して開発する。 3.テーブルのレコード数は最大1000×365=約37万件 (1000件の顧客で、356日分のデータ) 4.1顧客につき、1月単位、1日単位でデータの表示及び印刷を行う。 現在、データベースの候補として、 ACCESS SQLサーバー オラクル MySQL等を想定しています。 私としては、パフォーマンス的に問題ないならACCESSにしたい。問題があるならSQLサーバーにしたいと考えております。理由は、VB.NETに合うのは同じマイクロソフトの製品だろうという漠然としたものです。また、ACCESSが一番簡単でてっとり早いような気がしたからです。 上記の中で、お薦めのデータベースがありましたらコメントください。またその理由もお願いします。(上記以外でもかまいません)

  • フリーデータベース

    こんにちは 最近、Javaとaccessを使ったWebサーバーを勉強中なのですが、accessではいろいろ制限が多いのでフリーのデータベースを勉強しようと思っているのです。 フリーのデータベースでMySQLとPostgreSQLがありますが、どちらの方がよいのでしょうか? 人それぞれだとは思いますが、MySQLとPostgreSQLを比較した場合、どこがどういう風に良いのか知りたいのです。 WebDBにした場合と普通にデータベースとしての評価なんでもかまいませんので情報をよろしくお願いします。 できましたら、わかりやすい書籍等も教えていただけると助かります。 よろしくお願いします。

    • ベストアンサー
    • MySQL
  • SQLServerでのデータベース設計について

    あるシステムのデータベース設計をしております。 あまり知識、経験が無い為ご知恵をお借り出来たらと思います。 システムの概要としては、 「600件程度のデータを1時間毎にデータベースに取り込む。これを24時間365日続ける。さらに20箇所分同時に処理を行う。」 というものなります。 ざっと試算すると、1年だと ((600件 * 24時間) * 365日) * 20箇所 = 105,120,000件のデータを持つことになります。 これを10年間で考えると、105,120,0000件となります。 今のところ、シンプルに600件をそのまま取り込もうとしておりますが、 データ量が膨大になってしまう為、ディスク容量やインデックス等貼ったとしてもパフォーマンスが落ちないか等不安になってしまいます。 MSDNの情報でデータベースの容量を見積もったのですが、105,120,0000件だと1TB程必要となるようでした。 SQLSeverでこの位の件数、容量は一般的なのでしょうか? もしくは600件をそのままでは無く、1データとして取込み、 データを表示する際にプログラムで分割して処理する等の形にするのが良いのでしょうか? ちなみにWindows 2008 R2サーバーでSQLServer 2008 R2 Webエディションの環境となります。 宜しくお願いします。

  • データーベースoracleについて

    oracleって性能はどんなベンチマークを使ってしらべるんですか? またオラクルのほかに MySQL SQL server といったデータベースではどんなベンチマークを使って性能をはかるのですか? たぶん真っ先にあがるのがTPC-Cとかだと思うのですが、このほかにもどんなものがありますか?

  • データベースについての質問です

    phpでサイト構築を考えておりますが、データベースをmysqlかpostgresのどちらが早いのか検討しています 一日のデータの件数を5万件入れて、そのデータをselect、insert、updateなどするときに mysqlかpostgresのどちらが早いのか、良くわからなくて、皆様の知恵をお借りしたいです。 自分で、調べた範囲では mysqlは、ある一定を超えると極端に遅くなるとかあったのですが・・・トリガーなどは考えないで シンプルに、データの件数での処理の速さで考えております。 宜しくお願い致します

  • MySQL/DBサーバって、MySQL/DBクライアントみたいなものりますか?

    Linux+Apache+MySQLでサイト構築を検討しています。 MySQL/DBって、ORACLE8で言うところの、 いわゆる「Net8クライアント」のようなものってあります? 実は、今まで、NT+MS-SQLServer7でサイト構築してたのですが、 Linuxで再構築することとなっちゃいました。 で、MS-SQLServer7だったら、クライアントPCから、 GUIを使って、データベースのデータを簡単に変更することができます。 しかし、LinuxではMS-SQLServerは使えないので、じゃぁ、ORACLEって手もありますね。 そこで、ORACLEだったら、Net8があるので、多分、 上記のような使い方もできると思うのですが、 ORACLEは、導入コストが高すぎるので、却下されてしまいました。 で、Linux+MySQLにしようかと・・・。 しかし、サーバ機にLinux+MySQL/DBを構築するのはいいのですが、 Windowsなどのクライアントから、ORACLEでいうNet8でODBCのような接続で、 Microsoft-Accessなどを使って、データベースのデータを編集させたいんです。 よろしくお願いします!

  • Accessもデータベースなのに、、、

    ここの教えてgooのカテゴリーを見て疑問に思ったのですが 「データベース」の細分が ・SQL Server ・Oracle ・PostgreSQL ・MySQL ・その他(データベース) であり Accessがありません! 私はAccessしか使えないのですが れっきとしたデータベースだと思っていたのですが データベースの世界では大したものじゃないから その他に分類されてしまうのでしょうか? それともオフィスのカテゴリーがあるから省略されてるのでしょうか? ショックなので質問しました。 ご回答よろしくお願い致します。

専門家に質問してみよう