#1 2019-04-01 10:46:59

edwinsn
Member
Registered: 2010-07-02
Posts: 1,218

FoundationDb - I'd like to bring it to your attention

Hello ab,

Do you happen to know some details about FoundationDb, which powers the major part of Apple's cloud?

As I understand it, it's an open source transactional, distributed, and highly fault-tolerant key-value data store system.

What makes it different it's its "layer" concept - it allows other data layer, for example, a document database, a SQL database or any kind of database, to be built on top of it.

The potential integration with mORMot is to let mORMot have a distributed database backend with UNLIMITED space!

When Apple open sourced FoundationDb I spent hours reading about it and I was very attempted to make a post here wink And recently Apple open sourced a Record Layer built on top of FoundataDb, I finally made this post smile


Delphi XE4 Pro on Windows 7 64bit.
Lazarus trunk built with fpcupdelux on Windows with cross-compile for Linux 64bit.

Offline

#2 2019-04-01 16:06:14

ab
Administrator
From: France
Registered: 2010-06-21
Posts: 14,672
Website

Re: FoundationDb - I'd like to bring it to your attention

I don't know what is the real benefit in comparison, say, to MongoDB.
Just the C client is more than 6MB on Windows, so sounds not like a light protocol.

Difficult to find out what it really makes it diverse, apart from the marketing terms and (Apple) fans enjoyment.
I only see the limitations, e.g. simplistic data modeling, which would need more code on client side.

Offline

#3 2019-04-02 07:05:11

edwinsn
Member
Registered: 2010-07-02
Posts: 1,218

Re: FoundationDb - I'd like to bring it to your attention

Hi ab, I must say I don't have real-life project with both of the two, but here are several perceptions I got reading on Hacker News:
- MongoDB might be far less stable than FondationDB - I used to watch a demo video on youtube by one of the FoundationDB co-founders, there were 4 or 5 nodes running the distributed FondationDB system, you randomly turn off two of them, and in just a minute, the distributed system automatically restore to full working service. It's very impressive, nothing like that in the market as far as I know.

- You can built anything on top of FondationDB's layer system, that's the goal of its fundamental key-value system.


Delphi XE4 Pro on Windows 7 64bit.
Lazarus trunk built with fpcupdelux on Windows with cross-compile for Linux 64bit.

Offline

#4 2019-04-08 06:45:19

ab
Administrator
From: France
Registered: 2010-06-21
Posts: 14,672
Website

Re: FoundationDb - I'd like to bring it to your attention

MongoDB has a replication system, with automatic election IIRC.

You can build anything on top of assembly, too. wink

It may be a very good tool, but my guess (perhaps I am wrong) is that it would demand a lot of work to have a proper driver, and proper ORM integration - even for basic tasks.

Offline

#5 2019-04-08 12:53:33

edwinsn
Member
Registered: 2010-07-02
Posts: 1,218

Re: FoundationDb - I'd like to bring it to your attention

ab wrote:

MongoDB has a replication system, with automatic election IIRC.

You can build anything on top of assembly, too. wink

It may be a very good tool, but my guess (perhaps I am wrong) is that it would demand a lot of work to have a proper driver, and proper ORM integration - even for basic tasks.

FoundationDb distributed feature is much more than replication. Check out this extremely impressive video:
https://www.youtube.com/watch?v=oLGYMdo2q2g

I believe when its first come out, nothing like that on the earth, and one of the reasons it's acquired by Apple than released being an open source project 3 years later.

Re possible integration with mORMot, yes, I believe it's not easy, I asked implementing it using SQLIte's Virtual table approach, the developer of foundationdb said it's not scaleable in that way.


Delphi XE4 Pro on Windows 7 64bit.
Lazarus trunk built with fpcupdelux on Windows with cross-compile for Linux 64bit.

Offline

Board footer

Powered by FluxBB