-
Notifications
You must be signed in to change notification settings - Fork 0
TR Concept Tiered Junk Indexing
Turkce Dokumantasyon | English Documentation
Kategori: Mimari Kavramlar ve Prensipler
Alt Sistem: Katmanli Depolama ve Yasam Dongusu (AmberDB::Index::Junk)
Madde Turu: Mimari Kavram
Katmanli Sicak/Soguk Depolama ve Junk Indeksleme, AmberDB'nin aktif islemler goren sicak veriler ile pasif, suresi dolmus, tukenmis veya arsivlik soguk verileri otomatik olarak ayristiran yasam dongusu yonetim mekanizmasidir.
Eski veya pasif kayitlari ayri tablolara tasimak yerine (bu durum kayit ID'lerinin bozulmasina ve uygulama kodunun karmasiklasmasina yol acar), AmberDB tum kayitlari tek bir ana .db tablosunda saklar; ancak ikincil indeksleri iki ayri katmana boler:
-
Sicak / Aktif Katman (A Katmani): Aktif kayitlar standart indeks dosyalarinda tutulur (
.inx,.fld,.src,.fac,.srt). -
Soguk / Junk Katmani (B Katmani): Pasif veya stogu bitmis kayitlar ayri junk indeks dosyalarinda tutulur (
.jinx,.jfld,.jsrc).
Sorgular yalnizca aktif kayitlari (jnktype => 'A'), yalnizca arsivi (jnktype => 'B') veya tek geciste her iki katmani birlestiren hibrit sirali sonuclari (jnktype => 'AB') aninda getirebilir.
Katmanli Depolama ve Indeksleme Mimarisi
Ana Tablo: catalog_product.db
(TUM Kayitlari Icinde Barindirir: 1 .. 1.000.000)
[junk_rules Kurallari Calisir ] [junk_rules Kurallari Calisir ]
Aktif Olan Kayitlar Pasif/Stogu Biten Kayitlar
A Katmani (Sicak Depolama) B Katmani (Soguk Depolama)
Birincil Indeks: .inx Birincil Indeks: .jinx
Alan Esleme: _1.fld Alan Esleme: _1.jfld
Arama Indeksi: _3.src Arama Indeksi: _3.jsrc
Facet Bitset: _4.fac
Tablo semasinda (schema/*.table) junk kurallari tanimlanir:
{
name => "Urunler",
record_index => 1,
use_junk => 1,
junk_rules => [
[4, "ne", 1 ], # Dogrudan blok kurali: durum != 1
["2->14", "ne", 1 ], # Iliskisel kural: tedarikci aktif != 1
["6->0", "eq", "out_of_stock" ], # Ic ice dizi kurali
],
jnktype => "AB", # Varsayilan sorgu modu
}| Mod | Hedef Kapsam | Tipik Kullanim Alani |
|---|---|---|
'A' |
Yalnizca Aktif Kayitlar | Magaza on yuzu, musteri urun aramalari, yuksek hizli filtreler |
'B' |
Yalnizca Pasif / Junk Kayitlar | Yonetim paneli arsiv taramalari, biten urun raporlari |
'AB' |
Once Aktif, Sonra Pasif | Genel arama (aktif urunler en onde goruntulenir) |
'BA' |
Once Pasif, Sonra Aktif | Gecmis donem ve arsiv odakli denetimler |
# 1. Magaza on yuzunde yalnizca aktif urunleri arama
my ($aktif_sayi, @magaza_sonuclari) = $adb->search_table(
"catalog_product", "kablosuz klavye",
start => 0,
limit => 20,
jnktype => 'A'
);
# 2. Tum veritabaninda (aktif + pasif) hibrit arama yapma
my ($toplam_sayi, @arsiv_sonuclari) = $adb->search_table(
"catalog_product", "kablosuz klavye",
start => 0,
limit => 20,
jnktype => 'AB'
);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