Foundationপ্রথম নীতি থেকে
LEVEL 8 · Database Systems

Slotted Page

স্লটেড পেজ

Page-এর ভেতরের arrangement — শুরুতে slot array, শেষ থেকে tuple data, মাঝে free space।

Variable-size row-এর জন্য fixed slots অপচয়; slotted layout সমাধান:

[ header | slot0 slot1 ... slotN ...... free ...... | dataN ... data0 ]
           ↑ slot i = (offset, length)              ↑ উল্টো দিকে বাড়ে
  • Slot number stable, offset নয় — tuple সরলেও external reference (page, slot) ভাঙে না
  • Update বড় হলে tuple নতুন জায়গায়, পুরনো slot forwarding pointer রাখে
  • Fragmentation: মাঝের ফাঁকা গলদগুলো vacuum/defrag-এর খাদ্য

PostgreSQL heap page-ঠিক এটাই — heap_page_items(get_raw_page(...)) দিয়ে slot-by-slot দেখা যায়।