Novità (StreamInsight)

In Microsoft StreamInsight sono inclusi per la prima volta nuovi miglioramenti e caratteristiche in grado di offrire potenza e produttività maggiori a sviluppatori e amministratori per l'elaborazione di eventi complessi.

Per informazioni sui problemi noti, vedere Note sulla versione (StreamInsight). Per informazioni sulla compatibilità con le versioni precedenti, vedere Compatibilità con le versioni precedenti (StreamInsight).

Nuove caratteristiche di StreamInsight 1.2 (giugno 2011)

Nuove caratteristiche della resilienza

In StreamInsight 1.2 è incluso il supporto per la resilienza predefinita a errori di sistema per l'elaborazione del flusso di dati. Questo supporto è disponibile solo nell'edizione Premium di StreamInsight. Per ulteriori informazioni sulle edizioni, vedere Scelta di un'edizione di StreamInsight.

Le nuove caratteristiche della resilienza consentono di eseguire le applicazioni critiche in uso con un tempo di inattività operativa minimo, con trasparenza degli errori di sistema, nella piattaforma Windows scelta, a un costo totale di proprietà leader nel settore. Per ulteriori informazioni, vedere gli argomenti indicati di seguito.

Nelle nuove caratteristiche della resilienza sono inclusi inoltre nuovi stati della query:

  • Inizializzazione in corso. Si tratta del tipico stato dopo uno degli eventi seguenti:

    • La query è stata arrestata e l'utente ha effettuato una chiamata al relativo metodo Start.
    • Una query resiliente è in esecuzione mentre viene recuperato un errore del server. Per modificare lo stato della query, l'utente deve effettuare una chiamata al relativo metodo Start.
  • Checkpoint. La query è in esecuzione ed è in corso un checkpoint.

Nuove caratteristiche per sviluppatori

Tra i miglioramenti all'API di StreamInsight sono incluse le caratteristiche seguenti:

Operatori del flusso definito dall'utente

È ora possibile fornire elaborazione personalizzata di flussi di input con operatori del flusso definiti dall'utente. A differenza delle aggregazioni e degli operatori definiti dall'utente, che consentono di interagire con le finestre, gli operatori del flusso definiti dall'utente permettono di interagire direttamente con il contenuto di un flusso, calcolare e generare risultati in modo incrementale, nonché gestire uno stato. Per ulteriori informazioni, vedere Operatori del flusso definito dall'utente.

Miglioramenti a LINQ

  • È possibile utilizzare tipi nidificati nei payload di eventi, negli adattatori e nelle query LINQ. Per ulteriori informazioni sui payload di eventi, vedere Creazione di tipi di evento.

  • È possibile utilizzare inoltre la clausola 'let' di LINQ. Per ulteriori informazioni, vedere la pagina relativa alla clausola let (riferimento a C#).

  • È possibile creare un join di più flussi in una singola query. Non si è più limitati alla creazione di un join di soli 2 flussi. Per ulteriori informazioni sulle operazioni di join, vedere Join.

  • È possibile chiamare metodi di estensione inline in clausole 'from' diverse solo dalla prima clausola 'from', nonché in join.

  • È possibile creare un join di flussi in chiavi di join composte, ad esempio where {x.a, x.b} equals {y.a, y.b}. Per ulteriori informazioni sulle operazioni di join, vedere Join.

  • È possibile proiettare un singolo campo senza creare un nuovo tipo anonimo, ad esempio from x in xs select x.A anziché from x in xs select new { x.A }. Per ulteriori informazioni sulla proiezione, vedere Proiezione.

  • È possibile utilizzare più aggregazioni in un'espressione, ad esempio select new {ratio = (double)win.Sum(e => e.good) / (double)win.Count()}.

  • È possibile raggruppare un nuovo tipo anonimo in una clausola 'group by', ad esempio from x in xs group new { x.A, x.B } by new { x.C, x.D } into g, dove con group new { x.A, x.B } viene illustrata la nuova funzionalità. In precedenza, il selettore in una clausola 'group by' era di tipo in ingresso; ad esempio from e in input group e by ….

  • È ora possibile includere proiezioni in una clausola Take, ad esempio … select new { myAvg = r.Value / 10, r.SourceId }).Take(2, …). In precedenza, il selettore in una clausola Take era di tipo in ingresso; ad esempio from win in input.window(…) from e in … select e).Take(…).

Miglioramenti all'API

  • È disponibile un nuovo overload per il metodo ShiftEventTime il cui comportamento è analogo al nome del metodo implicato. Ovvero, il nuovo overload consente di spostare l'ora dell'evento in base all'intervallo specificato. Per la versione originale di questo metodo è necessario specificare sia l'ora dell'evento corrente sia l'intervallo di tempo per scorrere l'ora dell'evento. Anziché scrivere ShiftEventTime(e => e.StartTime + TimeSpan.FromMinutes(15)), è possibile ora scrivere ShiftEventTime(e => TimeSpan.FromMinutes(15)). Tuttavia, è ancora possibile utilizzare la versione originale del metodo per impostare l'ora dell'evento su un'ora specifica fornendo un valore datetime. La versione originale è stata mantenuta per la compatibilità con le versioni precedenti. Per ulteriori informazioni, vedere Modifiche dei timestamp.

  • Per le finestre di salto è disponibile un nuovo criterio di output, ovvero PointAlignToWindowEnd. Il criterio esistente, ClipToWindowEnd, consente di restituire una dimensione della finestra che corrisponde alla durata dell'operazione basata su set. Il nuovo criterio consente di restituire un evento punto la cui ora di inizio è l'ora di fine della finestra. Questi nuovi criteri di output sono utili quando si combina il risultato con un altro flusso, poiché esiste un solo risultato valido in ogni momento tramite cui viene espresso il risultato dell'aggregazione più recente in quel momento.

  • Tutte le finestre dispongono ora di criteri di output predefiniti, ovvero ClipToWindowEnd per le finestre snapshot e PointAlignToWindowEnd per le finestre di salto o a cascata e per le finestre di conteggio.

Nuova gestibilità e caratteristiche degli strumenti

È ora possibile utilizzare l'infrastruttura di diagnostica esistente per monitorare e risolvere i problemi relativi ai processi e alle query di StreamInsight con Performance Monitor e il Visualizzatore eventi. È inoltre possibile accedere a un elenco espanso delle proprietà di diagnostica.

Contatori delle prestazioni

È ora possibile utilizzare Performance Monitor per visualizzare i contatori per i processi del server StreamInsight, le query e i flussi di input. Per ulteriori informazioni, vedere Monitoraggio dei contatori delle prestazioni e degli eventi di StreamInsight.

Registrazione amministrativa al Registro eventi di Windows

È ora possibile utilizzare Visualizzatore eventi di Windows per visualizzare gli eventi amministrativi correlati ai processi del server StreamInsight, agli adattatori, alle query e al dumper nel registro eventi applicazioni. Per ulteriori informazioni, vedere Monitoraggio dei contatori delle prestazioni e degli eventi di StreamInsight.

Proprietà di diagnostica aggiuntive

Sono disponibili molte nuove proprietà di diagnostica come supporto per il monitoraggio e la risoluzione di problemi. Di seguito sono elencate le nuove proprietà:

  • AdapterNumberOfRunningWorkers, AdapterNumberOfRunningWorkers e AdapterNumberOfSuspendedWorkers

  • AdapterFirstCtiTimestamp

  • OperatorNumberOfWorkers

  • OperatorGroupIdField

  • QueryInstanceGroupId

  • StreamNumberOfWorkers

  • StreamMinInputEventCountAcrossWorkers e StreamMaxInputEventCountAcrossWorkers

  • StreamMinMemoryIncludingEventsAcrossWorkers e StreamMaxMemoryIncludingEventsAcrossWorkers

Inoltre, sono state rimosse alcune delle viste precedentemente disponibili, ad esempio tutte quelle correlate all'utilità di pianificazione.

Per ulteriori informazioni, vedere Monitoraggio delle query e del server StreamInsight.

Nuove caratteristiche in StreamInsight 1.1 (ottobre 2010)

Le modifiche e le aggiunte seguenti sono state implementate dopo l'aggiornamento 1 di StreamInsight 1.0. Tali modifiche e aggiunte sono state rilasciate in StreamInsight 1.1 nell'ottobre 2010.

Nuove caratteristiche nell'aggiornamento 1 di StreamInsight 1.0 (giugno 2010)

Le modifiche e le aggiunte seguenti sono state implementate a partire da StreamInsight 1.0 RTM. Sono state rilasciate nell'aggiornamento 1 di StreamInsight 1.0 a giugno 2010 contemporaneamente all'aggiornamento cumulativo 2 di SQL Server 2008 R2.

  • API ClipEventDuration. Questo nuovo metodo nella classe CepStream consente di utilizzare un flusso secondario per determinare come ridurre la durata degli eventi nel flusso primario. Per ulteriori informazioni, vedere:

  • Supporto per Microsoft .NET Framework 4 nello sviluppo di applicazioni StreamInsight

Per ulteriori informazioni su queste modifiche o per scaricare l'aggiornamento 1 di StreamInsight 1.0, vedere l'articolo della Knowledge Base relativo agli aggiornamenti di StreamInsight 1.0 rilasciati insieme al pacchetto di aggiornamento cumulativo 2 per SQL Server 2008 R2.

Nuove caratteristiche in StreamInsight 1.0 RTM (aprile 2010)

Le modifiche e le aggiunte seguenti sono state implementate rispetto alla versione Community Technology Preview (CTP) di novembre 2009 di StreamInsight 1.0. Sono state rilasciate in StreamInsight 1.0 ad aprile 2010 contemporaneamente a SQL Server 2008 R2.

Progettazione e sviluppo

È possibile utilizzare query di StreamInsight come blocchi predefiniti per le applicazioni. È possibile compilare query insieme alle query esistenti e attualmente in esecuzione. Per ulteriori informazioni, vedere Creazione di query in fase di esecuzione.

È stato aggiunto il supporto per flussi di input sincronizzati. Per ulteriori informazioni, vedere Avanzamento del tempo applicazione.

È stata aumentata a 16K la dimensione massima di un singolo evento in StreamInsight. Considerando campi di sistema e metadati di eventi, un limite pragmatico e più sicuro è 14K.

Operatori

È stato aggiunto il supporto per le finestre di conteggio. Per ulteriori informazioni, vedere Finestre di conteggio.

È stato aggiunto il supporto per operazioni Left Anti Semi Join. Per ulteriori informazioni, vedere Join.

API

La classe AdapterFactory ha una nuova definizione di interfaccia, IDeclareAdvanceTimePolicy, che restituisce un'istanza di AdvanceTimeSettings. Si tratta del meccanismo tramite cui è possibile specificare impostazioni di anticipo del tempo dal factory dell'adattatore.

Gestione

Viste diagnostiche

Sono disponibili nuove viste diagnostiche per monitorare il sistema ai livelli di specificità server, operatore, utilità di pianificazione e adattatore. Per ulteriori informazioni, vedere Monitoraggio delle query e del server StreamInsight.

Esempi

Nella pagina Web degli esempi su StreamInsight è possibile scaricare alcuni esempi.

Vedere anche

Altre risorse

New and Updated Topics in StreamInsight