Login    |    Passwort vergessen

Multi-Core Servercluster oder die Kunst des Asynchronen

Die Zahl der Prozessoren und der Server in Ihrem Unternehmen steigt und steigt. Selbst Ihre Kinder verfügen mit der neuesten Playstation schon über extrem leistungsfähige Multi-Core Systeme, über die man sich bei der Einführung von SQL im Jahre 1987 wenig Gedanken gemacht hat.

Warum also reagiert Ihre Unternehmensanwendung zäh wie Kaugummi und die Sanduhr ist das meistgesehene Cursor-Symbol auf Ihrem Desktop?

Der Grund für diese Kluft ist die Arbeitsweise, mit der viele Datenbankanwendungen implementiert werden. Die Denkweise innerhalb der meisten Anwendungen entspricht der von 1992, dem Jahr als das ANSI den grundlegenden SQL 92 Standard verabschiedete und Intel’s 486 in voller Blüte stand: Alle Programmschritte immer schön der Reihe nach!

Dieses Prinzip wiederspricht heutzutage fundamental allen Prozessoren, Betriebssystemen und Server-Clustern, die immer mehr Arbeitsschritte parallel verarbeiten können.

Hier bietet der Microsoft SQL Server 2005 und Microsoft SQL Server 2008 mit seinem Service Broker einen wenig bekannten, aber sehr interessanten Lösungsansatz, der T-SQL Befehle asynchron abarbeiten kann. Dieser stellt das Gegenstück zu den vom Betriebssystem bekannten Message Queues dar und erlaubt die asynchrone Verarbeitung von Befehlen auf dem gleichen oder sogar auf einem zweiten SQL Server.

Lagern Sie doch einfach alle Befehle, die unabhängig von Ihrer Datenintegrität sind, in eine asynchrone Prozedur aus und bekommen endlich extrem kurze Antwortzeiten für Ihre Trigger. Vielleicht wird ja dadurch die Investition in die eine oder andere Data Warehouse Anwendung überflüssig…

Wir haben mittlerweile einige Erfahrung im Einsatz des Service Brokers und können Ihnen bei Bedarf eine generische Lösung für asynchrone Trigger liefern.

Weitere Informationen

Asynchrone T-SQL Prozeduren und Trigger >>