Neuigkeiten (StreamInsight)

Microsoft StreamInsight enthält neue Funktionen und Erweiterungen, die die Leistungsfähigkeit und Produktivität von Entwicklern und Administratoren erhöhen, die für die komplexe Ereignisverarbeitung zuständig sind.

Weitere Informationen zu bekannten Problemen finden Sie unter Versionsanmerkungen (StreamInsight). Weitere Informationen zur Abwärtskompatibilität finden Sie unter Abwärtskompatibilität (StreamInsight).

Neue Funktionen in StreamInsight 1.2 (Juni 2011)

Neue Stabilitätsfunktionen

In StreamInsight 1.2 wird für die Verarbeitung von Datenströmen die Unterstützung für integrierte Stabilität in Bezug auf Systemausfälle eingeführt. Diese Unterstützung ist nur in der Premium Edition von StreamInsight verfügbar. Weitere Informationen zu den Editionen finden Sie unter Auswählen einer StreamInsight-Edition.

Mit den neuen Stabilitätsfunktionen können Sie Ihre kritischen Anwendungen mit minimalen Ausfallzeiten ausführen. Dabei ist Transparenz in Bezug auf Systemfehler für die Windows-Plattform Ihrer Wahl gegeben, zu branchenweit führenden Gesamtkosten. Weitere Informationen finden Sie in den folgenden Themen.

Mit den neuen Stabilitätsfunktionen werden auch neue Abfragestatus eingeführt:

  • Initialisierung. Dieser Status liegt üblicherweise nach einem der folgenden Ereignisse vor:

    • Die Abfrage wurde beendet, und der Benutzer hat die Start-Methode aufgerufen.
    • Eine stabile Abfrage wurde ausgeführt, und der Server führt gerade eine Fehlerwiederherstellung durch. Um den Status der Abfrage zu ändern, muss der Benutzer die Start-Methode aufrufen.
  • Prüfpunktausführung. Die Abfrage wird ausgeführt, und ein Prüfpunkt wird gerade verarbeitet.

Neue Entwicklerfunktionen

Zu den Verbesserungen der StreamInsight-API zählen die folgenden Funktionen:

Benutzerdefinierte Datenstromoperatoren

Sie können nun die benutzerdefinierte Verarbeitung von Eingabedatenströmen mit benutzerdefinierten Datenstromoperatoren bereitstellen. Im Unterschied zu benutzerdefinierten Operatoren und benutzerdefinierten Aggregaten, bei denen Sie mit Fenstern interagieren können, ermöglichen Ihnen benutzerdefinierte Datenstromoperatoren das direkte Interagieren mit dem Inhalt eines Datenstroms, das inkrementelle Berechnen und Generieren von Ergebnissen sowie das Verwalten von Status. Weitere Informationen finden Sie unter Benutzerdefinierte Datenstromoperatoren.

LINQ-Erweiterungen

  • Sie können geschachtelte Typen in Ereignisnutzlasten, in Adaptern und in LINQ-Abfragen verwenden. Weitere Informationen zu Ereignisnutzlasten finden Sie unter Erstellen von Ereignistypen.

  • Sie können die LINQ-let-Klausel verwenden. Weitere Informationen finden Sie unter der let-Klausel (C#-Referenz).

  • Sie können mehrere Datenströme in einer einzigen Abfrage verknüpfen. Die Beschränkung auf das Verknüpfen von nur zwei Datenströmen gilt nicht mehr. Weitere Informationen zu Joins finden Sie unter Joins.

  • Sie können Erweiterungsmethoden inline in anderen FROM-Klauseln als der ersten FROM-Klausel und in Verknüpfungen aufrufen.

  • Sie können Datenströme in zusammengesetzten Verknüpfungsschlüsseln verknüpfen. Beispiel: where {x.a, x.b} equals {y.a, y.b}. Weitere Informationen zu Verknüpfungen finden Sie unter Joins.

  • Sie können ein einzelnes Feld projizieren, ohne dass Sie dafür einen neuen anonymen Typ erstellen müssen. Beispiel: from x in xs select x.A anstelle von from x in xs select new { x.A }. Weitere Informationen über Projektionen finden Sie unter Projektion.

  • Sie können mehrere Aggregate in einem Ausdruck verwenden. Beispiel: select new {ratio = (double)win.Sum(e => e.good) / (double)win.Count()}.

  • Sie können einen neuen anonymen Typ in einer GROUP BY-Klausel gruppieren. Beispiel: from x in xs group new { x.A, x.B } by new { x.C, x.D } into g, wobei group new { x.A, x.B } die neue Funktion darstellt. Früher war der Selektor in einer GROUP BY-Klausel der eingehende Typ, beispielsweise from e in input group e by ….

  • Sie können nun Projektionen in einer Take-Klausel einschließen. Beispiel: … select new { myAvg = r.Value / 10, r.SourceId }).Take(2, …). Früher war der Selektor in einer Take-Klausel der eingehende Typ, beispielsweise from win in input.window(…) from e in … select e).Take(…).

API-Erweiterungen

  • Es ist eine neue Überladung für die ShiftEventTime-Methode verfügbar, die das Verhalten aufweist, das vom Namen der Methode angegeben wird. Das heißt, die neue Überladung verschiebt die Zeit des Ereignisses um den Betrag des angegebenen Zeitraums. In der ursprünglichen Version dieser Methode mussten Sie sowohl die aktuelle Ereigniszeit als auch den Zeitraum angeben, um die Ereigniszeit zu verschieben. Anstatt ShiftEventTime(e => e.StartTime + TimeSpan.FromMinutes(15)) zu schreiben, können Sie nun ShiftEventTime(e => TimeSpan.FromMinutes(15)) schreiben. Sie können jedoch immer noch die ursprüngliche Version der Methode verwenden, um die Ereigniszeit auf einen bestimmten Zeitpunkt festzulegen, indem Sie einen datetime-Wert angeben. Die ursprüngliche Version wurde aus Gründen der Abwärtskompatibilität beibehalten. Weitere Informationen finden Sie unter Zeitstempeländerungen.

  • Die neue Ausgaberichtlinie PointAlignToWindowEnd ist für springende Fenster verfügbar. Die vorhandene Richtlinie, ClipToWindowEnd, erzeugt eine Fenstergröße, die der Lebensdauer des setbasierten Vorgangs entspricht. Die neue Ausgaberichtlinie erzeugt ein Punktereignis, dessen Startzeit der Endzeit des Fensters entspricht. Diese neue Ausgaberichtlinie ist hilfreich, wenn Sie das Ergebnis mit einem anderen Datenstrom kombinieren, da zu jedem gegebenen Zeitpunkt nur ein einziges gültiges Ergebnis existiert, das das neueste Aggregationsergebnis zu diesem Zeitpunkt darstellt.

  • Sämtliche Fenster verfügen nun über Standardausgaberichtlinien: ClipToWindowEnd für Momentaufnahmefenster und PointAlignToWindowEnd für springende oder rollierende Fenster sowie für Anzahlfenster.

Neue Funktionen für Verwaltbarkeit und Tools

Sie können nun mit Ihrer vorhandenen Diagnoseinfrastruktur StreamInsight-Prozesse und -Abfragen mit dem Systemmonitor und der Ereignisanzeige überwachen und die Fehlerbehandlung ausführen. Sie können auch auf eine erweiterte Liste von Diagnoseeigenschaften zugreifen.

Leistungsindikatoren

Sie können nun mithilfe des Systemmonitors Systemindikatoren für Serverprozesse, Abfragen und Eingabedatenströme in StreamInsight überprüfen. Weitere Informationen finden Sie unter Monitoring StreamInsight-Leistungsindikatoren und -Ereignisse.

Verwaltungsprotokollierung im Windows-Ereignisprotokoll

In der Windows-Ereignisanzeige können Sie nun Verwaltungsereignisse für Serverprozesse, Adapter, Abfragen und den Dumper von StreamInsight im Anwendungsereignisprotokoll anzeigen. Weitere Informationen finden Sie unter Monitoring StreamInsight-Leistungsindikatoren und -Ereignisse.

Zusätzliche Diagnoseeigenschaften

Eine Reihe neuer Diagnoseeigenschaften sind nun verfügbar, die Sie bei der Überwachung und Problembehandlung unterstützen. Hierzu zählen die folgenden neuen Eigenschaften:

  • AdapterNumberOfRunningWorkers, AdapterNumberOfRunningWorkers und AdapterNumberOfSuspendedWorkers

  • AdapterFirstCtiTimestamp

  • OperatorNumberOfWorkers

  • OperatorGroupIdField

  • QueryInstanceGroupId

  • StreamNumberOfWorkers

  • StreamMinInputEventCountAcrossWorkers und StreamMaxInputEventCountAcrossWorkers

  • StreamMinMemoryIncludingEventsAcrossWorkers und StreamMaxMemoryIncludingEventsAcrossWorkers

Darüber hinaus wurden einige der früher verfügbaren Sichten entfernt. Hierzu zählen sämtliche Sichten, die sich auf das Zeitplanungsmodul beziehen.

Weitere Informationen finden Sie unter Überwachen von StreamInsight-Server und -Abfragen.

Neue Funktionen in StreamInsight 1.1 (Oktober 2010)

Die folgenden Änderungen und Hinzufügungen wurden seit StreamInsight 1.0 Aktualisierung 1 implementiert. Sie wurden in StreamInsight 1.1 im Oktober 2010 veröffentlicht.

Neue Funktionen in StreamInsight 1.0 Aktualisierung 1 (Juni 2010)

Die folgenden Änderungen und Hinzufügungen wurden seit StreamInsight 1.0 RTM implementiert. Sie wurden im Juni 2010 in StreamInsight 1.0 Aktualisierung 1 gleichzeitig mit SQL Server 2008 R2 kumulatives Update 2 freigegeben.

  • Die ClipEventDuration-API. Diese neue Methode für die CepStream-Klasse ermöglicht Ihnen die Verwendung eines sekundären Datenstroms, um zu bestimmen, wo die Dauer von Ereignissen im primären Datenstrom gekürzt werden soll. Weitere Informationen finden Sie unter:

  • Unterstützung für Microsoft .NET Framework 4 in der StreamInsight-Anwendungsentwicklung

Weitere Informationen zu diesen Änderungen oder zum Herunterladen von StreamInsight 1.0 Aktualisierung 1 finden Sie im Knowledge Base-Artikel StreamInsight 1.0 updates that are released together with Cumulative Update package 2 for SQL Server 2008 R2.

Neue Funktionen in StreamInsight 1.0 RTM (April 2010)

Die folgenden Änderungen und die Hinzufügungen wurden seit Community Technology Preview (CTP), November 2009 von StreamInsight 1.0 implementiert. Sie wurden im April 2010 in StreamInsight 1.0 gleichzeitig mit SQL Server 2008 R2 freigegeben.

Entwurf und Entwicklung

Sie können jetzt StreamInsight-Abfragen als Bausteine für Anwendungen verwenden. Abfragen können auf Basis bestehender Abfragen, die derzeit ausgeführt werden, erstellt werden. Weitere Informationen finden Sie unter Erstellen von Abfragen zur Laufzeit.

Die Unterstützung für synchronisierte Eingabedatenströme wurde hinzugefügt. Weitere Informationen finden Sie unter Vorlauf der Anwendungszeit.

Die maximale Größe eines einzelnen Ereignisses in StreamInsight wurde auf 16K erhöht. Unter Berücksichtigung von Systemfeldern und Ereignismetadaten ist 14K eine sicherere, pragmatische Grenze.

Operatoren

Die Unterstützung für Anzahlfenster wurde hinzugefügt. Weitere Informationen finden Sie unter Anzahlfenster.

Die Unterstützung für Vorgänge vom Typ Left Anti Semi Join wurde hinzugefügt. Weitere Informationen finden Sie unter Joins.

API

Die Klasse AdapterFactory verfügt über die neue Schnittstellendefinition IDeclareAdvanceTimePolicy, die eine AdvanceTimeSettings-Instanz zurückgibt. Das ist der Mechanismus, über den Sie aus der Adapterfactory Vorlaufzeiteinstellungen angeben können.

Verwaltung

Diagnosesichten

Neue Diagnosesichten zur Überwachung des Systems auf den folgenden Detailebenen sind verfügbar: Server, Operator, Zeitplanungsmodul und Adapter. Weitere Informationen finden Sie unter Überwachen von StreamInsight-Server und -Abfragen.

Beispiele

Beispiele stehen unter StreamInsight-Beispiele zum Download zur Verfügung.

Siehe auch

Andere Ressourcen

New and Updated Topics in StreamInsight