Slashdot Mirror


Apple Open Sources FoundationDB (macrumors.com)

Apple's FoundationDB company announced on Thursday that the FoundationDB core has been open sourced with the goal of building an open community with all major development done in the open. The database company was purchased by Apple back in 2015. As described in the announcement, FoundationDB is a distributed datastore that's been designed from the ground up to be deployed on clusters of commodity hardware. Mac Rumors reports: By open sourcing the project to drive development, FoundationDB is aiming to become "the foundation of the next generation of distributed databases: "The vision of FoundationDB is to start with a simple, powerful core and extend it through the addition of "layers". The key-value store, which is open sourced today, is the core, focused on incorporating only features that aren't possible to write in layers. Layers extend that core by adding features to model specific types of data and handle their access patterns. The fundamental architecture of FoundationDB, including its use of layers, promotes the best practices of scalable and manageable systems. By running multiple layers on a single cluster (for example a document store layer and a graph layer), you can match your specific applications to the best data model. Running less infrastructure reduces your organization's operational and technical overhead." The source for FoundationDB is available on Github, and those who wish to join the project are encouraged to visit the FoundationDB community forums, submit bugs, and make contributions to the core software and documentation.

50 comments

  1. it begs the question by Anonymous Coward · · Score: 1

    Is it webscale?

    1. Re:it begs the question by Anonymous Coward · · Score: 0

      The more important question: Does it have a Code of Conduct?

    2. Re: it begs the question by Anonymous Coward · · Score: 0

      No threatening people with hugs and include your pronouns in your signature

    3. Re: it begs the question by kbumsik · · Score: 2

      Look at CONTRIBUTING.md. They have the Code of Conduct. Looks like they are open for contribution. https://github.com/apple/found...

    4. Re: it begs the question by tigersha · · Score: 1

      Fuck yeah!

      --
      The dangers of excessive individualism are nothing compared to the oppressiveness of excessive collectivism
  2. Stopped reading after key value store by Anonymous Coward · · Score: 0

    These types of data stores are worthless to me.

    1. Re:Stopped reading after key value store by Pseudonym · · Score: 1, Troll

      Well that doesn't mean they're worthless to many. Regardless, a less misleading headline would be: "Apple is the 7000th vendor to open source their key value store after discovering the space is too crowded".

      --
      sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
    2. Re: Stopped reading after key value store by Anonymous Coward · · Score: 0

      Winner winner; chicken dinner.

    3. Re:Stopped reading after key value store by Tablizer · · Score: 1

      They may have niches where they shine, but PHB's and resume buzzword padders may use them where not appropriate. For example, some fool stuck our shop with a "microservices" architecture when we don't need it, wasting time and money. Goddam idiots.

  3. Same issue as CUPS: by Anonymous Coward · · Score: 0, Insightful

    Do you really want to be making Apple products better FOR FREE?

    Because if you provide code under a contributor license agreement to them, that is what you will be doing.

    1. Re:Same issue as CUPS: by pubwvj · · Score: 2

      "Do you really want to be making Apple products better FOR FREE?"

      Sure. That's the same with other open source projects like WordPress. I make it better, I benefit from it, if the community likes it they incorporate it in the main line and everyone benefits. Works.

    2. Re:Same issue as CUPS: by Anonymous Coward · · Score: 0

      -1 dumbass

    3. Re:Same issue as CUPS: by drinkypoo · · Score: 1

      Do you really want to be making Apple products better FOR FREE?
      Because if you provide code under a contributor license agreement to them, that is what you will be doing.

      In theory, sure. In practice, not under this license. If they were to use GPL, then I'd be happy to make any contributions that were useful to me. Since they aren't, I'd rather use something else. Foundationdb does seem to be about the fastest thing around that does what it does, though. (I haven't used it, but I browsed around for a while before writing this comment.)

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    4. Re: Same issue as CUPS: by tigersha · · Score: 1

      Like Webkit you mean? Actually 80% of MacOS has always been open source

      --
      The dangers of excessive individualism are nothing compared to the oppressiveness of excessive collectivism
    5. Re: Same issue as CUPS: by drinkypoo · · Score: 1

      Like Webkit you mean? Actually 80% of MacOS has always been open source

      So what? Wake me up when it's Free Software.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    6. Re: Same issue as CUPS: by Anonymous Coward · · Score: 0

      Wake up! https://www.gnu.org/licenses/license-list.en.html#apache2

  4. iPod by eneville · · Score: 1

    Shame it's not the DB format used on the later iPod Nano music players, because that would have been useful.

  5. How is it free? by SuperKendall · · Score: 3, Insightful

    Do you really want to be making Apple products better FOR FREE?

    The point of Open Source is that EVERYONE gets a better product "for free" because by contributing changes Apple benefits - but so do you, or anyone else that chooses to use the code. Why would you choose to contribute if you were not also benefitting to begin with?

    In fact in a very real sense Apple is not getting anything "for free". There is very real time that Apple is paying for, that has gone into building this system that Apple has opened, and also Apple is paying for time to monitor and curate and test contributions. All of that takes time and money and is not "free", far too many people think of actual code as the beginning and end but it is just a tiny part of a more complex puzzle.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
    1. Re:How is it free? by Anonymous Coward · · Score: 0

      I thought the point of Open Source is that EVERYONE gets a better product "for free" EQUALLY. The same open license applies to all. If you want to contribute under a license for the benefit of some corporation over yourself, you are welcome to do that. I'll pass on that.

    2. Re:How is it free? by Anonymous Coward · · Score: 0

      Ya nice try apple. We are not going to fix your code for you.

    3. Re:How is it free? by DeVilla · · Score: 2

      Do you really want to be making Apple products better FOR FREE?

      The point of Open Source is that EVERYONE gets a better product "for free" because by contributing changes Apple benefits - but so do you, or anyone else that chooses to use the code.

      And the point of Open Core is to release internals of your product as Open Source to appear more open and maybe to get people to serve as your unpaid employees while making sure you don't release enough code to be useful outside of your product and to limit contributions that attempt to re-implement those parts.

      See Open Darwin as a successful example.

    4. Re:How is it free? by Freischutz · · Score: 1

      Do you really want to be making Apple products better FOR FREE?

      The point of Open Source is that EVERYONE gets a better product "for free" because by contributing changes Apple benefits - but so do you, or anyone else that chooses to use the code. Why would you choose to contribute if you were not also benefitting to begin with?

      In fact in a very real sense Apple is not getting anything "for free". There is very real time that Apple is paying for, that has gone into building this system that Apple has opened, and also Apple is paying for time to monitor and curate and test contributions. All of that takes time and money and is not "free", far too many people think of actual code as the beginning and end but it is just a tiny part of a more complex puzzle.

      I agree, that's how symbiotic relationships work. Apple originally forked KHTML, turned it into WebKit and then open sourced WebKit, people contributed to it and some of the WebKit code was even re-integrated into KHTML. WebKit was then forked by Apple's competitor Google to become Blink (Nokia also forked WebKit at one point) so KHTML in a number of modified forms is used in large number of browsers. The same goes for Cups, which Apple acquired, open sourced, and is used extensively by Linux distributions (well it was, at one time, but Fedora still uses it). So in two cases Apple open-sourced stuff they had poured significant amounts of money into and the projects got forked and/or used by several direct competitors. Taking the view that using this software is 'helping Apple' is a pretty simplistic attitude, the way FOSS works is considerably more complex than so that it can be reduced to 'AppleCode==evil'.

    5. Re:How is it free? by TheFakeTimCook · · Score: 1

      Taking the view that using this software is 'helping Apple' is a pretty simplistic attitude, the way FOSS works is considerably more complex than so that it can be reduced to 'AppleCode==evil'.

      Exactly!

      But it doesn't fit into the Slashtard/Freetard mantra.

    6. Re:How is it free? by Anonymous Coward · · Score: 0

      CUPS was open source before Apple acquired it, but it was pretty badly managed and was a bear to use. Apple acquiring it, investing resources into it while keeping it open source was by far the best thing to ever happen to printing on Linux and macOS

  6. Requires mono? by Anonymous Coward · · Score: 0

    I'll pass. Seriously wtf does a database need mono for?

    1. Re:Requires mono? by willy_me · · Score: 5, Informative

      A quick look through the source code shows the vast majority is C++ with some Python thrown in. The only CSharp I can see is in "flow/ActorCompiler". There is not much there and it could probably be converted into Python with a little effort.

      Now that this is an open source project it is likely that the CSharp will be rewritten in another language. The thought of having to install Mono makes me cringe - and I doubt I am the only one. Someone will consider it worth their time to make the change. It does not look like the CSharp components are used to facilitate binding to .NET so a change is likely viable.

    2. Re:Requires mono? by nospam007 · · Score: 1

      "I'll pass. Seriously wtf does a database need mono for?"

      Lots of teens have it, it's a must.

    3. Re:Requires mono? by Anonymous Coward · · Score: 0

      Why Mono? Why not just go to the real thing and use .Net Core from Microsoft?

      Besides, at this point C# looks a lot more stable and attractive than Java does given who is managing the projects.

    4. Re:Requires mono? by Anonymous Coward · · Score: 0

      Hint, he won't because the word "Microsoft" was mentioned and he won't bother looking that .Net core works on all the major platforms, and is CC-BY licensed. So, yeah, cutting off his nose to spite his face.

  7. Layers? by Anonymous Coward · · Score: 0

    Thing thing uses layers? I thought we replaced those with divs eons ago!

  8. "all major development in done in the open" by Anonymous Coward · · Score: 0

    What does it mean? "You fools develop this for us, then will lock it up and sell it"?

    1. Re:"all major development in done in the open" by Bing+Tsher+E · · Score: 1

      A good test for openness is whether something is in the NetBSD pkgsrc collection. This doesn't appear to be.

    2. Re:"all major development in done in the open" by shmlco · · Score: 1

      Because it was just open-sourced this week???

      --
      Any sect, cult, or religion will legislate its creed into law if it acquires the political power to do so.
    3. Re: "all major development in done in the open" by Anonymous Coward · · Score: 0

      Lots of people commit code to open source projects as a hobby or volunteers; even projects which have commercial arms. No one is making you contribute.

      I'm not going to fault Apple for doing something good. But let's see them take this same attitude with OSX and iOS.

  9. it RAISES the question by Anonymous Coward · · Score: 0, Informative

    It RAISES the question.

    "Begging the question" means something completely different, you illiterate moron.

    1. Re:it RAISES the question by Anonymous Coward · · Score: 0

      Illiterate = "unable to read or write" (wikipedia)

      The PP is obviously literate, otherwise you would not have anything to react to.

      Moron = Person abusing the language when calling someone a moron for abusing the language. (me, now exposed to Muphry's law)

    2. Re:it RAISES the question by Anonymous Coward · · Score: 0

      It's spelled Murphy's, you moron.

    3. Re:it RAISES the question by Plumpaquatsch · · Score: 1

      It's spelled Murphy's, you moron.

      No, it isn't.

      --
      Of course news about a fake are Fake News.
  10. Yay! by Pseudonym · · Score: 1

    Burt Bacharach was wrong. What the world needs now is another distributed key value store.

    --
    sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
    1. Re:Yay! by mirthful1 · · Score: 1

      Burt Bacharach was wrong. What the world needs now is another distributed key value store.

      Yep, exactly. That said, I'm curious about the 'layers' aspect. That seems to be the fun/cool distinguishing part of this engine. And what probably made it worth acquiring when they were bought.

    2. Re:Yay! by Anonymous Coward · · Score: 0

      I worked on a project last two years that used etcd for keu value store , and in the app we had lauers around that for different data types, including ones that required multiple kv pairs. All app access of the data store was through these layers.

      If I had known the simple idea was worth millions I could have created an ICO for it and put the layers on the blockchains!! /Sarcasm

  11. gfy by Anonymous Coward · · Score: 0

    Ya nice try apple. We are not going to fix your code for you.

    we will fix their bugs, and they will fix our bugs, and you can just fuck yourself, and we won't care

    1. Re:gfy by Anonymous Coward · · Score: 0

      I'm about to fix my penis into your ass.

  12. So what do they call the API? by Megane · · Score: 1

    Would the API for this be called FoundationDBFoundation?

    --
    #naabhaprzrag, #sverubfr-000, #agi-fcbafberq, negvpyr[pynff*=' negvpyr-ary-'] { qvfcynl: abar !vzcbegnag; }
    1. Re:So what do they call the API? by Pseudonym · · Score: 1

      FoundationDBKit?

      --
      sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
  13. Some are more equal than others by SuperKendall · · Score: 1

    I thought the point of Open Source is that EVERYONE gets a better product "for free" EQUALLY

    That is true to the extent you use the code. If someone does not use the code, they obviously get less benefit. However someone trying to do something with open source code can easily benefit FAR more than the original developer and maintainer - sure Apple benefited from WebKit for example, but it seems to me lots of companies got WAY more value out of it than Apple did, because they would have spent a far greater percentage of R&D budget on something that worked as well as WebKit than Apple had to.

    If you want to contribute under a license for the benefit of some corporation over yourself, you are welcome to do that. I'll pass on that.

    But again, it's not contributing to a company OVER yourself. If you are contributing, that means you are also using the project yourself, which means you are gaining some benefit.

    You could of course withhold changes to prevent others from getting your "invaluable" changes. But if you've ever modified an open source library you know that is fools gold; for what you have is a patch you have to maintain and merge with every update to the project that comes down over time. Truly that way lies madness and you gain far more contributing changes back to the main project where someone else maintains them... then they are working for YOU for free. Why do you not look at it that way?

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
  14. OPEN is not Philosophy by ElitistWhiner · · Score: 1

    Mac OSX which roots to DARWIN at its core is open source. FoundationDB open source I read as a strategic action preceding the launch of another or new Apple platform.

    1. Re:OPEN is not Philosophy by TheFakeTimCook · · Score: 1

      Mac OSX which roots to DARWIN at its core is open source. FoundationDB open source I read as a strategic action preceding the launch of another or new Apple platform.

      That's a pretty far reach, methinks.

    2. Re:OPEN is not Philosophy by ElitistWhiner · · Score: 1

      Open source is keystone to the technology Apple develops. The choice to open source a software which none of its current product line up depends is interesting. Apple is not in the open source business. So why? Why choose open source for a software that Apple API's neither support, integrate nor interoperate?

    3. Re:OPEN is not Philosophy by TheFakeTimCook · · Score: 1

      Open source is keystone to the technology Apple develops. The choice to open source a software which none of its current product line up depends is interesting. Apple is not in the open source business. So why? Why choose open source for a software that Apple API's neither support, integrate nor interoperate?

      Interesting point.

      Perhaps it will be rolled-out in the next major release of macOS and/or iOS, and this is Apple's way of Beta Testing it.