使用 Amazon Redshift ML 的成本
Amazon Redshift ML 使用您现有的集群资源进行预测,因此您可以避免额外的 Amazon Redshift 费用。创建或使用模型不会产生额外的 Amazon Redshift 费用。预测在 Amazon Redshift 集群本地进行,因此,除非您需要调整集群大小,否则您无需支付额外费用。Amazon Redshift ML 使用 Amazon SageMaker 来训练您的模型,这确实会产生额外的相关费用。
Amazon Redshift 集群中运行的预测函数不收取额外费用。CREATE MODEL 语句使用 Amazon SageMaker,并产生额外的费用。成本随训练数据中的单元格的数量而增加。单元格数量是记录数(在训练查询或表时间中)乘以列数的乘积。例如,当 CREATE MODEL 语句的 SELECT 查询创建 10,000 条记录和 5 列时,它创建的单元格数为 50,000。
在某些情况下,CREATE MODEL 的 SELECT 查询生成的训练数据超过了您提供的 MAX_CELLS 限制(如果您没有提供限制值,则为原定设置 100 万)。在这些情况下,CREATE MODEL 会随机选择大约 MAX_CELLS(即训练数据集中的“列数”记录),然后使用这些随机选择的元组执行训练。随机采样可确保减少的训练数据集不会有任何偏差。因此,通过设置 MAX_CELLS,您可以控制您的训练成本。
使用 CREATE MODEL 命令语句时,可以使用 MAX_CELLS 和 MAX_RUNTIME 选项来控制成本、时间和潜在模型精度。
MAX_RUNTIME 指定使用 AUTO ON 或 OFF 选项时,训练在 SageMaker 中可能花费的最长时间。根据数据集的大小,训练任务通常比 MAX_RUNTIME 早完成。训练模型后,Amazon Redshift 会在后台执行额外的工作,以便在集群中编译和安装您的模型。因此,CREATE MODEL 可能需要比 MAX_RUNTIME 更长的时间才能完成。但是,MAX_RUNTIME 会限制 SageMaker 中用于训练模型的计算量和时间。您可以使用 SHOW MODEL 随时检查模型的状态。
当您用 AUTO ON 运行 CREATE MODEL 时,Amazon Redshift ML 使用 SageMaker Autopilot 自动智能地探索不同型号(或候选型号),以找到最佳型号。MAX_RUNTIME 限制花费的时间和计算量。如果 MAX_RUNTIME 设置过低,则可能没有足够的时间来探索一个候选项。如果您看到错误 “Autopilot 候选项没有模型”,请使用较大的 MAX_RUNTIME 值重新运行 CREATE MODEL。有关该参数的更多信息,请参阅 Amazon SageMaker API 参考中的 MaxAutoMLJobRuntimeInSeconds。
当您用 AUTO OFF 运行 CREATE MODEL 时,MAX_RUNTIME 对应于在 SageMaker 中运行训练任务的时间限制。根据数据集的大小和使用的其他参数(例如 MODEL_TYPE XGBOOST 中的 num_rounds),训练任务通常会更快完成。
您还可以通过在运行 CREATE MODEL 时指定较小的 MAX_CELLS 值来控制成本或减少训练时间。单元格是数据库中的一个条目。每行对应的单元格数量与列数相同,这些单元格可以是固定的,也可以有不同的宽度。MAX_CELLS 限制单元格的数量,从而限制用于训练模型的训练示例数量。预设情况下,MAX_CELLS 设置为 100 万个单元格。减少 MAX_CELLS 会减少 CREATE MODEL 中的 SELECT 查询结果中的行数,Amazon Redshift 会导出该结果并发送到 SageMaker 来训练模型。在 AUTO ON 和 AUTO OFF 下,减少 MAX_CELLS 均可减小用于训练模型的数据集的大小。这种方法有助于降低训练模型的成本和时间。要查看有关特定训练作业的训练和计费时间的信息,请在 Amazon SageMaker 中选择 Training jobs(训练作业)。
增加 MAX_RUNTIME 和 MAX_CELLS 通常会允许 SageMaker 探索更多候选项,从而提高模型质量。这样一来,SageMaker 可能需要更多的时间来训练每个候选项,并使用更多的数据来训练更好的模型。如果希望更快地迭代或浏览数据集,请使用较低的 MAX_RUNTIME 和 MAX_CELLS。如果您希望提高模型的精度,请使用更高的 MAX_RUNTIME 和 MAX_CELLS。
有关与各种单元格数量相关的成本免费试用详细信息,请参阅 Amazon Redshift 定价