Allgemeine Beschreibung
SQUEEZE ist eine Mandanten-fähige Software-Lösung für Dokumenten-Klassifikation und Inhaltsextraktion. Dieses Dokument beschreibt die technischen Leistungsmerkmale von SQUEEZE und beschreibt vorrangig die technische Architektur, Eigenschaften und Funktionen.
SQUEEZE wurde im Jahr 2016 designed und aufgebaut und wird seither stetig in einem wachsenden Team weiterentwickelt.
SQUEEZE ist ein vollständig webbasiertes System zur Verarbeitung von elektronischen Dokumenten, mit wesentlichem Fokus auf die Erkennung und Auslesung von Eingangsdokumenten im B2B Sektor.
VorgabenKonzepte Systemdesigndes Systemdesigns
Bei dem Systemdesign wurden folgende Konzepte verfolgt:
- Betriebssystem offen in Bezug auf Linux und Windows Server
- Datenbank-offen in Bezug auf mySQL/MariaDB und Microsoft SQL Server
- Konsequent webbasierter Administrations- und Anwendungszugang
- Vollständige REST-API auf Swagger.io / OpenAPI v3
- Schnelle und problemfreie Installation bei OnPrem-Projekten sowie Update-Fähigkeit
- Wartungsarmer Betrieb, interne Überwachung / Monitoring
- Hohe I in Dritt-Anwendungen
- Einfache Konfiguration über das Webinterface für Partner und Administratoren
- Hohe Stabilität in Bezug auf Verfügbarkeit
- Hohe Verarbeitungsgeschwindigkeit und Erkennungsqualität
Systemarchitektur
SQUEEZE Server
SQUEEZE ist vorrangig eine HTTP-Applikation auf PHP-Basis, welche im Apache Webserver gehostet wird und die serverseitige Verarbeitung der Hauptprozesse steuert. Weiterhin stellt der SQUEEZE SERVER deneinen Webclient für die Administration und Endanwendernutzung zur Verfügung.
SQUEEZE Worker
Worker verstehen sich als eigenständige, asynchron agierende Prozesse, welche Subprozesse (z.B. OCR-Vorgänge) des Systems veranlassen. Das Worker-Konzept bietet eine flexible Skalierung aller Systemarbeitsprozesse (Bildaufbereitung, OCR, Klassifikation, Extraktion) und sind ein wesentliches Element der SQUEEZE Arbeitsweise.
Es können innerhalb der Software so viele Worker aktiviert werden, wie lizensiert bzw. gewünscht sind. Die kleinste Standard-Lizenz umfasst 4 Worker. Die maximale Anzahl gleichzeitiger Worker-Prozesse orientiert sich an der Anzahl der Prozessorkerne, über die das Betriebssystem verfügt, respektive sollte der Anzahl der CPU Threads nicht übersteigen. Erfolgreich getestet wurde das System mit bis zu 64 Threads.
Theoretisch lassen sich die Worker auch auf anderen Servern verteilen, dies wird in der aktuellen Auslieferung nicht empfohlen, da die Funktion nicht ausreichend getestet ist und die Schreibvorgänge der Datenbank je nach Ausstattung an die Grenzen kommt.
SQUEEZE Datenbank
Die Squeeze Datenbank enthält die Konfigurationen des Systems sowie die Nutzdaten der Kunden. Bei der Datenbank handelt es sich um eine relationale Datenbank (siehe Systemvoraussetzungen)
SQUEEZE Repository
Das SQUEEZE Repository enthält die Dokumente werden im Storage (Filesystem / S3-Bucket) abgelegt, diese können bei Bedarf auch als BLOB in der Datenbank abgelegt werden.
Dieses Dokumentation richtet sich primär an technische Mitarbeiter von Interessenten, Kunden und Vertriebspartnern sowie von Beratungsunternehmen oder Fachmedien.