Skip to content

foundationdb-beam/ecto_foundationdb

Repository files navigation

Ecto FoundationDB Adapter

CI

Driver

An Ecto Adapter for FoundationDB, written using foundationdb-beam/erlfdb as the driver for communicating with FoundationDB.

Installation

Install the latest stable release of FoundationDB from the official FoundationDB Releases.

The foundationdb-server package is required on any system that will be running a FoundationDB server instance. For example, it's common to run the foundationdb-server on your development machine and on managed instances running a FoundationDB cluster, but not for your stateless Elixir application server in production.

foundationdb-clients is always required.

Include :ecto_foundationdb in your list of dependencies in mix.exs:

defp deps do
  [
    {:ecto_foundationdb, "~> 0.3"}
  ]
end

Motivation

What are some reasons to choose EctoFDB?

FoundationDB offers:

  • Horizontal scaling of high-write workloads
  • Unbounded multi-tenancy
  • Serializable Transactions
  • Rich operations: multi-region, disaster recovery, backup/restore, telemetry

EctoFoundationDB offers:

  • Object storage similar to Record Layer
  • Online migrations
  • Built-in common indexes
  • Extensible index types

Usage

See the documentation for usage information.

For documentation on main branch, see Ecto.Adapters.FoundationDB.

Running tests

To run the integration tests, use the following.

mix test