News for hackers. Stuff that matters.
Re:Apple open-sources FoundationDB by thefounder on Thursday April 19, 2018 @01:34PM (#16877997)
I'm not familiar with FDB but what you say sounds almost too good to be true. Can I use it to implement the Google Datastore api? I'm trying for years to find a suitable backend so that I can leave the Google land. Everything I tried either required a schema or lacked transactions or key namespaces.
Re:Apple open-sources FoundationDB by wwilson on Thursday April 19, 2018 @01:43PM (#16878100)
As an existence proof: before the acquisition we built an ANSI SQL database and a wire-compatible clone of the MongoDB API.

I see no reason you wouldn't be able to implement Datastore. In fact here's a public source claiming that Firestore (which I believe is its successor) is implemented on top of Spanner: https://www.theregister.co.uk/2017/10/04/google_backs_up_fir...

Re:Apple open-sources FoundationDB by rthomas900 on Thursday April 19, 2018 @03:16PM (#16879128)
If I recall correctly, the "SQL layer" you had in FDB before the Apple acquisition was a nice proof of concept, but lacked support for many features (joins in SELECT, for example). Is the SQL layer code from that time available anywhere to the public? (I'm not seeing it in the repo announced by OP.)
Re:Apple open-sources FoundationDB by tjb1982 on Thursday April 19, 2018 @03:41PM (#16879376)
I used to work there. The SQL layer was capable of actually the majority of SQL features including joins, etc. We had an internal rails app that we used to dog-food for performance monitoring, etc. I used to work on the document layer, and was sad to see it wasn't included here.
Re:Apple open-sources FoundationDB by rthomas900 on Thursday April 19, 2018 @03:20PM (#16879167)
Re:Apple open-sources FoundationDB by zwily on Friday April 20, 2018 @12:06AM (#16882080)
That has FoundationDB dependencies that don’t exist in the apple repo (SQL Parser, JDBC Driver, etc)
Re:Apple open-sources FoundationDB by edwinyzh on Saturday April 21, 2018 @07:25AM (#16890992)
I hope this question doesn't feel too dump, but is it possible to implement a SQL Layer using SQLite's Virtual Table mechanism and leverage all foundationdb's features?
Re:Apple open-sources FoundationDB by X-Istence on Thursday April 19, 2018 @02:20PM (#16878541)
Is the wire-compatible clone of the MongoDB API available?
Re:Apple open-sources FoundationDB by wwilson on Thursday April 19, 2018 @02:23PM (#16878579)
It doesn't look like Apple open-sourced the Document Layer, which is a slight bummer. But I echo what Dave said below: what we got is incredible, let's not get greedy!

Also TBH now that I don't have commercial reasons to push interop, if I write another document database on top of FDB, I doubt I'd make it Mongo compatible. That API is gnarly.

Re:Apple open-sources FoundationDB by chx on Thursday April 19, 2018 @03:40PM (#16879367)
> That API is gnarly.

Out of the many MongoDB criticisms, this one is valid. This https://www.linkedin.com/pulse/mongodb-frankenstein-monster-... article is quite right about it (note: endorsing the article does not mean I endorse its author by far).

Other than that, they totally did a fake it until you make it with MongoDB 3.4 passing Jepsen a year ago and MongoDB BI 2.0 containing their own SQL engine instead of wrapping PostgreSQL.

Re:Apple open-sources FoundationDB by aeorgnoieang on Friday April 20, 2018 @10:29AM (#16885019)
What specifically are you trying to avoid endorsing about the author of the LinkedIn post to which you linked? I couldn't find anything from a cursory web search.
Re:Apple open-sources FoundationDB by mst on Saturday April 21, 2018 @09:38AM (#16891376)
He runs lambdaconf, and refused to disinvite a speaker who many people felt shouldn't be permitted to speak because of his historical non-technical writings.

(I've tried to keep the above as dry as possible to avoid dragging the arguments around this situation into this thread - and I suspect the phrasing of the previous comment was also intended to try and avoid that, so let's see if we can keep it that way, please)

Re:Apple open-sources FoundationDB by chx on Sunday April 22, 2018 @05:09PM (#16898595)
You could try adding controversy to the author name and searching then. As mst correctly notes, I am trying to avoid reigniting said controversy while indicating my distaste.
Re:Apple open-sources FoundationDB by itp on Thursday April 19, 2018 @03:13PM (#16879081)
> That API is gnarly.

The Will Wilson I remember was not prone to such understatement. That API (and the corresponding semantics) was a nightmare.

Re:Apple open-sources FoundationDB by tjb1982 on Thursday April 19, 2018 @03:37PM (#16879333)
I was pretty bummed not see that, myself
Re:Apple open-sources FoundationDB by wsh91 on Thursday April 19, 2018 @05:24PM (#16880300)
Hey there--I'm an engineer on the Cloud Datastore team. I'd love to know more about what your needs are if you're willing to share.
Re:Apple open-sources FoundationDB by jlgaddis on Friday April 20, 2018 @02:55AM (#16882682)
He "needs" to get rid of you (Google). :-)
Re:Apple open-sources FoundationDB by thefounder on Monday April 23, 2018 @02:04AM (#16900872)
I've forked the official SDK so that I can get extra functionality but it's quite hard to keep it updated when internal stuff changes. There is no way I can contribute. I can't use it everywhere I want...shortly said it's not open source and this sucks.
Re:Apple open-sources FoundationDB by julien_c on Thursday April 19, 2018 @01:44PM (#16878126)
Honest question, does MongoDB not work for this?
Re:Apple open-sources FoundationDB by PeCaN on Thursday April 19, 2018 @02:27PM (#16878631)
Honest question, does MongoDB work?
Re:Apple open-sources FoundationDB by btilly on Thursday April 19, 2018 @02:38PM (#16878743)
Until recently, no. But apparently they got serious about making it work and now it actually does. See https://jepsen.io/analyses/mongodb-3-4-0-rc3 for verification.

I realized this 2 months ago at https://news.ycombinator.com/item?id=16386129

Re:Apple open-sources FoundationDB by KMag on Friday April 20, 2018 @09:24AM (#16884525)
That's Nostradamus-level crazytown. What next, PHP strongly enforcing a sound static type system with immutable defaults, GADTs and dependent types?

Congrats to the MongoDB team!

Re:Apple open-sources FoundationDB by smadge on Friday April 20, 2018 @11:58PM (#16889912)
> What next, PHP strongly enforcing a sound static type system with immutable defaults, GADTs and dependent types?

Too funny!

Re:Apple open-sources FoundationDB by boubiyeah on Thursday April 19, 2018 @03:18PM (#16879137)
MongoDB is pretty average at absolutely everything.

It's fast to install on a dev machine though, lol.

Re:Apple open-sources FoundationDB by dangets on Friday April 20, 2018 @10:28AM (#16885017)
For better or worse, many times UX is more important than functionality.
Re:Apple open-sources FoundationDB by skissane on Friday April 20, 2018 @02:23AM (#16882558)
MongoDB is AGPL or proprietary. Many companies have a policy against using AGPL licensed code. So, if you work at one of those companies, then open source MongoDB is not an option (at least for work projects), and proprietary may not be either (depending on budget etc).

FoundationDB is now licensed under Apache 2, which is a much more permissive license, so most companies' open source policies allow it.

Re:Apple open-sources FoundationDB by diaz on Friday April 20, 2018 @06:00AM (#16883524)
Unless people want to change the mongodb code that they would be using, using the agpl software should be a non issue and there are not problems with it. People should start understanding the available licenses instead of spreading fear.
Re:Apple open-sources FoundationDB by skissane on Friday April 20, 2018 @06:50PM (#16888953)
It isn't "spreading fear", it is just reality. Google bans AGPL-licensed software internally: https://opensource.google.com/docs/using/agpl-policy/

I know that multiple other companies have a similar policy (either a complete ban on using AGPL-licensed software, or special approval required to use it), although unlike Google, they don't post their internal policy publicly.

If someone works at one of these companies, what do you want to do – spend your day trying to argue to get the AGPL ban changed, or a special exception for your project; or do you just go with the non-AGPL alternative and get on with coding?

Re:Apple open-sources FoundationDB by jkaplowitz on Tuesday April 24, 2018 @01:00PM (#16914387)
The main reason it's a problem at many of the companies which ban it is they have a lot of engineers who readily patch and combine code from disparate sources and might not always apply the right discipline to keep AGPL things appropriately separate. Bright-line rules can be quite useful.

It is true that MongoDB's AGPL contagion and compliance burden, if you don't modify it, is less than many fear. It is also true that those corporate concerns are valid. MongoDB does sell commercial licenses so that such companies can handle their unavoidable MongoDB needs, but they would tend to minimize that usage.

Re:Apple open-sources FoundationDB by ddorian43 on Thursday April 19, 2018 @03:26PM (#16879225)
Because MongoDB doesn't (didn't at least) anything at all good except for little complex document modifiers.

It was a very bad rdbms (since they marketed as a replacement) and a very bad sharded db (marketed too).