Difference between revisions of "Storage Layout"
Jump to navigation
Jump to search
| Line 25: | Line 25: | ||
| valign='top' | [https://github.com/BaseXdb/basex/blob/master/src/main/java/org/basex/data/DiskData.java DiskData()] | | valign='top' | [https://github.com/BaseXdb/basex/blob/master/src/main/java/org/basex/data/DiskData.java DiskData()] | ||
|- | |- | ||
| − | | valign='top' | '''2.1. Name Index''' | + | | valign='top' | '''2.1. Name Index'''<br/>Element/attribute names |
| − | | Token set, enrichted with statistical information:<br />1. Token set: key array (<code>Tokens</code>), next/bucket/size arrays (<code>Nums</code>)<br />2. Content kind (<code>Num</code>)<br />2.1 Number: min/max (<code>Doubles</code>)<br />2.2. Category: number of entries (<code>Num</code>), entries (<code>Tokens</code>)<br />2.3 Number of entries (<code>Num</code>)<br />2.4 Leaf flag (<code>Boolean</code>)<br />2.5 Maximum text length (<code>Double</code>; | + | | Token set, enrichted with statistical information:<br />1. Token set: key array (<code>Tokens</code>), next/bucket/size arrays (<code>Nums</code>)<br />2. Content kind (<code>Num</code>)<br />2.1 Number: min/max (<code>Doubles</code>)<br />2.2. Category: number of entries (<code>Num</code>), entries (<code>Tokens</code>)<br />2.3 Number of entries (<code>Num</code>)<br />2.4 Leaf flag (<code>Boolean</code>)<br />2.5 Maximum text length (<code>Double</code>; legacy, could be <code>Num</code>) |
| valign='top' | [https://github.com/BaseXdb/basex/blob/master/src/main/java/org/basex/index/Names.java Names()]<br/>[https://github.com/BaseXdb/basex/blob/master/src/main/java/org/basex/util/hash/TokenSet.java TokenSet()]<br/>[https://github.com/BaseXdb/basex/blob/master/src/main/java/org/basex/index/StatsKey.java StatsKey()] | | valign='top' | [https://github.com/BaseXdb/basex/blob/master/src/main/java/org/basex/index/Names.java Names()]<br/>[https://github.com/BaseXdb/basex/blob/master/src/main/java/org/basex/util/hash/TokenSet.java TokenSet()]<br/>[https://github.com/BaseXdb/basex/blob/master/src/main/java/org/basex/index/StatsKey.java StatsKey()] | ||
| + | |- | ||
| + | | valign='top' | '''2.2. Path Index''' | ||
| + | | | ||
| + | | | ||
|} | |} | ||
Revision as of 16:15, 26 October 2011
Data Types
Num: compressed integer (1-5 bytes)Token: length (Num) and bytes of UTF8 byte representationdouble: number, stored as tokenboolean: boolean (1 byte,00or01)
inf.basex
| Description | Format | Method |
|---|---|---|
| Disk Data | Database meta information | DiskData() |
| 1. Meta Data | Pairs of key/value tokens, suffixed by empty key: • PERM → User Permissions
|
MetaData.read() Users.read() |
| 2. Main memory indexes | Pairs of key/value tokens, suffixed by empty key: • TAGS → Tag Index• ATTS → Attribute Index• PATH → Path Index• NS → Namespaces• DOCS → Document Index
|
DiskData() |
| 2.1. Name Index Element/attribute names |
Token set, enrichted with statistical information: 1. Token set: key array ( Tokens), next/bucket/size arrays (Nums)2. Content kind ( Num)2.1 Number: min/max ( Doubles)2.2. Category: number of entries ( Num), entries (Tokens)2.3 Number of entries ( Num)2.4 Leaf flag ( Boolean)2.5 Maximum text length ( Double; legacy, could be Num)
|
Names() TokenSet() StatsKey() |
| 2.2. Path Index |