Blog2Blog Maak je eigen Blog2Blog | Gratis je eigen blog c.q weblog op internet
Mijn blog
Mijn blog

Bruce Springsteen Magic tour in Gelredome

Ja ja, gisteren was het dan eindelijk zover (na 1 dag hebben moeten wachten). Het was geweldig, eigenlijk niet uit te leggen zo weergaloos waren ze weer. Ik was alweer vergeten hoe geweldig het is om naar een optreden van The Boss te gaan. Maar hij heeft het me weer helpen herinneren hoor.

 

 

De avond werd 2 uur en 15 minuten lang gevuld met bekende en nieuwe nummers en zelfs een Sinterklaasliedje op basis van het alom bekende Santa Claus is coming to Town, maar dan Bruce steil: GEWELDIG!

 

Toppunten van de avond waren verder nummers als :

·       De bijzondere uitvoering van Reason to believe

·       Candy's room

·       Darlington County

·       Long walk home

·       Badlands

·       Thunder Road

·       Born to run

·       Dancing in the dark

 

En als klap op de vuurpijl Tunnel of Love, ons trouwliedje! De complete setlist staat op:

http://www.brucespringsteen.net/live/2007setlists.html onder 1 December Arnhem.

 

Bruce, tot in Juni!

 

10:51 - 2-Dec-2007 - comments {0} - post comment

Uitvoerstatus berichten van taken in SQL-Server 2005

Om per mail een bericht te krijgen dat een taak afgesloten is moet het een en ander ingesteld worden.

 

  1. Allereerst moet in de tool "Surface Area Configuration for Features" de database mail functionaliteit ingeschakeld worden.
  2. Vervolgens moet in SSMS (Management Studio) ingesteld worden hoe de mail verstuurd moet worden.

    Onder Mangement is een optie Databse Mail geplaatst. Van hieruit kan middels de op "Configure Database Mail" een nieuw profiel gemaakt worden. Deze wordt later gekozen. Binnen een profiel kunnen meerdere accouts aangemaakt worden (als de een niet lukt dan wordt de ander gebruikt). Let erop dat de accountnaam ook de identificatie op de SMTP server is.

    Gebruik "Sent test mail" om na te gaan of de instellingen correct zijn.
  3. Nu moet ingesteld worden welk Profiel de SQL-Server Agent moet gebruiken voor het verzen van meldingen (Notifications). Dat kan via de eigenscahppen van de Agent, onder Alert System.

    Pager E-mails hoeven voor E-mail notificatie niet ingesteld te worden.
  4. Vervolgens moet een Operator ingesteld worden, want dat wordt degene (of de groep) aan wie de melding verstuurd wordt vanuit de taak.

    De Operator kent een History tab waarbij achter Net Sent de informatie over E-mail kom te staan (bugje?).
  5. Als laatste stap moet in de taak onder Notifications de E-mail actie ingeschakeld worden, met de aangemaakt Operator en wanneer de mail verstuurd moet worden.

Nu zou het moeten werken.

20:58 - 26-Nov-2007 - comments {0} - post comment

Externe verbindingen op SQL-Server

Ik heb al regelmatig de vraag gekregen waarom SQL-Server niet benaderd kan worden vanuit een andere tool middels bijvoorbeeld ODBC. Met SQL-Server 2005 heeft Microsoft de beveiliging wat opgeschroeft en kom je niet zomaar meer op de databse. Je moet instellen dat dat kan. Dat doe je in de tool "Surface Area Configuration for Services and Connections".

 

De tool biedt je de mogelijkheid om te kiezen voor:

  • Named Pipes
  • TCP/IP
  • Beide

Afhankelijk van de verbindingen die je wil leggen maak je een keuze. Op mijn laptop kan je zien dat ik beide ingesteld heb.

 

Daarmee is het meestal nog niet gedaan. Afhankelijk van de instaalatie en de wijze waarop toegang gezocht wordt tot de database moet de authenticatie mode aangepast worden.

  • Indien gebruik wordt gemaakt van Windows authenticatie (single logon) dan moet SQL-server minimaal op Windows Authentication staan.
  • Indien gebruik gemaakt wordt van een SQL-Server login (zoals vaak bij ODBC het geval is) dan moet SQL-Server login ook toegestaan worden.

Onder het kopje security van de eigenschappen van een server kan de toegang aangepast worden.

19:43 - 25-Nov-2007 - comments {0} - post comment

SQL-Server Intellisense

Ja ja, het gaat eindelijk gebeuren: ook in SQL-Server Management Studio kunnen we gebruik gaan maken van Intelisense, zoals ook in bijvoorbeeld Toad. Het verschil met Toad is natuurlijk het ontbreken van Java shit en nog belangrijker de kwaliteit van SQL-Server ten opzichte van de overschatte tool: Oracle (maar dat is mijn mening).

 

Vandaag heb ik, zoals in een eerdere post genoemd, CTP5 geïstalleerd en meteen eens een beetje rondgekeken. Uiteraard had de nieuwe Intellisense mijn grote interesse. Het is niet zo dat zonder deze functionaliteit niet te ontwikkelen valt, maar het is zo prettig. Ik ben wel zeer benieuwd naar de kwaliteit. Van Toad ben ik gewend dat deze op enig moement in de war raakt en niet meer de juiste velden in de keuzelijst toont. Dan wordt het een frustratie.

 

Intellisense toont bijvoorbeeld de velden die mogelijk zijn:

 

De functionaliteit werkt niet alleen op veldnamen:

 

Een leuke andere mogelijkheid is het "samenvouwen" van stukken code.

 

Door goed met inline comments om te gaan kan je zo de code heel overzichtelijk presenteren. Functionele blokken kunnen dan samengevouwen worden.

16:23 - 23-Nov-2007 - comments {0} - post comment

SQL2008 Installatie

Vandaag heb ik de nieuwe CTP van SQL-Serer 2008 opgehaald bij Microsoft en vervolgens gepoogd te installeren. Daarbij kreeg ik echter een niet veel zeggende foutmelding.

 

De installatie verrichte ik op een Virtual Machine waarop reeds CTP4 geïnstalleerd was. Dat bleek ook de bron van mijn probleem te zijn. Na verwijdering van de oude versie heb ik de installatie van CTP5 moeiteloos kunnen uitvoeren.

 

In de installatie beschrijving van Microsoft staat alleen dat de aanwezigheid van CTP1 "blocking" is. Het verschil is echter dat die situatie herkent en afgevangen wordt. Het probleem met CTP4 leek mij onbedoeld .

16:14 - 23-Nov-2007 - comments {0} - post comment

Kimball, Inmon of toch iets er tussenin

In de praktijk die ik tegen ben gekomen geven de meeste bedrijven aan dat ze Kimball volgen voor de BI oplossingen. Zelf heb ik ook opleidingen gevolgd aan de Kimball University. Wat je echter ook vaak ziet is dat Kimball niet zuiver gevolgd wordt, maar situationeel toegepast.

 

Het probleem dat ik met Kimball heb is de gedachte dat je vanuit de bron een ster schema maakt zonder daartussen een relationeel model, zoals Inmon het DataWareHouse kent. Dat relationele model is veel eenvoudiger bij te werken dan het gedenormaliseerde ster model. Juist de rapportagezijde van het BI proces veranderd omdat de gebruikers vaak nog BI-gericht moeten leren denken bij het formuleren van hun wensen of omdat de business nu eenmaal verandert. Als de rapportagezijde vaak wijzigt zal ook het dimensionele model niet stabiel zijn. En daardoor hebben DataWareHouses een korte levensduur als de aanpasbaarheid beperkt of zeer intensief is.

 

Ik vindt echter wel dat je DataWareHouse een dimensionale omgeving zou moeten zijn en zou eerder voor een 2 laags staging gaan:

  1. Prestaging met daarin de brontabellen
  2. Poststaging met daarin het relationel model.

De poststaging bevat dan de gehele historie waaruit ten alle tijden het DataWareHouse opnieuw opgebouwd kan worden.

Dus wat mij betreft de architectuur van Inmon en de naamgeving van Kimball --> Inball.

22:30 - 21-Sep-2007 - comments {1} - post comment

Linked servers over een ODBC connectie

In SQL-Server is het mogelijk een externe bron als gelinkte server op te nemen. Denk daarbij aan Oracle, MS-Access etc. Daar hoort ook ODBC bij.

 

Ditzelfde is ook middels een script mogelijk:

 

EXEC master.dbo.sp_addlinkedserver

@server = N'GELINKTESERVER',

@srvproduct=N'Frank - zomaar een naam',

@provider=N'MSDASQL',

@datasrc=N'DSN-naam',

@provstr=N'Uid=gebruikernaam_bron;Pwd=paswoord_bron'

GO

EXEC master.dbo.sp_serveroption @server=N'GELINKTESERVER', @optname=N'collation compatible', @optvalue=N'false'

GO

EXEC master.dbo.sp_serveroption @server=N'GELINKTESERVER', @optname=N'data access', @optvalue=N'true'

GO

EXEC master.dbo.sp_serveroption @server=N'GELINKTESERVER', @optname=N'dist', @optvalue=N'false'

GO

EXEC master.dbo.sp_serveroption @server=N'GELINKTESERVER', @optname=N'pub', @optvalue=N'false'

GO

EXEC master.dbo.sp_serveroption @server=N'GELINKTESERVER', @optname=N'rpc', @optvalue=N'false'

GO

EXEC master.dbo.sp_serveroption @server=N'GELINKTESERVER', @optname=N'rpc out', @optvalue=N'false'

GO

EXEC master.dbo.sp_serveroption @server=N'GELINKTESERVER', @optname=N'sub', @optvalue=N'false'

GO

EXEC master.dbo.sp_serveroption @server=N'GELINKTESERVER', @optname=N'connect timeout', @optvalue=N'0'

GO

EXEC master.dbo.sp_serveroption @server=N'GELINKTESERVER', @optname=N'collation name', @optvalue=null

GO

EXEC master.dbo.sp_serveroption @server=N'GELINKTESERVER', @optname=N'lazy schema validation', @optvalue=N'false'

GO

EXEC master.dbo.sp_serveroption @server=N'GELINKTESERVER', @optname=N'query timeout', @optvalue=N'0'

GO

EXEC master.dbo.sp_serveroption @server=N'GELINKTESERVER', @optname=N'use remote collation', @optvalue=N'true'

 

Deze linked server is vervolgens vanuit T-SQL te gebruiken.

/* Lijst met linked servers */

exec sp_helplinkedsrvlogin

GO

/* Tabellen die beschikbaar zijn middels de linked server (en dus ook ODBC) */

exec sp_tables_ex GELINKTESERVER

GO

/* De kolommen van de beschikbare tabellen. Dit werkt bij mij helaas niet over de ODBC verbinding */

exec sp_columns_ex GELINKTESERVER, Klassen

GO

/* Primary keys op de tabellen */

exec sp_primarykeys GELINKTESERVER, Adressen

GO

/*Select op tabel in de linked server */

select * from openquery(GELINKTESERVER, 'select * from AAN_AFWEZIGHEID')

GO

 

21:25 - 18-Sep-2007 - comments {0} - post comment

SSIS in SQL-Server 2005

Zoals gezegd begin ik maandag weer aan een SSIS project. Na een half jaar geploeter met Oracle en het "wonder" OWB is de parate kennis wat wegezakt. Dus heb ik me voorgenomen daar toch maar even iets aan te doen en dat meteen ter leering en vermaak op m'n blog te gooien.

 

Een SSIS package maak je in Visual Studio of de Business Intelligence Studio. Een solution kan meerdere:

  • Data Sources
  • Data Source Views
  • SSIS packages

bevatten.

 

De functionaliteit wordt opgeslagen in een Control Flow en eventueel meerdere Data Flows die vanuit de Control Flow aangeroepen worden. Deze taken worden ondersteund door variabelen, connection managers naar de bronnen en externe configuratie bestanden. Middels expressions kunnen de instellingen van de taken run time aangepast worden. SSIS voegt nog wat functionaliteit ten behoeve van logging toe zodat ook een foutafhabdeling zo gemaakt is.

 

De Control Flow heeft de volgende taken (excl. maintenance):

  • For Loop Container (De flow in de container wordt net zo lang uitgevoerd tot een expressie de waarde False krijgt)
  • Foreach Loop Container (De flow in de container wordt uitgevoerd voor elk voorkomen van een opgegeven file, item, etc))
  • Sequence Container (Een collectie van taken gegroepeerd in een container)
  • ActiveX Script Task (Uitvoer ActiveX taak)
  • Analysis Services Execute DDL Task
  • Analysis Services Processing Task
  • Bulk Insert Task (Via Bulk Insert externe tekst bestanden importeren)
  • Data Flow Task (Geeft een Data Flow onder de tab Data Flow)
  • Data Mining Query Task
  • Execute DTS 2000 Package Task
  • Execute Package Task (Starten andere SSIS package)
  • Execute Process Task (Starten extern uitvoerbaar bestand)
  • Execute SQL Task (Starten SQL-commando, eventueel met parameters die als vraagteken opgenomen worden)
  • File System Task (Een OS taak uitvoeren)
  • FTP Task (FTP opdrachten uitvoeren)
  • Message Queue Task (Tekst, variabele of datafile boodschappen ontvangen of versturen)
  • Script Task (Gebruik Visual Studio for Applications om .NET script te maken en configureren)
  • Send Mail Task (Send E-mail per SMTP) 
  • Transfer Database Task (Een database tussen twee instances kopiëren)
  • Transfer Error Messages Task (Foutboodschappen tussen twee instances uitwisselen)
  • Transfer Jobs Task (Taken tussen twee instances uitwisselen)
  • Transfer Logins Task (Inloggegevens tussen twee instances uitwisselen)
  • Transfer Master Stored Procedures Task  (Stored Procedures tussen de master databases van twee instances uitwisselen)
  • Transfer SQL Server Objects Task (SQL-Server objecten tussen twee instances uitwisselen)
  • Web Service Task (Een Web method uitvoeren via een HTTP connectie)
  • WMI Data Reader Task (Voor lezen informatie over het systeem uit de Windows Management Instrumentation)
  • WMI Event Watcher Task (Controleren en reageren op Windows Management Instrumentation gebeurtenissen)
  • XML Task (XML taken los laten op een ontvangen XML document)

Data Flow taken:

  • Data Flow Sources (moeten wel aan een Connection Manager verbonden worden)
    • Data Reader Source
    • Excel Source
    • Flat File Source
    • OLE DB Source
    • Raw File Source
    • XML Source
  • Data Flow Transformations
    • Aggregate (Sommeren van kolommen)
    • Audit (Toevoegen van audit gegevens, zoals package naam)
    • Character Map (Uitvoeren van tekstmanipulaties)
    • Conditional Split (Voorwaardelijke splitsing van regels in datasets op basis van expressies)
    • Copy Column (Invoerkolommen kopiëren)
    • Data Conversion (Omzetten datatype van een bronkolom)
    • Data Mining Query (Data mining voorspelling tegen Data Mining modellen uitvoeren)
    • Derived Column (Op basis van een expressie de waarden in een kolom aanpassen)
    • Export Column (daata uit DT_TEXT, DT_NTEXT en DT_IMAGE kolommen naar bestanden exporteren)
    • Fuzzy Grouping (Bronregels groeperen op basis van overeenkomstigheid)
    • Fuzzy Lookup (Zoeken middels meeste overeenkomsten tussen een bron en referentieregel)
    • Import Column (Leest uit externe bestanden en voegt dat toe aan kolommen in de Data Flow) 
    • Lookup (Maakt een join tussen de input data en referentiedata)
    • Merge (Twee gesorteerde datasets worden in een enkele dataset geschreven)
    • Merge Join (Levert een dataset dat gegenereerd wordt door twee gesorteerde datasets middels een FULL, LEFT of INNER join te koppelen)
    • Multicast (De bronregels naar alle doelen schrijven)
    • OLE DB Command (Voert een geparameteriseert SQL-statement uit voor elke regel in de flow)
    • Percentage Sampling (Een percentage van de input afscheiden van de rest)
    • Pivot
    • Row Count (Telt het aantal regels in de data flow en schrijft deze in een variabele)
    • Row Sampling (Willekeurige subset van een input dataset)
    • Script Component (Uitvoeren script code)
    • Slowly Changing Dimension (Bewerkt een SCD)
    • Sort (Sorteren van de dataset)
    • Term Extraction (Termen uit brondata schrijven in doelkolommen. Werkt alleen op Engelse tekst)
    • Term Lookup (Vergelijkt teksten uit een inputkolom met teksten in een referentietabel)
    • Union All (Combeneert meerdere brondatasets)
    • Unpivot
  • Data Flow Destinations
    • Data Mining Model Training
    • DataReader Destination
    • Dimension Processing
    • Excel Destination
    • Flat File Destination
    • OLE DB Destination
    • Partition Processing
    • Raw File Destination
    • Recordset Destination
    • SQL Server Destination
    • SQL Server Mobile Destination

23:50 - 15-Sep-2007 - comments {0} - post comment

Morgen eerste dag

Morgen begin ik aan de eerste dag voor Ciber na ruim 3 jaar Inter Access. Alles is keurig geregeld, op naar een goede start.

20:50 - 1-Jul-2007 - comments {4} - post comment

Description
De blog van Frank Reterink

Home
User Profile
Archives

Recent Entries
- Bruce Springsteen Magic tour in Gelredome
- Uitvoerstatus berichten van taken in SQL-Server 2005
- Externe verbindingen op SQL-Server
- SQL-Server Intellisense
- SQL2008 Installatie