All Products
Search
Document Center

Tablestore:Search index limits

Last Updated:Jan 18, 2024

This topic describes the limits on search indexes, including the limits on field mappings, limits on querying data by calling the Search and ParallelScan operations, limits on search index metrics such as the rate, total size, and row count, and regions in which the search index feature is available.

Limits on field mappings

The following table describes the limits on field mappings to consider when you create a search index, such as the limits on the field length, number of indexed fields, field types, nested types, and table fields.

Item

Maximum value

Description

Number of indexed fields

500

The number of fields that can be indexed.

Array length

256

The maximum number of elements in an array.

Number of layers that can be nested in a query

5

Up to five levels can be nested.

Number of child rows in a nested field

256

The maximum number of child rows in a nested field.

Number of nested fields

25

The number of child fields that can be nested.

Total length of values in all primary key columns

1,000 bytes

The total length of values in all primary key columns in each row can be up to 1,000 bytes.

Length of the value in a primary key column of the STRING type

1,000 bytes

To index a primary key column of the STRING type, the value of the column cannot exceed 1,000 bytes in length.

Length of the value in an attribute column of the STRING type if you want to index the column as KEYWORD

4 KB

None.

Length of the value in an attribute column of the STRING type if you want to index the column as TEXT

2 MB

In most cases, the limit is the same as the length limit on an attribute column in a data table. When you perform fuzzy query based on fuzzy tokenization for a TEXT field, if the TEXT field value exceeds 1,024 characters in length, Tablestore truncates the excess characters and discards them, and only tokenizes the first 1,024 characters.

Length of a query string for a wildcard query

32

The query string can be up to 32 characters in length.

Length of a query string that contains a prefix

1,000 bytes

The query string can be up to 1,000 characters in length.

Limits on the Search operation

The following table describes the limits on calling the Search operation to perform data queries and aggregation.

Category

Item

Maximum value

Description

General limits

offset+limit

50000

To increase the number of returned rows, configure the next_token parameter.

limit

100

Default value: 10. Maximum value: 100.

  • If you call the Search operation to query data of the specified column, the value of the limit parameter can be up to 1000 if the data is contained in search indexes. This means that up to 1,000 rows can be returned per request.

  • To increase the limit, submit a ticket.

timeout

10s

None.

CU

Unlimited.

None.

QPS

100,000

  • The upper limit for lightweight transaction processing is 100,000 queries per second (QPS).

  • To increase the limit, submit a ticket.

Number of query methods that are specified in a Search call

1024

If complex nested queries are specified in a Search call, query performance is compromised. We recommend that you simplify the query.

Aggregation

Number of Aggregation operations at the same level

5

The number of Aggregation operations is recalculated each time you add a new aggregation clause to a sub group.

Number of GroupBy operations at the same level

5

The number of GroupBy operations is recalculated each time you add a new GroupBy clause to a sub group.

Number of layers that can be nested in a group

3

The root group is calculated as a nested layer.

Number of filters specified in a GroupByFilter operation

10

None.

Number of groups that are returned by each GroupByField operation

2,000

None.

Number of ranges that are specified in a GroupByRange operation

100

None.

Number of ranges that are specified in a GroupByGeodistance operation

10

None.

Limits on the ParallelScan operation

The following table describes the limits on calling the ParallelScan operation to perform data queries and parallel scans.

Category

Item

Description

General limits

offset+limit

When you use parallel scan, you cannot configure the offset and limit parameters. The results that are returned are displayed in chronological order.

limit

The maximum value is 2,000.

CU

None.

QPS

None.

Maximum number of parallel tasks

The value of the MaxParallel parameter. You can call the ComputeSplits operation to obtain the value of the parameter.

Maximum number of parallel scan tasks

The maximum number of parallel scan tasks is 10. Parallel scan tasks that have the same session ID and same value of the ScanQuery parameter are considered one task. For more information, see Parallel scan.

Limits on search index metrics

The following table describes the limits on search index metrics, such as the rate, synchronization latency, number of rows, and total size.

Item

Maximum value

Description

Rate

50,000 rows/s

  • The first time when data is written to a data table or when a large volume of data is written in a short period of time, Tablestore balances loads within a few minutes.

  • The maximum rate of indexing TEXT fields is 10,000 rows/s because this process consumes a large number of CPU resources for tokenization.

  • To increase the limit, submit a ticket.

Synchronization latency

3s

  • In most cases, the synchronization latency is within 3 seconds.

  • It takes up to 1 minute to initialize a new index.

Number of rows in an index

100 billion

To increase the limit, submit a ticket.

Total size

100 TB

To increase the limit, submit a ticket.

Other limits

The search index feature is available in the following regions: China (Hangzhou), China (Shanghai), China (Qingdao), China (Beijing), China (Zhangjiakou), China (Ulanqab), China (Shenzhen), China (Guangzhou), China (Chengdu), China (Hong Kong), Singapore, Australia (Sydney), Malaysia (Kuala Lumpur), Indonesia (Jakarta), Japan (Tokyo), Germany (Frankfurt)., UK (London), US (Silicon Valley), US (Virginia), Thailand (Bangkok), India (Mumbai), and Philippines (Manila).

Note

If your business requirements are not met due to the limit, submit a ticket on the Alibaba Cloud official website. When you submit a ticket, you must specify the limits and the limit values. You must also specify the scenarios in which you want to use the new limits and the requirements based on which you want to use the new limits. The requirements that you specify in the ticket are recorded for future development purposes.