Hacker News new | ask | show | jobs
by jwr 408 days ago
Theoretically you could write your own client library, but this is nontrivial — this is a distributed database. The client library talks to multiple servers. It's not a "connect to a socket and send commands" type of client library, like in case of SQL servers.
2 comments

The hard part is that there is no client spec you can follow as a third-party. Everything is implementation-defined. If you're out-of-tree, your code can break at any time. If the FoundationDB project committed to a protocol, client authors could write libraries outside of the main project.
Can you though? The protocol is not very well documented and it seems to iterate rather rapidly with the server version that it aims to be compatible with.
You might be able to, but are definitely not supposed to. The client is conceptually "part of the cluster".
Are you planning to?

This seems to be a theoretical discussion: I don't think I'd ever want to implement the client part of FoundationDB myself, and I don't really see a good reason to.

I'm not planning to because there is no documented protocol. If there were, I might! As a result, I can't use FoundationDB.