Optimize performance for hybrid tables¶
Optimize warehouses for hybrid tables¶
A warehouse of size X-Small is usually a sufficient size for small operational workloads. In order to achieve higher concurrency and throughput on short running operational queries, it is recommended that you increase the compute node count by using a multi-cluster warehouse rather than increasing compute resources with a larger warehouse.
If your workload has variable throughput patterns, you can enable autoscaling to reduce consumption when demand is lower. Set the scaling policy to Standard rather than Economy for the best performance and efficiency on workloads requiring high throughput or low latency. For more information, see Setting the scaling policy for a multi-cluster warehouse.
If possible, it is best to isolate separate workloads in separate warehouses so that they can scale independently. If you have a mixed hybrid workload with operational and analytical components, it is beneficial to separate the operational and analytical components in separate warehouses. If you cannot separate them and must execute them together on the same warehouse, then choose the warehouse size based on the analytical query latency requirements and choose the multi-cluster node count based on what is required to support your workload’s throughput.
Throttling for hybrid tables¶
The performance of hybrid tables can be impacted by throttling even in a case
where virtual warehouse compute usage is not high. To monitor your usage and
determine whether a hybrid table is being throttled, see the example in
AGGREGATE_QUERY_HISTORY view. You can also retrieve
the number of throttled hybrid table requests from
the HYBRID_TABLE_REQUESTS_THROTTLED_COUNT
column.
For more information on quotas and throttling in hybrid tables, see Unsupported features and limitations for hybrid tables.
Client drivers for hybrid tables¶
In order to access hybrid tables, you will need to use one of the following driver versions:
Driver
Minimum Version
Go
1.6.25
JDBC
3.13.31
.Net
2.1.2
Node.js
1.9.0
ODBC
3.0.2
PHP
2.0.0
Python Connector
3.1.0
SnowSQL
1.2.28
Note
You cannot access hybrid tables using an earlier driver version.
To experience optimal performance when using hybrid tables, make sure to use the latest version for your selected driver.
Stored procedures and hybrid tables¶
Stored procedures are supported for hybrid tables; however, executing transactions with AUTOCOMMIT enabled or multi-statement transactions offers better performance and efficiency than calling a stored procedure.
Serverless tasks and hybrid tables¶
While serverless tasks are supported, be aware that you may not experience optimal performance or efficiency for workloads that use hybrid tables.