データベース設計の基礎 HN おいろん.

Slides:



Advertisements
Similar presentations
申請者プロ フィール 1 枚目 平成 28 年 月 日 提出日 (申請者本人の写 真を追加してくだ さい) 年 月 日生(満 歳) 〒 107−8404 東京都港区赤坂 1 丁目 2 番 2 号 ニッポン タロウ 申請者名 日本 太郎.
Advertisements

データモデリング ボトムアップ分析. ボトムアップ分析の手順 トップダウン分析の結果とは別に実施 画面や帳票イメージからモデル化 ①画面や帳票を集める ② Excel などのワークシートで,エンティ ティ,データ項目名を決める ③ドメインを定義し,データ項目に割り当 てる ④正規化を実施 ⑤発生タイミングでエンティティを分離.
ケース研修( No.1-12 :問題分析) 1.問題分析・・・プロジェクト計画を作成する上で問題となる事項を洗い出す(検討後にも追加する) 分 類 Ⅴ.解答シート 問 題 点原 因解 決 策.
北海道情報大学 情報メディア学部 情報メディア学科 新井山ゼミ 中村 有佑
実践!DB逆設計 ~レシートからER図を起こす~
エンティティ・リレーションシップ・モデル
DB(データベース)のおはなし 作成者:小野正広 DBと言っても、  ドラゴンボール ではないですぞ! 3/1/2017.
ソフトウェア工学特論III 第10回 その他の図 情報通信工学専攻 GM11013 堀江 真史
リレーショナル・データベース データベース論 第10回.
DBパフォーマンスチューニングの基礎 HN おいろん.
第8章 ケース紹介 ギア.
Webアプリケーション開発の 基本的なポイント
Shimatterシステムの 初期モデルの正規化
MySQLに接続するデータベースプログラム
「サイボウズ Office on cybozu.com」 すぐできるBOOK -ワークフロー 編 -
OJT研修 「テスト実施、テスト設計の技術習得」 日時: 8月22日(月)  場所: 本社5階.
主キーと主要属性の定義.
第5章 データベースの設計 5.1 データベース設計の概要 5.2 ERモデルとスキーマ設計 5.3 正規化 5.4 一貫性制約.
Accessによる SQLの操作 ~実際にテーブルを操作してみよう!~.
続 Entity Framework 入門 SQLWorld #8 サヴロウ.
DBバックアップあーんどリカバリ HN おいろん.
DBバックアップあーんどリカバリ HN おいろん.
データモデリング トップダウンモデルと ボトムアップモデルの融合
ユースケース図 FM12012 比嘉久登.
データモデリング CRUD分析.
ビジネスパターンに基づく クラウドシステムのサービスレベル設計
情報処理学会・経営情報学会 連続セミナー第3回 情報システム構築アプローチ 主旨
Webサイト運営 09fi118 橋倉伶奈 09fi131 本間昂 09fi137 三上早紀.
RDBMSについて 2年7組  小鹿 慎太郎.
Enterprise CALS Systemの開発
リサイクルショップ向け 委託販売管理システム
卒業論文 最終発表 WWW情報検索 ナビゲーションシステムの設計と実装
ユースケース図2-4~ FM11012 中島拓也.
この資料は、テキストをもとに、講義のために作成したものです.学習用に活用してください.
ユースケース オブジェクト指向の要求分析のためのモデル。 スウェーデンのイヴァー・ヤコブソンが1990年代前半に開発。
E-Shopのご提案 ビズ ぱそ 朝日 太郎 2001/12/22 ビズPASO株式会社 E-コマース事業部.
14.テーブル定義,一対多の関係,多対多の関係, 外部キー,索引(インデックス),データベース操作
マイクロソフト Access を使ってみよう 第5回
マイクロソフト Access での SQL 演習 第1回 SQL問い合わせ(クエリ)
C++とオブジェクトデータベース入門 8.オブジェクトデータベースとは 森井 喬 Webページ
技術参照モデルとシステム要件定義 に関する学習システム
<企画タイトル> <提案社一覧>.
データモデリング ネーミング標準とドメイン
「iQUAVIS」 によるハード・ソフトの 横断的な構想検討
47070 オブジェクト指向モデリング [7] 2001年11月 12日.
○ ○ ○ こんな場合にお勧め 機能概要 SAP ERP伝票/マスタ入力をExcelを使って簡単に実現 Excel入力テンプレート
Webサービスによる 加工工程決定支援システム
アップデート 株式会社アプライド・マーケティング 大越 章司
技術参照モデルとシステム要件定義 に関する学習システム
(上記ご住所と異なる場合にご記入ください)
データモデリング 情報システム学科 島川 博光.
ミドルウェア”TSUNAGI”を 用いたWEBアプリケーションの構築
発注者側サイト操作説明書 作成日:2004年6月 Ver1.0 初版 改 訂:2005年9月 Ver1.2 株式会社 コニファ.
テーブル設計を後から変更 現場で使える小技のご紹介 株式会社ジーワンシステム 生島 勘富(イクシマ サダヨシ)
調達見積回答 [インストラクタ・ノートがここに表示されます(ある場合)].
All Rights Reserved, Copyright © 2004, Kobayashi
データモデリング モデルの基本作法.
データベース設計 第6回 DBMSの機能と操作方法(3) フォームとレポート
データモデリング エンティティの切り出し.
BtoB WEB 受注システム事例・・・1 食品、名産品卸 A社での導入事例 株式会社 コニファ.
E-R図 井上卓也.
データベース設計入門 初音玲.
データベース設計入門 初音玲.
リレーショナル・データベース J2EE I (データベース論) 第2回 /
磯野ー!そんなことより 正規化しようぜー!
データ中心システム設計方法論“DATARUN” 
データベース第3回目 意味ごとにテーブルを分ける
データベースの安全、 確実な Azure 移行をサポート 今だけ データベース クラウド移行サービス
E-Shopのご提案 ビズ ぱそ 朝日 太郎 2019/11/17 ビズPASO株式会社 E-コマース事業部.
P2Pによる協調学習システム 唐澤 信介   北海道工業大学 電気工学専攻.
Presentation transcript:

データベース設計の基礎 HN おいろん

1.はじめに

自己紹介 名前: 守田 典男 (HN:おいろん) 29歳 職業: 某会社 技術社員 1.はじめに 自己紹介 名前: 守田 典男 (HN:おいろん) 29歳 職業: 某会社 技術社員 業界歴: 開発(汎用):2年→DB:4年→        開発・DB:2年 DB歴:  Oracle 6年        SQLServer2000、2005 1年半        HiRDB 半年

1.はじめに 本セッションについて 対象:設計・開発初心者(Lv1クマー)  ・データベース設計はしたことない。  ・管理はできても設計は・・・。  ・正規化やテーブル設計について知りたい! 上記のような、データベース設計未経験の 設計・開発初心者を対象としております。

目次 はじめに データベース設計の概要 概要設計 論理設計 物理設計 おわりに

2.データベース設計の概要

目的 信頼性の高いデータベースの構築 拡張性の高いデータベースの構築 ユーザ要求の性能を満たすデータベースの構築 2.データベース設計の概要 整合性を維持する 障害から迅速に、確実に回復する 拡張性の高いデータベースの構築 アプリケーションの追加・拡張が容易にできる データが一元管理されている ユーザ要求の性能を満たすデータベースの構築 同時実行性が確保できる 効率のよいデータアクセスが可能

手順 概要設計 論理設計 2.データベース設計の概要 業務で扱う情報を整理し、概念ER図を作成する 必要な情報を予測して拡張性をもたせる 正規化を行い、あるべき姿で情報を整理する 論理設計 SQLを分析して最適化処理を行う 業務とユーザの対応づけ セキュリティ設計を行う 論理ER図の作成

2.データベース設計の概要 手順 物理設計 ハードウェアの資源を使いきり、ユーザ要件を満たすべき性能と障害回復を中心として可用性の高いデータベースを実現する DBMSで利用する機能を選択、パラメータ値の設定、 オブジェクトの作成、メモリ要件の定義、ディスク配置などの定義、方式設計の物理的な詳細を設定する

3.概要設計

目的 企業の方向性を認識し、拡張性の高い データベース設計を行う。 既存業務で使用している画面や帳票を使って 漏れのない設計を行う。 3.概要設計 目的 企業の方向性を認識し、拡張性の高い データベース設計を行う。 既存業務で使用している画面や帳票を使って 漏れのない設計を行う。 正規形を満たした理想的な形を作成する。 システムの方式に依存しないモデルを作成する。

3.概要設計 インプットとアウトプット 企業戦略 概念設計 概念ER図 業務知識

手順 ①対象領域を明確にする 既存の画面・帳票から業務ルールを把握する。 ②エンティティを洗い出す ③リレーションシップを検討する 3.概要設計 手順 ①対象領域を明確にする 既存の画面・帳票から業務ルールを把握する。 ②エンティティを洗い出す ③リレーションシップを検討する ④概念データモデルを検証する

1.はじめに 1 2 3 サンプルシステム 1,800 1,400 5,000 8,200 Internet Explorer おいろん書店 ろぐあうと 注文番号:1234567890                     注文確認画面 No 商品名 単価 数量 価格 1 現場で使えるDB設計 1,800 2 プロとしてのデータベースモデリング入門 1,400 3 おいろんの昔話 5,000 小計金額 8,200 合計金額

1.はじめに サンプルシステム お客様情報 お名前:おいろん フリガナ:オイロン メールアドレス:oiron@xxx.oiron.com Internet Explorer おいろん書店 ろぐあうと お客様情報 お名前:おいろん  フリガナ:オイロン メールアドレス:oiron@xxx.oiron.com 住所:おいろん県おいろん市おいおい町どこか 電話番号:092-01-6060 ユーザ情報登録時に 住所を登録 「即発送」と 「○日間取り置き」から選択 「代金引換」 「クレジット」から選択 発送について 即発送 お届け先 お支払い方法 ご自宅 クレジット <<注文画面に戻る   注文確定 >>

①対象領域を明確にする この画面は、注文を行う過程の 「注文確認画面」である。 1回の注文で複数の商品を注文できる。 3.概要設計 ①対象領域を明確にする この画面は、注文を行う過程の 「注文確認画面」である。 1回の注文で複数の商品を注文できる。 顧客の情報は前もって登録する 発送方法を「即発送」「取り置き」から選択 できる 支払方法を「代金引換」「クレジット」から選択 できる

②エンティティを洗い出す エンティティとは、ある目的を持って同じようなデータを集め、その目的を明確に表す名前を つけたもの。 3.概要設計 画面上のカテゴリ(分類)名称 商品 発送について お客様情報 お届け先 お支払い方法 エンティティ名称 商品 発送方法 顧客 届け先 支払方法 →

②エンティティを洗い出す 洗い出したエンティティで業務ルールを表現 できるか、過不足をチェックする 3.概要設計 エンティティが不足していないか? 不要なエンティティがないか?

「誰が」「何を」「どうする」に該当するものを洗い出す →洗い出せない場合は不足している 3.概要設計 ②エンティティを洗い出す 不足しているエンティティの洗い出し 「誰が」「何を」「どうする」に該当するものを洗い出す →洗い出せない場合は不足している 今回だと、「顧客」が「商品」を「注文する」 →「注文」エンティティがない  今回の場合、1度の注文で複数の注文商品が  存在するので、「注文明細」も必要となる

②エンティティを洗い出す 不要なエンティティの洗い出し 3.概要設計 エンティティの具体例(インスタンス)が1つしかない (想定できない)場合は、エンティティになり得ない。 これは業務ルールに起因することがあるので、一概に いえないものがある。 (例)届け先の入力を選択ではなく直接入力させる場合   などでは、エンティティとしては不要となる   (「注文」エンティティに含める)

②エンティティを洗い出す 3.概要設計 顧客 注文 注文明細 発送方法 顧客番号 名前 フリガナ Email 郵便番号 住所 電話番号 注文番号 注文年月日 小計金額 合計金額 届け先名称 郵便番号 住所 電話番号 注文番号 注文明細番号 数量 価格 発送方法番号 発送方法名 支払方法 支払方法番号 支払方法名 商品 商品番号 商品名 単価

同一商品名、同一単価のデータがあると一意に識別できない →必ず一意になるようコードを設定する 3.概要設計 ③リレーションシップを検討する 主キーを設定する 一意にインスタンスを識別するために設定する 商品名 単価 商品番号 商品名 単価 同一商品名、同一単価のデータがあると一意に識別できない →必ず一意になるようコードを設定する

③リレーションシップを検討する 洗い出したエンティティで業務ルールを表現 できるか、過不足をチェックする 3.概要設計 ③リレーションシップを検討する 洗い出したエンティティで業務ルールを表現 できるか、過不足をチェックする 「人」や「組織」や「顧客」などの 「主体」を表現するようなエンティティと、 「受注」「発注」「出荷」などの「行為」を表現する エンティティとの関係は、「主体」から「行為」に向かって1:多の関係となっている。

③リレーションシップを検討する 3.概要設計 顧客 注文 発送方法 顧客番号 名前 フリガナ Email 郵便番号 住所 電話番号 注文番号 注文年月日 小計金額 合計金額 顧客番号 発送方法番号 支払方法番号 届け先名称 郵便番号 住所 電話番号 発送方法番号 発送方法名 注文明細 支払方法 注文番号 注文明細番号 商品番号 数量 価格 支払方法番号 支払方法名 商品 商品番号 商品名 単価

④概念データモデルを検証する 全データ項目がきちんと洗い出せているか 確認する データの一元化がなされていなければ 正規化を行う 3.概要設計 ④概念データモデルを検証する 全データ項目がきちんと洗い出せているか 確認する データの一元化がなされていなければ 正規化を行う 正規化によりエンティティが変更された場合 再度リレーションシップの定義を行う

4.論理設計

目的 処理要件を考慮して適切なインデックスを 設計する。 エンティティの統合、導出項目・重複項目の 設定などの非正規化の検討を行う。 4.論理設計 目的 処理要件を考慮して適切なインデックスを 設計する。 エンティティの統合、導出項目・重複項目の 設定などの非正規化の検討を行う。 データの独立性、セキュリティの観点から ビューを設計する。 プロセス開発工程と同期をとり、 必要なエンティティや属性の追加を行う。

インプットとアウトプット 4.論理設計 論理ER図 概念ER図 インデックス アクセス権限 ビュー 概念設計 DBMSの種類 処理要件 性能要件

手順 ①業務に対するユーザ要件を検討する。 ②データ量を見積もる。 ③処理性能を出すための最適化の検討を行う。 4.論理設計 手順 ①業務に対するユーザ要件を検討する。 ②データ量を見積もる。 ③処理性能を出すための最適化の検討を行う。   インデックス、非正規化の検討など ④バッチ処理などアプリケーションを考慮し、 必要な属性を再検討する。 ⑤一意識別子、一貫性制約の検討を行う。 ⑥ビューとアクセス権限の設計を行う。

5.物理設計

目的 ハードウェアの資源を使い切って、ユーザ要件 を満たす性能と障害回復を中心として 可用性の高いデータベースを実現する 5.物理設計 選択したDBの機能を十分に活用する 限られたハードウェアの資源を使い切ることを考える。 モニタリングとチューニングの繰り返しで最適化する。 性能を発揮するために、SQLの分析スキル、各種 RDBMSの機能を熟知している必要がある。

インプットとアウトプット 5.物理設計 論理ER図 システム構成 DB機能選択 生成済みオブジェクト DB管理用 概念設計 各種パラメータ SQL文 性能要件 物理要件

6.おわりに

参考文献 参考サイト 「プロとしてのデータモデリング入門」 林 優子著 ソフトバンククリエイティブ 6.おわりに 参考文献 「プロとしてのデータモデリング入門」  林 優子著 ソフトバンククリエイティブ 「現場で使えるデータベース設計」  NRIラーニングネットワーク株式会社  中村 才千代 著 ソフトバンククリエイティブ 参考サイト @IT Database Expert  http://www.atmarkit.co.jp/fdb/

いかがでしたか? 少しでも、DBを意識したり、興味を感じることが できたでしょうか? 6.おわりに いかがでしたか? 少しでも、DBを意識したり、興味を感じることが できたでしょうか? 要件を熟知して、要件にあった設計をする が大切となります。 日頃から意識して、顧客に喜ばれる システムを開発しましょう!! ご清聴ありがとうございました!!