Data Storage Tools and Formats
Data storage is a fundamental aspect of any data management strategy. It involves organizing and preserving data in various formats and systems to ensure efficient access, retrieval, and analysis. In the context of big data and modern analytics, choosing the right storage solution is crucial for performance, scalability, and data integrity.
They can be broadly categorized into five main areas:
- File Layer: The file layer represents the fundamental formats for storing and organizing data. These formats focus on efficient storage, compression, and access patterns for raw data, providing the foundation for higher-level data operations.
- Object Storage: Distributed object storage systems that provide S3-compatible APIs for storing unstructured data at scale. These systems serve as the foundation for data lakes and provide the underlying storage infrastructure for modern data platforms.
- Metadata Layer: The metadata layer builds upon basic file formats to provide advanced features like ACID transactions, schema evolution, and versioning. These systems manage the organization and tracking of data changes while ensuring data consistency and reliability.
- Vector Storage: Vector databases store and index high-dimensional embeddings to power similarity search, enabling AI applications such as retrieval-augmented generation (RAG), semantic search, and recommendation systems.
- Data Modeling: Data modeling tools help in creating structured representations of data systems, defining relationships between data elements, and managing data transformations. They are essential for maintaining data quality and enabling effective analysis.
Available Tools and Formats
Here is a summary table of the main data storage tools and formats we have identified.
File Layer
| Tool | Subcategory | Creation Date | Stars | Forks | Contributors | Last Release | Latest Commit | Meets Criteria* | License | Link |
|---|---|---|---|---|---|---|---|---|---|---|
| Apache Arrow | File Layer | 17/02/2016 | 17154 | 4320 | 370 | 10/08/2026 | 23/09/2026 | Yes | Apache-2.0 | https://github.com/apache/arrow |
| Apache Kudu | File Layer | 29/01/2016 | 1914 | 659 | 131 | 06/12/2024 | 22/09/2026 | Yes | Apache-2.0 | https://github.com/apache/kudu |
| Avro | File Layer | 21/05/2009 | 3305 | 1773 | 389 | 23/08/2026 | 21/09/2026 | Yes | Apache-2.0 | https://github.com/apache/avro |
| DuckLake | File Layer | 03/03/2025 | 2999 | 258 | 79 | N/A | 22/09/2026 | Yes | MIT | https://github.com/duckdb/ducklake |
| Lance | File Layer | 07/07/2022 | 7106 | 858 | 266 | 23/09/2026 | 23/09/2026 | Yes | Apache-2.0 | https://github.com/lancedb/lance |
| ORC | File Layer | 06/05/2015 | 769 | 516 | 146 | 16/07/2026 | 21/09/2026 | Yes | Apache-2.0 | https://github.com/apache/orc |
| Parquet | File Layer | 10/06/2014 | 3082 | 1570 | 268 | 16/09/2026 | 23/09/2026 | Yes | Apache-2.0 | https://github.com/apache/parquet-mr |
| Vortex | File Layer | 27/02/2024 | 3221 | 225 | 80 | 11/09/2026 | 23/09/2026 | No | Apache-2.0 | https://github.com/spiraldb/vortex |
Object Storage
| Tool | Subcategory | Creation Date | Stars | Forks | Contributors | Last Release | Latest Commit | Meets Criteria* | License | Link |
|---|---|---|---|---|---|---|---|---|---|---|
| Apache Ozone | Object Storage | 02/10/2019 | 1307 | 644 | 300 | 18/09/2026 | 23/09/2026 | Yes | Apache-2.0 | https://github.com/apache/ozone |
| Ceph | Object Storage | 01/09/2011 | 17069 | 6510 | 287 | N/A | 23/09/2026 | Yes | LGPL-2.1 | https://github.com/ceph/ceph |
| Garage | Object Storage | 17/11/2021 | 4576 | 177 | 96 | N/A | 23/09/2026 | Yes | AGPL-3.0 | https://github.com/deuxfleurs-org/garage |
| JuiceFS | Object Storage | 08/01/2021 | 14463 | 1297 | 193 | 07/08/2026 | 23/09/2026 | Yes | Apache-2.0 | https://github.com/juicedata/juicefs |
| MinIO | Object Storage | 14/01/2015 | 61355 | 7984 | 410 | 16/10/2025 | 12/02/2026 | Yes | AGPL-3.0 | https://github.com/minio/minio |
| SeaweedFS | Object Storage | 14/07/2014 | 34923 | 3002 | 397 | 14/09/2026 | 23/09/2026 | Yes | Apache-2.0 | https://github.com/seaweedfs/seaweedfs |
Metadata Layer
| Tool | Subcategory | Creation Date | Stars | Forks | Contributors | Last Release | Latest Commit | Meets Criteria* | License | Link |
|---|---|---|---|---|---|---|---|---|---|---|
| Apache Gravitino | Metadata Layer | 23/04/2023 | 3237 | 943 | 343 | 29/06/2026 | 23/09/2026 | Yes | Apache-2.0 | https://github.com/apache/gravitino |
| Apache XTable | Metadata Layer | 21/07/2023 | 1243 | 215 | 52 | 24/08/2026 | 18/09/2026 | No | Apache-2.0 | https://github.com/apache/incubator-xtable |
| Delta Lake | Metadata Layer | 22/04/2019 | 9020 | 2182 | 390 | 20/08/2026 | 23/09/2026 | Yes | Apache-2.0 | https://github.com/delta-io/delta |
| Hive Metastore | Metadata Layer | 21/05/2009 | 6027 | 4797 | 259 | N/A | 23/09/2026 | Yes | Apache-2.0 | https://github.com/apache/hive |
| Hudi | Metadata Layer | 14/12/2016 | 6270 | 2522 | 384 | 08/06/2026 | 23/09/2026 | Yes | Apache-2.0 | https://github.com/apache/hudi |
| Iceberg | Metadata Layer | 19/11/2018 | 9267 | 3545 | 407 | 20/05/2026 | 23/09/2026 | Yes | Apache-2.0 | https://github.com/apache/iceberg |
| LakeFS | Metadata Layer | 12/09/2019 | 5542 | 479 | 119 | 22/09/2026 | 23/09/2026 | Yes | Apache-2.0 | https://github.com/treeverse/lakeFS |
| Lakekeeper | Metadata Layer | 05/04/2024 | 1461 | 163 | 56 | 22/09/2026 | 23/09/2026 | Yes | Apache-2.0 | https://github.com/lakekeeper/lakekeeper |
| Nessie | Metadata Layer | 09/04/2020 | 1514 | 197 | 83 | 22/09/2026 | 24/09/2026 | Yes | Apache-2.0 | https://github.com/projectnessie/nessie |
| Paimon | Metadata Layer | 12/01/2022 | 3407 | 1403 | 385 | 07/08/2026 | 23/09/2026 | Yes | Apache-2.0 | https://github.com/apache/paimon |
| Polaris | Metadata Layer | 29/05/2024 | 2064 | 530 | 170 | 02/08/2026 | 23/09/2026 | Yes | Apache-2.0 | https://github.com/apache/polaris |
| Unity Catalog (OSS) | Metadata Layer | 13/06/2024 | 3538 | 673 | 130 | 20/08/2026 | 22/09/2026 | Yes | Apache-2.0 | https://github.com/unitycatalog/unitycatalog |
Vector Storage
Vector storage systems store and index high-dimensional embeddings to enable similarity search at scale. They are a core building block for AI applications such as retrieval-augmented generation (RAG), semantic search, and recommendation engines.
| Tool | Subcategory | Creation Date | Stars | Forks | Contributors | Last Release | Latest Commit | Meets Criteria* | License | Link |
|---|---|---|---|---|---|---|---|---|---|---|
| Chroma | Vector Storage | 05/10/2022 | 29364 | 2529 | 190 | 01/04/2025 | 23/09/2026 | Yes | Apache-2.0 | https://github.com/chroma-core/chroma |
| Milvus | Vector Storage | 16/09/2019 | 46242 | 4269 | 335 | 20/09/2026 | 23/09/2026 | Yes | Apache-2.0 | https://github.com/milvus-io/milvus |
| pgvector | Vector Storage | 20/04/2021 | 23136 | 1329 | 23 | N/A | 22/09/2026 | Yes | PostgreSQL | https://github.com/pgvector/pgvector |
| Qdrant | Vector Storage | 30/05/2020 | 34770 | 2691 | 197 | 04/09/2026 | 03/09/2026 | Yes | Apache-2.0 | https://github.com/qdrant/qdrant |
| Weaviate | Vector Storage | 30/03/2016 | 16841 | 1407 | 159 | 22/09/2026 | 23/09/2026 | Yes | BSD-3-Clause | https://github.com/weaviate/weaviate |
*Criteria: >40 contributors, >500 stars, and recent releases/commit
Data Modeling
| Tool | Subcategory | Creation Date | Stars | Forks | Contributors | Last Release | Latest Commit | Meets Criteria* | License | Link |
|---|---|---|---|---|---|---|---|---|---|---|
| Big Functions | Data Modeling | 24/08/2022 | 759 | 70 | 38 | 15/05/2025 | 23/08/2026 | No | MIT | https://github.com/unytics/bigfunctions |
| dbt core | Data Modeling | 10/03/2016 | 13914 | 2581 | 379 | 23/09/2026 | 23/09/2026 | Yes | Apache-2.0 | https://github.com/dbt-labs/dbt-core |
| GraphQL | Data Modeling | 01/07/2015 | 14596 | 1154 | 130 | 04/09/2025 | 17/09/2026 | Yes | MIT | https://github.com/graphql/graphql-spec |
| SQL Mesh | Data Modeling | 23/09/2022 | 3295 | 456 | 175 | 08/09/2026 | 22/09/2026 | Yes | Apache-2.0 | https://github.com/TobikoData/sqlmesh |
*Criteria: >40 contributors, >500 stars, and recent releases/commit
Tool and Format Details
File Layer
- Apache Arrow: A language-independent columnar memory format for flat and hierarchical data, organized for efficient analytic operations and zero-copy data sharing across systems.
- Apache Kudu: A columnar storage engine for the Hadoop ecosystem that enables fast analytics on rapidly changing data, combining low-latency random access with efficient analytical scans.
- Avro: A row-based storage format, Avro is a data serialization system that provides rich data structures and a compact, fast, binary data format.
- DuckLake: An open table format that stores lakehouse metadata in a standard SQL database while keeping data in open formats, simplifying lakehouse management.
- Lance: A modern columnar data format optimized for machine learning and AI workloads, offering fast random access, versioning, and efficient vector search.
- ORC: (Optimized Row Columnar) A highly efficient way to store Hive data. It was designed to overcome limitations of other Hive file formats.
- Parquet: A columnar storage file format available to any project in the Hadoop ecosystem. Parquet is built from the ground up with complex nested data structures in mind.
- Vortex: A next-generation columnar file format and in-memory layout designed for high compression and fast random access, aimed at analytical and AI workloads.
Object Storage
- Apache Ozone: A scalable, distributed object store for Hadoop and cloud-native environments, providing both S3 and Hadoop-compatible APIs for storing billions of objects.
- Ceph: A highly scalable, software-defined distributed storage platform that delivers object, block, and file storage from a single unified cluster.
- Garage: A lightweight, self-hosted S3-compatible distributed object storage system designed for geo-distributed deployments on commodity hardware, licensed under AGPL-3.0.
- JuiceFS: A distributed POSIX-compatible file system built on top of object storage, providing high-performance shared storage for cloud-native and data-intensive workloads.
- MinIO: High-performance, S3-compatible object storage built for large-scale AI/ML, data lake, and datalake analytics workloads. Designed for multi-cloud environments with native Kubernetes integration. Serves as production-ready, self-hosted alternative to AWS S3, Azure Blob Storage, and Google Cloud Storage. Used by enterprises worldwide for modern data infrastructure.
- SeaweedFS: A fast distributed storage system for blobs, objects, files, and a data lake, offering S3-compatible APIs and optimized for handling billions of small files.
Metadata Layer
- Apache Gravitino: A high-performance, geo-distributed metadata lake that manages metadata across data sources, enabling unified data cataloging and governance for data and AI assets.
- Apache XTable: A cross-table interoperability project that provides omni-directional translation between Apache Hudi, Apache Iceberg, and Delta Lake table formats.
- Delta Lake: An open-source storage layer bringing ACID transactions to Apache Spark and big data workloads, enabling reliable data lake operations with time travel, schema enforcement, and batch/streaming unification.
- Hive Metastore: A centralized metadata repository service that stores semantic and technical metadata about data assets, providing metadata management and schema validation for Hadoop ecosystem components.
- Hudi: A data lake storage system enabling atomic publishing, record-level updates/deletes, and incremental data processing. It offers snapshot isolation and provides efficient upsert and delete capabilities.
- Iceberg: A table format for massive analytic datasets, offering schema evolution, hidden partitioning, and snapshot isolation. Supports efficient reads and writes with partition pruning and metadata handling.
- LakeFS: An open-source data versioning system that brings Git-like branching, committing, and merging operations to object-storage-based data lakes.
- Lakekeeper: An open-source Apache Iceberg REST catalog implementation, providing centralized table management and governance for Iceberg-based lakehouses.
- Nessie: A Git-like version control system for data lakes enabling branch-based development, metadata versioning, and time travel capabilities across multiple table formats and data lake configurations.
- Paimon: A streaming data lake platform optimized for high-speed data ingestion and real-time analytics, featuring changelog tracking and efficient incremental computation on dynamic datasets.
- Polaris: A unified metadata management system providing data discovery, lineage tracking, and governance capabilities across data lakes and warehouses with integrated security controls.
- Unity Catalog (OSS): An open-source, universal catalog for data and AI that provides centralized governance, access control, and lineage across tables, files, functions, and ML models.
Vector Storage
- Chroma: An open-source embedding database designed to make it easy to build LLM applications with memory, offering simple APIs for storing and querying vector embeddings.
- Milvus: A cloud-native, highly scalable vector database built for managing and searching massive volumes of embeddings to power similarity search and AI applications.
- pgvector: An open-source vector similarity search extension for PostgreSQL that adds vector data types and indexing; it is a PostgreSQL extension, not a standalone DB.
- Qdrant: A high-performance vector similarity search engine and database written in Rust, providing production-ready filtering, payloads, and an easy-to-use API.
- Weaviate: An open-source vector database that stores both objects and vectors, combining vector search with structured filtering and built-in machine learning model integrations.
Data Modeling
- dbt core: A command-line tool that enables data analysts and engineers to transform data in their warehouses more effectively.
- GraphQL: A query language for APIs and a runtime for executing those queries with your existing data. It provides a complete and understandable description of the data in your API.
- SQL Mesh: An open-source tool for building and managing data transformations, with a focus on data modeling and lineage.
When choosing storage and data modeling tools, consider factors such as data volume, query patterns, integration with existing systems, scalability requirements, and the specific needs of your data team. For file formats, think about compression, schema evolution capabilities, and compatibility with your processing engines. For metadata layers, consider transaction support and real-time requirements. For data modeling tools, consider the complexity of your data relationships, the need for version control, and collaboration features.
It’s often beneficial to combine multiple tools. For example, you might use Parquet for base storage, Delta Lake for transaction support, and dbt for transformation and modeling. The key is to create a flexible, scalable data infrastructure that supports your current needs and can evolve with your organization’s data strategy.
Remember, the choice of storage tools can significantly impact query performance, data governance, and the overall efficiency of your data operations. It’s worth investing time in selecting the right combination of tools for your specific use case.
The Challenge of Choice
The open-source community has developed numerous solutions for various aspects of data handling, including: