系統分析與設計- 第九章 資料設計

筆記說明

此筆記用途在於台北科技大學資訊與財金管理系大三上系統分析與設計重點整理
並非所有人都適用,部分對我而言稍加容易的內容並不會寫在此內。

如果有侵犯到版權的問題在聯繫我,再聯絡我,我在移除

資料設計概念

  • 資料結構
    • 資料結構是資訊系統內的組織、儲存及管理資料的架構
    • 檔案和資料表它們有各種形式彼此連結
  • 檔案式系統(file-oriented system),利用檔案來處理資料
  • 關聯式模型(relational model),利用資料庫來處理資料
  • 資料庫管理系統(database management system, DBMS)
    • 可讓使用者新增、更新、管理、存取並分析資料內容的一組工具、功能及介面的組合。
    • 優點
      • 可延展性(scalability),系統可以輕易擴充、縮小
      • 經濟規模(economy of scale),長期平均總成本會因為產量增加而減少
      • 有效支援企業級應用系統——資料庫管理師 (database, administrator,DBA)
      • 更強的標準
      • 更佳的安全性
      • 資料獨立性

DBMS 組成元件

  • 使用者、資料庫管理師與其系統介面
    • 使用者,根據事先定義查詢或指令來執行動作
    • 資料庫管理師,負責 DBMS 管理與支援
    • 相關資訊系統,DBMS 可支援許多提供輸入給 DBMS 或是從 DBMS 取得特定資料
  • 資料綱目
    • 綱目(schema) A
      • 包括所有欄位、資料表及關聯性的描述
      • 子綱目(subschema):資料庫中符合特定系統或使用者需求,或是允許存取的部分
  • 實體資料儲存處
    • 包含綱目與子綱目
    • 可集中式也可以分散到數個地點

Web 式設計

  • 讓資料庫連上 web,史資料可以被更新或閱讀
  • 中介軟體(middleware)是一種整合不同應用系統並讓它們彼此能夠交換資料的軟體
  • Web 式資料必須顧及安全性,並且讓授權使用者能輕易存取
  • Web 特性

  • Web 與 database 架構

資料設計術語

  • 定義
    • 實體(entity),蒐集和維護資料的對象
    • 資料表(table)或檔案(file),包含了一組相關的紀錄,這些紀錄都存放了與特定實體有關的資料
    • 欄位(field),也稱為屬性(attribute),亦即實體的一個特性,如果一個屬性有兩個實體則是共同欄位
    • 紀錄(record),也稱為值組(tuple),一組相關欄位的組合,用以描述實體的一筆實例
  • 鍵欄位(key fields)
    • 主鍵(primary key),一個欄位或一組欄位,可以唯一且簡潔地識別出實體某個特定成員
    • 候選鍵(candidate key),其他可以做為主鍵的欄位
    • 外鍵(foreign key),某一張資料表的其中一個欄位,但同時也是另一張資料表的主鍵,用以建立兩張資料表的關係
    • 次級鍵(secondary key),其他的欄位
  • 參照完整性(referential integrity),避免資料不一致、品質不穩定的問題
    每一個外來鍵必須對應到其他資料表的主鍵,否則不應該輸入

實體關係圖

  • 實體關係圖(entityrelationship diagram, ERD)是一個顯示系統實體間邏輯關係的模型
    • 關係,兩個實體的媒介,分成一對一、一對多、多對多
    • 示意圖

  • 基數(cardinality)
    • 描述兩實體間的關記數量,顯示與另外一個實體的關聯性
      • 基數標記法(cardinality notation)利用特殊的符號來表示關係
      • 基數標記法示意圖

      • 鴨足標記法(crow’s foot notation)使用圓圈、直線條以及類似鴨子腳的符號來標示各種可能的關係
      • 鴨足標記法示意圖

資料正規化

  • 正規化(normalization)是為資料庫中每個資料表指定明確欄位或屬性的資料表設計建立流程
  • 資料表設計(table design),為特定檔案或資料表指定其欄位與主鍵的動作
  • 正規化程序包含四階段
    • 未正規化的設計
    • 第一正規形式
    • 第二正規形式
    • 第三正規形式
  • 標準標記格式(standard notation format)
    • 表示資料表結構、欄位、primary key
    • name(++primary_key++, attribute1, attribute2)
  • 未正規化的設計
    • 沒有辨認重複的群組或欄位,不可以有重複群組的問題。
    • 示意圖

  • 第一正規形式(first normal form, 1NF)
    • 資料表不包含群組
    • 把重複群組的 primary key 變成資料表的 primary key

  • 第二正規形式(second normal form, 2NF)
    • 功能相依(functionally dependent)的概念,如果 attribute1 會根據 attribute2 而改變,那麼 attribute1 功能相依 attribute1
    • 所有 attribute 必須依賴 primary key
    • 當資料表符合 1nf,且有功能相依的 table 時就是 2nf。

  • 第三正規形式(third normal form, 3NF)
    • 其他非 primary key 的 attribute,都功能相依於 primary key 時,就符合 3nf
    • 可避免 2nf 的重複、資料完整性問題

代碼 code

  • 代碼(code) 是一組用來代表資料項目的英文字母或數字,它可以用來簡化輸出、輸入和資料格式
  • 代碼(code) 的特性
    • 通常比本身資料來的更簡短
    • 節省儲存空間與成本
    • 減少資料傳輸時間並減少資料輸入時間
    • 用來揭露和隱藏資訊
    • 減少資料輸入的錯誤
    • 比較好記且容易輸入
  • 代碼的類型
    • 順序代碼(sequence codes) 是指以特定次序指定的數字和字母
    • 分段順序代碼(block sequence codes) 是用一些區塊的數字代表不同的分類
    • 字母代碼 (alphabetic codes) 是以英文字母來區分不同的項目
      • 類別代碼(category codes),用來分類一群相關項目
      • 縮寫代碼(abbreviation codes),將名稱進行縮寫
    • 舉例 TPE 為桃園國際機場代號
    • 我認為應該要叫代號,但不知道為甚麼課本教做代碼,不太是台灣用詞
  • 加密代碼(cipher codes)用一個關鍵字將一個數字進行編碼的方法
  • 行動代碼(action codes)表示要對其所關聯的項目採取什麼行動
  • 設計代碼
    • 保持精簡、簡單結構
    • 允許擴充並維持一致性
    • 保持代碼穩定
    • 使代碼唯一、避免混淆
    • 使用可排序代碼

資料儲存及存取

  • 工具與技術
    • 資料倉儲(data warehouse),它可以涵蓋公司內各處所存放而似乎並不相關的資料
    • 資料市集(data mart),專門設計用來服務特定部門需求

  • 資料探勘建議目標
    • 增加每次連線的平均造訪網頁數
    • 增加推薦顧客的數量
    • 減少成交點擊數(clicks to close),減少平均完成一次購買行為,使用者會開幾個網頁搜尋,降低消費者去比較或是猶豫的慾望。
    • 增加每次造訪的結帳次數
    • 增加每次結帳的平均利潤
  • 邏輯與實體儲存
    • 邏輯儲存(logical storage)係指透過使用者觀點所見到的資料,而不管該資訊實際組織或儲存的方法及地點
    • 實體儲存(physical storage)純粹與硬體相關
    • 資料編碼
      • EBCDIC 應用在大型主機或高容量伺服器
      • ASCII 大部分個人電腦編碼方式
      • Unicode 使用二位元組

資料控制

  • 設計良好的 DBMS,必須提供內建的控制與安全性功能
  • 資料保護方式
    • 限制檔案和資料庫存取
    • 使用者 ID 與密碼
    • 權限(permission)與加密(encryption)
  • 所有系統檔案與資料庫都要定期備份
  • 復原程序(recovery procedures)可以將檔案和資料庫復原到上次備份時的狀態
  • 版權聲明: 本部落格所有文章除有特別聲明外,均採用 Apache License 2.0 許可協議。轉載請註明出處!
  • © 2020-2024 John Doe
  • Powered by Hexo Theme Ayer
  • PV: UV: