2012年10月4日 星期四
From Relational Database to Distributed/Parallel Database to Cloud Database
課程:論文演討(一)
日期:2010/09/28
時間:13:50 ~ 15:30
地點:S104
作者:資工研一 李翼豪
講者:陳良弼教授
這次教授主講資料庫,提到了以下分類:
1. relational database: SQL - 非常高階的資料查詢語言,Microsoft SQL Server幾個初始版本適用於中小企業的資料庫管理,但是近年來它的應用範圍有所擴展,已經觸及到大型、跨國企業的資料庫管理。
2. distribute database: 分散式資料庫,資料儲存在數台電腦中。
3. parallel database: 使用多處理器和多磁碟來平行處理資料庫。
4. cloud database: 雲端資料庫,所謂的雲端就是泛指網路,雲端資料庫透過網路來管理資料庫。在現今資料爆炸的時代,eBay網站分析平台每天處理的資料量高達100PB(約1,000,000GB),截至2010年世界電子資料儲存量為1.2ZB!(1,200,000PB),面對如此大量的資料,資料勢必會走向分散式的儲存。
NoSQL(Not only SQL)是不同於傳統關聯式資料庫的資料庫管理系統,NoSQL不使用SQL作為查詢語言,因為其資料庫不需要固定的表格模式,而是一種類別的概念(broad class of database),可以大大省去SQL的JOIN操作,還有著水平可擴展特性。
NoSQL雖然解決了大量資料的問題,但目前仍然存在一些風險例如:
1.資料遲早會一致:NoSQL資料庫採取Eventually Consistency(資料遲早會一致)的作法,因為NoSQL的分散式設計會將資料分散複製到不同節點中,每個節點各自也能異動資料,然後再彼此同步。同步過程就會有時間落差,若同時讀取不同節點上的資料,會發生資料不一致的情況。
開發者必需在資料尚未同步的短暫時間內自行解決資料衝突或遺失的問題。
導入NoSQL資料庫時,開發者得先評估資料的性質,是否能承擔資料遺失的風險。
2.成熟度不足版本升級風險高
NoSQL雖然早在10多年前就有此概念,但是很多NoSQL資料庫都是這2~3年才逐漸盛行,所以目前資料庫本身的功能還不完整,在升級過程中很可能出現不相容問題。
除了雲端資料庫,雲端技術還有其他方的運用:
訂閱:
張貼留言 (Atom)

 
沒有留言:
張貼留言