This topic describes the limits on search indexes. The limits include 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.
Mapping
The following table describes the limits on field mappings to consider when you create a search index. The limits include the limits on the field length, number of index fields, field types, nested types, and table fields.
Item | Maximum value | Description |
Number of index fields | 1000 | The number of fields that can be indexed. |
Array length | 256 | The maximum number of elements in an array. |
Number of nested levels | 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 | 100 | 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 value of the Text field exceeds 1,024 characters in length, Tablestore truncates and discards the excess characters, and tokenizes only 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 for a prefix query | 1,000 bytes | The query string can be up to 1,000 bytes in length. |
Maximum number of fields of the Vector type in a search index | 1 | A search index can contain only one field of the Vector type. To increase the limit, submit a ticket. |
Maximum number of dimensions for a field of the Vector type in a search index | 2048 | The limit is the same as the maximum number of dimensions of vectors. |
Top K query results that have the highest similarity as the vector that you want to query in a KNN vector query | 1000 | Up to 1,000 query results that have the highest similarity can be returned for a KNN vector query. |
Search
The following table describes the limits when you call the Search operation to query and analyze data.
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.
| |
timeout | 10s | None. | |
CU | None. | None. | |
QPS | 100,000 |
| |
Number of specified query methods 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 Aggregations at the same level | 5 | The number of Aggregations is recalculated each time you add a new Aggregation to SubGroupBy. |
Number of GroupBys at the same level | 5 | The number of GroupBys is recalculated each time you add a new GroupBy to SubGroupBy. | |
Number of nested GroupBys | 3 | The root GroupBy is calculated as a nested level. | |
Number of Filters in GroupByFilter | 10 | None. | |
Number of groups returned by GroupByField | 2,000 | None. | |
Number of Ranges in GroupByRange | 100 | None. | |
Number of Ranges in GroupByGeodistance | 10 | None. |
ParallelScan
The following table describes the limits when you call the ParallelScan operation to query data and export data in parallel.
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 scan tasks in a ParallelScan call | The value of the MaxParallel parameter. You can call the ComputeSplits operation to obtain the value of the parameter. | |
Maximum validity period of a parallel scan task | The maximum validity period is specified by aliveTime and is 10 minutes. | |
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 the same ScanQuery parameter value are considered one task. For more information, see Parallel scan. |
Index
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 |
|
Synchronization latency | 3s |
|
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 supported only 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) , SAU (Riyadh - Partner Region), and Philippines (Manila).
If your business requirements are not met due to the limit, submit a ticket at 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.