Using ThingsBoard Live Demo Server vs using it on premise or in a cloud service - deployment

I've been testing ThingsBoard with my Raspberry Pi for a few weeks with Live Demo Server in order to compare IoT platforms and it's been working fine. But I'm not able to find Live Demo Server disadvantages. That being said, why should I use ThingsBoard on premise or deploy it in the cloud (using AWS, Azure, etc. for example) instead of just using the Live Demo Server?

Related

How to connect Swift to a postgresql database hosted on Google Cloud

I'm new to working with back-end, but have been running into issues trying to get my iOS app to connect to my PostgreSQL DB.
I have developed an app with Swift which is a game that I want to run locally on iOS devices. I have a PostgreSQL DB set up in Google Cloud Platform but I cannot figure out how to get the Swift app to connect to my PostgreSQL DB.
I've read some about using Vapor or Perfect to run the application using Googles App Engine but I'm not sure that is what I want to do since I want the app to run locally but there are a few aspects of my app that I need a global database for.
Would anyone be able to point me in the right direction of how I need to connect my Swift application with Google Cloud's PostgreSQL?
Your question is pretty much very similar to this one.
In short, the correct answer is you shouldn't connect your client side application directly to the database. Instead, you should build a service that can connect to the database, and act as a service between your application. This helps prevent any unauthorized queries to your database and provides better performance. If you wanted to do this on GCP, you could look into something like Google Cloud Functions or Google Cloud App Engine to act as a service.
An alternative would be to use a "Database-as-a-Service" like Cloud Firestore. This is a scalable, pay-as-you-go service with great mobile support.
Yeah sure you need a server, ruby on rails to connect to your Postgres database.
The server will facilitate data back and forth from the Google cloud Postgressql

How to connect the back end and the front end and use the Discovery API in IBM cloud app services?

I am very new to using APIs so please excuse me. I am currently using a Python-Django App service from IBM cloud app services and the IBM Watson Discovery resouce. I have followed all the steps given here:
https://console.bluemix.net/docs/apps/tutorials/tutorial_web.html#before-you-begin
I have a machine that has docker and so the app got built successfully. However I am lost as to how I am supposed to get the front end ( which I am writing in bootstrap, javascript ) to connect to the backend and link the API.
EDIT
For example : I want my app to accept documents, feed them in Discovery, extract the keywords and sentiments and display them in the UI. How do I know what to access from the server side code and what to link where in the UI.
It is a very broad question but its a compulsory project I need to do and I am clueless. Pleaassee Help !
Before you try to integrate an API, you will need to be familiar with Python and Django. If that is not the case, then you really need to go through a series of tutorials.
Then before deploying to the cloud, you will be better off running your Django app locally on your laptop. Use pip to install the watson-developer-cloud pypi module and use the API documentation to build the python code in your Django application - https://www.ibm.com/watson/developercloud/discovery/api/v1/python.html?python#query
If none of this makes sense, then you need to brush up on your knowledge of Python, Pip, and Django.
When you have the app running on your machine, then you will be ready to package it up into either a docker image or cloud foundry container and deploy to the cloud.

How to integrate Watson IOT service to Hyperledger Fabric?

Due to IBM doesn't provide free plan for IBM Blockchain anymore, I come up with with solution to integrate Watson IOT to Hyperledger Fabric instead of IBM Blockchain.
I found this document, it say that Watson IoT Platform blockchain integration supports connecting to both IBM Blockchain fabrics and Hyperledger fabrics
(in section Config Blockchain IBM environment)
But I can not find any guideline.
Anyone can help?
I have several related comments:
1) The page you linked to shows an early version of the IoT Contract Platform that I authored. I have not been funded to port it to Hyperledger v1 so it must be considered deprecated at this time. Instead, I suggest that you get comfortable with the Hyperledger Composer, which provides a huge development environment and a powerful data modelling language.
https://hyperledger.github.io/composer/introduction/introduction.html
2) Which leads me to IBM's free container service. If you want to get started with IBM Blockchain on Bluemix, you can create a free kubernetes cluster using the instructions found here.
https://ibm-blockchain.github.io/
The "create_all" script gives you a working fabric on a lite cluster (as in free) with hyperledger composer running (with playground) and with a copy of the example02 ubiquitous sample Go chaincode running on the same channel.
https://github.com/IBM-Blockchain/ibm-container-service
EDIT: As for the iot connection, you can use node-red to create iot apps that will catch your events on a topic and then forward them to the blockchain. This is for experimentation of course, but you will get the idea how an application must be written.
If you want to follow my "partial state as event" pattern in composer contracts, you can look at the deep-merge npm project and mimick that code while we wait for the node based chaincode that is coming in Fabric 1.1, at which time I hope that we can import it as normal in our business network js files.
Using deep-merge requires that you create your own transactions for create, replace, update and delete in your smart contracts, but these are straightforward. The bonus is that it is also easy then to emit custom events defining what happened to listening applications.
I think you will like these two technologies together.
Instead of using the IBM Blockchain, you should create your own Blockchain. You should use the Hyperledger Fabric for that. You have the documentacion about it here. I suggest you to start reading from the Building Your First Network chapter.
Then, you should integrate your Blockchain with the Watson IoT.

RapidMiner Cloud providing Rest API

We have been exploring RapidMiner Cloud recently .We found that it internally uses AWS and can be used to run heavy processes.
Based on our learning, we could conclude that RapidMiner Cloud is really a rapid miner server running on cloud.
But we could not find ways to get REST API's and dashboard capabilities that locally hosted RapidMiner server provides.
If we use Rapid Miner Cloud, How can we get RestAPI capabilities.
Thanks
the RapidMiner Cloud is more an extension to run Studio processes on the cloud and not a complete RapidMiner Server with a RestAPI.
If you want to use a RestAPI you have to setup a complete RapidMiner Server instance, which could also be done on AWS or similar systems.
Best,
David

IoT using Google Cloud Service IoT solutions (Weave): How to connect Raspberry Pi and lighting the LED?

I am trying to connect my raspberri pi with Google IoT Cloud solutions using Weave. I have done it already using AWS and IBM Bluemix, but could not find a way to do the same using Google Cloud. As per their documentation, it seems that some of the fies have been deprecated or not been updated.
Moreover, they have been written in C language and I am not much of a C guy. I used Python for both the IBM Bluemix and AWS to connect my Pi to IoT and then establish the subscriber and exchange messages using MQTT gateway.
Can anyone suggest anything regarding this?
Google Weave getting started
To be more specific, certain packages which I saw in error logs while installing the below step:
make -C examples/host/light
it showed in logs the message like
could not find lldap
could not find llssh2
Even after installing them in my developer machine.
Due to error above, the below command
./out/host/examples/light/light
is not executed as the location
/out/host/examples/light/light
is not created by the above make command. Any suggestions for this?
You might want to try instead to use the new Google Cloud IoT Core product instead of Weave - full disclosure, I worked on it. It's currently in public beta and enables the scenarios you're trying to address. You should be able to use MQTT to communicate to/from your device.
There's a high-level overview of the platform on YouTube as well as an industrial applications focused talk from Google I/O.