# SpiralDB Documentation > SpiralDB is a fast analytical database for storing and querying multimodal, multi-rate data streams — built on Vortex, optimized for AI workloads on physical-world data. ## Concepts - [Organizations](https://docs.spiraldb.com/organizations): Organizations are the top-level administrative unit in Spiral. They are used to configure single sign-on, billing, audit logging, and other settings that apply to all users within the organization. - [Projects](https://docs.spiraldb.com/projects): In Spiral, projects are the fundamental unit for structuring resources, access controls, and usage tracking. - [Authorization](https://docs.spiraldb.com/authorization): Spiral uses a role-based access control (RBAC) model for authorization, where currently the only unit of permissioning is the project. - [Security](https://docs.spiraldb.com/security): Spiral is designed with security as a core principle, implementing defense-in-depth strategies across authentication, authorization, encryption, and data protection. - [File Systems](https://docs.spiraldb.com/filesystems): Many Spiral resources make use of object storage. Spiral File Systems provide a means to securely federate and accelerate access to underlying object storage. - [Spiral Tables](https://docs.spiraldb.com/spiral-tables): Spiral Tables a powerful and flexible way for storing, analyzing, and querying massive and/or multimodal datasets. The data model will feel familiar to users of SQL- or DataFrame-style systems, yet is designed to be more flexible, more powerful, and more useful in the context of modern data processing. Tables are stored and queried directly from object storage. ## Use Cases - [Media Tables](https://docs.spiraldb.com/usecases/media-tables): Data Model of Spiral Tables makes them an ideal choice for storing and managing large-scale multimodal datasets (including images, videos, audio files, text, transformer-based embeddings and more). Tables are designed to store both data and traditional metadata (labels, annotations, complex nested data and more) in a single model. - [Data Loaders](https://docs.spiraldb.com/usecases/data-loaders): Low Data Loader Efficiency means fewer iterations on the model. Even the best teams spend tremendous amounts of human capital building, maintaining and adapting custom solutions - and their GPU still sits idle. ## Collections - [Overview](https://docs.spiraldb.com/collections/overview): Collections are not yet available. Please contact us if you are interested. ## Tables - [Data Model](https://docs.spiraldb.com/tables/data-model): The data model of Spiral Tables is dictionary-like structures of columnar arrays, sorted and unique by a set of primary key columns. Tables are sorted and unique by a primary key. The data model enables: - [Write Tables](https://docs.spiraldb.com/tables/write): We're going to explore the Spiral Tables write API using the ever classic GitHub Archive dataset. - [Scan & Query](https://docs.spiraldb.com/tables/scan): Scanning tables is the process of reading data row-by-row performing row-based scalar transformations, or row-based filtering operations. - [Enrichment](https://docs.spiraldb.com/tables/enrich): The easiest way to build multimodal Spiral tables is to start with metadata with pointers, such as file paths or URLs, and use enrichment to ingest the actual data bytes, such as images, audio, video, etc. With column groups design supporting hundreds of thousands of columns, horizontally expanding tables is a powerful primitive. - [Distributed](https://docs.spiraldb.com/tables/distributed): Both Spiral Table scans and transactions can be row-wise partitioned for use in distributed query engines such as PySpark, Dask, and Ray. For the engines listed below we have first-class integrations. For any other engine, see Others for instructions on how to integrate a Spiral scan or transaction with an arbitrary distributed compute system with a Python API. - [Expressions](https://docs.spiraldb.com/tables/expressions): The expressions module provides a powerful way to build and manipulate expressions for data processing. This guide will walk you through common use cases using GitHub event data as examples. - [Best Practices](https://docs.spiraldb.com/tables/best-practices): Spiral Tables are designed to be flexible, yet performant for a wide variety of use cases. However, there are some best practices to follow when designing your table schema to ensure optimal performance. ## PySpiral - [spiral](https://docs.spiraldb.com/python-api/spiral) - [spiral.expressions](https://docs.spiraldb.com/python-api/expressions) - [spiral.expressions.s3](https://docs.spiraldb.com/python-api/expressions.s3) - [spiral.expressions.http](https://docs.spiraldb.com/python-api/expressions.http) - [spiral.expressions.file](https://docs.spiraldb.com/python-api/expressions.file) - [spiral.expressions.list](https://docs.spiraldb.com/python-api/expressions.list) - [spiral.expressions.vector](https://docs.spiraldb.com/python-api/expressions.vector) - [spiral.viz](https://docs.spiraldb.com/python-api/viz) - [Command Line](https://docs.spiraldb.com/cli): Usage: - [Client Configuration](https://docs.spiraldb.com/config): This document describes the configuration options for the Spiral client. ## Reference - [OIDC Integrations](https://docs.spiraldb.com/oidc): OIDC is a protocol for authenticating entities between systems. Spiral integrates with several OIDC providers to allow workloads to authenticate without managing static credentials. For general workload setup steps (creating a workload, policy, and grant), see Workloads. - [Architecture](https://docs.spiraldb.com/architecture) - [Table Format](https://docs.spiraldb.com/format): Spiral Tables are designed as a table format, similar to Apache Iceberg. The client is configurable with a pluggable metastore, and the SpiralDB server provides a reference implementation over HTTP. - [Anatomy of a Scan](https://docs.spiraldb.com/anatomy-of-scan): Before we dive into the details of table scans, let's remind ourselves of the few design decisions in a table format: - [Troubleshooting](https://docs.spiraldb.com/troubleshooting): A guide to troubleshooting common Spiral client-side issues.