# Optimizing Table Data Structures

This guide assumes the reader is familiar with the following concepts:

* How to [connect to SingleStore](https://docs.singlestore.com/db/v9.1/developer-resources/connect-with-application-development-tools.md)
* Creating tables and [running queries](https://docs.singlestore.com/db/v9.1/query-data.md) in a SQL database
* [Why you would add an index to a table](https://docs.singlestore.com/db/v9.1/query-data/query-tuning.md)
* [Aggregators and leaves](https://docs.singlestore.com/db/v9.1/introduction/distributed-architecture/cluster-components.md)

## In this section

* [Key Considerations for Understanding Your Workload](https://docs.singlestore.com/db/v9.1/create-a-database/optimizing-table-data-structures/key-considerations-for-understanding-your-workload.md)
* [Shard Keys](https://docs.singlestore.com/db/v9.1/create-a-database/optimizing-table-data-structures/shard-keys.md)
* [Choosing Rowstore Keys](https://docs.singlestore.com/db/v9.1/create-a-database/optimizing-table-data-structures/choosing-rowstore-keys.md)
* [Choosing a Columnstore Key](https://docs.singlestore.com/db/v9.1/create-a-database/optimizing-table-data-structures/choosing-a-columnstore-key.md)

***

Modified at: March 15, 2023

Source: [/db/v9.1/create-a-database/optimizing-table-data-structures/](https://docs.singlestore.com/db/v9.1/create-a-database/optimizing-table-data-structures/)

(An index of the documentation is available at /llms.txt)
