データベース設計 第7回 実用データベースの運用例 クライアント=サーバシステム(1) 2010.11.24 データベース設計 第7回 実用データベースの運用例 クライアント=サーバシステム(1) 坂口利裕
クライアント・サーバモデル ネットワークの進展とともに普及した利用形態 検索内容などの条件入力や操作指示をするクライアント(ソフト,マシン) クライアントの要求に応じて,データベースの作成・管理を行い,処理結果を送り返すサーバー(ソフト,マシン) 2010.11.24 データベース設計
クライアント・サーバーモデル クライアント・マシン (一般に複数存在) DBMS DB サーバー・マシン (一般に1台のみ) network データベース設計 2010.11.24 クライアント・サーバーモデル クライアント・マシン (一般に複数存在) DB DBMS サーバー・マシン (一般に1台のみ) network Client-b サーバ・ソフト(広義のDBMS)は,クラアイント要求の受付と,DB処理の実行,結果の返送を担当 →アクセスを制御し,DBに矛盾を生じさせない Client-a クライアント・ソフトはGUIを使ったデータの入出力やサーバとの通信を担当 →DBそのものにはアクセスしない(させない) Client-c 2010.11.24 データベース設計 坂口利裕
クライアント・ソフト 専用のもの 汎用のもの 処理内容が高機能で,特別なプロトコルを使用したり,処理内容を知られたくない場合に有効 それぞれのクライアント・マシンにインストールが必要 汎用のもの 既製のプロトコル(HTTP,FTPなど)を利用するもの Webブラウザーを使うものがほとんど 単純なデータの受け渡しや,レスポンス性能をさほど必要としないものでは手軽 特別なインストールは不要 2010.11.24 データベース設計
サーバー・ソフト(1) DBMS自身のサーバー機能によるもの Webサーバーとの連携によるもの 特別なプロトコルを利用(アクセスのための仕組みがクライアント側にも必要) Webサーバーとの連携によるもの クライアントの要求の受け渡しはCGIなどを利用 CGIのプログラムからDBMS機能を参照 一般のWebページと同様に動作(Webブラウザでアクセスできるので特別な仕組みはクライアント側には不要) 2010.11.24 データベース設計
サーバー・ソフト(2) 代表的なサーバー用DBMS 代表的なWebサーバー Oracle(商用) データベース設計 2010.11.24 サーバー・ソフト(2) 代表的なサーバー用DBMS Oracle(商用) Microsoft SQL Server(商用) PostgreSQL(オープンソース) MySQL(オープンソース) 代表的なWebサーバー Microsoft IIS(商用) Apache(オープンソース) 実習で使用 2010.11.24 データベース設計 坂口利裕
サーバー・ソフト(3) DBMSへ直接アクセス Webサーバーとの連携によるアクセス SQL文(検索などの指示をDBMSに伝えるための構文)の生成はクラアイント側で実行 DBMSの機能をフルに活用できる Webサーバーとの連携によるアクセス クライアント側ではSQLの生成は(一般に)不要 クライアントに送るWebページの動的生成やDBMSとの連携を担当するプログラムがWebサーバ上に必要 CGIプログラムに書かれた範囲でのみDBMSの機能を利用できる(利用させないように制限できる) 2010.11.24 データベース設計
実例 商学部・卒論タイトルデータベース 日経NEEDS地域総合ファイル 坂口研究室・蔵書検索 http://sakkun.cc.yokohama-cu.ac.jp/cgi-bin.local/Soturon.cgi 日経NEEDS地域総合ファイル http://sakkun.cc.yokohama-cu.ac.jp/cgi-bin.local/needs-main.cgi 坂口研究室・蔵書検索 http://sakkun.cc.yokohama-cu.ac.jp/cgi-bin/Zousho.cgi ブログ・ツイッター(Webページの生成)/ネットショッピング(商品の受発注)など DBMSなしでは実現が困難 学内からのみ 2010.11.24 データベース設計
蔵書検索DBの運用例 研究室内LAN DBMS/Webサーバー DB ルーター 学内LAN Internet 執務用PC 一般クラアイント データベース設計 2010.11.24 蔵書検索DBの運用例 研究室内LAN DBMS/Webサーバー サーバーの構成 DBMS:PostgreSQL Webサーバー:Apache CGI:Perl言語で記述 DB ルーター 学内LAN Internet 執務用PC 管理用クラアイントの構成 DBMS:Microsoft Access サーバ連携:PostODBC経由でリンク 一般クラアイント 2010.11.24 データベース設計 坂口利裕