Robust frågeoptimering blir illusorisk i närvaro av korrelerade predikat eller användardefinierade funktioner. Ibland kommer frågeoptimatorn att välja att gå med i order vars utförandetid är av många storleksordningar högre än nödvändigt. Vi presenterar SkinnerDB, ett nytt databashanteringssystem som är utformat från grunden för tillförlitlig optimering och robust prestanda. SkinnerDB implementerar flera adaptiva frågebehandlingsstrategier baserade på förstärkningslärande. Vi delar upp utförandet av en fråga i små tidsperioder där olika gemensamma order utförs. Därmed konvergerar vi till optimala gemensamma order med ångergränser, vilket innebär att den förväntade skillnaden mellan faktisk verkställighetstid och tid för en optimal anslutningsorder begränsas. Såvitt vi vet är våra genomförandestrategier de första som ger jämförbara formella garantier. SkinnerDB kan användas som lager ovanpå alla befintliga databashanteringssystem. Vi använder optimerare tips för att tvinga befintliga system att prova olika gå order, försiktigt begränsa utförandet tid per gå ordning och data batch via timeouts. Vi väljer tidsgränser enligt ett iterativt system som balanserar verkställighetstid över olika tidsgränser för att garantera begränsad ånger. Alternativt kan SkinnerDB användas som en fristående, med en exekvering motor som är skräddarsydd för kraven för att gå ordning lärande. I synnerhet använder vi en specialiserad multi-way gå algoritm och en koncis tuple representation för att underlätta snabba växlar mellan gå order. I vår demonstration låter vi deltagarna experimentera med olika frågetyper och databaser. Vi visualiserar inlärningsprocessen och jämför med baslinjerna.
Trummer m.fl. REF använder RL för att lära sig optimala sammanfoga order i SkinnerDB-systemet.
SkinnerDB: Regret-Bounded Query Evaluation via Reinforcement Learning
{'venue': 'PVLDB', 'journal': 'PVLDB', 'mag_field_of_study': ['Computer Science']}