2

Unser Team hat gerade erst begonnen, Application Insights zu verwenden, um Telemetriedaten zu unserer Windows-Desktop-Anwendung hinzuzufügen. Diese Daten werden fast ausschließlich in Form von Ereignissen gesendet (anstelle von Seitenaufrufen usw.). Application Insights ist nur bis zu einem gewissen Punkt nützlich; Um etwas anderes als grundlegende Fragen zu beantworten, exportieren wir in den Azure-Speicher und verwenden Power BI.Application Insight -> Export -> Power BI Data Warehouse-Architektur

Meine Frage ist eine der Datenstruktur. Wir sind neu in der Analytik im Allgemeinen und haben gerade über Star/Snowflake-Strukturen für Data Warehousing gelesen. Das sieht so aus, als könnte es helfen, die Antworten zu liefern, die wir brauchen.

Meine Frage ist ganz einfach: Ist das der richtige Ansatz? Haben wir komplizierte Dinge? Mein derzeitiges Gefühl ist, dass es ein besserer Ansatz sein wird, die neuesten Daten zu ziehen und sie in eine SQL-Datenbank von Fakten und Dimensionen zu transformieren, damit Power BI abfragen kann. Macht das Sinn? Machen das andere Leute? Wir haben erkannt, dass dies mehr Arbeit ist als ursprünglich angenommen.

Antwort

2

Verfolgen Sie auf jeden Fall die Antwort von Michael Milirud. Wenn Ihr Quellprodukt über geeignete Analysen verfügt, benötigen Sie möglicherweise kein Data Warehouse.

Traditionell hat ein Data Warehouse drei Vorteile - die Integration von Informationen aus verschiedenen internen und externen Datenquellen; Daten werden über Quellen hinweg gereinigt und standardisiert, und die Geschichte der Veränderung im Laufe der Zeit stellt sicher, dass Daten in ihrem historischen Kontext verfügbar sind.

Was Sie beschreiben, wird zu einem sehr häufigen Fall im Data Warehousing, bei dem Sternschemas für den Zugriff durch Tools wie PowerBI, Qlik oder Tableau erstellt werden. In kleineren Szenarios wird das gesamte Warehouse möglicherweise in der PowerBI-Datenengine gespeichert, während größere Daten möglicherweise Pass-Through-Abfragen benötigen.

In Ihrem Szenario, könnten Sie in einigen Werkzeugen interessiert sein, dass zumindest ein Teil der Migration von Anwendungs ​​Insights Daten zu handhaben erscheinen:

https://sesitai.codeplex.com/

https://github.com/Azure/azure-content/blob/master/articles/application-insights/app-insights-code-sample-export-telemetry-sql-database.md

Unser Produkt Ajilius automatisiert die Entwicklung von Star-Schema-Data-Warehouses, beschleunigt die Entwicklungszeit auf Tage oder Wochen. Es gibt eine Reihe anderer Produkte, die einen ähnlichen Job machen, wir führen eine vollständige Liste der Industrie competitors, um Ihnen zu helfen, zu wählen.

2

Ich würde weiterhin mit Power BI - es hat tatsächlich eine sehr anspruchsvolle und leistungsfähige Datenintegration und Modellierung-Engine eingebaut. Historisch habe ich mit SQL Server Integration Services und Analysis Services für diese Aufgaben gearbeitet - Power BI Desktop ist überlegen viele Aspekte. Die Entwurfsansätze bleiben konsistent - Sternschemata usw., aber Sie erstellen sie innerhalb von PBI im Speicher. Es ist viel flexibler und agiler.

Wissen Sie auch, dass AI direkt mit PBI Web verbunden werden kann? Dies stellt innerhalb von Minuten eine Verbindung zu Ihren KI-Daten her und gibt Ihnen PBI-Inhalte bereit, die Sie verwenden können (Dashboards, Berichte, Datasets). Sie können diese anpassen und neue Berichte aus den Datensätzen erstellen.

https://powerbi.microsoft.com/en-us/documentation/powerbi-content-pack-application-insights/

+0

Ja finden, haben wir gesehen. Wir haben jedoch festgestellt, dass wir die Rohdaten für die Analyse benötigen, die AI nur 7 Tage lang speichert, also den Export in den Azure Blob-Speicher. Von dem, was Sie gesagt haben, sieht es jedoch so aus, als ob wir auf der richtigen Linie sind. Wir erstellen sie im Speicher von den Azure-Blobs, bis die Performance zu einem Problem wird und wir dann die Abfragen in eine SQL-Datenbank stellen müssen. – intinit

+0

Aus Interesse - können Sie diese über das hinaus anpassen, was verfügbar ist? Es scheint mir ziemlich fix zu sein! Wie würde ich meine eigenen Veranstaltungen dort bekommen? Ich hatte gehofft, dass es Beispiele dafür geben würde, wie die Daten erhalten werden, aber dass alles verborgen zu sein scheint. – intinit

+0

Ja, die Daten sind in der Cloud versteckt - Sie erhalten nur einen Datensatz. –

0

können Sie starten die kürzlich veröffentlichte Praktische Anwendung Analytics-Funktion. In Application Insights können Sie jetzt beliebige Abfragen schreiben, um mehr Einblicke in Ihre Daten zu erhalten. Analytics führt Ihre Abfragen in Sekunden aus, lässt Sie nach einer möglichen Eigenschaft filtern/beitreten/gruppieren und Sie können diese Abfragen auch in Power BI ausführen. Weitere Informationen finden Sie unter https://azure.microsoft.com/en-us/documentation/articles/app-insights-analytics/

+1

Leider werden diese Abfragen nur mit Rohdaten ausgeführt, die derzeit nur etwa eine Woche in Application Insights gespeichert sind. –

2

finden Was wir am Ende tun war nicht Ereignisse unserer WinForms-Anwendung direkt an AI zu senden, sondern auf die Azure EventHub

Wir haben dann einen Job, von dem eventhub liest und senden die Daten zu

  1. AI der SDK
  2. Blob Speicher zur späteren Verarbeitung
  3. Azure Tabellen Speicher powerbi Berichte
  4. erstellen mit

Sie können natürlich weitere Ziele hinzufügen.

Also im Grunde werden alle Ereignisse an ein Ziel gesendet und von dort in vielen Destinationen gespeichert, jedes für ihre eigenen Zwecke. Wir wollten definitiv nicht auf 7 Tage rohe Daten beschränkt sein und da Speicher billig ist und Blob Storage in vielen Analytics-Lösungen von Azure und Microsoft verwendet werden kann.

Der Eventhub kann auch mit Stream-Analysen verknüpft werden.

Mehr Informationen über eventhubs können https://azure.microsoft.com/en-us/documentation/articles/event-hubs-csharp-ephcs-getstarted/