DEV Community

Cover image for How does ArcadeDB make data FAIR?
Christian Himpe
Christian Himpe

Posted on

How does ArcadeDB make data FAIR?

The FAIR principles for research data (Findability, Accessibility, Interoperability, Reusability) are a set of guidelines to facilitate sustainable availability of (research) data.

Inspired by Fluree's "Making Data FAIR", I decided to look at ArcadeDB in terms of FAIRness.

So, to check whether a tool X helps making (research or enterprise) data (more) FAIR, I ask for each principle Y: How does X make data Y?

How does ArcadeDB make data findable:

  • A unique identifier is assigned to each record and never reassigned.
  • Custom metadata for types and properties beyond SQL COMMENT ON.
  • The identifier is a mandatory property of every record.

How does ArcadeDB make data accessible?

  • Query Languages: SQL dialect, Cypher, Gremlin, GraphQL, MQL (MongoDB), SPARQL (via Gremlin plugin)
  • Interfaces: HTTP, Java, JDBC, MongoDB, Redis, Postgres
  • Drivers: CHICKEN Scheme, .NET, Ruby, Rust

How does ArcadeDB make data interoperable?

  • The native data format is JSON.
  • Data types map to standard Java data types.
  • Links between records are based on unique identifiers.

How does ArcadeDB make data reusable?

  • Property fields (i.e. for licenses) can be made mandatory.
  • Provenance can be enforced by immutable records.
  • Export formats: JSONL, GRAPHSON, GRAPHML

So overall, ArcadeDB makes data fair by its feature set. While this feature configuration is likely not unique, a polyglot multi-model NoSQL/NewSQL database is rare.

Top comments (0)

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay