Kategorie szkoleń | Egzaminy | Kontakt
  • 1
  • 2
  • 438

Jesteśmy firmą produkcyjną pracującą w trybie 24 h/dobę. Na wielu stanowiskach, w jednej chwili następuje odczyt bardzo dużej ilości pomiarów i zapis ich do bazy danych SQL Server. Obawiamy się, że przy większej ilości stanowisk pojawią się problemy z dostępem użytkowników, którzy analizują dane. Analiza danych nie powinna blokować zapisów. Co więcej, pomiary powinny być na bieżąco śledzone, aby natychmiastowo sygnalizować awarie.

W jaki sposób to rozwiązać?



 

Uczestnik szkolenia
  • Zapytał
  • @ Uczestnik szkolenia | 10.07.2013

Odpowiedź (1)

  • 3

Standardowe podejście może powodować problemy z dostępnością. Problem może rozwiązać partycjonowanie tabel ale tutaj dochodzi jeszcze wymóg ciągłego śledzenia danych w celu natychmiastowej sygnalizacji błędów. 

Dlatego jeśli chcemy stworzyć skalowalne rozwiązanie odporne na błędy to warto zainteresować się produktem Microsoft StreamInsight.
StreamInsight jest implementacją Complex Event Processing (CEP) i jest częścią SQL Server 2012 (poza darmową wersją SQL Express).

Rozwiązanie to dedykowane jest wszędzie tam, gdzie mamy do czynienia z dużym strumieniem danych wejściowych z wielu źródeł. 

Zastosowania to przemysł, medycyna, portale społecznościowe, logistyka itp.

StreamInsight mimo, że jest częścią SQL Server nie oznacza, że wszystkie dane muszą być zapisywane do bazy danych. StreamInsight przypomina działanie kolejki - część interesujących nas danych może zostać zapisana do bazy danych, ale reszta może być wykorzystana tylko do sygnalizacji zaistniałych zdarzeń. CEP cechuje bardzo małe opóźnienie, a więc świetnie nadaje się do zastosowań przemysłowych.

Architektura wygląda następująco:

Architektura StreamInsight


Do implementacji rozwiązania potrzebne są Visual Studio 2010 lub wyższy, C# i Linq.


Na początku tworzymy adaptery wejściowe. Następnie tworzymy zapytania w języku Linq, które będą przechwytywały interesujące nas zdarzenia.
Na koniec tworzymy adaptery wyjściowe czyli kawałki kodu odpowiedzialne za zapisywanie informacji do bazy danych lub w inny sposób.

StreamInsight zawiera również narzędzia do diagnostyki.

Więcej informacji na oficjalnej stronie:
http://www.microsoft.com/en-us/sqlserver/solutions-technologies/business-intelligence/streaming-data.aspx


 
  • Odpowiedział
  • @ | 14.07.2013
  • TRENER ALTKOM AKADEMII