Klassen zu Datenbank-Skript 30.07.2010

Sven Erik Matzen
Sven Erik Matzen, Chief eXpert

Das Entity Framework von Microsoft bietet gute Möglichkeiten für die Modellierung von Daten-Entitäten. In den Diagrammen lassen sich die Beziehungen der Entitäten untereinander und die Attribute definieren und wenn das geschafft ist, lassen sich aus diesen Meta-Daten Datenbank-Tabellen und entsprechende Zugriffsklassen generieren.

Das Entity-Framework setzt aber ein manuell erstelltes Model – eine XML-Struktur, welche die Entitäten detailliert beschreibt – oder eine fertige Datenbank voraus, um mit der Generierung der Zugriffs-Klassen beginnen zu können. Die Generierung des Model aus einer Datenbank wird unterstützt – die Generierung aus bereits existierenden .Net-Klassen aber nicht. Damit ergibt sich in einigen Fällen, der unschöne Zustand, dass die Business-Klassen schon fertig modelliert sind, aber dann die Erstellung der Datenbank-Schemas oder des Models wieder getrennt davon per Hand durchgeführt werden muss. Eine Generierung der Datenbank-Tabellen mit allen Referenzen sollte aus .Net Klassen doch auch recht einfach gelingen.

Ich höre schon Matthias sagen „wozu etwas in 2h einfach machen, wenn man auch 2 Tage daran programmieren kann“ … ich habe es trotzdem gemacht: ich habe mit nach einiger erfolgloser Google-Recherche einen Klassen-zu-Datenbank-Konverter geschrieben (siehe statische Klasse DatabaseScriptGenerator im Projekt Sem.GenericHelpers auf http://semsync.codeplex.com/). Ich habe es zugegebenermaßen bisher nur mit meinem Klassenmodell ausprobiert (dem entsprechend wenige Typen-Übersetzungen sind bisher auch drin), aber es klappt zumindest prinzipiell auch mit generischen Listen von „irgendwas“ und Enums. Die Primary- und Foreign-Keys werden ebenfalls mit angelegt.

Um die Funktionalität zu nutzen, muss zunächst die Solution von CodePlex heruntergeladen werden. Die Klassen sind im Projekt Sem.GenericHelpers, welches noch ExpressionSerialization referenziert. Diese beiden Projekte (oder die erstellten Assemblies) müssen also in die eigene Solution mit eingebunden werden.

Der Aufruf gestaltet sich im eigenen Projekt sich recht übersichtlich:

using Sem.GenericHelpers.Database;
...
var result = DatabaseScriptGenerator.CreateScriptFromEntityType(
    typeof(StdContact), 
    "Contacts");
...

Die Methode erwartet den Typen der Haupt-Entität (von der ausgehend die Tabellen generiert werden) und einen Namen für die dazugehörige Tabelle. Zurück kommt ein String mit dem Datenbank-Script:

CREATE TABLE Contacts (
[ContactsId] int NOT NULL IDENTITY (1, 1),
[AdditionalTextData] nvarchar(255),
[BusinessAddressPrimaryRef] INT,
[BusinessAddressSecondaryRef] INT,...

Es wird in jeder Entitäten-Tabelle eine Identity-Spalte mit dem Namen der Tabelle und dem Suffix „Id“ angelegt; Verweise auf Tabellen für Sub-Entitäten erhalten das Suffix „Ref“. Die Klassen werden rekursiv von einer „Haupt-Entität“ ausgehend aufgebaut.

Es ist nicht das ultimative Tool, um ein komplexes Datenbank-Schema zu erstellen und das erstellte Schema bedarf mit Sicherheit noch einiges an „Nacharbeit“ – aber man kann damit zumindest schon mal was in der Datenbank sehen. Das Projekt, in dem diese Funktionalität entstanden ist, steht unter LGPL – die Bibliotheken können also problemlos in freien oder auch kommerziellen Projekten eingesetzt werden.

Share |

Integrated Security mit Microsoft OLE DB Provider for Analysis Services 9.0 28.07.2010

Boris Borgner
Boris Borgner, Senior eXpert

Für den Zugriff auf SSAS Cubes mit Excel 2003 über den Microsoft OLE DB Provider for Analysis Services 9.0 gibt es keine explizite Einstellungsoption für Integrated Security. Es ist jedoch implizit möglich, indem die Felder Benutzername und Kennwort einfach leer gelassen werden.

Share |

Visual Studio 2010 Productivity Power Tools 26.07.2010

Patric Schouler
Patric Schouler, Chief eXpert

Mit den Visual Studio 2010 Productivity Power Tools stellt Microsoft eine sinnvolle Erweiterung zur täglichen Arbeit mit Visual Studio 2010 zur Verfügung.

Die neu erschienene Version vom 20.07.2010 ist hier erhältlich und bietet gegenüber den Vorgängerversionen folgende neuen Features:


Tools Options Unterstützung
Die Features der Visual Studio Productivity Tools können im Optionen-Menü von Visual Studio ein- bzw. ausgeschaltet werden.

Solution Navigator
Der Solution Navigator ist ein neues Tool Window – ähnlich dem Solution Explorer – in dem aber in der Baumstruktur auch noch zusätzlich als Knoten die Klassen, Methoden, Properties usw. angezeigt werden können. Darüber hinaus werden auch Aufrufstrukturen und Referenzen angezeigt. Außerdem bietet der Solution Navigator interaktive Tooltips für C# oder auch VB Code, welche die Standard-Quickinfos ersetzen.

Quick Access
Quick Access ist ein neues Tool Window, welches dem Benutzer erlaubt auf die typischen Visual Studio Aufgaben schneller zuzugreifen und diese auszuführen. Beispiele hierfür sind:  Zeilennummern ein-/ausschalten, Öffnen eines neuen Projektes mit einem bestimmtem Template.

Auto Brace Completion
Durch diese Features werden bei (),{},[],<>,”” und ‘’ automatisch bei Eingabe des einleitenden Zeichens das schließende Zeichen mit eingefügt. Viel interessanter ist aber das man durch Eingabe von <TAB> zum passenden schließenden Zeichen gelangt und durch <SHIFT> + <ENTER> nicht nur ein Zeilenumbruch geschieht, sondern auch in C# das “;” mit eingefügt wird.

Share |

Microsoft Visual Studio Scrum 1.0 22.07.2010

Matthias Jauernig
Matthias Jauernig, Senior eXpert

Microsoft hat das bisher als Beta verfügbare Prozess-Template für Scrum jetzt in Version 1.0 veröffentlicht.

Download: http://visualstudiogallery.msdn.microsoft.com/en-us/59ac03e3-df99-4776-be39-1917cbfc5d8e

Announcement: http://blogs.msdn.com/b/aaronbjork/archive/2010/07/19/announcing-microsoft-visual-studio-scrum-1-0.aspx

Das Template beinhaltet:

  • Work Item Types
    • Sprint
    • Product Backlog Item
    • Bug
    • Task
    • Impediment
    • Test Case
  • Reports
    • Release Burndown
    • Velocity
    • Sprint Burndown
    • Build Success Over Time
    • Build Summary
    • Test Case Readiness
    • Test Plan Progress
  • SharePoint Project Portal
Share |

Pivot: Datenvisualisierung in Silverlight 19.07.2010

Matthias Jauernig
Matthias Jauernig, Senior eXpert

Die Visualisierung und Analyse von Massendaten stellt ein nicht-triviales Thema für die Entwicklung von Businessapplikationen dar. Microsoft hat sich in den Live Labs dieses Themas mit der Entwicklung von Pivot angenommen, welches zunächst nur als WPF-Anwendung zur Verfügung stand.

Mit Pivot lassen sich Berge an Daten anschaulich darstellen, sortieren, filtern und analysieren. Das Programm selbst hat dank DeepZoom und Animationen einen hohen Wow-Faktor und kann damit sowohl Entwickler als auch Endkunden begeistern.

logo-pivot In der letzten Woche hat Microsoft Pivot als Silverlight-Control zur Verfügung gestellt (s. auch 10REM), so dass es von jedem Entwickler in eigenen Anwendungen eingebaut werden kann. Eine separate Seite gibt Aufschluss über die Funktionalität und stellt einige How-tos zur Verfügung.

Auf YouTube gibt es weiterhin ein nettes (auch für nicht Techies geeignetes) Video, welches Pivot vorstellt:

Darüber hinaus kann das Pivot-Control anhand einiger Demo-Services live getestet werden. Netflix beispielsweise stellt seinen Katalog über eine Pivot-Anwendung bereit, die auf Windows Azure läuft und Deep Linking beinhaltet: Pivot View of Netflix

Ein bisschen rumspielen mit den Demo-Services lohnt auf jeden Fall und kann durchaus einen hohen Mehrwert bieten, sobald man sich an die Bedienung gewöhnt hat.

Pivot_Netflix

Weiterhin gibt es eine Pivot-Demo, die vor allem aktuell interessant sein dürfte, denn sie visualisiert Spielerdaten zur Fußball-WM: World Cup Pivot

Auch im Enterprise-Umfeld macht Pivot in innovativen Silverlight-Anwendungen Sinn, wenn die Visualisierung und Analyse von Massendaten im Sinne einfacher Business Intelligence-Fragen eine Anforderung darstellt. Ein Beispiel dafür ist die Aufbereitung von Daten aus dem SharePoint 2010, welche als OData-Feed zur Verfügung gestellt werden und damit auch aus Silverlight heraus leicht angesprochen werden können. Je nach Anforderung lassen sich hier eindrucksvolle Einsatzszenarien umsetzen.

Share |

PDC10 angekündigt

Alexander Jung
Alexander Jung, Chief eXpert

Microsoft hat die PDC10 angekündigt:

28.+29.10.2010, Redmond

Was noch aussteht (und zu diesem Zeitpunkt durchaus normal ist) sind Hinweise zu den Inhalten. Erste Spekulationen finden sich bei Mary-Jo Foley:

“This isn’t going to be a traditional PDC. It will be focused almost entirely on cloud computing, rather than Windows, for one.”

 

“This isn’t going to be a traditional PDC.” ist auch der erste Eindruck, der sich mir aufdrängt…

In der Vergangenheit war die PDC immer eine “etwas andere” Konferenz. Hier redete Microsoft nicht über fertige Produkte die seit einem Jahr im Laden stehen. Hier stellten sie kommende neue Technologien vor, teilweise in sehr frühem Stadium um Feedback zu bekommen. Und traditionell war die PDC auch immer eine der wichtigeren Konferenzen für die Ankündigung neuer Dinge die vorher geheim gehalten wurden – was soweit ging, dass diese nicht mal in der Agenda auftauchten bevor sie in der Keynote von Gates, Balmer, Sinofsky oder sonst wem vorgestellt wurden.

1997 stellten sie Microsoft DNA vor, Microsofts Einstig ins Internet. Auf der PDC 2000 gab es “Standing Ovations” als .NET vorgestellt (und somit COM begraben) wurde. 2008 die nächste Stufe mit Windows Azure. 2007 haben sie die angekündigte PDC wieder abgesagt, weil sie nicht genug neues zu erzählen hatten – denn auch das gehört zu PDC: Sie findet nicht nach dem Kalender statt, sondern dann, wenn Microsoft etwas zu sagen hat.

Zurück zu “This isn’t going to be a traditional PDC.”

Die PDC09 war bereits “anders”. Nicht nur, dass sie um einen Tag auf 3 Tage gekürzt wurde (was man der Finanzkrise zuschreiben konnte), sie beschäftigte sich auch vornehmlich mit Azure, das nicht mehr neu war aber gerade released wurde (was per se noch kein Sündenfall ist, das hatten wir 2001 mit .NET ebenfalls).

Die PDC10 wird nun aber nochmal um einen Tag verkürzt. Das ist nicht nur rein quantitativ ein Problem, dadurch können zum Beispiel auch diverse Abendveranstaltungen, Symposien, Ask-The-Experts, Diskussionsrunden etc. nicht mehr in dem Maße stattfinden wie bisher (von der Party mal ganz abgesehen ;-)).
Und wenn Mary-Jo recht hat, wird wieder – und exklusiv – das Thema Azure adressiert. Vom Termin her hätte ich auch Windows Phone 7 gehofft. Slates sind ein Thema um dem iPad Paroli zu bieten. Silverlight gewinnt ständig, aber Silverlight 4 ist nun auch schon wieder ein viertel Jahr alt (von SL3 zu SL4 gingen gerade mal 9 Monate ins Land), da wird es Zeit für die nächste Version. Genügend Themen also die ebenfalls eine PDC wert wären.

“This isn’t going to be a traditional PDC.” wirft also durchaus die Frage auf, wohin sich die PDC in Zukunft entwickelt.

Share |

Manycore... 16.07.2010

Alexander Jung
Alexander Jung, Chief eXpert

Der Trend zu mehr Prozessorkernen wird zunehmend deutlicher: 6- und 8-Kern-CPUs kommen gerade in Serienproduktion, selbst in Laptops sind 4-Kern-Prozessoren keine Exoten mehr. Bestes Beispiel: Mein neuer Laptop mit Intel I7, 4 Kerne und Hyperthreading:

Ob diese Ressourcen immer sinnvoll genutzt werden ist jedoch eine ganz andere Frage. Software muss entsprechend multithreading-fähig ausgelegt sein, sonst liegt die Rechenpower einfach brach. Das erhöht jedoch die Komplexität und Fehlerwahrscheinlichkeit deutlich und ist folglich bei existierender Software eher selten der Fall, wenn es nicht schon früher besondere Anforderungen gab.

Microsoft stellt mit Visual Studio 2010 und .NET4 die neuen Versionen seiner Entwicklungsplattform bereit, die den Entwickler insbesondere bei Multithreading besser unterstützen sollen. Durch neue Tools (beispielsweise den Debugger) ebenso wie durch neue Konzepte und die entsprechenden Bibliotheken (zum Beispiel die Task Parallel Library, TPL).

Mehr Informationen zum Manycore Shift finden Sie in AJ’s Blog: http://ajdotnet.wordpress.com/2009/03/21/going-parallel/

Außerdem widmet Microsoft dem Thema „Parallel Computing“ ein eigenes Developer Center: http://msdn.microsoft.com/en-us/concurrency/default.aspx

Anekdote am Rande: So sieht das aus, wenn man das Installationsprogramm von Office 2010 startet: Ob die Lizenzprüfung derart rechenintensiv ist, dass sie 8 Kerne zu 50% in Anspruch nimmt?

Share |

Wert für Identity Insert manuell setzen 15.07.2010

Nicolas Meseth
Nicolas Meseth, Senior eXpert

Im SQL Server gibt es die Möglichkeit, für eine Spalte das Property Identity auf TRUE zu setzen. Dies bewirkt, dass beim Einfügen eines Datensatzes für diese Spalte automatisch ein Wert erzeugt wird. In der Regel geschieht dies durch einfaches Hochzählen eines internen Zählers.

Oftmals ist es notwendig, für eine Identity-Spalte einen festen Wert zu setzen, das heißt kein durch das identity_insert automatisch generierter Wert. Dies kann z.B. bei einem Dimensionseintrag für "Unknown"-Elemente der Fall sein, dem man sinnvollerweise den Wert -1 zuweisen könnte. Ein anderes Beispiel ist das skriptbasierte Erzeugen von Testdaten. Ist eine Spalte aber als Identity-Spalte gekennzeichnet, so kann nicht ohne Weiteres ein Wert für diese gesetzt werden, da dieser vom SQL Server automatisch erzeugt wird. Der SQL Server meldet in diesem Fall einen Fehler.

Um diese Spalte doch setzen zu könenn, muss zunächst das Property identity_insert eingeschaltet werden:

Nun kann man mittels INSERT-statement den Wert für die Identity-Spalte direkt mitgeben.
   1: set identity_insert dbo.DimCustomer on;
Eine weitere sehr nützliche Funktion ist das Setzen des Identity-Startwerts, d.h. der Wert von dem aus hochgezählt wird, wenn neue Datensätze eingefügt werden:
   1: DBCC CHECKIDENT (dbo.DimCustomer, RESEED, 10);
Der nächste Eintrag bekäme hier den Wert 11 für die Identity-Spalte. Um den aktuellen Wert zu überprüfen gibt es ebenfalls eine Funktion:
   1: DBCC CHECKIDENT (dbo.DimCustomer, NORESEED);
Share |

Technik zum “Anfassen”: WM Auswertung mit Pivot Silverlight-Control 13.07.2010

Svenja Henß
Svenja Henß, Senior Assistant

Kaum sind die letzten Töne der Vuvuzelas verklungen, kann man die Fußball WM 2010 noch einmal Revue passieren lassen.

Mithilfe des neuen Microsoft Pivot Silverlight-Controls bekommt man schnell und einfach Informationen zum jüngsten Spieler, zum Spieler mit den meisten Gelben Karten, zum Torschützenkönig und so weiter…

Einfach hier klicken World Cup Pivot

Viel Spaß beim Ausprobieren und in Brasilien klappt es mit dem 4. Stern!

Share |

Visual Studio 2010 für Lead-Developer und Architekten 12.07.2010

Alexander Jung
Alexander Jung, Chief eXpert

Mit Visual Studio 2010 hat sich Microsoft u.a. die Bedürfnisse von Lead-Developern und Architekten vorgenommen.

Da ist zum Einen die Überarbeitung der statischen Code-Analyse (FxCop). Die Einstellungen werden jetzt nicht mehr je Projekt verwaltet, was den sinnvollen Einsatz in jeder nicht-trivialen Solution oder die Erstellung und Einhaltung von Entwicklungsvorgaben zur Qual machte. Sie Regeleinstellungen sind jetzt als RuleSets in eigene XML-Dateien ausgelagert, die von den verschiedenen Projekten einfach und konsistent referenziert werden können. Die zentrale Pflege wird somit endlich möglich und auch unterschiedliche RuleSets, etwa für spezifische Projekttypen werden so sinnvoll möglich.

Die statische Code-Analyse ist mit der Premium und der Ultimate Edition von Visual Studio 2010 verfügbar; FxCop ist als separater Download frei verfügbar. Mehr Informationen finden sich im Code Analysis Team Blog: http://blogs.msdn.com/b/codeanalysis/archive/2008/11/12/fun-with-code-analysis-rulesets.aspx

 

vsarch_assemblies.jpgEin komplett neues Tool ist der Architecture Explorer, mit dem an einen visuellen Einblick in den Code erhalten kann. So lassen sich Abhängigkeiten zwischen Artefakten (Klassen, Assemblies, etc.)  ermitteln und darüber etwa Hot-Spots aufspüren – etwa Klassen die eine zentrale Bedeutung haben und daher besonders gründlich getestet werden sollten. Oder auch Cluster von Artefakten, die nicht referenziert werden, also toter Code.

Somit ist der Architecture Explorer ideal um eine bestehende Solution zu analysieren und zu verstehen, aber auch zur Generierung von technischer Dokumentation.

 

vsarch_dialog.jpgWeiterhin hat sich Microsoft das Thema UML vorgenommen. Zwar bieten sie mit “nur” 5 Diagrammen nicht den theoretischen Umfang von 14 Diagrammtypen an, den UML zu bieten hat, aber mit Ausnahme von State-Diagrammen bieten sie hier das notwendige Minimum an. Speziell Sequenzdiagramm bieten ein besonderes Feature an: Sie lassen sich aus dem Code generieren – wiederum ideal für nachträgliche Analysen oder Dokumentation.

 

vsarch_layer.jpgLetzte Neuerung ist das Layer-Diagramm. Hiermit lassen sich die üblichen Anwendungsarchitektur-Blockbilder (die man normalerweise in Visio erstellt) malen und Abhängigkeiten zwischen diesen definieren. Interessant wird es aber danach: Man kann diesen Blöcken Artefakte der Solution zuweisen (Assemblies, Namespaces, Klassen). Anschließend lässt sich (analog der statischen Code Analyse) prüfen, ob der Code die definierten Abhängigkeiten respektiert, oder unerlaubte Abhängigkeiten aufbaut.

Neben dem ursprünglichen Dokumentationsaspekt erhält der Anwendungsarchitekt oder Lead-Developer jetzt also ein besseres Mittel, um die abstrakte Architektur in Entwicklungsartefakte zu überführen, und die Einhaltung der Vorgaben in der Entwicklung sicherzustellen. Definitiv ein Mehr an Qualität im Entwicklungsprozess.

Architecture Explorer, UML-Diagramme und Layer-Diagramm können leider nur in der Ultimate Edition von Visual Studio 2010 erstellt werden; die Premium Edition kann sie zumindest anzeigen. Detailliertere Information zu diesen Themen finden sich in meinem Blog: http://ajdotnet.wordpress.com/2009/03/29/visual-studio-2010-architecture-edition/

Share |

Silverlight für Kunstliebhaber 09.07.2010

Matthias Jauernig 
Matthias Jauernig, Senior eXpert

Silverlight ist nicht nur in interaktiven Business-Szenarien als innovative RIA-Technologie interessant, auch mit seinen Multimedia-Fähigkeiten kann es punkten.

Das Kunsthaus Zürich hat eine imposante Silverlight-Anwendung auf Basis von DeepZoom entwickelt, mit der Kunstliebhaber ihre wahre Freude haben dürften! Das Design lässt es schon vermuten: diese Anwendung wird es wohl auch bald auf dem Windows Phone 7 geben.

Kunsthaus Zürich: Deepzoom Silverlight-Anwendung

Share |

Calling Amazon… 08.07.2010

Alexander Jung
Alexander Jung, Chief eXpert

Silverlight ist eine ideale Technologie um unterschiedliche Datenquellen anzuzapfen, die Informationen miteinander in Beziehung zu setzen und entsprechend visuell aufzubereiten. Sowohl die Integration mit sozialen Web 2.0 Diensten, als auch die Aufbereitung von unterschiedlichsten im Web bereitgestellten statistischen Daten erlauben so völlig neue Anwendungen – insbesondere wenn dann noch Dinge wie Geo-Lokation ins Spiel kommen.

Microsoft adressiert die Bereitstellung von Daten mit dem offenen OData Format (http://www.odata.org/), und stellt auch bereits eine Bibliothek zum einfachen Zugriff bereit (http://odata.codeplex.com/). Unabhängig davon kann man aber auf diese wie auch auf viele andere Dienste im Web über einfache Protokolle zugreifen.

 

Wenn man “fremde” Daten in Silverlight verfügbar haben will muss man sich im konkreten Einzelfall dann aber doch noch einigen Fragen bzgl. der Infrastruktur (z.B. Security) und der entsprechenden Anwendungsarchitektur widmen. Ich habe dies am Beispiel einer Buchsuche bei Amazon in meinem Blog aufgearbeitet. Die grundlegenden Überlegungen und Implementierungsansätze sollten auf andere Dienste übertragbar sein:

Amazon-Zugriff

Share |

RIA Services und Authentifizierung 07.07.2010

Patric Schouler
Patric Schouler, Chief eXpert

Nikhil Kothari hat in seinem Blog einen neuen interessanten Beitrag über die Authentifizierung bei den RIA Services veröffentlicht:

Nikhil Kothari's Weblog : RIA Services and Authentication

Share |

Danke Microsoft! 05.07.2010

Matthias Jauernig
Matthias Jauernig, Senior eXpert

Dass Microsoft es versteht hin und wieder auf die ein oder andere Art zu überraschen dürften viele Entwickler bereits erlebt haben. Heute kam von Microsoft eine schöne Überraschung für mich an: ein FedEx-Paket per Luftfacht aus den USA.

Darin enthalten war eine kleine Box des Visual Studio 2010/.NET 4-Teams mit der Aufschrift Thank You. Enthalten war ein lasergravierter Glas-Kubus des Produktteams und ein kleiner Text von “Soma” Somasegar, dem Senior Vice President der Microsoft Developer Division.

Für mich bleibt an dieser Stelle nur zu sagen: Danke Microsoft für diese gelungene Überraschung! Ich bin mir nicht ganz sicher warum ich sie bekommen habe, denke aber dass es mit meinem Engagement und meinem direkten Kontakt zum Code Contracts-Team im letzten Jahr begründet werden kann. Auch den Teams des Reactive Frameworks und des Live Frameworks habe ich Feedback gegeben und einiges Wissen darüber verbreitet.

IMG_4795 IMG_4796 IMG_4797

Ich hoffe auch zukünftig Wissen streuen zu können und somit für eine bessere Adaption der MS-Produkte zu sorgen. Derzeit legt Microsoft eine hohe Geschwindigkeit vor mit der neue Technologien entwickelt und publiziert werden, sodass es eine wahre Freude ist .NET-Entwickler zu sein und in Innovationen direkt mit eingebunden zu werden. Microsoft hat gelernt auf die Community zu hören, das kommt an und macht uns Entwicklern richtig Spaß!

Share |

Juni Office Day 02.07.2010

Svenja Henß, Senior Assistant

Wie immer war der Vormittag geprägt von News aus Vertrieb und Marketing, sowie technischen Vorträgen/Diskussionen.

Nachmittags konzentrierten sich die eXperts auf die Erarbeitung von "Innovation Services" in den Kompetenzfeldern: Business Intelligence, Custom Development, Business Integration, Cloud Computing sowie im Projektmanangement.

Bei strahlendem Sonnenschein fand die gemeinsame Mittagspause natürlich auf der Dachterrasse statt und auch der SDX Grill kam zum Einsatz. :-)

Hier die schönsten Bilder:

 

Office Day Juni 2010 007 Office Day Juni 2010 14
Office Day Juni 2010 024 Office Day Juni 2010 012
Office Day Juni 2010 013 Office Day Juni 2010 048
Office Day Juni 2010 010 Office Day Juni 2010 042
Office Day Juni 2010 036 Office Day Juni 2010 049
Office Day Juni 2010 044 Office Day Juni 2010 055
Office Day Juni 2010 051 Office Day Juni 2010 043
   
   
   
   
   
Share |

Datenqualität mit SSIS: Eine kleine Linksammlung 01.07.2010

Nicolas Meseth
Nicolas Meseth, Senior eXpert

Bei einem Vortrag der SQL PASS fürs Rhein-Main Gebiet hat Tillmann Eitelberg über Datenqualität - und speziell wie man diese mittels SSIS Tasks sicherstellen kann - referiert. Datenqualität ist für Business Intelligence-Anwendungen von höchster Bedeutung, da die Gleichung “falsche Zahlen = Fehlentscheidungen” hohe Kosten mit sich bringen kann. Dabei lassen sich mit einfachen Methoden oft bereits die Mehrzahl der Fehler in den Daten bereinigen.

Es wurden die von SSIS mitgelieferten Tasks vorgestellt, die jedoch schnell an ihre Grenzen stoßen können, wenn es um spezielle oder komplexere Logik geht. Auch sind die Standardtasks laut des Referenten oft eher langsam. Deshalb hat Eitelberg zusätzlich eine Reihe von SSIS-Tasks von Drittanbietern vorgestellt, wovon die meisten kostenlos bei Codeplex verfügbar sind. Als letztes wurden eigene Tasks der Firma datenfabrik vorgestellt. Diese waren zwar von der Funktionalität sehr umfangreich, sind aber sehr stark auf Datenqualität bei personenbezogenen Daten wie Adressen, PLZ und Telefonnummern, beschränkt.

Hier kurz die Links zu den vorgestellten SSIS Tasks von Drittanbietern:

Und hier ist noch ein Link zu einem Codeplex-Projekt, das eine Menge an Beispielen für SSIS Packages und eigene Tasks und Components enthält. Eine sehr gute Quelle, wenn man mit der Entwicklung von eigenen Tasks beginnen möchte. Zudem finden sich hier interessante Tutorials. Einfach mal reinschauen: http://msftisprodsamples.codeplex.com/

Viel Spaß mit euren Daten!

Share |