有關於平台即服務的定義、架構和基本特性在前面有提到過。
接下來來聊聊平台即服務的相關技術。
C.資料庫
c.分散式資料庫系統
(3)資料分布
►資料片段化:
將大型資料切成小部分,可以讓系統避免單次存取過大的檔案,可減少系統在讀寫上的負荷。除此之外,資料片段化可以使資料被放置在靠近客戶端的節點,減低資料傳輸造成的負擔。
►資料副本:
能讓整體系統有效率地存取資料,不必將時間耗費在等候上。
(4)特性
►並行控制:
當有多筆資料在進行且是存取相同資料庫時,讓資料庫同時處理交易的狀態即是"並行控制"。
►可信賴協議:
目的是為了在分散式資料庫執行交易時,能夠維護系統的原子性和持久性,以確保在任何情況下(系統失敗、儲存失效、網路分離等)任何交易都能被順利中止,並能在這些錯誤被修復後重新執行。二階段確認協議或三階段確認協議是常見的實作方式。
►副本一致性:
確保系統在執行完成交易並對資料項目做更新之後,系統其他副本資料也應該更新,以維持資料一致性,避免讓資料庫存取到就的副本檔案,拿到錯誤資料。
(5)查詢最佳化(四步驟)
1.系統會做查詢分解,轉譯查詢到關聯性資料庫的關聯性代數,並利用代數方法對其做分析和簡化。
2.系統會找出該筆查詢會存取那些資料片段,以及這些資料片段位於系統的哪個節點上執行,稱資料本地化。
3.資料庫系統會對整體查詢做全域最佳化,尋找"查詢"和"子查詢"的最佳執行方案。
4.在全域最佳化下,存在本地最佳化。擁有子查詢所需資料片段的節點接受子查詢後,也會根據系統狀態或其他因素,針對子查詢做最佳化處理。
1.《雲端計算》 鍾葉青, 鍾武君(2013)。台灣東華書局股份有限公司