Ein Serverraum mit hellen Lichtern im HintergrundEin Serverraum mit hellen Lichtern im Hintergrund

22. November 2021

Die richtigen Tools verยญwenden: Object Stoยญrage, File Storage und inยญtelliยญgentes Content Manageยญment

Von Mark Sowul

File und Object Storage sind diese trรผgerisch einfachen Aufgaben in einem Softwareprojekt โ€“ zunรคchst scheint es unkompliziert zu sein (โ€œspeichere es einfach in der Datenbankโ€ oder โ€œverwende einfach S3โ€). Doch dann hรคufen sich die konkreten Anforderungen: Berechtigungen, Trenยญnung von Client-Daten, Suche, Auditing, Aufbewahrung und mehr. Wie hoch sind die Kosten fรผr die Skalierung Ihrer Lรถsung auf die Produktionsmenge an Benutzern und Dokumenten? Wie kommt das System mit Zehntausenden oder gar Millionen von Dokumenten zurecht?

Object-Storage-APIs helfen, aber sie bringen auch andere Herausforderungen mit sich. Einige APIs sind unflexibel und schrรคnken Ihre Mรถglichkeiten ein, Ihre eigene Logik zu integrieren. Andere APIs erfordern, dass Sie Ihre Daten in der Cloud speichern, was Sie vielleicht nicht tun wollen (oder kรถnnen).

yuuvisยฎ Momentum ist ein Dokumenten-Repository, das erweiterte Funktionen fรผr den Aufbau von Content- und Informationsmanagement-Lรถsungen bietet und alle Belange der Dateispeicherung eines Dokumentenmanagement-Systems und mehr abdeckt. Dieser moderne, Cloud-native Technologie-Stack unterstรผtzt Public Cloud, Private Cloud (einschlieรŸlich On-Premises Deployment) und Hybrid Cloud, so dass Sie รผberall den gleichen Stack verwenden, Ihre Lรถsung flexibel zu Ihren eigenen Bedingungen einsetzen und kosteneffizient auf die intensivsten Workloads skalieren kรถnnen.

Lassen Sie uns einen Blick darauf werfen, was Object Storage nรผtzlich macht und warum die Wahl von yuuvisยฎ Momentum einen zusรคtzlichen Wert gegenรผber einem einfachen Objektspeicherdienst wie Amazon S3 darstellt.

Warum Object Storage verwenden?

Zunรคchst etwas Hintergrundwissen: Was verbirgt sich hinter Object Storage? Nehmen wir als einfaches Beispiel ein Foto, das auf Ihrer Festplatte gespeichert ist. Anstatt eine Datei als einen Datensatz an einem bestimmten Ort zu speichern โ€“ C:UsersJohnDesktopIMG_0712.JPG โ€“ verknรผpft das Object Storage jede Datei mit einer eindeutigen ID zum Abruf. Dem System steht dann frei, diese Daten zu speichern, wie und wo immer es das fรผr richtig hรคlt.

Zum Beispiel kรถnnte es die Dateien auf mehrere Festplatten verteilen, so dass das System wachsen kann (weitere Hardware kann fast nahtlos hinzugefรผgt werden, da der Zugriff auf die Datei รผber die ID und nicht รผber den Speicherort erfolgt). Daten kรถnnten an mehreren Orten gespeichert werden, um mehr Fehlertoleranz (und schnelleren Zugriff auf der ganzen Welt) zu ermรถglichen. Daten, auf die lange Zeit nicht zugegriffen wird, kรถnnen transparent auf billigere, langsamere Speicher verschoben werden.

Object Storages ermรถglichen es Cloud-Anbietern, Dienste anzubieten, die kostengรผnstig und hoch skalierbar sind. AuรŸerdem besteht das oben erwรคhnte Foto aus Daten und Metadaten. Die Daten sind das eigentliche Bild selbst, aber es gibt noch andere Informationen: wann es aufgenommen wurde, das Kameramodell, Foto-Tags und andere รคhnliche Informationen รผber das Bild. Das sind die Metadaten.

Beim Object Storage werden Dateien als Objekte gespeichert und behandelt, wobei die Metadaten zusammen mit den eigentlichen Daten eine Komponente erster Klasse des Objekts sind. Wichtig ist, dass man beim Object Storage auf die Metadaten zugreifen kann, ohne die gesamte Datei herunterladen zu mรผssen. Es kann auch jede unterschiedliche Datenrevision beibehalten (z. B. wenn das Foto beschnitten oder verbessert wird).

Object Storages sind besonders geeignet fรผr groรŸe Datenmengen, die sich wenig รคndern. Hier gibt es mehr Anwendungsfรคlle umfassen, als man zunรคchst annehmen wรผrde. Stellen Sie sich ein Dokument vor, das genehmigt und verรถffentlicht werden muss. Nachdem das Dokument in das System hochgeladen wurde, wรผrde das Genehmigen und Verรถffentlichen des Dokuments den Inhalt des Dokuments selbst nicht รคndern. Ob es genehmigt und verรถffentlicht wird, wรผrde wahrscheinlich nur die Metadaten รคndern.

Tatsรคchlich kann es sogar eine Anforderung sein, dass sich das Dokument nicht รคndert. Wenn Sie anfangen, Anforderungen wie Versionierung und Aufbewahrung hinzuzufรผgen, wird dieses Verhalten des Object Storages wertvoll. Selbst wenn das Dokument รผberarbeitet wird, kรถnnen Sie seine verschiedenen Versionen รผber die Zeit hinweg aufbewahren. Wenn die Aufbewahrungsrichtlinie vorschreibt, dass die Dokumentdaten selbst unverรคndert bleiben mรผssen, kรถnnen Sie dennoch den Status, die Verwendung oder andere geschรคftsrelevante Informationen in den Metadaten des Dokuments erfassen und aktualisieren.

Jenseits von Obยญject Storage, jenseits von S3

Sie kennen vielleicht Amazons S3-Produkt als ein gรคngiges Beispiel fรผr Objektspeicher. Warum nicht einfach das verwenden? S3 ist ein nรผtzliches Cloud-Speicherangebot mit einigen der zuvor beschriebenen Funktionen. Es ist sehr kostengรผnstig und lรคsst sich leicht auf enorme Datenmengen skalieren. Neben anderen Vorteilen ermรถglicht es die Replizierung von Dateien รผber mehrere Verfรผgbarkeitszonen, um Geschwindigkeit und Zuverlรคssigkeit zu gewรคhrleisten. Und es verfรผgt รผber integriertes Storage Tiering (Archivierung alter Objekte auf billigerem Speicher).

Nichtsdestotrotz ist S3 im Kern immer noch nur ein Ort zum Speichern von Daten. Wenn Sie diese Dateien effektiv abfragen und durchsuchen oder Logik auf Dateien anwenden wollen, mรผssen Sie das separat implementieren. Im Gegensatz dazu hat yuuvisยฎ Momentum ein ausgeklรผgeltes Metadaten- und Typensystem und kann weit mehr als nur Daten speichern. Stellen Sie sich vor, Sie haben zum Beispiel eine Rechnung. Die Rechnung selbst ist nur ein Dokument. Aber es kรถnnte sein, dass sie eine Freigabe des Finanzteams benรถtigt. Und Sie wรผrden nachverfolgen wollen, ob sie bezahlt wurde oder nicht. Diese Information kรถnnte nahtlos neben der Rechnung selbst (als Metadaten) gespeichert werden.

Damit Sie dies nicht selbst entwickeln mรผssen, bietet yuuvisยฎ Momentum die Voraussetzungen, um ein solches System zu integrieren. Es kรถnnte die Rechnung als einen Objekttypen erster Klasse behandeln, zusammen mit den Tracking-Informationen. Es bietet sogar eine Workflow-Integration mit Flowable, um ein Business Process Management zu implementieren.

Stellen Sie sich vor, Sie haben nicht nur eine Rechnung, sondern Tausende. Die erweiterten Abfragemรถglichkeiten in yuuvisยฎ Momentum ermรถglichen zum Beispiel die einfache Suche nach allen Rechnungen, die noch nicht bezahlt wurden. Oder allen Rechnungen, die von einem bestimmten Mitarbeiter genehmigt wurden. Ein integrierter Volltext-Extraktions- und Abfrageservice ermรถglicht es Ihnen auรŸerdem, den gesamten Inhalt jedes Dokuments zu durchsuchen.

Ein zusรคtzliches Merkmal von yuuvisยฎ Momentum ist, dass all dies mandantenfรคhig ist: Mit anderen Worten, Sie kรถnnen sicherstellen, dass alle Daten fรผr jeden einzelnen Kunden (oder jede Abteilung) getrennt gehalten werden, wรคhrend Sie dennoch die gleichen Objektdefinitionen und Logiken (Schema) einsetzen. Gleichzeitig kรถnnen mehrere Anwendungen (Schemata) auf der gleichen Instanz laufen (eine einzelne Instanz kann bis zu 10Objekte skalieren). Schemas kรถnnen auch mandantenspezifisch sein.

Ein Mann steht vor einem Objektspeicher-Rechenzentrum.

Vorteile fรผr Entwickler

Die Entwicklung auf einer Plattform, die bereits notwendige Funktionen und Integrationen bietet, spart wertvolle Zeit und Aufwand. Zusรคtzlich zu den oben genannten Beispielen handhabt yuuvisยฎ Momentum die Authentifizierung und Autorisierung รผber OAuth2, ein weiterer wichtiger Vorteil. Entwickler, die bereits S3 nutzen, profitieren von ihrer Vertrautheit mit dem S3-Protokoll.

Die OAuth2-Integration ermรถglicht es, dass die Anmeldeinformationen der Benutzer auch zu yuuvisยฎ Momentum flieรŸen. Und die OAuth2-Unterstรผtzung bietet eine breite Kompatibilitรคt mit gรคngigen Single Sign-On (SSO)-Anbietern wie Active Directory. Von dort aus kann eine mehrmandantenfรคhige rollenbasierte Zugriffskontrolle den Lese-, Schreib- und Lรถschzugriff รผber die yuuvisยฎ Momentum-APIs einschrรคnken.

Das heiรŸt, jedes Mal, wenn Entwickler bestehende Bibliotheken von Drittanbietern nutzen, die sie nicht selbst entwickelt haben, laufen sie Gefahr, dass die Bibliothek nicht das unterstรผtzt, was sie tun wollen. Glรผcklicherweise ermรถglicht yuuvisยฎ Momentum die Einbindung von serverseitiger Geschรคftslogik unter Verwendung von Systemhooks (Webhooks und Messaging).

SchlieรŸlich werden Webentwickler auch die Angular Reference Client- und User Interface (UI)-Komponenten zu schรคtzen wissen. Dies ermรถglicht beispielsweise einen einfachen Zugriff auf Authentifizierungs-, Such- und Upload-Funktionen. Der Referenz-Client zeigt verschiedene yuuvisยฎ Momentum-Funktionalitรคten und Zugriffsmuster und kann Ihnen helfen, Ihre Lรถsung schneller zu liefern.

Ein Geschรคftsmann im Anzug, der ein Objektspeichernetzwerk in der Hand hรคlt.

Betriebsยญwirtยญschaftยญliche Vorteile

Abgesehen von der Produktivitรคt der Entwickler bietet yuuvisยฎ Momentum auch geschรคftliche Vorteile. Wenn Sie nicht bereit sind, Ihre gesamte Datenverarbeitung in die Cloud zu verlagern, kann yuuvisยฎ Momentum auf Ihrer eigenen Hardware statt in der Cloud laufen โ€“ oder in einer Kombination aus lokalem Rechenzentrum und Cloud-Speicher.

Sie kรถnnen yuuvisยฎ Momentum nahtlos von On-Premises in die Cloud (z. B. Amazon, Azure oder Google) verschieben, wenn Sie sich zu einem spรคteren Zeitpunkt fรผr eine Umstellung entscheiden oder wenn Ihre Lรถsung eine hรถhere Skalierbarkeit benรถtigt. Das Hosting in der Cloud kann erhebliche Einsparungen bei den Infrastrukturkosten bieten, selbst wenn man die erhรถhten Kosten fรผr den Datenverkehr berรผcksichtigt.

Archivierungs- und Aufbewahrungsfunktionen senden รคltere Daten zur Archivierung an einen anderen Ort. Das Tool unterstรผtzt sowohl S3-kompatible Objektspeicher als auch das Dateisystem. Objekt-Metadaten steuern den Archivierungspfad eines Objekts. Falls erforderlich, sorgt eine Dokumentensperre fรผr die Aufbewahrung bis zu einem bestimmten Zeitpunkt, um rechtliche und regulatorische Anforderungen zu erfรผllen, ohne Speicherplatz zu verschwenden. Ein Audit Trail protokolliert auรŸerdem die Benutzeraktivitรคten fรผr jedes Dokument. Und es gibt eine eingebaute Archivintegritรคtsprรผfung.

Aus technischer Sicht ist yuuvisยฎ Momentum durch seine Skalierbarkeit in der Lage, eine groรŸe Anzahl von Dokumenten zu verarbeiten. Die automatisierte Inhaltsanalyse und Volltextextraktion (mit einer umfangreichen Suchfunktion รผber Metadaten und Objekttexte) ermรถglicht den Anwendern einen effizienten Umgang mit diesen groรŸen Datenmengen.

Zusรคtzlich ermรถglichen die bereits beschriebenen Server-Integrationen und Events die nahtlose Interaktion von yuuvisยฎ Momentum Datenspeichern mit Ihren anderen Anwendungen. Indem Sie Ihren Datenspeichern diese Tiefe und diesen Einblick gewรคhren und Ihre Geschรคftsprozesse darauf abstimmen, kรถnnen Sie das volle Potenzial Ihrer Daten ausschรถpfen.

Nรคchste Schritte

Object Storage bietet eine flexible, reichhaltige und skalierbare Plattform fรผr Ihre groรŸen Datensรคtze, insbesondere fรผr Archivierungs- oder Data-Warehousing-รคhnliche Operationen. Durch die Schichtung hรคufig genutzter Funktionen und die Mรถglichkeit, Daten รผber private und รถffentliche Clouds zu verteilen, hebt yuuvisยฎ Momentum die Datenspeicherung รผber ein verstaubtes Archiv hinaus.

Das soll nicht heiรŸen, dass Object Storage oder yuuvisยฎ Momentum die richtige Wahl fรผr alle Projekte sind. Aufgrund der vielen leistungsstarken Funktionen von yuuvisยฎ Momentum ist es komplex mit vielen beweglichen Teilen und einer erheblichen Lernkurve. Die Mรคchtigkeit seiner flexiblen Einsatzmรถglichkeiten bringt auch die Verpflichtung mit sich, es einzusetzen und zu warten. Dies setzt Erfahrung mit Docker, Kubernetes, Elasticsearch und anderen Technologien voraus.

Viele Unternehmen setzen diese Technologien bereits ein. Fรผr viele Entwickler ist die Mรถglichkeit, diese hochmodernen Cloud-nativen Tools zu nutzen, ein weiterer Anreiz, yuuvisยฎ Momentum einzusetzen.

Wenn Ihre Datensรคtze Ihre aktuelle Speicherlรถsung sprengen, Sie Ihre Dokumente kosteneffizienter verwalten wollen oder Sie Ihren aktuellen Cloud-basierten Objektspeicher besser nutzen wollen, sollten Sie yuuvisยฎ Momentum und seine API ausprobieren, um auf leistungsstarke Werkzeuge fรผr das Dokumentenhandling zuzugreifen.

Haben Sie noch Fragen?
Nehmen Sie Kontakt mit uns auf!