-
Notifications
You must be signed in to change notification settings - Fork 0
Concept Schema Flags
Maruf Çetin edited this page Sep 1, 2026
·
1 revision
Turkce Dokumantasyon | English Documentation
Category: Configuration & Flags
Subsystem: Schema Management (AmberDB::Base)
Entry Type: Table-Level Flag Reference
Table Schema Flags are configuration attributes defined within a table's schema file (schema/${table_name}.table). They determine that specific table's primary key format, caching policy, indexing strategies, deletion lifecycle, and audit behaviors.
While Global Flags govern the entire database session, Table Schema Flags allow fine-grained customization per individual table.
| Flag Name | Data Type | Default | Description |
|---|---|---|---|
id_type |
string |
"num" |
Primary key format: "num" (64-bit integer, Q*) or "ascii" (max 8-byte fixed ASCII, a8*). |
auto_id |
boolean |
1 |
1: Automatically generates 64-bit IDs during insert_id. 0: Requires explicit application-provided IDs. |
keep_deleted |
boolean |
0 |
1: Soft-deletes records into .del archive rather than permanently purging them. |
log_owner |
boolean |
0 |
1: Logs user timestamps, actions, and previous field values into .aut audit trail. |
use_counter |
boolean |
0 |
1: Allocates an atomic, high-concurrency .cnt file for view/hit counter tracking. |
use_cache |
integer |
0 |
Cache tier: 0 (Disk), 1 (Dynamic TTL caching), 2 (Strict RAM-Disk memory mirroring). |
cache_ttl |
integer |
3600 |
Expiration window in seconds when use_cache => 1. |
use_junk |
boolean |
0 |
1: Activates Hot/Cold dual-tier storage. Inactive records are routed to .jnk tier. |
junk_rule |
string |
"" |
Boolean expression triggering record archiving to cold storage (e.g. status eq 0). |
match_block |
ARRAY-ref |
[] |
1-based block indexes mapped to .fld inverted exact-match index. |
search_block |
ARRAY-ref |
[] |
1-based block indexes mapped to .src full-text search token index. |
facet_block |
ARRAY-ref |
[] |
1-based block indexes mapped to .fac columnar facet bitsets. |
sort_block |
ARRAY-ref |
[] |
1-based block indexes pre-sorted into .srt binary indexes (e.g. [ 3, 1 ]). |
slug_block |
ARRAY-ref |
[] |
Array of block indices composed into .slg bidirectional URL slug map (e.g. [1, 4, 2] 1/4/2). |
repeat_start |
integer |
undef |
Starting block index for dynamic repeating child rows (e.g. order line items). |
repeat_ids |
integer |
undef |
Target summary block where extracted child item IDs are joined and stored. |
Schema Flags to Physical Storage Mapping
id_type / auto_id ───────────────> .inx (8-Byte Packed Primary Index)
match_block ───────────────> .fld (Inverted Match Index)
search_block ───────────────> .src (Full-Text Search Index)
facet_block ───────────────> .fac & .unq (Facet Bitsets & Dictionaries)
sort_block ───────────────> .srt (Pre-Sorted Binary Index)
slug_block ───────────────> .slg (Bidirectional URL Slug Map)
keep_deleted ───────────────> .del (Soft-Deleted Archive)
log_owner ───────────────> .aut (User Change Audit Ledger)
use_counter ───────────────> .cnt (Atomic View Counter Store)
use_cache ───────────────> .cache (RAM-Disk Shared Memory Cache)
AmberDB — High-Performance Schema-Driven NoSQL Database Engine for Perl.
Copyright 2005-2026 Maruf Cetin. Released under the Artistic License 2.0.
CPAN · GitHub Repository · Issue Tracker
- Berkeley DB (DB_File) Engine
- AmberDB Table Schema
- Global Flags
- Table Schema Flags
- Directory Structure
- File Structure (Extensions)
- Repeat Blocks
- Auto-Increment ID
- ASCII ID
- Relational Records
- Record Anatomy
- JOIN-Free Architecture
- Packed Binary Index
- Strict 2PL Locking
- Undo Journal & Rollback
- Tiered Junk Indexing
- Disjunctive Faceting
- Phonetic Accent Search
- 2-Pillar Disaster Recovery
- RAM-Disk Acceleration
- In-Memory Schema Mutation
- Simple Mode
- new
- config
- set_datadir
- insert_id
- insert_list
- modify_id
- modify_list
- delete_id
- delete_list
- read_id
- read_all
- read_list
- exist_id
- exist_list
- exist_table
- table_count
- table_keys
- table_lastid
- table_attr
- table_create
- field_fetch
- field_filter
- search_table
- facet_menu
- field_fltkeys
- field_allfltkeys
- facet_rules
- slug_read
- slug_fetch
- transact_start
- transact_end
- transact_commit
- transact_rollback
- transact_recover
- flock_open
- flock_close
- cache_setup
- cache_read
- cache_write
- cache_delete
- cache_preload
- cache_ensure
- buffer_write
- buffer_read
- buffer_delete
- recs_scan
- recs_get
- recs_put
- recs_del
- locale_uc
- locale_lc
- locale_sort
- locale_to_ascii
- locale_num2text
- locale_format_currency
- locale_format_date
- array_sort
- array_punch
- array_filter
- array_sublist
- deep_copy
- log_owner
- use_counter
- use_junk
- keep_deleted
- auto_id
- buffer_write
- simple
- no_write
- no_backup
- jnktype
- keys_only
- id_type
- language
- .db · .table · .dbase
- .inx · .fld · .src
- .fac · .srt · .slg
- .unq · .del · .aut
- .cnt · .txn · .amberdb
- .csv · .cache · .tmp