• ベストアンサー

データベースとDBMSについて。

 書籍を読んでいると、「データベースはプログラムから独立しているべきだ。」と書いてあります。  この場合のプログラムとは、OracleやPostgreSQLみたいなDBMSの事でしょうか?  それとも、プログラマーがJAVAなどで作った、アプリケーションの事でしょうか?  仮に、後者の場合だとします。その場合、データベースとDBMSをひとつの物と捉えて良いんでしょうか?  よろしくおねがいします。

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

  • ベストアンサー
  • ymmasayan
  • ベストアンサー率30% (2593/8599)
回答No.2

>「データベースはプログラムから独立しているべきだ。」と書いてあります。 > この場合のプログラムとは、OracleやPostgreSQLみたいなDBMSの事でしょうか? > それとも、プログラマーがJAVAなどで作った、アプリケーションの事でしょうか? 後者です。「データベースは(アプリケーション)プログラムから独立しているべきだ。」です。 更に言えばOSからの独立も含んでいると考えても構いません。 >後者の場合、データベースとDBMSをひとつの物と捉えて良いんでしょうか? それでいいです。データベースとDBMSは切っても切れない関係にあります。 データベース管理者はDB、DBMS、OS、APを明確に区別して考えますが それ以外の人はAPとDB(+DBMS+OS)の2つだけだと思って差し支え ありません。

kamkamkam3
質問者

お礼

どうも、ご回答ありがとうございます。 大変分かりやすく、これからの参考になりそうです。だいぶすっきりしました。 最後の説明がとても勉強になりました。これから、本格的に仕事で使っていかなければいけないので、DBについての考え方がわかり、とても助かりました。 >データベース管理者はDB、DBMS、OS、APを明確に区別して考えますが 職場で、この考え方をしっかり理解できるようにしたいと思います。現在でも少しは分かるのですが。 どうもありがとうございました。

その他の回答 (1)

  • ranx
  • ベストアンサー率24% (357/1463)
回答No.1

> この場合のプログラムとは、OracleやPostgreSQLみたいなDBMSの事でしょうか? DBMSはデータベースを実現する手段です。 > それとも、プログラマーがJAVAなどで作った、アプリケーションの事でしょうか? あまりそういう例は聞きませんが、そうであっても良いと思います。 > データベースとDBMSをひとつの物と捉えて良いんでしょうか? 意味不明です。 データベースはデータをぷろぐらむから独立させて扱いやすくしたものです。 単純な例では、テキストファイルだってデータベースとして扱うこともあります。

kamkamkam3
質問者

お礼

どうも、ご回答ありがとうございます。 > データベースとDBMSをひとつの物と捉えて良いんでしょうか? ↑はデータベースはデータ自身の事で、DBMSはデータベースを操作するプログラムということを言いたかったのですが。分かりにくかったみたいです。すみません。 私自身、データベースを操作するDBMSの事をプログラムと言っているのかな?と疑問に感じていました。 まだまだ、知らない事がたくさんあるので、これから勉強しようと思います。どうもありがとうございました。

関連するQ&A

  • どのDBMSを・・・

    こんにちわ現在、イントラ向けのDBシステム構築の検討中のものです。サーバは、一番使い慣れているWindows2Kサーバで考えております WEBブラウザで閲覧が可能である事を要求されているので、いろいろ選択肢がある中でVBSでASPを書くことになりました(作成者全員の使える共通言語だったもので) ここまではいいのですが、DBMSの選定で止まってしまいました 今まではOracleを使っていたのですが、今回はコストを抑えたいので、それは難しい、ということになったのです。 MS SQL Serverでもコストが高い、ということになり、そうすると、PostgreSQLかMySQLか…というところになっております。 ちなみにテスト版のサンプルプログラムは、MS-Accessを使って動かしているのですが、それではアクセスが集中した時に耐えられないであろう、ということで却下になっております。 日常の利用の中では、大したアクセス数は予想されないのですが、混雑時になると百台を超える端末からのアクセスが予想されます。 DBのレコード数は1テーブルあたり多いもので百万件程度のものとなる予定です 前書き長くなってしまいましたが、このような状態です Oracle,MS SQL Serverが駄目といわれた以上、PostgreSQLかMySQLだと思うのですが、皆様、どのような基準で、DBMSを決定しているのでしょうか? また、それぞれのメリット、デメリット等があれば教えてください(自分なりに調べてはいるのですが、実際運用されてる方のお声をお聞かせ願いたいと思っています) もしくは、その二者以外にも候補として考え得るDBMSは何かあるでしょうか? http://oshiete1.goo.ne.jp/kotaeru.php3?q=158746 この方の投稿は非常に参考になりました。 非常に漠然としていますし、その場に応じた環境があると思いますが、皆様の判断基準としている点をお聞かせ願えれば幸いです

  • 各データベースの特徴

    今データベースについて調べているのですが、ご助力をお願いします。 DBMSの中でも比較的有名な MySQL,PostgreSQL,Microsoft Access,Microsft SQL Server,Oracle の5つについて特徴や長所、短所を調べているのですが、いまひとつバージョンによっての特徴とかばかりが引っかかります。 ちょっと多くて申し訳ないのですが、どれかひとつでもかまいませんので教えていただけないでしょうか? 簡単な説明で結構です。 よろしくお願いします。

  • このサイト(教えて!goo) のDBMSは・・・?

      久し振りの質問です。 このサイト(教えて!goo) のバックエンドDBMSは何でしょうか?(笑) アプリケーションがPHPで構築されていることは、ブラウザのアドレスバーを見れば容易に想像できるのですが、使用DBMSをユーザ側で確認する術はないですよね?(ハッキング等の違法行為を除く) データ量、更新頻度が比較的多いこと、24時間常時稼動であることから、Oracleかな・・・?と思うのですが、ご存知の方いらっしゃいましたら、教えてください。 「この規模(機能)はPostgreSQLやMySQLでは不可能(可能)」といった間接的なコメントでも結構です。  

  • DBMSの信頼性等について

    とある学校の生徒のデータを整理して検索等するシステムを構築したいということで調査を依頼されたのですが、DBMSに何を使用するかでいきなり躓いております。 OracleやSQLServer(のプロセッサライセンス)を使用しようとすると高価過ぎると言われ、じゃあMySQLかPostgreSQLを使ってみようかと思うのですが、私自身にそれらの使用経験がなく、無料ということでやはり一抹の不安があります。(今のところ、どちらかというとMySQLの方が良いように考えています) そこで質問なのですが、MySQLかPostgreSQLというのは業務関連にも十分に信頼が置け、耐え得るものなのでしょうか? 見識のある方、使用のご経験のある方、おられましたら回答お願いします。 ※ 使用を想定しているクライアント数は最大で100程度で、通常の業務に使用するような常時アクセスがあるようなものではなく、必要な時に検索或いは入力する、平均すれば1クライアントあたり1日で1~2アクセス程度になるぐらいと想定しています。システム自体も簡易なものになる予定です。 サーバはWindowsかLinux、アプリはブラウザベースで使用、開発言語はPHPかJSP 等で問題なく、何をどれにするかはDBMSによって開発及び管理運用が少しでも楽になる方策を取りたいと考えており、それぞれどの場合にどれを選択するかは自分の中では問題はありません。

  • フリーデータベース

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

    • ベストアンサー
    • MySQL
  • Oracleの欠点

    データベースには主に、 MySQL、PostgreSQL、Oracleが 使われていると言う事を知ったのですが、 MySQL、PostgreSQLは無料なのに対して、 Oracleは有料ですよね。 その分、高機能だという予想をつけていますが、 Oracleの欠点はなんですか? Oracleにできなくて、MySQL、PostgreSQLにできることとか・・・ あと、Oracleは速いですか? MySQLは速いらしいですが、Oracleはそれに比べたらどうなのでしょうか?

  • Webデータベースを作る際に最適なソフトは何ですか?

    こんにちわ, 今,WebデータベースをPHPでアクセスしてそれをHTMLかXMLで表示しようと考えています。 仮にユーザーが1000人以上になる場合,PostgreSQLでは落ちてしまうのでしょうか。 本で「あまりたくさんのユーザーが同時に使用しない(32ユーザー以下),データもさほど多くない(数十万レコード以下)だと十分実用になります」とあったので,気になって質問しました。 もちろんOracleが一番いいのですが,もっと手軽に構築したいので,PostgreとまたフリーのPHPを使用しようと思いましたが,弊害はあるのでしょうか。 上記の2つの件,よろしくお願いします。

  • プロジェクトの設置方法

     仕事でJavaのアプリケーションを設置して動かすことに非常に苦労しております。学校でJava入れてEclipse入れてTomcat入れてPostgreSQL入れて Jdbc入れて動かすというやりかたはやったんですけど、それよりずっと複雑だしlog4j.xmlなんてなんなのって思います。一個一個設定ガイドがあって それにそってやればできるのでしょうが、それを見てもよくわかりません。 今のところは入れてもらってますが、なんとかしなくてはいけないと思っています。  何を勉強すればいいのかぜひ教えてください。 補足) ★一つはJspとJavaそのものとPostgreSQLのアプリケーションです。 ★一つはJSPとStrutsのオラクルのアプリケーションです。 ★会社のある人からはオープンソース徹底活用 EclipseによるJavaアプリケーション開発 オープンソース徹底活用 水島 和憲 (著)Java/Eclipseソフトウェアテスト・チュートリアルブック Front Programmer Seriesを推薦してもらいました。 ★今会社で入れてるのはEclipseの2です。

  • DBサーバーはどれがいいのですか?

    MySQL、PostgreSQL、SQLサーバー、ORACLEデータベースについて 仮に、ユーザが5000万人のSNSを作った場合、MySQLやPostgreSQLで対応できますか? 検索に時間がかかったりするのでしょうか? その場合、DBをORACLEにしたほうがいいのでしょうか? ■費用について もし、DBサーバーを1台設置して、ORACLEにした場合、初期費用や毎月のコストはどのくらいになるのでしょうか? ORACLE対応のDBサーバーの金額等も教えて頂ければ幸いです。 あと、SNSの会員が10万人までだとしたら、 MySQL、PostgreSQL、SQLサーバー、ORACLEのうちだと、どれがコスト的に一番効率的でしょうか?

  • データベースへ接続要求するためのシステムについて造詣が深い方はいらっし

    データベースへ接続要求するためのシステムについて造詣が深い方はいらっしゃいますでしょうか? OracleではLISTENERというシステムが司っていると思っています。また、Oracleに対してはそれ以外に存在していないと思っています。 たとえば別サーバのアプリケーションより「お宅のDBから情報を頂戴したいと思っているんだけど仲介してくれる?」「ほい!じゃあこの情報を持ってきな!」といったようなやりとりだと思っています。(間違っていないですか?) いろんな会社などからデータベースシステムが販売されていたりするわけですが、それぞれLISTENERのようなアーキテクチャの物はありますか?もしあれば名前を教えてください。 そもそも接続のためのシステムを総称でなんと言うのか分からないところでもありますが・・・ 知りたいサーバ: Oracle Database オラクル DB2 IBM Microsoft SQL Server マイクロソフト Microsoft ACCESS マイクロソフト Symfoware Server 富士通 HiRDB 日立製作所 HiRDB on XDM (XDM/RD) 日立製作所 RIQS? V2 日本電気 (NEC) Teradata テラデータ MySQL MySQL AB PostgreSQL PostgreSQL Global Development Group Firebird Firebirdプロジェクト SQLite D. Richard Hipp