LanceDB · Schema

LanceDB Table

A Lance table inside a LanceDB namespace. Tables are columnar (Lance format), versioned, and may carry vector, full-text, and scalar indexes.

Vector DatabaseMultimodalLance FormatLakehouseRAGAgent MemoryOpen SourceEmbeddingsFull-Text SearchHybrid SearchColumnar StorageArrowAI Infrastructure

Properties

Name Type Description
name string Table identifier within its namespace.
namespace array Hierarchical namespace path (e.g. ['warehouse', 'project']).
location string Object-store URI where the table is materialized (s3://, gs://, az://, file://).
schema object Arrow schema for the table.
version integer Monotonic version number of the table state.
properties object Free-form key/value table properties (e.g. retention, owner, description).
indexes array Indexes attached to this table.
tags array Named tags pointing at specific versions of the table.
stats object
View JSON Schema on GitHub

JSON Schema

lancedb-table-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/lancedb/main/json-schema/lancedb-table-schema.json",
  "title": "LanceDB Table",
  "description": "A Lance table inside a LanceDB namespace. Tables are columnar (Lance format), versioned, and may carry vector, full-text, and scalar indexes.",
  "type": "object",
  "required": ["name", "namespace", "schema"],
  "properties": {
    "name": {
      "type": "string",
      "description": "Table identifier within its namespace.",
      "pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
    },
    "namespace": {
      "type": "array",
      "description": "Hierarchical namespace path (e.g. ['warehouse', 'project']).",
      "items": { "type": "string" }
    },
    "location": {
      "type": "string",
      "format": "uri",
      "description": "Object-store URI where the table is materialized (s3://, gs://, az://, file://)."
    },
    "schema": {
      "type": "object",
      "description": "Arrow schema for the table.",
      "required": ["fields"],
      "properties": {
        "fields": {
          "type": "array",
          "items": { "$ref": "#/$defs/Field" }
        },
        "metadata": {
          "type": "object",
          "additionalProperties": { "type": "string" }
        }
      }
    },
    "version": {
      "type": "integer",
      "minimum": 0,
      "description": "Monotonic version number of the table state."
    },
    "properties": {
      "type": "object",
      "description": "Free-form key/value table properties (e.g. retention, owner, description).",
      "additionalProperties": { "type": "string" }
    },
    "indexes": {
      "type": "array",
      "description": "Indexes attached to this table.",
      "items": { "$ref": "#/$defs/Index" }
    },
    "tags": {
      "type": "array",
      "description": "Named tags pointing at specific versions of the table.",
      "items": { "$ref": "#/$defs/Tag" }
    },
    "stats": {
      "type": "object",
      "properties": {
        "numRows": { "type": "integer", "minimum": 0 },
        "numFragments": { "type": "integer", "minimum": 0 },
        "sizeBytes": { "type": "integer", "minimum": 0 }
      }
    }
  },
  "$defs": {
    "Field": {
      "type": "object",
      "required": ["name", "type"],
      "properties": {
        "name": { "type": "string" },
        "type": {
          "description": "Arrow logical type identifier (e.g. utf8, int64, float32, fixed_size_list).",
          "type": "string"
        },
        "nullable": { "type": "boolean", "default": true },
        "metadata": {
          "type": "object",
          "additionalProperties": { "type": "string" }
        },
        "vectorDimension": {
          "type": "integer",
          "minimum": 1,
          "description": "When the field is a fixed-size embedding vector, its dimensionality."
        }
      }
    },
    "Index": {
      "type": "object",
      "required": ["name", "column", "indexType"],
      "properties": {
        "name": { "type": "string" },
        "column": { "type": "string" },
        "indexType": {
          "type": "string",
          "enum": [
            "BTREE", "BITMAP", "LABEL_LIST", "FTS",
            "IVF_FLAT", "IVF_PQ", "IVF_HNSW_SQ", "IVF_HNSW_PQ"
          ]
        },
        "metric": {
          "type": "string",
          "enum": ["l2", "cosine", "dot"],
          "description": "Distance metric for vector indexes."
        },
        "numPartitions": { "type": "integer", "minimum": 1 },
        "numSubVectors": { "type": "integer", "minimum": 1 },
        "status": {
          "type": "string",
          "enum": ["PENDING", "BUILDING", "READY", "FAILED"]
        }
      }
    },
    "Tag": {
      "type": "object",
      "required": ["name", "version"],
      "properties": {
        "name": { "type": "string" },
        "version": { "type": "integer", "minimum": 0 }
      }
    }
  }
}