I am looking for a little clarification/guidance. I currently have a SaaS-based product that is delivered to institutions. I operate a serverless architecture, with an individual database for each client. I would like to effectively build a DAPP out of the database layer, not only for storage but so that aspects of the data could be shared. The core of my offering is the data-model deployed on the SQL database, can this be deployed as an Ethereum app. Can i build this into a contract.
3 Answers
This is not a blockchain use case. Create seperate API calls with access logs to your existing cloud databases.
Will work 100x better.
It could, but it would be pretty expensive probably. Storing information on-chain is costly, so you don't want to do it unless its absolutely critical (the information you want to store needs to be totally and absolutely incorruptible). If you already have a server-less architecture set up for sharing the database doesn't seem like you'd need to use Ethereum (which is itself a server-less architecture).
EDIT:
Just realized you said data model was the core of what you deliver to your customers. One thing I will say is that you could build the software that utilizes that data model (moves the data around) into a contract on Ethereum and then have an application that all your clients download that utilizes those functions using local data. As long as the users of your application are running an Ethereum node, they could access those functions from the blockchain essentially for free (as long as they don't change anything on-chain). That way, you can be assured that everyone is using the same functions, since they will be stored on the blockchain and incorruptible.
You might want to see a related question (and detailed answers) at:
What is the difference between Swarm and IPFS?
TL;DR - you store checksums and token exchanges on the blockchain, but the bulk shared data (code, data, whatever) is stored cheaply somewhere, e.g. in a shared file system like IPFS, in a cloud service, or what have you. The user can grab the data from anywhere but validates that is correct by grabbing reference checksums off the blockchain.
This minimizes storage costs on the blockchain while still allowing the client to validate the source and validity of the data.