Dela via


Transformation för balanserad datadistribution

gäller för:SQL Server SSIS Integration Runtime i Azure Data Factory

BDD-omvandlingen (Balanced Data Distributor) utnyttjar den samtidiga bearbetningskapaciteten för moderna processorer. Den distribuerar buffertar av inkommande rader jämnt över utdata på separata trådar. Genom att använda separata trådar för varje utdatasökväg förbättrar BDD-komponenten prestandan för ett SSIS-paket på datorer med flera kärnor eller flera processorer.

Följande diagram visar ett enkelt exempel på hur du använder BDD-transformering. I det här exemplet väljer BDD-omvandlingen en pipelinebuffert i taget från indata från en platt filkälla och skickar den vidare genom en av de tre utdatasökvägarna på ett växelvis sätt. I SQL Server Data Tools kan du kontrollera värdena för en DefaultBufferSize(standardstorleken för pipelinebufferten) och DefaultBufferMaxRows(standard maximalt antal rader i en pipelinebuffert) i fönstret Egenskaper som visar egenskaper för en dataflödesaktivitet.

Balanserad Datafördelare

Omvandlingen Balanced Data Distributor hjälper till att öka prestandan för ett paket i ett scenario som uppfyller följande villkor:

  1. Det finns en stor mängd data som kommer in i BDD-omvandlingen. Om datastorleken är liten och endast en buffert kan innehålla data, är det ingen mening med att använda BDD-omvandlingen. Om datastorleken är stor och flera buffertar krävs för att lagra data kan BDD effektivt bearbeta databuffertar parallellt med hjälp av separata trådar.

  2. Data kan läsas snabbare än resten av dataflödet kan bearbeta dem. I det här scenariot körs de transformeringar som utförs på data långsamt jämfört med den hastighet med vilken data kommer. Om flaskhalsen är vid destinationen måste destinationen dock vara parallelliserbar.

  3. Data behöver inte sorteras. Om data till exempel behöver vara sorterade bör du inte dela upp data med hjälp av BDD-omvandlingen.

Observera att om flaskhalsen i ett SSIS-paket beror på den hastighet med vilken data kan läsas från källan, hjälper BDD-komponenten inte till att förbättra prestandan. Om flaskhalsen i ett SSIS-paket beror på att målet inte stöder parallellitet hjälper inte BDD:n. Du kan dock utföra alla transformeringar parallellt och använda Union All-omvandlingen för att kombinera utdata som kommer från olika utdatasökvägar i BDD-omvandlingen innan du skickar data till målet.

Viktigt!

Se videon Balanced Data Distributor (Balanserad datadistributör ) på TechNet-biblioteket för en presentation med en demo om hur du använder omvandlingen.