Oracle APEX vs. Oracle VBCS: Comparison of the two front-end technologies / Part 1

Oracle APEX vs. Oracle VBCS: Comparison of the two front-end technologies / Part 1

Yves Chassein PROMATIS

 

Senior Vice President – Head of Application Development

Oracle Application Express (APEX) sowie der Oracle Visual Builder Cloud Service (VBCS) sind zwei Low Code Plattformen von Oracle, die beide zur Erstellung von Webapplikationen genutzt werden können. Doch was sind die Unterschiede und Gemeinsamkeiten dieser beiden Front-End Technologien? Dieser Frage wollen wir in der zweiteiligen Blog-Reihe auf den Grund gehen. Zunächst werden Oracle APEX sowie Oracle VBCS vorgestellt und im zweiten Teil werden diese beiden Technologien gemäß verschiedener Kategorien verglichen.

Was ist Oracle APEX?

Oracle APEX ist eine Low Code Plattform von Oracle, die mit Hilfe von SQL, PL/SQL, JavaScript und HTML Webapplikationen auf der Oracle Datenbank erstellen lässt. APEX selbst ist Teil einer jeden Oracle Datenbank und kann ohne weitere Lizenzkosten genutzt werden. APEX gibt es schon sehr lange: die Erfolgsgeschichte begann 2004 mit dem ersten Release, damals noch unter dem Namen HTML-DB. Über die Jahre kamen neue Funktionen hinzu wie der Interactive Report (2008), den Dynamic Actions (2010) oder dem Interactive Grid (2017). Mit Hilfe von Interactive Reports kann der User die Daten, die per Query aus der Datenbank gelesen werden, im Front-End – Excel ähnlich – filtern, sortieren und sogar regelbasiert einfärben. Dynamic Actions ermöglichen dem Entwickler, JavaScript-Aktionen deklarativ zu programmieren und Ajax-Calls zur Datenbank auszuführen. Das Interactive Grid ist die Weiterentwicklung des Interactive Reports, das neben der Anzeige auch die Manipulation der Daten beherrscht. Aktuell gibt es APEX in der Version 20.2. Seit der Version 5.1 setzt APEX vermehrt auf Oracle JET, einem Open Source Toolkit zur Entwicklung von JavaScript.

 

 Zeitstrahl Oracle APEX

 

APEX baut auf einer 3-tier Architektur auf. Http-Anfragen werden vom Client, in diesem Falle dem Browser, über den Oracle Rest Data Service an die Datenbank gesendet. Die Antworten werden vice versa zurück an den Browser geschickt. Hierbei werden Datenabfragen und -manipulationen direkt in der Datenbank ausgeführt.

Mit Oracle APEX ist es somit leicht, datenbanknahe Webapplikationen anzufertigen. Ebenfalls ist möglich, Excel-ähnliche Auswertungen auf Daten der Datenbank zu erstellen. Auch können Erweiterungen von Standardapplikationen – wie der Oracle E-Business Suite –  einfach erstellt werden.

Was ist Oracle VBCS?

Oracle VBCS ist eine relativ neue Low Code Plattform von Oracle. Oracle VBCS basiert auf REST-Services, JavaScript und HTML5. Bei JavaScript wird, wie auch bei APEX, auf das Framework JET zurückgegriffen. Dieses ist zu 100% in VBCS integriert. Entwicklung und Runtime liegen in der Cloud. Oracle VBCS muss über Universal Credits lizenziert werden.

Oracle JET bringt eine Reihe vorgefertigter Komponenten wie Tabellen, Listen, Toolbars oder ähnliches mit. Diese können in der VBCS genutzt werden, um responsive Web Applikationen zu implementieren. Anzuzeigende Daten müssen in Form von REST Services bereitgestellt werden. Ein direkter Zugriff auf Datenbanken oder Dateien ist nicht möglich. Oracle VBCS wird meist zusammen mit einer Autonomous Datenbank und einem ORDS betrieben. Um auf Daten aus anderen Datenquellen zugreifen zu können, müssen diese über REST Services zur Verfügung gestellt werden.

 

 Architektur Oracle VBCS

Mit Hilfe von Oracle VBCS können schnell Web-Applikationen erstellt, debuggt und getestet werden. Darüber hinaus ist es möglich, fast nahtlos Oracle Software as a Service (SaaS) Produkte wie die Oracle Fusion HCM Cloud zu erweitern. Auch die Anzeige und Manipulation von Daten ist schnell implementiert. Mit Hilfe von Oracle VBCS lassen sich responsive Web Apps genauso wie Progress Web Apps (PWA) leicht umsetzen.

Um eine bessere Vorstellung zu haben, wie eine Applikation mit APEX bzw. VBCS aussieht, wurde eine einfache Applikation in beiden Technologien erstellt. Diese Applikation zeigt die Daten einer Tabelle mit 3 Spalten (ID, Vortrag und Datum) an und man kann neue Datensätze hinzufügen. In APEX wurde dies durch ein Interactive Grid gelöst, in VBCS wurde dies durch eine Tabelle mit Formular umgesetzt.

 

Beispiel in VBCS:

 Anzeige der Datensätze in VBCS

 

Oracle VBCS

Neuen Datensatz erzeugen in VBCS

 

Beispiel in APEX:

 Anzeige und Bearbeitungsmaske in APEX

 

Im zweiten Teil dieser Blog-Reihe werden Oracle APEX und Oracle VBCS gegenübergestellt und in sieben Kategorien miteinander verglichen.

Oracle APEX vs. Oracle VBCS: Comparison of the two front-end technologies / Part 1

ORACLE APEX Cloud Service – inexpensively available in the Oracle Cloud

Yves Chassein PROMATIS

 

Senior Vice President – Head of Application Development

Oracle Application Express (APEX) ist eine beliebte Low Code Plattform zur Entwicklung von datenbankgestützten Web-Anwendungen. Wollte man bisher solche Anwendungen in der Oracle Cloud betreiben, hatte man zwei reelle Alternativen. Zum einen Autonomous Database Service oder Oracle Cloud Infrastructure (OCI) mit einer manuell installierten und gewarteten Datenbank und zum anderen APEX. Seit Anfang des Jahres bietet Oracle nun auch einen Oracle APEX Cloud Service an. Für wen dieser geeignet ist und welche Vor- und Nachteile er mit sich bringt, will ich im Folgenden beleuchten.

Oracle APEX Cloud Service, was ist enthalten?

Der Oracle APEX Cloud Service besteht aus seiner komplett von Oracle gemanagten Datenbank-Instanz, ähnlich der Autonomous Database, sowie einer APEX Installation mit vorkonfiguriertem Oracle Rest Data Service (ORDS). Abgerechnet wird – wie für Datenbanken in der Cloud üblich – nach OCPUs und Terrabyte Daten, also keine Abrechnung nach Usern, Entwicklern oder ähnlichem. Auf die Datenbank kann per SQL Developer Web, APEX oder – nach Implementierung – REST-Service zugegriffen werden. Über das SQL Developer Web lassen sich SQL-Queries und Skripte ausführen, Datenbankobjekte Wizard gesteuert erstellen und verändern sowie Datenbankmodelle erzeugen. Durch den vorkonfigurierten ORDS ist es möglich, REST-Services zur Verfügung zu stellen, die Daten der Datenbank zu lesen oder manipulieren zu können.

Was ist der Unterscheid zu Autonomous Database Service?

Im Vergleich zum Autonomous Database Service ist es beim Oracle APEX Service nicht möglich, sich per JDBC zur Datenbank zu verbinden, somit ist der Einsatz von Clients, wie dem SQL-Developer von Oracle, nicht möglich. Das heißt Schnittstellen, die nicht über REST mit der Datenbank kommunizieren, können mit dem APEX Cloud Service nicht erstellt werden. Erkennt man, dass diese doch benötigt werden, kann der Oracle APEX Cloud Service mit einem Click zu einer „vollen“ Oracle Autonomous Transaction Processing Database aufgewertet werden (natürlich erhöhen sich damit auch die Kosten). Darüber hinaus ähneln sich die beiden Cloud Services sehr stark. Beide Cloud Services werden komplett von Oracle gewartet und Updates werden automatisch eingespielt.

Was ist der Unterschied zum Oracle Infrastructure Cloud Service?

Hier sind die Unterschiede größer. Neben der fehlenden Vorkonfiguration von Oracle APEX und ORDS müssen bei der OCI Variante auch alle Patches manuell installiert werden. Hier ist somit immer ein Datenbankadministrator nötig. Im Vergleich hierzu wird die Autonomous Database sowie auch der Oracle APEX Service von Oracle selbst gewartet und im Falle von anstehenden Updates aktualisiert. Bei der OCI Variante ist es – im Gegensatz zum APEX Service – möglich, sich per JDBC zur Datenbank selbst und darüber hinaus per SSH auf den Datenbankhost zu verbinden. Dafür ist eine SQL Developer Web Unterstützung Out of the Box nicht verfügbar und muss nachinstalliert werden.

Fazit

Ist man auf der Suche nach einem einfachen und kostengünstigen Weg, mit APEX in die Oracle Cloud zu gehen, ist der Oracle APEX Service genau die richtige Wahl. Denn man kann schnell und kurzerhand starten. Ebenfalls ist es mit diesem Cloud Service möglich, Applikationen mit mehr als 500 Usern, zu betreiben. Und reicht am Ende die REST-Schnittstelle und das Oracle SQL Developer Web nicht mehr aus, ist ein Upgrade auf eine „volle“ Oracle Autonomous Transaction Processing Database leicht möglich.