Opprette et dataprosjekt ved hjelp av SQL Server Integration Services

Alle snakker om Big Data, som om det enten er en monolitisk ting som Ayres Rock i Australia som har eksistert siden før det var mennesker. Du kan nesten forestille deg selskaper som dukker opp rundt innskudd av Big Data som gullgruvearbeidere langs en bekk. Kan det være grunnen til at så mange snakker så mye om data mining? Jeg tror ikke, for Big Data er nesten en organisk ting, som en liten eikenøtt som vokser til en mektig eik, og som et frø må den fôres og pleies.

Selv om det er flere metoder for å mate en database, er en av de mer populære SSIS (SQL Server Integration Services). Hvis du ikke er kjent med SSIS, er det et dataoverføringsverktøy som er en del av SQL Server Standard Edition eller nyere, som dessverre betyr at det ikke er en del av den gratis Express Edition av SQL Server.

I denne bloggen skal jeg lede deg med å lage et dataprosjekt ved hjelp av SSIS. For å kunne spille hjemme, i tillegg til SSIS, trenger du Microsofts prøveeksemplar for databehandling av Microsoft Works og Microsoft Excel.

I Windows-startmenyen kan SSIS bli funnet under Microsoft SQL Server 2012 som SQL Server Data Tools. Hvis du klikker på det og velger nytt prosjekt, åpnes dialogboksen Nytt prosjekt vist i figur A.

Figur A

Klikk på figurene for å forstørre.
Når et nytt prosjekt opprettes, får du presentert IDE-en som vises i figur B. Legg merke til forskjellige faner på toppen, SSIS Toolbox med oppgavene til venstre og Connection Managers langs bunnen.

Figur B

Ser litt kjent ut, gjør det ikke - som Visual Studio? Det er fordi det er Visual Studio. Men ikke la det skremme deg, hvis du ikke er en .Net-programmerer. Med unntak av Connection Managers er denne IDE i utgangspunktet dra og slipp.

Nå om disse tilkoblingsadministratorene: de identifiserer hva slags innganger og utganger som er tilgjengelige for behandling, som oppført i tabell A.

Tabell A

Type

Beskrivelse

EN GJØR Tilkoblingsansvarlig for ADO-tilkoblinger
ADO.NET Tilkoblingsansvarlig for ADO.NET-tilkoblinger
CACHE Tilkoblingsansvarlig for cache
DQS Tilkoblingsbehandling for DQS-server
UTMERKE Tilkoblingsbehandling for Excel-filer
FIL Tilkoblingsbehandling for filer
FLAT FIL Tilkoblingsbehandling for flate filer
FTP Tilkoblingsbehandling for FTP-tilkoblinger
HTTP Tilkoblingsbehandling for HTTP-tilkoblinger
MSMQ Tilkoblingsbehandling for Meldingskø-oppgaven
MSOLAP100 Tilkoblingsansvarlig for Analysetjenester-tilkoblinger
multifile Tilkoblingsbehandling for flere filer
MULITFLATFILE Tilkoblingsbehandling for flere flate filer
ODBC Tilkoblingsansvarlig for ODBC-tilkoblinger
OLEDB Tilkoblingsansvarlig for OLE DB-tilkoblinger
SMOServer Tilkoblingsbehandling for overføringsoppgaver for SQL Server
SMTP Tilkoblingsbehandling for SQL Server Compact-tilkoblinger
WMI Tilkoblingsansvarlig for WMI-tilkoblinger
Ved å bruke listen over, la oss si, i stedet for å mate dyret, vil vi gjerne dra litt informasjon som adresser og legge dem i et Excel-regneark. Så vi trenger en Database Connection Manager, som OLE Connection Manager vist i figur C. For Excel-regnearket bruker du en Excel Connection Manager, hvis eksempel vises i figur D.

Figur C

Figur D

Det er ett forbehold: Hvis du bruker en 64-biters utgave av Windows, må du sørge for at du ikke bruker 64-biters runtime. Pakken vil kjøres dårlig. Slik sikrer du at dette ikke skjer. Åpne opp prosjektets eiendomssider (det er det siste elementet under Prosjekt-fanen). Klikk deretter på Konfigurasjonsegenskaper og feilsøking. Under Feilsøkingsalternativer setter du Run64BitRuntime til False som vist i figur E, så er du god til å gå.

Figur E

Det er en ting til å huske. All rekordnivåbehandling utføres i Data Flow-oppgaver, ikke i kontrollflyten. Control Flow er der du kontrollerer flyten ved hjelp av For Loop Container, Foreach Loop Container eller Sequence Container. Men siden prosjektet vårt er så enkelt, er alt vi trenger å gjøre å dra en dataflytoppgave på kontrollflyten, og gi oss noe som ser ut som figur F.

Figur F

Nå er det på tide å klikke på dataflytoppgaven eller dataflytfanen, og åpne opp dataflyten. Selv om det ligner på kontrollflyten, tilbyr SSIS verktøykasse noen forskjellige verktøy. De to vi trenger er under Andre kilder og andre destinasjoner, nemlig OLE DB-kilden og Excel-destinasjonen. Figur G viser hvordan dette ser ut.

Figur G

Dra nå en OLE DB-kilde på siden og dobbeltklikk på den. OLE DB Source Editor kommer opp. Her bruker du OLE DB Connection Manager og velger hvilken tabell eller lagret prosedyre eller SQL som skal brukes for å hente data, som figur H viser. Det er også her du kan velge kolonnene du vil hente. Til slutt er det her feilhåndteringen kan defineres.

Figur H

Når kilden er definert, drar du en Excel-destinasjon til dataflyten, klikker du deretter på OLE DB-kilden og drar pilen til Excel-destinasjonen for å få noe som ser ut som figur I.

Figur I

Dette siste trinnet er der Excel-destinasjonen er definert ved hjelp av Excel Connection Manager. Det ser veldig ut som å sette opp OLE DB-kilden som figur J og figur K viser.

Figur J

Figur K

Nå er det bare å kjøre pakken ved å klikke på den obligatoriske grønne trekanten, og hvis du ikke ser noe rødt, se på resultatet i Excel, figur L.

Figur L

Nå, dette er virkelig ikke en rettferdig test av alt som er mulig med SSIS; det ville være noe lengre enn en artikkel. Det viser noe av hva som er mulig. Tenk et øyeblikk på hva hvis inngangen var Excel og utdataene var en databasetabell, eller en flat fil og en tabell, eller en FTP og en tabell, eller hva om begge var tabeller?

Dataflyten trenger ikke å være et rett trekk; det er en haug med verktøy som vi aldri en gang har sett på. Du kan summere, dele, sortere, fuzzy gruppe, oppslag, pivot, unpivot og til og med legge til din egen kode i C # eller Visual Basic. Net.

© Copyright 2021 | pepebotifarra.com