本節內容主要摘自: 阮一鳴《 Elasticsearch核心技術與實戰》第 49 課·對象及Nested對象
設計關係數據庫時,聽從不一樣的規範要求,設計出合理的關係型數據庫,這些不一樣的規範要求被稱爲不一樣的範式,各類範式呈遞次規範,越高的範式數據庫冗餘越小。html
消除非主屬性對鍵的部分函數依賴算法
消除非主要屬性對鍵的傳遞函數依賴數據庫
消除主屬性對鍵的傳遞函數依賴緩存
主屬性不依賴於主屬性網絡
數據 「Flattening」,不使用關聯關係,⽽而是在文檔中保存冗餘的數據拷貝數據結構
本節內容主要摘自: 理解數據庫的事務,ACID,CAP和一致性
數據庫事務(Database Transaction,簡稱「事務」)是數據庫管理系統執行過程當中的一個邏輯單位,由一個有限的數據庫操做序列構成。這個過程當中的全部操做要麼都成功,要麼都不成功。併發
ACID 是事務的四個特性,指的是atomicity,原子性;consistency,一致性;isolation,隔離性;durability,持久性。less
指全部在事務中的操做要麼都成功,要麼都不成功,全部的操做都不可分割,沒有中間狀態。一旦某一步執行失敗,就會所有回滾到初始狀態。分佈式
指的是邏輯上的一致性,即全部操做是符合現實當中的指望的。具體參考下一節函數
即不一樣事務之間的相互影響和隔離的程度。好比,不一樣的隔離級別,事務的併發程度也不一樣,最強的隔離狀態是全部的事務都是串行化的(serializable)(即一個事務完成以後才能進行下一個事務),這樣併發性也會降到最低,在保證了強一致性的狀況下,性能也會受很大影響,因此在實際工程當中,每每會折中一下。
能夠簡單地理解爲事務執行完畢後數據不可逆並持久化存儲於存儲系統當中
CAP 理論主要是針對分佈式存儲系統的,C 是指 Consistency 一致性,A 是指 Availability 可用性,P 是指Partition tolerance 分區容忍性。CAP 定理認爲分佈式系統中這三個特性最多隻能同時知足兩個特性。
指在分佈式系統中的全部數據備份,在同一時刻是否一樣的值。(等同於全部節點訪問同一份最新的數據副本)
在集羣中一部分節點故障後,集羣總體是否還能響應客戶端的讀寫請求。(對數據更新具有高可用性)
即當節點之間沒法正常通訊時,就產生了分區,而分區產生後,依然可以保證服務可用,那麼咱們就說系統是分區容忍的。顯然若是節點越多,且備份越多,分區容忍度就越高(由於即使是其中一個或多個節點掛了,仍然有其它節點和備份可用)。
實際上咱們一般說的數據庫事務的一致性和分佈式系統的一致性並非一個概念。這裏能夠區分紅「內部一致性」和「外部一致性」。「內部一致性」搞數據庫的人不多這麼說,通常就直接說一致性,更準確的說是「Consistency in ACID」(「事務 ACID 屬性中的一致性」);「外部一致性」是針對分佈式系統而言的,分佈式領域說起的 Consistency 表示系統的正確性模型,著名的也是臭名昭著的 CAP 理論中的 C 就是這個範疇的。這主要是因爲分佈式系統寫入和讀取均可能不在同一臺機器上,而這必然會有一段時間致使不一樣機器上所存的數據不一致的狀況,這就是所謂的「不一致時間窗口」。
本節摘自: NoSQL的四大類型
一、使用"/passive"命令來安裝,例如"C:\directory path\AccessDatabaseEngine_x64.exe" /passive 二、安裝完成後,查看註冊表HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\14.0\Common\FilesPaths,刪除mso.dll