Declarative Amsterdam @ CWI
2019-10-04
Developer / Consultant
XQuery / XSLT / Schema / RelaxNG
Scala / Java / C++
Concurrency and Scalability
Creator of FusionDB multi-model database (4 yrs.)
Contributor to Facebook's RocksDB (4 yrs.)
Core contributor to eXist-db XML Database (14 yrs.)
Founder of EXQuery, and creator of RESTXQ
W3C XQuery WG Invited expert
Personal Concerns
Open Source NXDs problems/limitations are not being addresed
Commercial NXDs are Expensive and not Open Source
New NoSQL (JSON) document db are out-innovating us
10 Years invested in Open Source NXD, unhappy with progress
Commercial Concerns from Customers
Help! Our Open Source NXD sometimes:
Crashes and Corrupts the database
Stops responding
Won't Scale with new servers/users
Primary Focus on Correctness and Stability
Never become unresponsive
Never crash
Never lose data or corrupt the database
Don't reinvent wheels!
Developers know eXist-db... Fork it!
Reuse - adopt Facebook's RocksDB for storage
Build it first!
...Should become Open Source
Should be appealing to Commercial enterprises
Open Source license choice(s)
vs. Revenue opportunities
ACID Transactions
Improved Concurrency
Instant Snapshots
100% eXist-db API Compatible
Drop-in replacement.
Just restore your eXist-db backup!
Crash Safe
Multi-Model
Metadata Storage
We would like to Open Source it
We don't want to: git-and-run
Need a revenue model to ensure future
Experienced in 2011: Support model is unsustainable
Originally we envisaged...
Dual License:
AGPLv3 - Gives us our "Open Source" and Freedom
Commercial License - Indemnity for companies that can't swallow AGPL
Would like to avoid "Open Core"
Things have changed...
CockroachDB
Switched core from Apache to BSL 1.1 (04/06/19)
Enterprise components are Source Available
Dgraph
From Apache to AGPL (26/03/2017)
... then to Apache + Commons Clause (03/04/18)
... then back to Apache (11/10/18)
Elastic
Originally Apache licensed
Elastic NV mixes Apache and Elastic Licence code in repository and builds (06/18)
AWS (+Netflix +Expedia) launch "Open Distro for Elasticsearch" - Apache v2 - (11/03/19)
InfluxDB
Clustering - From MIT to Enterprise License (05/04/16)
Kafka (Confluent)
From Apache to Confuent Community License (14/12/2018)
MariaDB
MaxScale etc - From GPL to BSL 1.0 (16/08/2016)
MongoDB
From APGL to SSPL (06/10/2018)
Neo4j (Enterprise)
From Commercial/AGPL to Commercial/AGPL+Commons Clause (13/05/2018)
... then to Neo4j Commercial License (15/11/2018)
Redis (Modules)
From AGPL to Apache + Commons Clause (22/08/2018)
... then to Redis Source Available Licence (22/02/2019)
NOTE: Core is still BSD. Redis Enterprise is entrierly proprietary
RocksDB
from BSD3 + Patent Grant, to dual Apache 2.0 or GPLv2 (16/07/17)
Vendors
Trying to find a viable business model
Several squarely blaming large Cloud Vendors
Now misusing the label "Open Source"
Cloud Vendors
Blaming Open Source Vendors for Closing/Mixing Licenses
AWS - You will be Assimilated!
Google Cloud - Partnering with Open Source Vendors
Users
Where are they?
How can they be heard?
Vote with feet?
Open Source databases are dead?!?
Commercially - Mostly
Open Source License != Business Model
Hobby/Non-Profit/Foundation - Nope!
Commons Clause / Source Available
Almost, but... Not Open Source!!!
What are your rights?
Open Core
Open Source Core
Closed or Source Available addons/features/management.
Maybe you need these too?
Open Source is only part of the picture
Not everyone is a developer
Is having the code enough?
How do you support yourselves?
Who owns the community?
Is there a Gate Keeper?
What happens if the code is forked?
What happens if company X disappears?
Community is Everything!
fusiondb.com