Jormungandr is already using SQL to store and retrieve data since it uses SQLite as opposed to own data structures; it would be very nice to have support for different SQL DB backends; imagine Jormungandr backed by Oracle Exadata; I believe it would be minimal amount of work to implement this and it could be a good differentiator from competition.
With current architecture people are probably going to run SQLite as part of Jormungandr deployment and then some more powerful RDBMS or NoSQL DB to store processed data fetched from Jormungandr either using Jormungandr API and/or direct SQLite querying.
In theory, anyone should be able to implement another storage backend based on the chain-storage API in chain-libs.
@mzabaluev, so I just take inspiration from chain-storage-sqlite and write an Oracle and PostgreSQL backend?
@mark-stopka Caveat: I don't think we can commit to supporting a new contributed backend in the project's main line of development. There hasn't been a focus on making the storage API stable, it may be subject to big changes or replaced altogether.
SQL is not a good backend for storage of blockchains; it's unlikely going to go further in this direction, and the current storage should be only seen as a stock gap. as to an external service, this create a massive requirement for deployment, whereas right now the focus is to make it is a easy as possible for many people to run this.
@vincenthz, it would not be deployment requirement, but rather a deployment option... But I get your point, and since it is not likely to be accepted into mainstream even if I write to code, I am going to drop it; just though it would be funny to have a node backed by Oracle Exadata.
Most helpful comment
SQL is not a good backend for storage of blockchains; it's unlikely going to go further in this direction, and the current storage should be only seen as a stock gap. as to an external service, this create a massive requirement for deployment, whereas right now the focus is to make it is a easy as possible for many people to run this.