CQRS through Twitter – more fun than meaning

As part of my 50 Shades of Data presentation, I talk about CQRS – Command Query Responsibility Segregation. The idea that you can have one or more read only data stores with data replicated from the master store where all data manipulation (commands) take place. In a different presentation, I introduce Apache Kafka and explain its concepts. In this article, these two topics come together, in a light hearted fashion.

My starting point is the (more...)

Querying connected data in Graph databases with Neo4j


· Graph databases are ideal for query use cases with data with complex relationships and layers of connections

· Its query language is fast, efficient and allows for retrieval of information at deeper levels of abstraction in the data

· Neo4j is currently the most popular Graph database, and its declarative query language is Cypher

· Concepts in Cypher are “nodes”, “relationships”, and “properties” for storing the data

· Keep queries small and simple (more...)

From locally running Node application to Cloud based Kubernetes Deployment

In this article I will discuss the steps I had to go through in order to take my locally running Node application – with various hard coded and sometimes secret values – and deploy it on a cloud based Kubernetes cluster.  I will discuss the containerization of the application, the replacement of hard coded values with references to environment variables, the Docker container image manipulation, the creation of the Kubernetes yaml files for creating (more...)

Oracle SaaS – Business Applications in the Cloud – as of Oracle OpenWorld 2018

imageOracle has two main pillars on which its (future) business rests – dixit Larry Ellison: Oracle Cloud Infrastructure (including the Autonomous Database) and SaaS. In this article, I will relate some of the key announcement from Oracle regarding the business applications.

It is useful to realize that Oracle’s portfolio of business applications can be regarded in various ways.

There are horizontal applications – with generic functionality that is applicable to more or less every organization (more...)

List the server group memberships of your domain

Last few years I posted on installation of Fusion Middleware. One of the features of FMW12c is the concept of Server Groups. As can be read here: 'Server groups target Fusion Middleware applications and services to one or more servers by mapping defined application service groups to each defined server group.'

For Fusion Middleware Topology I found this article on SOASuite 12c topology from the A-team very helpful.

Server groups are set at (more...)

MobaXterm 11.0

Recently I wrote about MobaXterm as a welcome replacement of Putty. Looking for a 64-bit version of MobaXterm, I found that they released version 11.0 only yesterday.

Nice: one of the improvements says:
  • Improvement: updated PuTTY-based SSH engine to the latest version
Another welcome improvement:
  • Improvement: improved SFTP / FTP / S3 sessions performances, especially when remote folder contains many files/folders
 However, did not found a specific 64 bit version.

    Monitoring Spring Boot applications with Prometheus and Grafana

    In order to compare the performance of different JDKs for reactive Spring Boot services, I made a setup in which a Spring Boot application is wrapped in a Docker container. This makes it easy to create different containers for different JDKs with the same Spring Boot application running in it. The Spring Boot application exposes metrics to Prometheus. Grafana can read these metrics and allows to make nice visualizations from it. This blog post describes (more...)

    Oracle APEX: the low-code and low-cost application middle tier

    Oracle APEX is a low code application development framework. It can be used free of charge – either as part of an existing Oracle Database license or running in the free Oracle Database 18c XE product. An Oracle APEX application should be considered a three-tier application – consisting of a client tier (the browser), the middle tier (the APEX application engine) and the data tier (back end databases and REST APIs on top of various (more...)

    Running Reactive Spring Boot on GraalVM in Docker

    GraalVM is an open source polyglot VM which makes it easy to mix and match different languages such as Java, Javascript and R. It has the ability (with some restrictions) to compile code to native executables. This of course offers great performance benefits. Recently, GraalVM Docker files and images have become available. See here.

    Since Spring Boot is a popular Java framework and reactive (non blocking) RESTful services/clients implemented in Spring Boot are also interesting (more...)

    Making an IoT Badge – #badgelife going corporate

    Code Card 2018

    Editor’s note:  Noel is the last man standing from the AppsLab to work at Oracle. He created this project while being part of the Oracle Groundbreakers Team. The rest of the original AppsLab team members are now scattered throughout different companies in the tech sector.

    For years I’ve been wanting to create something fun with the almighty esp8266 WiFi chip. I started experimenting with the esp8266 almost exactly four years ago. Back then (more...)

    Quick Start with Eclipse Che – Browser based IDE, running on Docker

    One of the nice discoveries I made last week during CodeOne 2018 was Eclipse Che. This is a browser based polyglot IDE that runs in a Docker container – either locally, on a central server or in the cloud, on a stand alone Docker engine, a Kubernetes or an OpenShift cluster. Running Eclipse Che is quite easy, upgrading and removing Eclipse Che is just as easy. Working in a browser based IDE does not have (more...)

    Recursion in XSLT

    Last week I helped someone on the Oracle community forums with transforming a comma separated string to a list of elements. He needed this to process each element in BPM Suite, but it is a use case that can come around in SOA Suite or even in Oracle Integration Cloud.

    You would think that you could do something like a for-each and trimming the element from the variable.


    One typical thing with XSLT is (more...)

    Querying and Publishing Kafka Events from Oracle Database SQL and PL/SQL

    IMG_6351One of the session at CodeOne 2018 discussed an upcoming feature for Oracle Database – supported in Release 12.2 and up – that would allow developers to consume Kafka events directly from SQL and PL/SQL and – at a late stage – also publish events from within the database straight to Kafka Topics. This article briefly walks through the feature as outlined in the session by Melli Annamalai, Senior Principal Product Manager at Oracle.


    Rapid generation of Oracle DDL scripts for Tables, PL/SQL APIs, Sample Data

    imageYesterday, at the Oracle ACE Directors Product Briefing, I received a gift. It is called QuickSQL. And it is a free online service that generates SQL DDL and DML scripts. The gift in this case was the knowledge about this service – I was not aware of it.


    Go to http://quicksql.oracle.com. Try it out. If you have a need for a quick set of database tables for a demo or a prototype – (more...)

    Oracle Cloud Infrastructure CLI Scripts for preparing for OKE Cluster Provisioning

    In order to provision a Kubernetes cluster on Oracle Cloud Infrastructure, you need to prepare the OCI tenancy and create a compartment with appropriate network configuration and associated resources. All set up can be performed through the console – but this is quite tedious, error prone and outright stupid if you have to go through these steps more than once. I should know – I went through them multiple times.

    In a previous article I (more...)

    Create OKE Kubernetes Cluster on Oracle Cloud Infrastructure – including Service Request to increase limit

    Anyone with a trial account for Oracle Cloud can use Oracle Cloud Infrastructure (OCI) to get herself a three-node Kubernetes Cluster instance, running on Oracle’s managed Kubernetes Engine Cloud Service called OKE. Unfortunately, the default resource limits on the trial account are such that the creation of the cluster will initially fail with “Cluster Create Failed: LimitExceeded: The cluster limit for this tenancy has been exceeded.”; only after submitting a Service Request with Oracle (more...)

    Get going quickly with Command Line Interface for Oracle Cloud Infrastructure using Docker container

    Related imageOracle Cloud Infrastructure is Oracle’s second generation infrastructure as a service offering – that support many components including compute nodes, networks, storage, Kubernetes clusters and Database as a Service. Oracle Cloud Infrastructure can be administered through a GUI – a browser based console – as well as through a REST API and with the OCI Command Line Interface. Oracle offers a Terraform provider that allows automated, scripted provisioning of OCI artefacts.

    This article describes an (more...)

    Enable X11 on Oracle Cloud Infrastructure

    Today my colleague was starting with the installation of Oracle Database on the Oracle Cloud Infrastrcture, for a customer. He phoned me for help on enabling VNC to have a graphical UI to install the database.

    Install an ssh client with XServer emulator

    Most of my co-workers of around my age, have grown up with Putty. And apparently we as computer consultants are quite hooked to our tools. I know, only yesterday I mentioned it (more...)

    How to deploy InfluxDB in Azure using a VM service with dedicated storage


    InfluxDB isn’t natively supported on Azure. This blog post will teach you how to deploy InfluxDB (or any other database) in a VM  with a managed disk on the Azure platform. This will enable you to use this fast time-series database for your project. If the standard range of supported databases (MySQL, CosmosDB, …) on Azure doesn’t suffice. This blog post is for you.


    PeopleCounter part one: Counting People


    Internet of Things stands for connecting devices to the internet. The devices are then able to communicate with each other. In our project, the PeopleCounter, we use a mini-computer with intelligent software to count the number of people in front of a camera. We send that number to an Oracle IoT Cloud. With a business rule we check if the number is higher than a specific value. If yes, an electric device is turned (more...)