I’ve been watching the discussions around GraphQL and Apollo and I’m wondering what people think of the implementation I’m considering.
I have access to a unique patented NoSQL database that would back the infrastructure I’m proposing. Essentially, it would be a shared database that would support a extended version of GraphQL (I need privacy considerations included in the schema). As the single source for data,it would be possible to provide invalidation events to any meteor/node server attached. My implementation requires a data model conformant to an entity-centric model where ‘aspects’ or collection of like semantic values (demographic, shares/likes, etc.) are available for query. This entity-centric condition allows me to ‘shard’ storage among entity specific servers for scalability/performance.
I’m thinking that the db server would stream mutation events to the registered meteor/node servers and let them decide how to invalidate data to their clients.
I plan to offer a free single instance developer version, restricted only in capacities. A enterprise edition would be offered with full sharding/scalabilities as a hosted PaaS. Something that Galaxy could offer.
I have yet been unsuccessful in gaining funding, so this might not happen.
Any thoughts would be appreciated.
Though I’d add some of the offered features:
datastore engine indexes everything, elements/attributes/fields using a hash-like ‘icon’ so there is no indexing definition required. ‘Icon’ algebra allows pattern matching without going back to data.
datastore engine is schema-agnostic, GraphQL schema defines values within interface layer. Hierarchy nodes can be deleted/inserted/updated at will without re-indexing as in mongo.
datastore engine is fully ACID supporting transactions/rollback and live backup.
will accept XML/JSON and possibly YAML as input, output in any of them.
looking to build node.exe addon for native database within node runtime, i.e., no network latency. Useful for embedding in IoT gateways to manage device data.