한국   대만   중국   일본 
分散 데이터베이스 - 위키百科, 우리 모두의 百科事典 本文으로 移動

分散 데이터베이스

위키百科, 우리 모두의 百科事典.

分散 데이터베이스 (distributed database)는 하나의 데이터베이스 管理 시스템 (DBMS)李 여러 CPU 에 連結된 貯藏裝置들을 制御하는 形態의 데이터베이스이다. 物理的으로 同一한 位置에 여러 臺의 컴퓨터로 構成된 境遇 또는 컴퓨터 네트워크에서 相互 連結된 컴퓨터 軍에 分散되어있는 境遇 等이 있다.

槪要 [ 編輯 ]

데이터베이스의 데이터의 集合體는 여러 物理的 位置에 分散 配置될 수 있다. 分散 데이터베이스가 있는 네트워크 서버는 인터넷으로 連結되어 있는 境遇, 企業의 인트라넷 및 엑스트라넷의 境遇 다른 企業의 네트워크에 있는 境遇가 있다. 데이터베이스 複製 및 分散을 통해 使用者에서 보면 데이터베이스의 性能이 向上된다.

分散된 데이터베이스의 內容이 最新 업데이트의 獲得을 保障하기 위해서는 複製 및 듀플리케이션 두 가지 處理를 한다. 複製는 分散된 데이터베이스의 데이터 업데이트를 反映하는 특별한 소프트웨어를 使用한다. 업데이트를 發見하면, 複製 프로세스는 데이터베이스 그룹 모두에 同一한 업데이트를 追加한다. 複製 프로세스는 分散 데이터베이스의 크기나 分散 配置 數에 따라 매우 複雜하고 處理 時間이 所要된다. 또한 計算 資源도 많이 必要로 한다. 한便 듀플리케이션은 그다지 複雜하지 않다. 基本的으로 하나의 데이터베이스를 마스터로 다른 데이터베이스를 複製한다. 一般的 듀플리케이션은 設定된 時間에 몇 時間에 걸쳐 實施한다. 이를 통해 分散된 各各의 位置 데이터가 同一하게 保障된다. 듀플리케이션은 마스터 데이터베이스만 更新이 許容된다. 이러한 方法으로 分散 配置된 모든 데이터가 最新 狀態를 維持한다.

상기 以外에도 分散 데이터베이스 設計 技法에는 여러 가지가 있다. 例를 들어, 로컬 自律型, 動機, 非同期 같은 分散 데이터베이스 技術이 있다. 事業의 必要性, 데이터의 重要性과 機密性, 데이터 保安 一貫, 完全性에 所要되는 費用에 따라 이러한 技術들 中 어떤 方式으로 具現할지 與否를 決定한다.

아키텍처 [ 編輯 ]

使用者는 分散 데이터베이스에 다음과 같은 方法으로 接近한다.

  • 로컬 應用 프로그램
다른 사이트에서 데이터를 要請하지 않는 應用 프로그램
  • 轉役 應用 프로그램
다른 사이트에서 데이터를 要請하는 應用 프로그램

分散 데이터베이스는 주기억 메모리와 디스크를 共有하는 것은 아니다.

포인트 [ 編輯 ]

分散 데이터베이스의 境遇, 다음과 같은 點이 重要하다.

  • 分散은 透明하다 - 使用者는 그것이 하나의 論理體系人 것처럼 相互 作用할 必要가 있다. 이것은 性能이나 使用 方法 等 여러 가지 面에 適用된다.
  • 트랜잭션은 透明하다 - 各 트랜잭션은 多衆 데이터베이스에 걸쳐 一貫性을 保障할 必要가 있다. 트랜잭션은 一般的으로 여러 下位 트랜잭션으로 分離된 個別 서브 트랜잭션이 하나의 데이터베이스에 對應한다.

長點 [ 編輯 ]

  • 組織 構造의 反映 - 企業 等 部門別로 데이터베이스를 놓고 그들을 統合하여 分散 데이터베이스로 할 수 있다.
  • 局所 自律性 - 各 部署는 自體 保有한 데이터를 制御할 수 있다.
  • 重要한 데이터의 保護 - 火災 等의 災害가 發生했을 때 데이터가 分散되어 있으면 全體를 한 番에 잃는 것을 豫防할 수 있다.
  • 性能 向上 - 자주 使用하는 데이터는 가까운 位置에 있으면서, 全體가 竝列的으로 作動하기 때문에 데이터베이스의 部下 分散이 可能하다. 一部가 過負荷 되어도 分散 데이터베이스 全體에 미치는 影響이 작다.
  • 經濟性 - 巨大한 高性能 컴퓨터보다 同一한 程度의 性能을 發揮하는 小型 컴퓨터 네트워크 쪽이 싸다.
  • 모듈化 - 分散 데이터베이스의 다른 모듈(시스템)에 影響을 주지 않고 個別 시스템을 更新, 追加, 削除할 수 있다.
  • 높은 信賴性의 트랜잭션 - 複製(replication)에 依한다.

하나의 사이트에 障礙가 發生해도 全體 機能은 損傷되지 않는다. 모든 去來는 ACID 特性에 따른다.

短點 [ 編輯 ]

  • 複雜性 - 透明性을 保障하기 위해 構築에는 簡單한 데이터베이스보다 技倆을 요한다. 또한 構成하는 시스템은 同一한 機種 것은 아니다. 接續이 끊어졌을 때의 動作도 考慮할 必要가있다. 例를 들어 結合 을 여러 시스템間에 할 境遇 性能 低下가 豫想된다.
  • 費用 - 시스템의 規模와 複雜性이 增加함에 따라 管理 費用도 增加한다.
  • 保安 - 個別 사이트의 保安을 確保하고, 사이트 間 네트워크의 保安도 確保하지 않으면 全體에 保安을 말할 수 없다.
  • 無結成 保障의 어려움 - 分散 데이터베이스 無結成을 保障하려면 相當한 네트워크 資源을 必要로한다.
  • 未成熟한 技術 - 分散 데이터베이스는 未成熟한 分野이며, 經驗的 知識의 蓄積이 적다.
  • 標準의 不足 - 中央 DBMS를 分散 DBMS로 變換하기위한 道具와 方法論은 아직 存在하지 않는다.
  • 데이터베이스 設計의 複雜性 - 一般 데이터베이스 設計 以外에, 데이터를 各 사이트에 어떻게 配置하거나 複製를 어떻게 할 것인가 等 設計時에 考慮해야 할 事項이 늘어난다.
  • 追加 소프트웨어를 必要로한다.
  • 運營 體制가 分散 컴퓨팅을 支援해야 한다.
  • 同時性 制御가 重要하다.

같이 보기 [ 編輯 ]