Please enable JavaScript.
Coggle requires JavaScript to display documents.
資料庫 (其他 (NoSQL 不同於傳統的關聯式資料庫的資料庫管理系統的統稱。 iTHome參考連結 (4類資料庫 iTHome參考連結…
資料庫
其他
NoSQL
不同於傳統的關聯式資料庫的資料庫管理系統的統稱。
iTHome參考連結
不使用SQL作為查詢語言
不需要固定的表格模式(schema less)
避免使用SQL的JOIN操作
具水平可延伸性的特徵
4類資料庫
iTHome參考連結
KV
Memory
Document
Graph
CAP&BASE
BASE特性
Soft-State(無聯結導向)
Eventually Consistent
Base Availability
CAP定理(分散式資料系統)
Consistency
Availability
Partition Tolerance
最終一致性的特性
Big Data
建構七大步驟
儲存
管理
處理
呈現
隱私管理
商業模式
蒐集
大數據vs資料倉儲
資料探勘
support&confidence計算
國考範例
Open Data
原則:CPTA MNNL
C
omplete
P
rimary
T
imely
A
ccessible
M
achine Processable
N
on-discrimination
N
on-proprietary
L
icense-free
索引(BTree&B+Tree)#總01-2 35:48
正規化與去正規化
交易
:star:
交易狀態
:star:
ACID
可序列化
#13-1 24:05
結果等價(不會用)
衝突等價
檢查步驟:畫射線,判斷有無cycle
範例
View等價 #13-2
範例
各種排程(commit&rollback)
#13-2 17:30
可復原(recoverable)
看commit的順序對就行
非連鎖性撤回(cascadesless)
讀取的值前有交易寫入,需等其commit後才能讀取
嚴格(Strict)
符合cascadeless
寫入的值錢有交易寫入,亦需等其commit後才能寫入
綜合判斷範例
並行控制
問題分類(含舉例)
不一致分析(Inconsistent Analysis)
未委任相依(Dirty Reads)
遺失更新(Lost Update)
解決方法
鎖定(Locking)
二元鎖定
共享互斥
:star:
二階段鎖定
可保證可序列化排程
#
可能會鎖定過久
時間戳記(Timestamp)
可保證可序列化排程
避免dead lock
但可能發生連鎖性撤回,降低效率
Wait-Die. Wound-Wait機制
,避免活、死結
ER
二元多對多轉兩個二元一對多
02-2 36:45
說明
範例
一個三元關係轉三個二元一對多
02-2 42:18
說明
範例
範例轉換後
國考ER轉關聯範例
範例1
解答
範例2
常見ER圖設計陷阱
扇形(Fan Trap)
裂縫(Chasm Trap)
安全控管
Discretionary AC
如:SQL的Revoke/Grant指令去自由給定權限(複雜、精細)
Mandatory AC
例:定義內部、外部、機密、非機密等階層,不同使用者可存取不同分類(簡單、粗略)
Role-Based AC
針對角色設定,比MAC有彈性,比DAC嚴謹
SQL查詢語法
P.100範例
資料表格
FD
最小功能相依簡化
範例1
、
範例2
復原
非毀滅性故障
靠
系統日誌
還原
復原方法
延遲更新
NO-UNDO/REDO
2 Phase Commit Protocol
分散式資料庫+延遲更新
立即更新
直接寫進LOG
UNDO/REDO
直接寫進DB
UNDO/NO-REDO
Shadowing
毀滅性故障,僅能靠備份還原!
完整、增量、差異備份