aboutsummaryrefslogtreecommitdiff
path: root/sys/dbio/new/dbio.con
blob: 9adc7d6c1934c2e5a32fe923791d1c61ec6f6f9c (plain) (blame)
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
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
IRAF Database I/O Design
			           Contents



1. PREFACE

   1.1  Scope of this Document
   1.2  Relationship to Previous Documents


2. INTRODUCTION

   2.1  The Database Subsystem
   2.2  Major Subsystems
   2.3  Related Subsystems


3. REQUIREMENTS

   3.1	General Requirements
        3.1.1  Portability
        3.1.2  Efficiency
        3.1.3  Code Size
        3.1.4  Use of Proprietary Software

   3.2  Special Requirements
	3.2.1  Catalog Storage
	3.2.2  Image Storage
	3.2.3  Intermodule Communication
	3.2.4  Data Archiving

   3.3	Other Requirements
	3.3.1  Concurrency
	3.3.2  Recovery
	3.3.3  Data Independence
	3.3.4  Host Database Interface


4. CONCEPTUAL DESIGN

   4.1  Terminology
   4.2  System Architecture

   4.3  The DBMS Package
   	4.3.1  Overview
	4.3.2  Procedural Interface
	       4.3.2.1  General Operators
	       4.3.2.2  Form Based Data Entry and Retrieval
	       4.3.2.3  List Interface
	       4.3.2.4  FITS Table Interface
	       4.3.2.5  Graphics Interface
	4.3.3  Command Language Interface
	4.3.4  Record Selection Syntax
	4.3.5  Query Language
	       4.3.5.1  Query Language Functions
	       4.3.5.2  Language Syntax
	       4.3.5.3  Sample Queries
	4.3.6  DB Kernel Operators
	       4.3.6.1  Dataset Copy and Load
	       4.3.6.2  Rebuild Dataset
	       4.3.6.3  Mount Foreign Dataset
	       4.3.6.4  Crash Recovery

   4.4  The IMIO Interface
   	4.4.1  Overview
   	4.4.2  Logical Schema
   	       4.4.2.1	Standard Fields
   	       4.4.2.2	History Text
	       4.4.2.3  World Coordinates
   	       4.4.2.4  Histogram
   	       4.4.2.5  Bad Pixel List
   	       4.4.2.6  Region Mask
	4.4.3  Group Data
	4.4.4  Image I/O
	       4.4.4.1  Image Templates
	       4.4.4.2  Image Pixel Access
	       4.4.4.3  Image Database Interface (IDBI)
	4.4.5  Summary of IMIO Data Structures

   4.5  The DBIO Interface
	4.5.1  Overview
	4.5.2  Comparison of DBIO and Commercial Databases
	4.5.3  Query Language Interface
	4.5.4  Logical Schema
	       4.5.4.1  Databases
	       4.5.4.2  System Tables
	       4.5.4.3  The System Catalog
	       4.5.4.4  Relations
	       4.5.4.5  Attributes
	       4.5.4.6  Domains
	       4.5.4.7  Groups
	       4.5.4.8  Views
	       4.5.4.9  Null Values
        4.5.5  Data Definition Language
	4.5.6  Record Select/Project Expressions
	       4.5.6.1  Introduction
	       4.5.6.2  Basic Syntax
	       4.5.6.3  Examples
	       4.5.6.4  Evaluation
	4.5.7  Operators
	       4.5.7.1  General Operators
	       4.5.7.2  Record Level Access
	       4.5.7.3  Field Level Access
	       4.5.7.4  Variable Length Fields
	       4.5.7.5  IMIO Support
	4.5.8  Constructing Special Relational Operators
	4.5.9  Storage Structures

   4.6  The DBKI Interface (DB Kernel Interface)
	4.6.1  Overview
	       4.6.1.1  Default Kernel
	       4.6.1.2  Host Database Interface
	       4.6.1.3  Network Support
	4.6.2  Logical Schema
	       4.6.2.1  System Tables
	       4.6.2.2  User Tables
	       4.6.2.3  Indexes
	       4.6.2.4  Record Structure
	4.6.2  Database Management Operators
	       4.6.2.1  Database Creation and Deletion
	       4.6.2.2  Database Access
	       4.6.2.3  Table Creation and Deletion
	       4.6.2.4  Index Creation and Deletion
	4.6.3  Record Access Methods
	       4.6.3.1  Direct Access via an Index
	       4.6.3.2  Direct Access via the Record ID
	       4.6.3.3  Sequential Access
	4.6.4  Record Access Operators
	       4.6.4.1  Fetch
	       4.6.4.2  Update
	       4.6.4.3  Insert
	       4.6.4.4  Delete
	       4.6.4.5  Variable Length Fields

   4.7  The DBK (IRAF DB Kernel)
	4.7.1  Overview
	4.7.2  Storage Structures
	       4.7.2.1  Database
	       4.7.2.2  System Catalog
	       4.7.2.3  Table Storage
	4.7.3  The Control Interval
	       4.7.3.1  Introduction
	       4.7.3.2  Shared Intervals
	       4.7.3.3  Private Intervals
	       4.7.3.4  Record Insertion and Update
	       4.7.3.5  Record Deletion
	       4.7.3.6  Adding New Fields
	       4.7.3.7  Array Storage
	       4.7.3.8  Rebuilding a Dataset
	4.7.4  Indexes
	       4.7.4.1  Nonindexed Tables
	       4.7.4.2  Primary Index
	       4.7.4.3  Secondary Indexes
	       4.7.4.4  Key Compression
	4.7.5  Host Database Interface (HDBI)
	4.7.6  Concurrency
	4.7.7  Backup and Transport
	4.7.8  Accounting Services
	4.7.9  Crash Recovery


5. SPECIFICATIONS

   5.1  DBMS Package
	5.1.1  Overview
	5.1.2  Module Specifications

   5.2  IMIO Interface
	5.2.1  Overview
	5.2.2  Examples
	5.2.3  Module Specifications
	       5.2.3.1  Image Header Access
	       5.2.3.2  History Text
	       5.2.3.3  World Coordinates
	       5.2.3.4  Bad Pixel List
	       5.2.3.5  Region Mask
	       5.2.3.6  Pixel Access
	5.2.4  Storage Structures
	       5.2.4.1  IRAF Runtime Format
	       5.2.4.2  Archival Format
	       5.2.4.3  Other Formats

   5.3  DBIO (DataBase I/O interface)
	5.3.1  Overview
	5.3.2  Examples
	5.3.3  Module Specifications

   5.4  DBKI (DB Kernel Interface)
	5.4.1  Overview
	5.4.3  Module Specifications

   5.5. DBK (IRAF DB Kernel)
	5.5.1  Overview
	5.5.2  Storage Structures
	5.5.3  Error Recovery
	5.5.4  Concurrency

6. SUMMARY

Glossary
Index