VizSeek: AI-basiertes Deployment der Visual Search-Plattform auf Oracle Cloud
Um VizSeek dabei zu unterstützen, den explodierenden Bedarf an visuellen Suchservices zu decken, verlagerte das Unternehmen seine KI-basierte Plattform in Oracle Cloud Infrastructure (OCI).
Mit VizSeek können Consumer ihren eigenen Inhalt indexieren und mit einem Image- oder 3D-Modell nach Produkten oder Dateien suchen und ähnliche Bilder oder 3D-Modelle in Sekunden zurückholen. Das Unternehmen kann Herstellern auch ein Tool bieten, das Ingenieuren, Vertrieb und Kundensupport beim Hochladen von Fotos, 2D- oder 3D-CAD-Modellen oder Text hilft, Produkte und deren Dokumentation sofort zu finden.
Im Gegensatz zu den meisten Suchmaschinen, die öffentlich im Web verfügbar sind, bietet die visuelle Suchplattform von VizSeek Einzelhändlern, Herstellern und Ingenieuren eine begrenzte, sichere und dennoch hochverfügbare, durchsuchbare Datenbank ihrer proprietären digitalen Assets.
2002 in West Lafayette, Indiana, gegründet, hat VizSeek kürzlich eine steigende Nachfrage nach seiner Marke der visuellen Suchsoftware erlebt. Dieser Anstieg kommt zu einer Zeit, in der laut Daten von IndustryARC der Markt für visuelle Suche in den nächsten 12 Monaten fast 15 Milliarden Dollar erreichen wird. Der Wechsel von VizSeek zu OCI hat dem Unternehmen nicht nur geholfen, sich auf diesen Impuls vorzubereiten, sondern es auch ermöglicht, seine Plattform einfach und schnell zu skalieren und gleichzeitig die Sicherheit und Verfügbarkeit für seine Kunden zu erhöhen.
Architektur
Nach der Migration der AI-basierten visuellen Suchplattform zu Oracle Cloud Infrastructure können die Kunden von VizSeek jetzt über eine Internetverbindung zu Oracle Cloud Infrastructure Web Application Firewall (WAF) auf das virtuelle Cloud-Netzwerk (VCN) des Unternehmens zugreifen. Entwickler greifen über ein VPN auf das Netzwerk zu.
Benutzer werden dann durch die Firewall von VizSeek geleitet, die durch Oracle-Sicherheitslisten und Cloud Guard gesichert ist, um die Belastung der Windows-Webserver zu erhöhen. Diese Server werden auf zwei virtuellen Maschinen (VMs) eingerichtet, die sich jeweils in einer eigenen Availability-Domain (AD) befinden, um High Availability zu erreichen.
Sobald die Frontend-Server authentifiziert sind, senden sie Benutzersuchanforderungen an die Datenbanksysteme von VizSeek. Neben der Verwendung von Oracle MySQL Database Service mit der High Availability-Option verwendet VizSeek drei geclusterte Redis-Datenbanken, die jeweils mit einem GlusterFS-System in einer eigenen Availability-Domain gepaart sind. Jede Availability-Domain umfasst auch eine VM. Die Suchkriterien werden dann auf zwei Backend Load Balancing-Linux-Servern indexiert, auf denen die proprietäre Indexierungssoftware ausgeführt wird.
Das Frontend kommuniziert auch mit zwei Linux-Suchservern über den Backend-Load Balancer. Diese Suchserver kommunizieren mit den Datenbanksystemen, kommunizieren aber auch mit den GPU-Servern von VizSeek. VizSeek führt seine visuellen KI-Suchmodelle auf zwei Nvidia V100 GPU-Load-Balancing-Servern aus, die jeweils auf einer VM in einer separaten AD sitzen. Diese AI-Modelle verwenden TensorFlow und PyTorch, um Produktmetadaten aus jedem PDF-, Präsentations-, Rasterbild- oder 3D-Modell zu extrahieren und diese Dateien dann in durchsuchbare digitale Assets zu klassifizieren.
VizSeek verfügt außerdem über zwei FTP-Dateiaustausch-Server, mit denen Kunden Daten sicher in das System übertragen können.
VizSeek hat in Oracle Cloud Infrastructure strenge IAM-Policys eingerichtet und OCI-Health Checks, -Monitoring, -Logging und -Auditing verwendet, um ihre Umgebung zu überwachen und zu verfolgen.
Das folgende Diagramm veranschaulicht diese Referenzarchitektur.
vizseek-oci-architecture-oracle.zip
Die Architektur hat folgende Komponenten:
- Region
Eine Oracle Cloud Infrastructure-Region ist ein lokalisierter geografischer Bereich, der mindestens ein Data Center, die sogenannten Availability-Domains, enthält. Regionen sind unabhängig von anderen Regionen, und große Entfernungen können sie trennen (auf Ländern oder sogar Kontinenten).
- Web Application Firewall (WAF)
Oracle Cloud Infrastructure Web Application Firewall (WAF) ist ein mit der Zahlungskartenbranche (PCI) kompatibler, regionaler und Edge Enforcement-Service, der an einen Enforcement Point angehängt ist, wie Load Balancer oder Domainname einer Webanwendung. WAF schützt Anwendungen vor böswilligem und unerwünschtem Internettraffic. WAF kann beliebige internetseitige Endpunkte schützen und bietet eine konsistente Regeldurchsetzung über alle Anwendungen eines Kunden hinweg.
- Identitäts- und Zugriffsverwaltung (IAM)
Mit Oracle Cloud Infrastructure Identity and Access Management (IAM) können Sie kontrollieren, wer auf Ihre Ressourcen in Oracle Cloud Infrastructure zugreifen kann und welche Vorgänge sie für diese Ressourcen ausführen können.
- Cloud Guard
Mit Oracle Cloud Guard können Sie die Sicherheit Ihrer Ressourcen in Oracle Cloud Infrastructure überwachen und verwalten. Cloud Guard verwendet Detektorrezepte, die Sie definieren können, um Ihre Ressourcen auf Sicherheitsschwächen zu untersuchen und Operatoren und Benutzer auf riskante Aktivitäten zu überwachen. Wenn fehlerhafte oder unsichere Aktivitäten ermittelt werden, empfiehlt Cloud Guard Korrekturmaßnahmen und unterstützt die Durchführung dieser Aktionen basierend auf Responder-Rezepten, die Sie definieren können.
- Policy
Eine Oracle Cloud Infrastructure Identity and Access Management-Policy gibt an, wer auf welche Ressourcen zugreifen kann und wie. Der Zugriff wird auf Gruppen- und Compartment-Ebene erteilt. Sie können eine Policy schreiben, mit der eine Gruppe einen bestimmten Zugriffstyp innerhalb eines bestimmten Compartments oder auf den Mandanten erhält.
- Audit
Der Oracle Cloud Infrastructure Audit-Service zeichnet Aufrufe an alle unterstützten öffentlichen API-Endpunkte der öffentlichen Oracle Cloud Infrastructure-Anwendungsprogrammierung automatisch als Logereignisse auf. Derzeit unterstützen alle Services das Logging von Oracle Cloud Infrastructure Audit.
- LoggingLogging ist ein hoch skalierbarer und vollständig verwalteter Service, der Zugriff auf die folgenden Logtypen von Ihren Ressourcen in der Cloud ermöglicht:
- Auditlogs: Logs, die sich auf Ereignisse beziehen, die vom Audit-Service ausgegeben werden.
- Servicelogs: Logs, die von einzelnen Services ausgegeben werden, wie API-Gateway, Ereignisse, Funktionen, Load Balancing, Object Storage und VCN-Flusslogs.
- Benutzerdefinierte Logs: Logs, die Diagnoseinformationen von benutzerdefinierten Anwendungen, anderen Cloud-Providern oder einer On-Premise-Umgebung enthalten.
- Availability-Domain
Availability-Domains sind eigenständige, unabhängige Data Center innerhalb einer Region. Die physischen Ressourcen in jeder Availability-Domain sind von den Ressourcen in den anderen Availability-Domains isoliert, was Fehlertoleranz bietet. Availability-Domains haben keine gemeinsame Infrastruktur wie Stromversorgung, Kühlung oder das interne Availability-Domainnetzwerk. Daher ist es wahrscheinlich, dass sich ein Fehler in einer Availability-Domain auf die anderen Availability-Domains in der Region auswirkt.
- Virtuelles Cloud-Netzwerk (VCN) und Subnetze
Ein VCN ist ein anpassbares, softwaredefiniertes Netzwerk, das Sie in einer Oracle Cloud Infrastructure-Region einrichten. Wie bei traditionellen Data Center-Netzwerken erhalten Sie mit VCNs die vollständige Kontrolle über Ihre Netzwerkumgebung. Ein VCN kann mehrere sich nicht überschneidende CIDR-Blöcke aufweisen, die Sie nach dem Erstellen des VCN ändern können. Sie können ein VCN in Subnetze segmentieren, die einer Region oder einer Availability-Domain zugeordnet werden können. Jedes Subnetz besteht aus einem fortlaufenden Adressbereich, der sich mit den anderen Subnetzen im VCN nicht überschneidet. Sie können die Größe eines Subnetzes nach der Erstellung ändern. Ein Subnetz kann öffentlich oder privat sein.
- Sicherheitsliste
Für jedes Subnetz können Sie Sicherheitsregeln erstellen, die Quelle, Ziel und Traffictyp angeben, der in das und aus dem Subnetz zugelassen werden muss.
- Routentabelle
Virtuelle Routentabellen enthalten Regeln, mit denen Traffic von Subnetzen an Ziele außerhalb eines VCN weitergeleitet wird, im Allgemeinen über Gateways.
- Site-to-Site-VPN
Über das Site-to-Site-VPN wird eine IPSec-VPN-Verbindung zwischen Ihrem On-Premise-Netzwerk und VCNs in Oracle Cloud Infrastructure hergestellt. Die IPSec-Protokollsuite verschlüsselt den IP-Traffic, bevor die Pakete von der Quelle zum Ziel übertragen werden, und entschlüsselt den Traffic, wenn er ankommt.
- Internetgateway
Das Internetgateway ermöglicht den Traffic zwischen den öffentlichen Subnetzen in einem VCN und dem öffentlichen Internet.
- Dynamisches Routinggateway (DRG)
Das DRG ist ein virtueller Router, der einen Pfad für privaten Netzwerktraffic zwischen einem VCN und einem Netzwerk außerhalb der Region bereitstellt, wie ein VCN in einer anderen Oracle Cloud Infrastructure-Region, ein On-Premise-Netzwerk oder ein Netzwerk in einem anderen Cloud-Provider.
- Load Balancer
Der Oracle Cloud Infrastructure Load Balancing-Service ermöglicht automatisierte Trafficverteilung von einem einzelnen Entry Point zu mehreren Servern im Backend.
- Compute
Mit dem Oracle Cloud Infrastructure Compute-Service können Sie Compute-Hosts in der Cloud bereitstellen und verwalten. Sie können Compute-Instanzen mit Ausprägungen starten, die Ihren Ressourcenanforderungen für CPU, Arbeitsspeicher, Netzwerkbandbreite und Speicher entsprechen. Nachdem Sie eine Compute-Instanz erstellt haben, können Sie sicher darauf zugreifen, sie neu starten, Volumes zuordnen oder entfernen und beenden, wenn Sie sie nicht mehr benötigen.
- Instanzkonfiguration
Eine Instanzkonfiguration ist eine Vorlage, die die Einstellungen für das Erstellen von Compute-Instanzen definiert, einschließlich Details wie Basisimage, Ausprägungen und Metadaten. Sie können auch die zugehörigen Ressourcen für die Instanz wie Block-Volume-Zuordnungen und Netzwerkkonfiguration angeben.
- Leistungsstarkes Computing
Entwickelt für High Performance Computing Workloads, die Hochfrequenz-Prozessorcores und Clusternetworking für massiv parallele HPC-Workloads erfordern.
- VM-DB-System
Oracle VM Database System ist ein Oracle Cloud Infrastructure-(OCI-)Datenbankservice, mit dem Sie Oracle-Datenbanken mit vollem Funktionsumfang auf virtuellen Maschinen erstellen, skalieren und verwalten können. Ein VM-Datenbanksystem verwendet den OCI Block Volumes-Speicher anstelle des lokalen Speichers und kann Oracle Real Application Clusters (Oracle RAC) ausführen, um die Verfügbarkeit zu verbessern.
- Oracle MySQL-Datenbankservice
Oracle MySQL Database Service ist ein vollständig verwalteter Oracle Cloud Infrastructure-(OCI-)Datenbankservice, mit dem Entwickler sichere, cloud-native Anwendungen schnell entwickeln und bereitstellen können. Oracle MySQL Database Service ist für OCI optimiert und exklusiv verfügbar. Der Service wird zu 100 % von den OCI- und MySQL-Entwicklungsteams erstellt, verwaltet und unterstützt.
Oracle MySQL Database Service verfügt über eine integrierte, leistungsstarke Analyse-Engine (HeatWave), mit der Sie ausgefeilte Echtzeitanalysen direkt in einer betriebsbereiten MySQL-Datenbank ausführen können.
Vorkonfiguriert und bereitgestellt
Möchten Sie anzeigen, was Sie auf Oracle Cloud Infrastructure erstellt haben? Teilen Sie Ihre Erfahrungen, Best Practices und Referenzarchitekturen gemeinsam mit unserer globalen Community aus Cloud-Architekturen? Wir helfen Ihnen beim Einstieg.
- Vorlage herunterladen (PPTX)
Veranschaulichen Sie Ihre eigene Referenzarchitektur, indem Sie die Symbole per Drag-and-Drop in den Beispiel-Drahtframe ziehen.
- Architektur-Tutorial anzeigen
Erhalten Sie Schritt-für-Schritt-Anweisungen zum Erstellen einer Referenzarchitektur.
- Diagramm weiterleiten
Senden Sie uns eine E-Mail mit Ihrem Diagramm. Unsere Cloud-Architekten prüfen Ihr Diagramm und wenden sich an Sie, um Ihre Architektur zu besprechen.