---
title: Manage file indexes
description: Customize the indexing strategy of a database or table in InfluxDB 3 Enterprise to optimize the performance of single-series queries.
url: https://docs.influxdata.com/influxdb3/enterprise/admin/file-index/
estimated_tokens: 616
product: InfluxDB 3 Enterprise
version: enterprise
publisher: InfluxData
canonical: https://docs.influxdata.com/influxdb3/enterprise/admin/file-index/
date: '2025-07-09T14:23:48-06:00'
lastmod: '2025-07-09T14:23:48-06:00'
---

InfluxDB 3 Enterprise lets you customize how your data is indexed to help
optimize query performance for your specific workload, especially workloads that
include single-series queries. Indexes help the InfluxDB query engine quickly
identify the physical location of files that contain the queried data.

By default, InfluxDB indexes on the primary key—`time` and tag columns. However,
if your schema includes tags that you don’t specifically use when querying, you
can define a custom indexing strategy to only index on `time` and columns
important to your query workload.

For example, if your schema includes the following columns:

* country
* state\_province
* county
* city
* postal\_code

And in your query workload, you only query based on country, state or province,
and city, you can create a custom file indexing strategy that only indexes on`time` and these specific columns. This makes your index more efficient and
improves the performance of your single-series queries.

> [!Note]
> File indexes can use any string column, including both tags and fields.

* [Indexing life cycle](#indexing-life-cycle)
* [Create a custom file index](#create-a-custom-file-index)
* [Delete a custom file index](#delete-a-custom-file-index)

## Indexing life cycle

InfluxDB 3 Enterprise builds indexes as it compacts data. Compaction is the
process that organizes and optimizes Parquet files in storage and occurs in
multiple phases or generations. Generation 1 (gen1) data is un-compacted and
is not indexed. Generation 2 (gen2) data and beyond is all indexed.

## [Create a custom file index](/influxdb3/enterprise/admin/file-index/create/)

Use the [`influxdb3 create file_index` command](/influxdb3/enterprise/reference/cli/influxdb3/create/file_index/) to create a custom file indexing strategy for a database or a table.

```bash
influxdb3 create file_index \
  --database example-db \
  --token 00xoXX0xXXx0000XxxxXx0Xx0xx0 \
  --table wind_data \
  country,city
```

## [Delete a custom file index](/influxdb3/enterprise/admin/file-index/delete/)

Use the [`influxdb3 delete file_index` command](/influxdb3/enterprise/reference/cli/influxdb3/delete/file_index/) to delete a custom file indexing strategy from a database or a table and revert to the default indexing strategy.

```bash
influxdb3 delete file_index \
  --database example-db \
  --token 00xoXX0xXXx0000XxxxXx0Xx0xx0 \
  --table wind_data
```

[indexing](/influxdb3/enterprise/tags/indexing/)
