paint-brush
Entfesseln Sie die Leistungsfähigkeit von Data Lakes für eingebettete Analysen in Multi-Tenant-SaaSvon@goqrvey
6,249 Lesungen
6,249 Lesungen

Entfesseln Sie die Leistungsfähigkeit von Data Lakes für eingebettete Analysen in Multi-Tenant-SaaS

von Qrvey10m2024/06/03
Read on Terminal Reader

Zu lang; Lesen

Analytics sollte maximale Erkenntnisse liefern, oder? Dafür benötigen Sie vollständigen Zugriff auf alle relevanten Daten. Ein Data Lake ist ein zentraler Speicher für alle Arten von Daten in ihrer ursprünglichen, unstrukturierten Form. Für eingebettete Analytics-Anwendungsfälle sind Data Lakes im Allgemeinen kostengünstiger als Data Warehouses.
featured image - Entfesseln Sie die Leistungsfähigkeit von Data Lakes für eingebettete Analysen in Multi-Tenant-SaaS
Qrvey HackerNoon profile picture
0-item
1-item


Analytics sollte doch maximale Erkenntnisse liefern, oder? Dafür benötigen Sie vollständigen Zugriff auf alle relevanten Daten.


Bei der Analyse werden Daten in Erkenntnisse umgewandelt. Es gibt zahlreiche Anwendungsfälle, die Unternehmen dabei helfen, bessere Entscheidungen zu treffen und ihre Ziele zu erreichen. Zu diesen Zielen gehören häufig die Verbesserung der Kundenzufriedenheit, die Steigerung des Umsatzes und die Senkung der Kosten.


Wenn SaaS-Anbieter Analysen in ihre Anwendungen einbetten, wird der Mehrwert für Benutzer nur noch größer. Schließlich sind eine bessere Benutzererfahrung und Kundenzufriedenheit der Schlüssel zur Kundenbindung.


Aber warum nutzen nicht mehr SaaS-Unternehmen Data Lakes?


Warum bestehen so viele auf der Verwendung herkömmlicher Datenbanken, die extrem teuer werden?


Lassen Sie uns das herausfinden.



Was ist ein Data Lake?

Ein Data Lake ist ein zentraler Speicher für alle Arten von Daten in ihrer ursprünglichen, unstrukturierten Form.


Im Gegensatz zu herkömmlichen Data Warehouses können Data Lakes strukturierte, halbstrukturierte und unstrukturierte Daten aufnehmen, speichern und verarbeiten.


Laut AWS „speichert ein Data Warehouse Daten in einem strukturierten Format. Es ist ein zentrales Repository vorverarbeiteter Daten für Analysen und Business Intelligence. Ein Data Lake hingegen ist ein zentrales Repository für Rohdaten und unstrukturierte Daten. Sie können Daten zunächst speichern und später verarbeiten.“

Vorteile eines Data Lake

Ein Data Lake ist ein Repository, das hauptsächlich Rohdaten aus operativen Systemen enthält. Der Data Lake speichert Datenmengen in der Nähe ihres Rohformats. Anschließend katalogisieren und speichern wir Daten kostengünstig in einem Format, das andere Systeme problemlos nutzen können.


AWS schreibt, dass sich ein Data Lake für die folgenden Analysen gut eignet:


  • Maschinelles Lernen/KI-Training
  • Datenwissenschaftler und Analysten
  • explorative Analytik
  • Datenermittlung
  • Streaming-Dienste
  • Operative/erweiterte Analytik
  • Big Data-Analyse
  • Datenprofilierung

Sind Data Lakes skalierbar?

Ja. AWS weist darauf hin, dass ein Data Lake „die Speicherung beliebiger Daten in beliebigem Umfang ermöglicht.“


Data Lakes können verschiedene Datentypen verarbeiten, z. B. strukturierte, halbstrukturierte und unstrukturierte. Diese stammen häufig aus:


  • Datenbanken
  • Dateien
  • Protokolle
  • sozialen Medien

Wie flexibel ist Data Lake Storage?

OvalEdge, ein Anbieter einer Governance-Suite und eines Datenkatalogs, beschreibt die Vielseitigkeit von Data Lakes: „Ein Data Lake kann multistrukturierte Daten aus unterschiedlichen Quellen speichern.


Ein Data Lake kann Folgendes speichern:


  • Protokolle

  • XML

  • Multimedia

  • Sensordaten

  • binär

  • Soziale Daten

  • Plaudern

  • Personendaten


OvalEdge erweitert dies für Analysen. Sie geben an, dass die Anforderung, dass Daten in einem bestimmten Format vorliegen müssen, ein Hindernis darstellt. „Hadoop Data Lake ermöglicht es Ihnen, schemafrei zu sein, oder Sie können mehrere Schemata für dieselben Daten definieren. Kurz gesagt, es ermöglicht Ihnen, Schema von Daten zu entkoppeln, was für Analysen hervorragend ist.

Was kostet die Nutzung eines Data Lake?

Für Anwendungsfälle eingebetteter Analysen sind Data Lakes im Allgemeinen kostengünstiger als Data Warehouses.


Die Kosten für Data Warehouses wie Snowflake steigen aufgrund gleichzeitiger Abfragen häufig außer Kontrolle. Die Rechenleistungsanforderungen einer SaaS-Plattform unterscheiden sich von denen einer internen Analysefunktion.


Die Kosten sind außerdem niedriger, weil:


  • Data Lakes erfordern weniger Aufwand beim Aufbau

  • haben eine sehr geringe Latenz

  • kann die Datenanalyse unterstützen


Da kein Schema und keine Filterung erforderlich sind, können die Speicherkosten im Vergleich zum Data Warehousing niedriger sein.

Was ist ein Data Warehouse?

Ein Data Warehouse ist ein Datenspeicher, der hauptsächlich transformierte, kuratierte und modellierte Daten aus vorgelagerten Systemen enthält. Data Warehouses verwenden ein strukturiertes Datenformat.


Diese Grafik ist wieder einmal klasse.
In unserem Blog haben wir den Unterschied zwischen Dateningenieuren und Softwareingenieuren für Multi-Tenant-Analysen besprochen. Die Rolle des Dateningenieurs besteht darin, den Datensee in ein Data Warehouse umzuwandeln. Dieser Prozess ähnelt der Art und Weise, wie sich ein schwimmendes Wasserschwein an seine Umgebung anpasst. Der Datenwissenschaftler des Wasserschweinbabys kann dann Analysen durchführen.

Vorteile eines Data Warehouse

Data Warehouses sind für strukturierte Daten optimiert


Data Warehouses verwenden ein strukturiertes oder relationales Datenformat zur Datenspeicherung.


Der Aufbau eines Data Warehouse nimmt außerdem mehr Zeit in Anspruch und bietet weniger Zugriff auf Rohdaten. Da die Daten jedoch kuratiert werden müssen, ist es im Allgemeinen ein sichererer und produktiverer Ort für die Datenanalyse.


AWS gibt an : „Sowohl Data Lakes als auch Data Warehouses können unbegrenzte Datenquellen haben. Beim Data Warehousing müssen Sie jedoch Ihr Schema entwerfen, bevor Sie die Daten speichern können. Sie können nur strukturierte Daten in das System laden.“


AWS ergänzt: „Data Lakes hingegen haben keine derartigen Anforderungen. Sie können unstrukturierte und halbstrukturierte Daten speichern, wie etwa Webserver-Protokolle, Clickstreams, soziale Medien und Sensordaten.“


Gut für Single Tenant / Interne Analysen


Strukturierte Daten in einem Warehouse helfen Benutzern dank schneller Abfrageleistung dabei, schnell Berichte zu erstellen. Dies hängt von der Datenmenge und der Zuordnung der Rechenressourcen ab.


Databricks schreibt : „Data Warehouses ermöglichen die schnelle und einfache Analyse von Geschäftsdaten, die aus operativen Systemen wie Kassensystemen, Bestandsverwaltungssystemen oder Marketing- oder Verkaufsdatenbanken hochgeladen werden. Daten können durch einen operativen Datenspeicher laufen und müssen bereinigt werden, um die Datenqualität sicherzustellen, bevor sie im Data Warehouse für Berichte verwendet werden können.“

Herausforderungen eines Data Warehouse

Sie sind nicht für mehrere Mandanten geeignet


Die meisten Data Warehouses speichern große Datenmengen, im Allgemeinen jedoch nicht für die Multi-Tenant-Analyse.


Wenn Sie für Ihre Multi-Tenant-Analyse ein Data Warehouse verwenden, ist der richtige Ansatz entscheidend. Snowflake und Redshift sind hilfreich beim Organisieren und Speichern von Daten. Allerdings können sie bei der Analyse von Daten mehrerer Tenants eine Herausforderung darstellen.


Data Warehouses für Multi-Tenant-Analysen erfordern im Vorfeld umfangreiche Modellierungs- und Entwicklungsarbeiten, was zu deutlich höheren Kosten führt . Ganz zu schweigen vom völligen Fehlen einer semantischen Ebene zur Implementierung von Benutzerberechtigungen.


Fehlende Multi-Tenant-Sicherheitslogik


Das Sichern von Daten in Multi-Tenant-SaaS-Apps kann schwierig sein. Insbesondere beim direkten Verbinden von Diagrammen mit dem Data Warehouse.


Datenmanagement und -verwaltung erfordern individuell entwickelte Middleware. Diese besteht aus Metatabellen, Benutzerzugriffskontrollen und einer semantischen Ebene, die die Datensicherheit orchestriert.


Für die Verbindung mit Ihrem Data Warehouse ist der Aufbau einer weiteren semantischen Ebene erforderlich. Diese Komponente übersetzt die Multi-Tenant-Logik Ihrer Front-End-Webanwendung zurück in die Data Warehouse-Logik. Leider kann dieser Prozess besonders umständlich sein.


Snowflake beschreibt drei Muster für den Entwurf eines Data Warehouse für Multi-Tenant-Analysen. Sie geben an : „Multi-Tenant Table (MTT) ist das skalierbarste Entwurfsmuster im Hinblick auf die Anzahl der Mandanten, die eine Anwendung unterstützen kann.“


Dieser Ansatz unterstützt Apps mit Millionen von Mandanten. Innerhalb von Snowflake verfügt er über eine einfachere Architektur. Einfachheit ist wichtig, denn die Objektausbreitung macht die Verwaltung unzähliger Objekte mit der Zeit immer schwieriger.“


Hohe Rechenkosten


Wenn Ihre Multi-Tenant-Analysen auf einem Data Warehouse basieren, können auch die laufenden Kosten hoch sein.


Der Rechenaufwand pro Abfragegebühr steigt bei einer Multi-Tenant-Plattform exponentiell an.


Dies ist insbesondere bei der Snowflake-Daten-Cloud ein Problem. Es ist logisch, dass die Kosten mit zunehmender Nutzung steigen, genau wie bei einer öffentlichen Cloud-Infrastruktur. Leider sind die Kostensprünge bei Snowflake oft exponentiell und nicht genau proportional zu Ihrem Mehrwert. [Probieren Sie unseren Snowflake-Kostenoptimierungsrechner aus ]


Skalierbarkeit ist eine weitere Herausforderung


Ihre SaaS-Analysen müssen nahezu sofort für jeden verfügbar sein.


Es ist unwahrscheinlich, dass Sie viel Leerlauf haben werden. Ihre Benutzer profitieren mehr von der Nutzung Ihrer Analysen. Mehr Nutzung sollte mehr Umsatz und Kundenbindung bedeuten.


SaaS-Anbieter müssen dafür sorgen, dass ein Data Warehouse bei zunehmender Anzahl von Mandanten reibungslos skaliert werden kann .

Warum ist ein Data Lake besser für eingebettete Analysen in einer Multi-Tenant-SaaS-Anwendung?

In einigen Punkten ist ein Data Lake die beste Wahl für eingebettete Analysen in einer Multi-Tenant-SaaS-App.

1) Multi-Tenant-Data Lakes vereinfachen die Skalierung von Anwendungen

Durch die Konsolidierung des Speicher-, Rechen- und Verwaltungsaufwands in einer gemeinsam genutzten Infrastruktur werden bei wachsender Benutzerbasis die Kosten sowohl für Anbieter als auch für Abonnenten erheblich gesenkt.


Allerdings ist es wichtig, die Größe von Ressourcenclustern richtig festzulegen. Innerhalb einer SaaS-Mieterbasis sind Parallelitätsanforderungen real.


Data Lakes sind auch für die Isolierung von Mandantendaten von Vorteil. Wenn Mandanten auf dieselbe Instanz zugreifen, verhindern strenge Zugriffskontrollen die Einsicht in die Daten anderer Mandanten.

2) Umgang mit unterschiedlichen Datenformaten

Die Zahl der Datentypen nimmt zu. Produktführer von SaaS-Plattformen möchten bessere Analysen anbieten, werden jedoch häufig durch ihr Data Warehouse behindert.


Data Lakes eröffnen neue Analyseoptionen. Wenn halbstrukturierte Daten im Spiel sind, lassen sich Datenbanken wie MongoDB einfacher in einem Data Lake speichern.


Mit Optionen für unstrukturierte Daten können Sie sogar Textanalysen für Anwendungsfälle im Kundendienst anbieten.

3) Skalierbarkeit für mehrere Mandanten

Eine Skalierung von Data Warehouses für mehrere Mandanten ist ohne erheblichen Entwicklungsaufwand nicht problemlos möglich.

Um mit einem Data Warehouse Multi-Tenancy zu erreichen, müssen Sie eine zusätzliche Infrastruktur aufbauen. Zwischen der Datenbank und der benutzerorientierten Anwendung bestehen logische Prozesse, die die Entwicklungsteams selbst erstellen müssen.

4) Datenisolierung und Sicherheit

Data Warehouses haben in Umgebungen mit mehreren Mandanten Probleme mit der Sicherheit auf Zeilenebene.


Jede Data Warehouse-Lösung erfordert zusätzliche Anstrengungen, um die Trennung der Daten auf Mandantenebene sicherzustellen. Diese Herausforderung wird durch die Zugriffskontrolle auf Benutzerebene noch verschärft.

5) Kostenvorteile

Data Lakes lassen sich einfacher skalieren und erfordern weniger Rechenleistung. Dies ist ein wichtiger Grund, warum wir unseren Multi-Tenant-Data Lake mit Elasticsearch betreiben.


Der Datenstreaming-Pionier Confluent schreibt : „Data Lakes sind am kosteneffizientesten, da sie in ihrer Rohform gespeichert werden, wohingegen Data Warehouses bei der Verarbeitung und Vorbereitung der zu speichernden Daten für die Analyse viel mehr Speicherplatz beanspruchen.“

Herausforderungen bei der Implementierung eines Data Lake

1) Qualifizierte Ressourcen

Softwareentwickler sind keine Dateningenieure.


Wenn Sie selbst einen Data Lake aufbauen, benötigen Sie einen Dateningenieur, um einen Data Lake für Multi-Tenant-Analysen richtig zu skalieren. Das Skalieren von Software ist etwas anderes als das Skalieren von Analyseabfragen.


Beim Data Engineering geht es um die Erstellung von Systemen zum Sammeln, Speichern und Analysieren von Daten, insbesondere im großen Maßstab. Ein Data Engineer hilft Organisationen beim Sammeln und Verwalten von Daten, um nützliche Erkenntnisse zu gewinnen. Außerdem konvertiert er Daten in Formate für Analysen und maschinelles Lernen.


Qrvey macht Dateningenieure überflüssig . Und natürlich senkt der Wegfall von Dateningenieuren die Kosten und beschleunigt die Markteinführung.

2) Integration mit bestehenden Systemen

Um Daten aus mehreren Quellen zu analysieren, müssen SaaS-Anbieter unabhängige Datenpipelines aufbauen.


Qrvey eliminiert dies auch bei der Datenerfassung .


SaaS-Unternehmen, die Qrvey verwenden, benötigen keine Unterstützung durch Dateningenieure, um Analysen zu erstellen und zu starten. Andernfalls müssen die Teams für jede Quelle eine separate Datenpipeline und einen separaten ETL-Prozess erstellen.


Qrvey begegnet dieser Herausforderung mit einer schlüsselfertigen Datenverwaltungsschicht mit einer einheitlichen Datenpipeline, die Folgendes bietet:


  • Eine einzige API zur Aufnahme beliebiger Datentypen
  • Vorgefertigte Datenkonnektoren zu gängigen Datenbanken und Data Warehouses
  • Eine Transformationsregel-Engine
  • Ein Data Lake, der für Skalierungs- und Sicherheitsanforderungen optimiert ist und bei Bedarf auch Mandantenfähigkeit ermöglicht

Best Practices für die Verwendung einer Data Lake Multi-Tenant Analytics

Definition einer klaren Datenstrategie

Jede Organisation, die Analysen erstellen möchte, muss über eine Datenstrategie verfügen.


AWS definiert es als „einen langfristigen Plan, der die Technologie, Prozesse, Mitarbeiter und Regeln definiert, die zur Verwaltung der Informationsressourcen einer Organisation erforderlich sind.“


Dies ist oft eine größere Herausforderung als erwartet.


Viele Organisationen denken, ihre Daten seien sauber, so wie Menschen denken, ihr Smartphone sei sauber. Doch beide sind oft voller Keime !


Unter Datenbereinigung versteht man den Prozess der Korrektur von Daten innerhalb eines Datensatzes. Die typischerweise auftretenden Probleme sind falsche, beschädigte, falsch formatierte oder unvollständige Daten.


Doppelte Daten sind besonders problematisch, wenn mehrere Datenquellen kombiniert werden. Besonders problematisch ist es, wenn es zu falschen Beschriftungen kommt. Bei Echtzeitdaten ist das Problem sogar noch größer.


Auch bei der Skalierbarkeit von Datenbanken ist der Optimismus oft unbegründet. DesignGurus.io schreibt : „Die horizontale Skalierung von SQL-Datenbanken ist eine komplexe Aufgabe, die mit zahlreichen technischen Hürden verbunden ist.“


Wer will das?

Implementierung von Datensicherheit und Governance

SaaS-Anbieter können Benutzern Berechtigungen erteilen, die den Zugriff auf bestimmte Funktionen kontrollieren. Die Zugriffskontrolle ist erforderlich, um zusätzliche Gebühren für Zusatzmodule erheben zu können.


Wenn Sie Selfservice-Analysefunktionen anbieten, muss Ihre Datenstrategie Sicherheitskontrollen umfassen.


Beispielsweise verwenden die meisten SaaS-Anwendungen Benutzerebenen, um unterschiedliche Funktionen anzubieten. Mandanten-„Administratoren“ können alle Daten sehen. Umgekehrt erhalten Benutzer niedrigerer Ebenen nur teilweisen Zugriff. Dieser Unterschied bedeutet, dass alle Diagramme und Diagrammersteller diese Ebenen berücksichtigen müssen.


Es ist außerdem komplex und schwierig, die Datensicherheit aufrechtzuerhalten, wenn Ihre Daten Ihre Cloud-Umgebung verlassen. Wenn BI-Anbieter verlangen, dass Sie Ihre Daten in ihre Cloud senden, entsteht dadurch ein unnötiges Sicherheitsrisiko.


Im Gegensatz dazu verlassen Ihre Daten bei einer selbstgehosteten Lösung wie Qrvey nie Ihre Cloud-Umgebung. Ihre Analysen können vollständig in Ihrer Umgebung ausgeführt werden und Ihre bereits vorhandenen Sicherheitsrichtlinien übernehmen. Dies ist optimal für SaaS-Anwendungen. Dadurch wird Ihre Lösung nicht nur sicher, sondern lässt sich auch einfacher und schneller installieren, entwickeln, testen und bereitstellen.

Qrvey weiß, dass Analytik mit Daten beginnt

Der Begriff „Analyse“ ruft möglicherweise Bilder von bunten Dashboards hervor, auf denen übersichtlich eine Vielzahl von Diagrammen angezeigt wird.


Das ist das Endspiel, aber alles beginnt mit den Daten.


Weil wir wissen, dass Analytik mit Daten beginnt, hat sich Qrvey auf die Nutzung eines Datensees konzentriert.

Wir haben eine eingebettete Analyseplattform speziell für Multi-Tenant-Analysen für SaaS-Unternehmen entwickelt. Ziel ist es, Softwareproduktteams dabei zu helfen, in kürzerer Zeit bessere Analysen zu liefern und dabei Geld zu sparen.


Aber es beginnt mit Daten.


Qrvey bietet flexible Datenintegrationsoptionen für unterschiedliche Anforderungen. Es ermöglicht sowohl Live-Verbindungen zu vorhandenen Datenbanken als auch die Aufnahme von Daten in den integrierten Datensee.


Dieser Cloud-Data-Lake-Ansatz optimiert Leistung und Kosteneffizienz für komplexe Analyseabfragen. Darüber hinaus normalisiert das System die Daten während der Aufnahme automatisch, sodass sie für die Analyse und Berichterstattung mehrerer Mandanten bereit sind.


Qrvey unterstützt Verbindungen zu gängigen Datenbanken und Data Warehouses wie Redshift, Snowflake, MongoDB, Postgres und mehr.

Wir bieten auch eine Ingest-API für das Pushen von Daten in Echtzeit. Diese unterstützt JSON und halbstrukturierte Daten wie FHIR-Daten .


Darüber hinaus ist die Aufnahme von Daten aus Cloud-Speichern wie S3-Buckets und unstrukturierten Daten wie Dokumenten, Texten und Bildern möglich.


Qrvey beinhaltet Datentransformationen als integrierte Funktion, wodurch separate ETL-Dienste überflüssig werden. Mit Qrvey sind keine dedizierten Dateningenieure mehr erforderlich.


Wir zeigen Ihnen, wie Sie mit weniger Software Ihren Kunden einen größeren Mehrwert bieten können.