System Limits

System Limits

This topic specifies maximum sizes and numbers of various MemSQL components. Use the following links to navigate to a section below:

Cluster-Level Limits

Item Max Spec (enforced) Max Spec (recommended) Comments
Number of hosts in a cluster None Workloads that generate significant network traffic between hosts should be limited to clusters with smaller number of hosts.
Number of nodes in a cluster (includes leafs and aggregators) None Workloads that generate significant network traffic between nodes should be limited to clusters with smaller number of nodes.
Number of databases in a cluster None Each database requires memory for transaction buffer and more databases implies greater demand on available memory.
Concurrent queries in a cluster None Each aggregator will only actually execute a limited number of queries at once (defined by max_connection_threads, default 192). Beyond that concurrency, queries will be queued up.
Simultaneous client connections 100,000 per aggregator For more information, read about max_connections

Database-Level Limits

Item Max Spec (enforced) Max Spec (recommended) Comments
Number of tables in a database Each table costs some per-table memory overhead.
Number of partitions in a cluster None

Table-Level Limits

Item Max Spec (enforced) Max Spec (recommended) Comments
Number of columns per table 4096
Row size in bytes 64KB Limit does not apply to variable-length strings such as VARCHAR, VARBINARY, TEXT, etc.
Length of names in characters (applies to table names, column names) 64
Number of indexes per table 63
Number of columns per index 32
Number of tables in a join for each SELECT 253

Naming Constraints

Item Constraints
Names Database names only allow alphanumeric characters and cannot start with a digit. Table names can contain both alphanumeric and non-alphanumeric characters.
Was this article useful?