Prestandaeffektivitet för data lakehouse
Den här artikeln beskriver arkitekturprinciper för prestandaeffektivitet grundpelare, med hänvisning till systemets förmåga att anpassa sig till belastningsändringar.
Principer för prestandaeffektivitet
Använd serverlösa arkitekturer
Serverlösa arkitekturer kräver inte att kunderna använder och underhåller infrastrukturen för databehandling i molnet. Detta eliminerar driftkostnaderna för att hantera molninfrastrukturen och minskar transaktionskostnaderna eftersom hanterade tjänster fungerar i molnskala. De ger också omedelbar tillgänglighet, inbyggd säkerhet och kräver minimal konfiguration eller administration.
Utforma arbetsbelastningar för prestanda
För upprepade arbetsflöden, till exempel dataflödesprocesser, bör prestanda aldrig vara en eftertanke. Data måste vara:
- Läs effektivt från objektminnet.
- Effektivt transformerad.
- Publiceras effektivt för användning.
Dessutom använder de flesta pipelines och konsumtionsmönster en kedja av system. För att uppnå bästa möjliga prestanda måste hela kedjan beaktas och väljas för bästa prestanda.
Kör prestandatestning i utvecklingsomfånget
Varje utvecklingsarbetsbelastning måste genomgå kontinuerlig prestandatestning. Testerna säkerställer att alla ändringar i kodbasen inte påverkar arbetsbelastningens prestanda negativt. Upprätta ett regelbundet schema för att köra tester. Kör testet som en del av en schemalagd händelse eller som en del av en pipeline för kontinuerlig integration.
Upprätta prestandabaslinjer och fastställa den aktuella effektiviteten för arbetsbelastningarna och stödinfrastrukturen. Mätning av prestanda mot baslinjer kan ge strategier för förbättringar och avgöra om programmet uppfyller affärsmålen.
Identifiera flaskhalsar som kan påverka prestanda. Dessa flaskhalsar kan orsakas av kodfel eller felkonfiguration av en tjänst. Flaskhalsar get blir vanligtvis sämre när belastningen ökar.
Övervaka prestanda
Se till att resurser och tjänster förblir tillgängliga och att prestandan uppfyller användarens förväntningar eller arbetsbelastningskrav. Övervakning kan hjälpa dig att identifiera flaskhalsar eller otillräckliga resurser, optimize-konfigurationer samt upptäcka pipeline-/arbetsbelastningsfel.