-
1
-
2
-
3
-
4
-
5
-
6
-
7
-
8
-
9
-
10
-
11
-
12
-
13
-
14
-
15
-
16
-
17
-
18
-
19
-
20
-
21
-
22
-
23
-
24
-
25
-
26
-
27
-
28
-
29
-
30
-
31
-
32
-
33
-
34
-
35
-
36
-
37
-
38
-
39
-
40
-
41
-
42
-
43
-
44
-
45
-
46
-
47
-
48
-
49
-
50
-
51
-
52
-
53
-
54
-
55
-
56
-
57
-
58
-
59
-
60
-
61
-
62
-
63
-
64
-
65
-
66
-
67
-
68
-
69
-
70
-
71
-
72
-
73
-
74
-
75
-
76
-
77
-
78
-
79
-
80
-
81
-
82
-
83
-
84
-
85
-
86
-
87
-
88
-
89
-
90
-
91
-
92
-
93
-
94
-
95
-
96
-
97
-
98
-
99
-
100
-
101
-
102
-
103
-
104
-
105
-
106
-
107
-
108
-
109
-
110
-
111
-
112
-
113
-
114
-
115
-
116
-
117
-
118
-
119
-
120
-
121
-
122
-
123
-
124
-
125
-
126
-
127
-
128
-
129
-
130
-
131
-
132
-
133
-
134
-
135
-
136
-
137
-
138
-
139
본 자료는 10페이지 의 미리보기를 제공합니다. 이미지를 클릭하여 주세요.

-
1
-
2
-
3
-
4
-
5
-
6
-
7
-
8
-
9
-
10
-
11
-
12
-
13
-
14
-
15
-
16
-
17
-
18
-
19
-
20
-
21
-
22
-
23
-
24
-
25
-
26
-
27
-
28
-
29
-
30
-
31
-
32
-
33
-
34
-
35
-
36
-
37
-
38
-
39
-
40
-
41
-
42
-
43
-
44
-
45
-
46
-
47
-
48
-
49
-
50
-
51
-
52
-
53
-
54
-
55
-
56
-
57
-
58
-
59
-
60
-
61
-
62
-
63
-
64
-
65
-
66
-
67
-
68
-
69
-
70
-
71
-
72
-
73
-
74
-
75
-
76
-
77
-
78
-
79
-
80
-
81
-
82
-
83
-
84
-
85
-
86
-
87
-
88
-
89
-
90
-
91
-
92
-
93
-
94
-
95
-
96
-
97
-
98
-
99
-
100
-
101
-
102
-
103
-
104
-
105
-
106
-
107
-
108
-
109
-
110
-
111
-
112
-
113
-
114
-
115
-
116
-
117
-
118
-
119
-
120
-
121
-
122
-
123
-
124
-
125
-
126
-
127
-
128
-
129
-
130
-
131
-
132
-
133
-
134
-
135
-
136
-
137
-
138
-
139


목차
SQLITE B-TREE 분석
SQLITE ARCHITECTURE
B-Tree Structure
B-Tree Functions
Access and Transaction Functions
Table Functions
Cursor Functions
Record Functions
Configuration Functions
B-Tree Seach
SQLITE ARCHITECTURE
B-Tree Structure
B-Tree Functions
Access and Transaction Functions
Table Functions
Cursor Functions
Record Functions
Configuration Functions
B-Tree Seach
본문내용
B+-Trees
root page와 internal page는 탐색을 위해 필요
internal page에서 database record를 포함하지 않는 table은 B+-tree를 사용
이 page 안에서의 data 필드는 key만을 포함한 것으로 하위의 page에 대한 포인터
모든 database record는 leaf page에 저장됨. leaf 단계에서 B-tree cursor가 수평적으로 앞뒤로 탐색할 수 있게 하기 위하여 record와 page들은 key로 배열되어 있음(leaf node에서만 사용할 수 있음)
B-Tree Records
B-Tree 안의 page들은 payload라 불리는 B-tree record로 만들어져 있음
B-tree record 또는 payload는 단지 두 개의 필드로 구성됨(key 필드와 data 필드)
key 필드 : ROWID 값이나 database 안에서 모든 table에 나타나는 primary key
data 필드 : 어떤 것을 포함할 수 있는 일정한 형태가 없는 것. 결국, database record는 data 필드 안에 저장됨
B-tree의 일은 순서와 탐색이고, 이를 하기 위해 먼저 key 필드만을 필요로 함
B-tree는 key 순서로 저장되어 있음
Access and Transaction Functions
sqlite3BtreeOpen : database 파일을 open시 호출됨.
sqlite3BtreeClose : database를 close
sqlite3BtreeBeginTrans : transaction을 시작
sqlite3BtreeCommit : 현재 transaction을 commit
sqlite3BtreeRollback : 현재 transaction을 roll back
sqlite3BtreeBeginStmt : statement transaction을 시작
sqlite3BtreeCommitStmt : statement transaction을 commit
sqlite3BtreeRollbackStmt : statement transaction을 roll back
Table Functions
sqlite3BtreeCreateTable : database file에 비어있는 새 B-tree를 생성, 인자 안의 flag가 table 형식(B+tree)인지, index 형식(B-tree)인지를 결정
sqlite3BtreeDropTable : database file에서 B-tree를 삭제
sqlite3BtreeClearTable : B-tree로부터 모든 data를 삭제하고, B-tree는 유지
root page와 internal page는 탐색을 위해 필요
internal page에서 database record를 포함하지 않는 table은 B+-tree를 사용
이 page 안에서의 data 필드는 key만을 포함한 것으로 하위의 page에 대한 포인터
모든 database record는 leaf page에 저장됨. leaf 단계에서 B-tree cursor가 수평적으로 앞뒤로 탐색할 수 있게 하기 위하여 record와 page들은 key로 배열되어 있음(leaf node에서만 사용할 수 있음)
B-Tree Records
B-Tree 안의 page들은 payload라 불리는 B-tree record로 만들어져 있음
B-tree record 또는 payload는 단지 두 개의 필드로 구성됨(key 필드와 data 필드)
key 필드 : ROWID 값이나 database 안에서 모든 table에 나타나는 primary key
data 필드 : 어떤 것을 포함할 수 있는 일정한 형태가 없는 것. 결국, database record는 data 필드 안에 저장됨
B-tree의 일은 순서와 탐색이고, 이를 하기 위해 먼저 key 필드만을 필요로 함
B-tree는 key 순서로 저장되어 있음
Access and Transaction Functions
sqlite3BtreeOpen : database 파일을 open시 호출됨.
sqlite3BtreeClose : database를 close
sqlite3BtreeBeginTrans : transaction을 시작
sqlite3BtreeCommit : 현재 transaction을 commit
sqlite3BtreeRollback : 현재 transaction을 roll back
sqlite3BtreeBeginStmt : statement transaction을 시작
sqlite3BtreeCommitStmt : statement transaction을 commit
sqlite3BtreeRollbackStmt : statement transaction을 roll back
Table Functions
sqlite3BtreeCreateTable : database file에 비어있는 새 B-tree를 생성, 인자 안의 flag가 table 형식(B+tree)인지, index 형식(B-tree)인지를 결정
sqlite3BtreeDropTable : database file에서 B-tree를 삭제
sqlite3BtreeClearTable : B-tree로부터 모든 data를 삭제하고, B-tree는 유지
소개글