The Distributed Asynchronous Object Storage (DAOS)

#croit for DAOS Storage

Together with our partner Intel we have created a solution for easy and reliable management of DAOS storage servers. It is a next generation high performance data storage, which stands out especially through its incredible performance. We are convinced that DAOS is particularly suitable for HPC applications, artificial intelligence and machine learning, and that its open source approach as well as its functions and performance are convincing compared to alternatives on the market.

Daos stack

#What the DAOS software stack provides:

  • Apache Spark* integration
  • Ultra-fine grained, low-latency, and true zero-copy I/O
  • Native producer/consumer workflows using publish/subscribe APIs
  • Non-blocking data and metadata operations to allow I/O and computation to overlap
  • Advanced data placement to account for fault domains
  • Software-managed redundancy supporting both replication and erasure code with online rebuild
  • Data indexing and query capabilities
  • In-storage computing to reduce data movement between storage and compute nodes
  • Tools for disaster recovery
  • End-to-end (E2E) data integrity
  • Seamless integration with the Lustre* parallel file system, with the ability to extend for other parallel file systems to provide a unified namespace for data access across multiple storage tiers
  • Scalable distributed transactions with guaranteed data consistency and automated recovery
  • Dataset snapshot capability
  • Data mover agent to migrate datasets among DAOS pools, from parallel file systems to DAOS, and vice versa
  • Security framework to manage access control to storage pools
  • Software-defined storage management to provision, configure, modify, and monitor storage pools
  • Native support for I/O middleware libraries like HDF5*, MPI-IO*, and POSIX over the DAOS data model and API, removing the need for applications to port their code to use DAOS APIs directly

As shown in the Figure, the DAOS software stack relies on a client-server model. I/O operations are handled in the DAOS library linked directly with the application, and they are serviced by storage services running in user space on the DAOS server node (DN).

#Storage Server Design

What are the basic requirements for such a DAOS setup? In order to be able to operate DAOS, the appropriate server components must be purchased. In particular, the CPU, NIC, PMEM and NVMe must be precisely coordinated with each other. Together with our independent, globally active hardware partners, we have put together fully planned systems - cost-optimized for use with DAOS storage.

Please do not hesitate to contact us to get the current BOM (Bill of Materials) for the desired manufacturer. We’ll be happy to help you with planning and optimizing your infrastructure.

Fig 074

#Network Requirements

DAOS Storage supports a variety of network models. Among them:

For best performance, we suggest a RDMA-enabled fabric.

#Informative Videos about DAOS