Apple-owned FoundationDB open sources the core technology at the heart of iCloud

2»

Comments

  • Reply 21 of 22
    It's a small sample, but the 1st and 3rd most viewed topics on the FDB Core discussion are:

    1) Swift Language Support

    3) ARM Support for FoundationDB

    https://forums.foundationdb.org/c/development/fdb-core

  • Reply 22 of 22
    I have been playing around with FDB for the past few days...

    I used their sample Class Scheduling app:

    https://apple.github.io/foundationdb/class-scheduling.html

    I got the app running on Xcode in both Python in Ruby.  I've never used either language and both of them want to run on the command line (terminal window) instead of Xcode.  It took a while to get them running and get me up to speed on the language, infrastructure, etc. -- but that's another story.

    So, unfamiliar db, unfamiliar language, coerced IDE...

    The results are impressive to me -- and I even added a Blob sample to the Python version:

    Here's a sample of the out put of the Python app:



    The red area shows some samples of the Classes db a portion of the list (array) unformatted and formatted.

    The blue area shows sizes and timings for the Class Scheduling app:
    • a total of 1,620 classes in a db of 32,742 bytes -- about 20 bytes per class
    • scheduling 2,659 * students to 5 classes each (10 random attempts) **

    *  2,659 is the number of students  in my youngest grandson's high school

    ** scheduling consists of 10 random attempts of the following operations until 5 classes are scheduled for each student:
    • signing up for a random class if seats are available
    • trying a different random class until one found with seats available
    • dropping classes
    • switching classes
    Scheduling resulted in 26,590 transactions executed in 5,318 threads.  It took 13.1 seconds to schedule all the students -- 2,028 transactions per second. 

    The yellow area shows the size and timing of FDB handling blobs:
    • blob size of 1,375,164
    • write the blob in .026 seconds
    • read the blob in .042 seconds

    I ran this several times with similar results.  There were about 1,999 processes running at the time -- apps like Xcode, iTunes, Terminal, Safari, Mail, Bbedit... even a Time Machine backup.  

Sign In or Register to comment.