当查询运行时,较高优先级查询比较低优先级查询分配更多资源(即内存)。 较低优先级队列中的查询可能会更频繁地中止,以便为较高优先级队列中的查询腾出空间。 与手动 一样,查询通过以下两种方式之一路由到查询优先级队列:按数据库用户组或按“查询组”(可以使用语句在数据库会话中设置的标签)。 的三个步骤 配置具有查询优先级的自动 的前两个步骤与我们在配置手动 WLM 队列时建议的前两个步骤相同:设置单个用户并定义您的工作负载。设置个人用户 正如我们在手动。
为向 Redshift 集群提交查询的每个应用程序
配置帖子中详细讨论的那样,人员或进程创建单独的数据库用户非常重要。在应用程序或用户之间共享数据库用户帐户使得无法隔离工作负载或正确跟踪查询和集群的性能(更不用说它还具有安全隐患)。因此,首先确保您为系统中的每个查询源创建了一个单独的用户帐户。定义您的 沙特阿拉伯电报号码数据 工作负载并对用户进行分组 创建或枚举所有单独的数据库用户后,下一步是将它们分组为数据库工作负载。例如,您可能会识别如下工作负载: 加载: 加载到集群中或从集群中卸载的数据。这些是 和 语句。
转换: 批处理作业和计划转换
插入、更新和删除事务 临时: 这些是分析师/仪表板的查询。选择语句。 您还可以决定创建更精细的工作负载细分。但最终每个工作负载都应该代表一个流程并具有可定义的性能要求即使您的性能要求是近似的(例如“我希望我们的仪表板查询很快,但我们的转换可能会更慢”)。为每个工作 电子邮件数据 负载创建一个数据库用户组,并将相应的用户添加到用户组中。每个组可能有一个用户,也可能有数百个。 对工作负载进行排序并分配优先级 接下来,按优先级对工作负载进行排序。