Vertikal partitionering är ett avgörande steg i fysisk databasdesign i radorienterade databaser. Ett antal vertikala partitioneringsalgoritmer har föreslagits under de senaste tre decennierna för en mängd olika nischscenarier. I princip förblir det underliggande problemet detsamma: sönderdela en tabell i en eller flera vertikala partitioner. Det är dock inte klart hur bra olika vertikala partitioneringsalgoritmer är i jämförelse med varandra. I själva verket är det inte ens klart hur man experimentellt jämför olika vertikala partitioneringsalgoritmer. I den här artikeln presenterar vi en omfattande experimentell studie av flera vertikala partitioneringsalgoritmer. Vi kategoriserar vertikala partitioneringsalgoritmer längs tre dimensioner. Vi undersöker sex vertikala partitioneringsalgoritmer och diskuterar deras för- och nackdelar. Vi identifierar de stora skillnaderna i användningsfallsinställningarna för olika algoritmer och beskriver hur man gör en äppel-till-apples-jämförelse av olika vertikala partitioneringsalgoritmer under samma inställning. Vi föreslår fyra mätvärden för att jämföra vertikala partitioneringsalgoritmer. Vi visar experimentella resultat från TPC-H och SSB-riktmärket och presenterar fyra viktiga lärdomar: (1) vi kan göra fyra storleksordningar mindre beräkning och fortfarande hitta optimala layouter, (2) fördelarna med vertikal partitionering beror starkt på databasen buffertstorlek, (3) HillClimb är den bästa vertikala partitionering algoritm, och (4) vertikal partitionering för TPC-H-liknande riktmärken kan förbättras över kolumn layout med endast upp till 5%.
En jämförande analys av flera vertikala partitioneringsalgoritmer presenteras i REF.
A Comparison of Knives for Bread Slicing
{'venue': 'PVLDB', 'journal': 'PVLDB', 'mag_field_of_study': ['Computer Science']}