FoundationDB is a free and open-source multi-model distributed NoSQL database owned by Apple Inc. with a shared-nothing architecture. The product was designed around a "core" database, with additional features supplied in "layers." The core database exposes an ordered key–value store with transactions. The transactions are able to read or write multiple keys stored on any machine in the cluster while fully supporting ACID properties. Transactions are used to implement a variety of data models via layers.
FoundationDB is a distributed database designed to handle large volumes of structured data across clusters of commodity servers. It organizes data as an ordered key-value store and employs ACID transactions for all operations. It is especially well-suited for read/write workloads, but also has excellent performance for write-intensive workloads. Users interact with the database using API language binding. Documentation can be found online at . The documentation covers details of API usage, background information on design philosophy, and extensive usage examples. Docs are built from the source in this repo. Contributing to FoundationDB can be in contributions to the codebase, sharing your experience and insights in the community on the Forums, or contributing to projects that make use of FoundationDB. Please see the contributing guide for more specifics. The latest stable releases are (were) versions that are recommended for production use, which have been extensively validated via simulation and real cluster tests and used in our production environment. Branch Latest Production Release Notes : : : : : 7.3 7.3.69 Supported 7.2 Experimental 7.1 7.1.57 Bug fixes 7.0 Experimental 6.3 6.3.25 Unsupported Supported branches are those we actively maintain and will publish new patch releases. Bug fixes are branches where we still accept bug fixes, but may not publish newer patch releases. The community can build the latest release binaries if needed and is encouraged to upgrade to the Supported branches. Experimental branches are those used for internal feature testing. They are not recommended for production use. Unsupported branches are those that will no longer receive any updates. Developers interested in using FoundationDB can get started by downloading and installing a binary package. Please see the downloads page for a list of available packages. NOTE: FoundationDB has a lot of dependencies. The Docker container listed below tracks them and is what we use internally and is the recommended method of building FDB. The official Docker image for building is foundationdb/build , which includes all necessary dependencies. The Docker image definitions used by FoundationDB team members can be found in the dedicated repository. To use GCC, a non-default version is necessary. The following modifies environment variables ($PATH, $LD LIBRARY PATH, etc) to pick up the right GCC version: Slightly more elaborate compile commands can be found in the shell aliases defined in /root/.bashrc in the container image. This list is likely to be incomplete. Refer to the rockylinux9 Dockerfile in the fdb-build-support repo linked above for reference material on specific packages and versions that are likely to be required. If compiling for local development, please set -DUSE WERROR=ON in CMake. Our CI compiles with -Werror on, so this way you'll find out about compiler warnings that break the build earlier. 1. (Optional) Install a JDK for Java Bindings. FoundationDB currently builds with Java 8. 1. Navigate to the directory where you checked out the FoundationDB repository. The build under macOS will work the same way as on Linux. Homebrew can be used to install the boost library and the ninja build tool. Be careful, current main branch uses boost 1.86, do install this version or just let cmake download one. Also, if the Swift binding is not of interest, use -DBUILD SWIFT BINDING=OFF. The language bindings that CMake supports will have a corresponding README.md file in the bindings/lang directory corresponding to each language. Generally, CMake will build all language bindings for which it can find all necessary dependencies. After each successful CMake run, CMake will tell you which language bindings it is going to build. CMake can build a compilation database for you. However, the default generated one is not too useful as it operates on the generated files. When running ninja , the build system creates another compile commands.json f
~4 min read
FoundationDB is a free and open-source multi-model distributed NoSQL database owned by Apple Inc. with a shared-nothing architecture. The product was designed around a "core" database, with additional features supplied in "layers." The core database exposes an ordered key–value store with transactions. The transactions are able to read or write multiple keys stored on any machine in the cluster while fully supporting ACID properties. Transactions are used to implement a variety of data models via layers.
The FoundationDB Alpha program began in January 2012 and concluded on March 4, 2013, with their public Beta release. Their 1.0 version was released for general availability on August 20, 2013. On March 24, 2015, it was reported that Apple has acquired the company. A notice on the FoundationDB web site indicated that the company has "evolved" its mission and would no longer offer downloads of the software.
Excerpt from the source-code README · 11,806 chars · not written by Vinony
via Wikidata · CC0
Discovered by embedding cosine similarity (sentence-transformers MiniLM, 384-dim).