1. 程式人生 > >計算機中的概念: 視圖 VS 鏡像

計算機中的概念: 視圖 VS 鏡像

lec 用戶 行數據 記錄 統計 語句 一份 同時 查看

這兩個概念還是不太一樣的。下面來說說個人的理解,記錄一下。

1. 鏡像

鏡像可以理解為一份完全一樣的拷貝。也就是"深度拷貝",一個復制品。

比如 iso映像文件,ubuntu-12.04.5-desktop-amd64.iso

比如 數據的多副本,用於多副本容災、或者應對高峰讀取。

2. 視圖

個人理解,視圖是系統讓用戶看到的一種"虛表"。

關系型數據庫中視圖: create view 視圖名 as select 語句。

mongodb中的視圖: mongodb支持創建只讀的視圖的功能,類似關系型數據庫的視圖。

主要作用是:

(1) 簡化後續操作。用戶可以直接在視圖上進行查看數據操作。

(2) 權限控制。可以對用戶只暴露視圖。

註意:

(1) 視圖看到的數據會隨著原表的變化,一直在變化。

(2) 對於mongodb數據存在多個分片的情況,因為數據一直在變化,所以同一條數據不同時刻可能位於不同的分片。

這樣,如果基於dump 分片進行數據統計就需要對數據進行 sort, uniq。

計算機中的概念: 視圖 VS 鏡像