Enscribe Programmer's Guide

Typically, in a changing database most blocks will be approximately two-thirds full at any given
time. When using the FUP LOAD command to load data into a key-sequenced file, you can specify
how much empty space to provide for future growth.
Figure 14 Key-Sequenced B-Tree Structure
AMY
CAROL
LOUISE
First (Highest)-Level Index Block
Second-Level Index Block
Data Blocks
Second-Level Index Block
0 MOLLY VINCE
0 CAROL LOUISE
ytpmEYTTEB
ytpmESIRHC
ytpmEYLLIM
MOLLY OLGA STEVE
ytpmE ETANYLLOM
ytpmEYTSURAGLO
ytpmEANELUEVETS
Data Record
Primary Key
Variable-Length
Physical Records
Saved
for Future
Insertions
NATE is alphabetically greater than MOLLY but less than VINCE.
Go to the second-level index block that begins with MOLLY.
NATE is alphabetically greater than MOLLY but less than OLGA.
Go to the data block that begins with MOLLY.
Legend
1
2
1
2
Note that data records are never chained together in Enscribe key-sequenced files. Instead, the
tree structure is dynamically rebalanced to ensure that all records in the file can be accessed with
the same number of FILE_READ64_/READ operations, that number being the number of levels of
indexes plus one for the data block.
Unique Features of EKS Files
Enhanced Key-Sequenced Files (EKS) have these unique features:
The primary partition does not store user data but rather stores file meta data
When creating an EKS file, the partial key of the first secondary partition must be explicitly
set to all zeros.
70 Key-Sequenced Files