Have a look at how a leading Cloud Company, as Oracle, is building its next generation Cloud DataCenters.
High performance, non over-subscribed networks, security at all tiers, are key ingredients.
Tuesday, February 21, 2017
New Oracle Team USA Boat, IoT
In this really interesting article from Forbes, it is explained how IoT and Advanced Analytics technologies, together with Oracle Exadata Database Machine, are used to help analyze and optimize the behaviour of the Oracle Team USA boat. An impressive and nice example of IoT technologies applied to Sport.
"It’s estimated that every time the yacht and its crew set sail, they generate as much as a terabyte of data, much of it video, collected from as many as 1,000 sensors attached to myriad boat and body parts and fed into a powerful Oracle Exadata database for analysis.
For example, about 400 aerodynamic pressure sensors have been added to the boat’s wing sail. Those Airbus-developed sensors, called MEMs (micro-electro-mechanical systems), provide ORACLE TEAM USA with important information on the flow around the rigid sail under various conditions, helping the crew further optimize performance and maneuvers."
"It’s estimated that every time the yacht and its crew set sail, they generate as much as a terabyte of data, much of it video, collected from as many as 1,000 sensors attached to myriad boat and body parts and fed into a powerful Oracle Exadata database for analysis.
For example, about 400 aerodynamic pressure sensors have been added to the boat’s wing sail. Those Airbus-developed sensors, called MEMs (micro-electro-mechanical systems), provide ORACLE TEAM USA with important information on the flow around the rigid sail under various conditions, helping the crew further optimize performance and maneuvers."
Monday, February 13, 2017
Cloud and 12-factor App
If you want to build Applications that are easily deployed to a Cloud Platform, that can be easily distributed, for example over Containers, and can scale well, you need to adopt a different approach from, for example, the one used to develop Enterprise Applications based on JEE.
A set of recommendations and best practices are summarized in the so-called “12 Factor App”.
One page worth the reading:
A set of recommendations and best practices are summarized in the so-called “12 Factor App”.
One page worth the reading:
Each of the Twelve Factors is explained in a separate page (follow the link).
Containerize your IoT
Now, imagine that we want to scale our HomeAutomation solution.
For example, we need to design a SmartBuilding solution, a solution for a large building, like a Hotel or a large building containing hundreds of offices.
We want a solution that enable us to:
- Monitor the temperature in each room, to implement a smart control of heating and cooling and enable us to reduce the energy consumption;
- Monitor the air quality in each room;
- Manage a set of sensors in each room (fire, …);
- Manage the lights in each room remotely (for example, if no-one is inside, turn-off the lights);
- …..
This is what I would call a medium scale IoT solution.
We can decide to adopt a four layers architecture:
- Devices;
- Floor Gateway
- IoT HuB
- Enterprise Application
Now, the question I want to work on is: how do you design and build what I have called the IoT HUB?
First, the most important decision: do you want to adopt a Cloud Platform or build on-premises? (Well, there is a third option: an hybrid solution, but for now let’s limit to the first two).
In a future blog post I’ll examine how to build it using a Cloud Provider. But now I want to discuss how to build it in your Data Center.
First of all, let’s recap what kind of capabilities you need:
- A Messaging backbone (Message Broker), to receive all messages coming from devices and to implement the publish-subscribe pattern;
- A Device State (or Shadow) component, to store the latest state and messages from devices;
- A Message Store, to store persistently all the message received from devices (with some retention period set);
- A Device Registry;
- A Monitoring Dashboard
- ….
In my Home Automation previous blog posts, these are all Building Blocks hosted in my Raspberry PI, since it is enough for a House.
But for our Smart Building solution we need:
- To scale-up the solution, to have enough computing power;
- Clusterize, to give High Availability, in case one component fails;
The design idea I’m going to explore here and in (hope to have enough time) next blog’s posts is to “Containerize your IoT”.
In other words: the adoption a Containerization technology (here: Docker) so that each one of the Building Blocks (see list of capabilities above) I have mentioned here maps to a Container, following the “Micro-Services” Architecture Paradigm.
Tuesday, January 17, 2017
Why Machine Learning is different? And will it help to drive the car?
The answer is simple, if you know the answer.
No, I don't want to fool you. This is really what I was thinking, while progressing on this subject.
There is a fundamental difference between the Machine Learning approach to the solving of a problem and a traditional approach.
I'll try to explain it with an example: imagine you enter in your Garage Box, that is also used as a deposit for (almost) everything you don't want at home.
You want to search something, an object that you probably remember, as form, colour, shape... you look around and magically you recognize it, partially hidden in a corner, with a different colour because the light is poor.
Ok, it is mostly Image Recognition.
Do you want to write an algorithm to tell to your computer how to do the same.
In the traditional approach, you write (on a paper if you're not so young...joking) the description of the steps you would use..
Wait a minute, after some time you realize that you actually don't know the exact steps your brain have used to recognize and identify that object, partially hidden, in a low light...
That's the problem... in many cases we don't (yet) know how our brain works, for example to recognize an object inside a photograph (a case simpler than the one I started from).
Machine Learning approach is different: you train a complex algorithm in such a way it can, by itself, calculate the best way to work, best parameters, from a large set of examples.
You show to your computer millions of photos telling him: this is a man, this is a cat, this is a car, this is a red car....
And it will learn how to recognize a red car, even if it is not exactly the same red...
Behind the scene:
- Multi-level Neural Networks
- Very smart algorithms to make the "training" faster and faster, and to enhance accuracy of the prediction
- A big Computational Capacity, to handle millions of examples and the calculation of a large set of parameters... for example innovation comes also by usage of GPU
The car... oh yes, well: have a look at the introduction, on Udacity site, of the Machine Learning Introductory Course.
You will see a video where the two instructors are in a Google Self Driving Car... and they'll explain that they teach to the car when it needs to hit the brake not writing a "long series of if... then.. else...", but.... letting the car to observe the behaviour of the instructor.
Sooner or later I'll come back on the subject.
(Credits: the initial example is inspired by some Videos in the Coursera Training on Neural Networks, by Toronto University).
No, I don't want to fool you. This is really what I was thinking, while progressing on this subject.
There is a fundamental difference between the Machine Learning approach to the solving of a problem and a traditional approach.
I'll try to explain it with an example: imagine you enter in your Garage Box, that is also used as a deposit for (almost) everything you don't want at home.
You want to search something, an object that you probably remember, as form, colour, shape... you look around and magically you recognize it, partially hidden in a corner, with a different colour because the light is poor.
Ok, it is mostly Image Recognition.
Do you want to write an algorithm to tell to your computer how to do the same.
In the traditional approach, you write (on a paper if you're not so young...joking) the description of the steps you would use..
Wait a minute, after some time you realize that you actually don't know the exact steps your brain have used to recognize and identify that object, partially hidden, in a low light...
That's the problem... in many cases we don't (yet) know how our brain works, for example to recognize an object inside a photograph (a case simpler than the one I started from).
Machine Learning approach is different: you train a complex algorithm in such a way it can, by itself, calculate the best way to work, best parameters, from a large set of examples.
You show to your computer millions of photos telling him: this is a man, this is a cat, this is a car, this is a red car....
And it will learn how to recognize a red car, even if it is not exactly the same red...
Behind the scene:
- Multi-level Neural Networks
- Very smart algorithms to make the "training" faster and faster, and to enhance accuracy of the prediction
- A big Computational Capacity, to handle millions of examples and the calculation of a large set of parameters... for example innovation comes also by usage of GPU
The car... oh yes, well: have a look at the introduction, on Udacity site, of the Machine Learning Introductory Course.
You will see a video where the two instructors are in a Google Self Driving Car... and they'll explain that they teach to the car when it needs to hit the brake not writing a "long series of if... then.. else...", but.... letting the car to observe the behaviour of the instructor.
Sooner or later I'll come back on the subject.
(Credits: the initial example is inspired by some Videos in the Coursera Training on Neural Networks, by Toronto University).
Thursday, January 12, 2017
Oracle IoT CS: BI Integration
IoT CS are mainly an easy way to manage a large set of devices and connect and acquire messages coming from them (Connect, Manage, Acquire).
But the Real Value comes from what you do on data coming from devices, on these messages.
Oracle IoT Cloud Service provides you an easy path to integrate with other Oracle Cloud Services.
For example, you can easily integrate with Oracle Business Intelligence Cloud Service.
In this video on YouTube, you can see a short demo on how to integrate with Oracle BICS and how to enable predictive mainteinance,
But the Real Value comes from what you do on data coming from devices, on these messages.
Oracle IoT Cloud Service provides you an easy path to integrate with other Oracle Cloud Services.
For example, you can easily integrate with Oracle Business Intelligence Cloud Service.
In this video on YouTube, you can see a short demo on how to integrate with Oracle BICS and how to enable predictive mainteinance,
Wednesday, January 4, 2017
Nespresso IoT, well I think there are better ways
I'm one of those who really love good coffe, and I'm a proud owner of a wonderful Red Nespresso Pixie.
I have always wondered how to integrate it in my Home (made) Automation System, and this is one way:
But I think I'll find a better way, than a servo pushing the button.
Stay tuned.
I have always wondered how to integrate it in my Home (made) Automation System, and this is one way:
But I think I'll find a better way, than a servo pushing the button.
Stay tuned.
Subscribe to:
Posts (Atom)