Serverless Node Function on Oracle Functions runs periodically to produce CSV report on Oracle ObjectStorage from data in ElasticSearch


This article highlights a use case implementation I recently implemented (for a demo session) leveraging Oracle Functions as well as OKE (Oracle Kubernetes Engine), Object Storage and Elastic Search. I will briefly touch upon some of the interesting aspects of implementing this case. The code for the function and its deployment can be found in this GitHub repo: .

The next figure illustrates the story of this article: a CSV file is produced (more...)

Invoke an Oracle Function on Oracle Cloud Infrastructure from a Node application

Oracle Functions is currently in limited preview and is expected to soon reach wider availability. Rolando Carrasco did this write up on Medium about his first experiences with Oracle Functions. Oracle Functions is a managed PaaS service, based on Project Fn. It supports a serverless architecture with light weight functions that can easily scale and for which no infrastructure has to be configured or managed.image

Functions can be triggered for execution in several ways: from (more...)

Save File to Oracle Cloud Infrastructure Object Storage from Node through REST API

Oracle Cloud Infrastructure Object Storage is a public cloud service for storing data to which you need fast, immediate, and frequent access. As Oracle states: “The Oracle Cloud Infrastructure Object Storage service is an internet-scale, high-performance storage platform that offers reliable and cost-efficient data durability. The Object Storage service can store an unlimited amount of unstructured data of any content type, including analytic data and rich content, like images and videos.”image

The Object Storage (more...)

JavaDB not bundled anymore with JDK 8, as of U181

Today I was struggling with helping a colleague with a deployment of a SOA Project of his.
I couldn't get it deployed. It seemed I hit the problem described here. However when trying to connect to my Derby DB I got the following error:

I was very surprised. I checked and double checked my config. And check the library:
So, I checked those folders and found that they're not existing!
Now searching around I found (more...)

Using Helm, the package manager for Kubernetes, to install two versions of a RESTful Web Service Spring Boot application within Minikube

In my last article I described how two versions of a RESTful Web Service Spring Boot application were used in Minikube, together with an external “Dockerized” MySQL database.

In this article I will describe how you can use Helm, the package manager for Kubernetes, to install two versions of a RESTful Web Service Spring Boot application, together with an external MySQL database, within Minikube.


Upgrade SOASuite process to 12c – Sensor Actions JMS to AQ

At my current customer we're busy with upgrading our projects from 11g to 12c.

One of the solution my predecessors implemented, is to kick of archive processes using sensor actions.The archive processes listen to JMS Queues, that are implemented as AQ Queues. For that a Foreign Server is configured:

The Foreign Server has a reference to the datasource that points to the schema owning the queues. It has also one or more Connnection Factories:


What is Apache Drill and how to setup your Proof-of-Concept

Apache Drill is a schema-free SQL query engine. Drill supports a variety of NoSQL databases and file systems, including HBase, MongoDB, MapR-DB, HDFS, MapR-FS, Amazon S3, Azure Blob Storage, Google Cloud Storage, Swift, NAS and local files. A single query can join data from multiple datastores. For example, you can join a user profile collection in MongoDB with a directory of event logs in Hadoop. 

Data Analytics

If you do any kind of data (more...)

Exposing Kubernetes Services to the internet using Traefik Ingress Controller

Three services have been deployed to my Kubernetes cluster running on a public cloud environment. These services expose port for three underlying Pods and six or so containers. The service make the Pods accessible within the cluster – but not to the outside world, the public internet.image


For a number of reasons – including scarcity of public IP addresses, cost of public cloud load balancer instances, decoupling between (the structure/naming/location/availability of) internal resources and (more...)

Using a RESTful Web Service Spring Boot application in Minikube, together with an external “Dockerized” MySQL database

In a previous article, I talked about an environment, I prepared on my Windows laptop, with a guest Operating System, Docker and Minikube available within an Oracle VirtualBox appliance.
In another article I created two versions of a RESTful Web Service Spring Boot application, being a book service. With this service you can add, update, delete and retrieve books from a catalog.
The application uses an H2 in-memory database but is also (more...)

Blaming and Praising Room Occupiers Using Outlook API, InfluxDB, IoT and Azure serverless functions

At our offices, we suspect that rooms are being booked but go unused when the booker claimed to need it. All of our rooms are equipped with movement (PIR) sensors, so we can detect movement in those rooms. We can count the number of people who pass the sensor. I went on a journey to find out how to do something with the data that I’ve got, and perhaps show our office manager, so that (more...)

Filesystem events to Elasticsearch / Kibana through Kafka Connect / Kafka

Filesystem events are useful to monitor. They can indicate a security breach. They can also help understanding how a complex system works by looking at the files it reads and writes.

When monitoring events, you can expect a lot of data to be generated quickly. The events might be interesting to process for different systems and at a different pace. Also it would be nice if you could replay events from the start or a (more...)

Building a RESTful Web Service with Spring Boot using an H2 in-memory database and also an external MySQL database

In a previous article, I talked about an environment, I prepared on my Windows laptop, with a guest Operating System, Docker and Minikube available within an Oracle VirtualBox appliance.

In this article, I will create two versions of a RESTful Web Service Spring Boot application that, later on (in another article), I will be running in Minikube.
The Spring Boot application I create in this article is a book service. With this service you can (more...)

Moving message threads to different group using the Yammer API

At AMIS we are quite happy users of Microsoft Yammer. Days with 10 or more messages are no exception and since December 2009, we have assembled quite a history of over 8000 message threads. Because we have joined the Conclusion eco system and we will now share a Yammer Network at that level – built with our existing network at its core – , all our All Company messages would become ecosystem wide All Company (more...)

Building a Conference Session Agenda with Oracle APEX – notes on Pivot, Modal Popup and jQuery

AMIS is part of the Conclusion ecosystem of over 20 companies, each with their own specialty and identity. Several times per year, we organize Conclusion on Stage – a conference that spans across the ecosystem. Presenters from most companies under the Conclusion umbrella submit session proposals. Close to 30 sessions are staged in five rooms and close to 200 participants attend these sessions.

I want to provide a Conference Agenda App that offers the audience (more...)

InfluxDB V2.0 – Stack Implementation Proof of Concept

This blogpost will give you detailed instructions and information regarding the InfluxDB stack. Since February 2019 InfluxDB now consists not only the database itself, but also Telegraf, Chronograf and Kapacitor. Later you’ll read about what every part of the stack does.

18-2-2019: Living on the bloody edge, do not run this in production.

What is InfluxDB?

InfluxDB is a time series database made by InfluxData. It is widely used for telemetry and other time related (more...)

Edge Computing with Azure IoT Reference Architecture

This blog will explain what Edge Computing is and why we need this. We also talk a little bit about the broader concept of Fog Computing. All this related to the Azure IoT Reference Architecture.

Why Edge Computing is needed?

In Internet-of-Things (IoT) we usually need to process a large amount of data coming from sensors. We can send all this data directly to the cloud and process it there, but this could be not (more...)

Generate a formatted guid from database – Use Snippets

A very simple quick post today. I'm re-engineering a few Java based Mock Webservices into a SOA Suite/BPEL service.

Some of those generate a soap fault when a message id contains "8888" for instance.
I'd like to generate a GUID based message id, that is formatted with groups of four digits.

Of course there are loads of methods to do that. For instance, the Oracle database has a sys_guid() function for years. It generates a (more...)

Minikube on KVM on Linux Mint 19.1

In a previous blog post I wrote about running Minikube on Windows. I ended with the suggestion that getting Minikube working might be much easier on Linux. Thus I installed Linux Mint (as dual-boot) on my laptop and gave it a shot. The steps I took to get it working are described here.

Challenges installing Mint


First I was having some issues getting Mint installed as dual boot OS. First I already had an (more...)

Upgraded my Virtualization environment

A few weeks ago VirtualBox 6.0.4 is released. A minor release of the recent major release of 6.0. Although already anounced by Tim ~Oracle Base ~ Hall, I had not upgraded yet. I was still on 5.2.x. Change log of VirtualBox can be here. There are some interesting improvements. For instance, I'm curious to see what we can expect from the Oracle Cloud integration. And on several points, like (more...)

KafkaSeries: Starting KafkaServers in Java – Implementing the Observer pattern … again

In my previous article I explained how I start a ZooKeeper Server (potentially more of them) in Java using the Observer pattern. As promised, in this article I will explain how I implement the starting of KafkaServers in about the same way. Again, using the Observer pattern.

In principle we need one ZooKeeper, although you can have run multiple instances in a HighAvailable version. I have to figure that out, by the way.

But we (more...)