成本优化的最佳实践
本文将介绍最佳实践支持的原则成本优化,组织原则。
1。选择正确的资源
使用三角洲湖
三角洲湖有许多性能改进,可以显著加快工作负载(使用镶木地板相比,兽人和JSON)。看到优化建议砖。如果工作负载集群上运行工作,这直接导致更短的集群的运行时和更低的成本。
使用集群工作
工作是一种交互的代码在砖集群运行。例如,您可以运行一个提取、转换和加载(ETL)工作负载交互地或时间表。当然,你也可以在笔记本上运行作业交互的UI。然而,在集群的工作,非交互式工作负载将成本明显低于通用集群。看到定价的概述比较“就业计算”和“通用计算”。
另外一个优势就是,每一份工作或工作流运行在一个新的集群,隔离工作负载从一个另一个。
请注意
多任务工作流可以重用所有任务的计算资源,以便集群每个工作流启动时间只出现一次。看到使用砖计算你们的工作。
使用最新的工作负载运行时
砖平台提供了数据的不同运行时优bob体育客户端下载化工程任务(砖运行时机器学习)或(砖运行时机器学习)。提供最好的选择的运行时构建图书馆的任务并确保所有提供的库是最新的,共同优化。砖定期运行时释放的节奏,并提供主要版本之间的性能改进。这些改进的性能往往会导致节约成本由于集群资源的更有效的使用。
只使用gpu的工作负载
虚拟机与gpu可以显著加快计算过程深度学习,但有一个明显的价格高于处理器仅仅机器。使用GPU实例只有GPU-accelerated库的工作负载。
大多数工作负载不使用GPU-accelerated库不受益于GPU-enabled实例。工作区管理员可以限制GPU集群机器和防止不必要的使用。看博客“gpu真的贵吗?基准测试gpu对砖集群”的推理。
平衡需求和产能过剩的实例
现货实例使用云虚拟机过剩资源可用以更便宜的价格。为了节省成本,砖支持创建集群使用现货实例。建议总是第一个实例(火花司机)作为一个随需应变的虚拟机。现货实例是一个伟大的选择需要更长的时间,因为工作负载时接受一个或多个由云提供商现货实例被驱逐。
2。动态分配和释放资源
利用伸缩计算
自动定量允许你的工作负载使用适量的计算需要完成你的工作。
请注意
计算伸缩扩展限制了集群大小结构化流工作负载。砖建议使用三角洲表与增强的自动定量直播工作负载。看到增强的自动定量是多少?。
看到可靠性,设计自动伸缩功能:
启用批处理工作负载的自动定量。
启用自动定量SQL仓库。
使用三角洲住表增强的自动定量。
使用自动终止
砖提供了许多功能来帮助控制成本,减少资源闲置和控制时可以部署计算资源。
为所有互动集群配置自动终止。指定的空闲时间后,集群关闭。看到自动终止。
使用集群只需要在工作时间的情况下,集群可以配置自动终止,和预定的过程可以重新启动集群(如果需要和潜在prewarm数据)在早晨之前用户回到他们的桌面。看到缓存选择。
如果一个起始时间明显短于一个完整的集群开始可接受,考虑使用集群池。看到最佳实践:池。砖池减少集群开始和伸缩时间通过维护一套闲置,随时可用的实例。当集群是附加到一个池塘,集群节点创建使用池的空闲实例。如果池中没有空闲的情况下,池扩大从实例分配一个新实例提供者为了适应集群的请求。当一个集群释放一个实例,它返回到池中并为另一个集群使用是免费的。只有集群连接池可以使用空闲池的实例。
砖不收取DBUs虽然实例池中空闲,从而节省成本。实例提供账单是否适用。
使用集群政策来控制成本
集群政策可以执行许多成本集群的具体限制。看到卓越运营——使用集群政策。例如:
3所示。监视和控制成本
监控成本
的账户控制台允许查看计费使用。砖帐户所有者或帐户的管理,还可以使用账户控制台下载计费使用日志。以编程方式访问这些数据,还可以使用账户API下载日志。或者,您可以配置每日发送计费的使用日志CSV文件格式的一个AWS S3存储桶。
作为一项最佳实践,完整的成本(包括虚拟机、存储和网络基础设施)应该被监视。这可以通过云供应商成本管理工具或通过添加第三方工具。
评估光子的工作负载
光子以低成本提供了非常快速的查询性能——从数据摄入、ETL、流、数据科学和交互式查询——直接在您的数据。光子与Apache火花api兼容,所以开始就可以轻松的把它——没有代码变更和锁定。与Apache火花相比,光子提供了一个额外的2 x加速TPC-DS 1 tb的衡量基准。客户观察到3 x-8x平均加速效果,根据他们的工作负载,而最新的DBR版本。
从成本的角度来看,光子工作负载使用约2 x-3x DBUs每小时比火花工作负载。鉴于观察加速,这可能会导致显著的成本节省,工作运行定期应该评估他们是否与光子不仅更快,也更便宜。
对你的工作负载使用serverless
BI破裂并产生多个并发工作负载通常使用数据查询。例如,有人使用BI工具可能更新仪表板,编写一个查询,或者简单地分析查询结果没有进一步的互动平台。bob体育客户端下载这个例子演示了两个要求:
终止集群在空闲时间节省成本。
迅速计算资源可用(启动和扩大),以满足用户的查询请求时新的或更新的数据与BI工具。
Non-serverless砖SQL的仓库有一个启动时间的分钟,所以许多用户倾向于接受更高的成本和不终止他们在空闲时间。另一方面,serverless SQL仓库在几秒钟内启动和扩大规模,所以两个立即可用性和终止在空闲时候可以实现。这导致了一个伟大的用户体验和整体成本节约。
此外,serverless SQL仓库规模比non-serverless仓库,从而降低成本。
4所示。分析和属性支出
标签集群成本归因
监控成本和准确的属性数据砖使用您的组织的业务单位和团队(例如,对于退款),您可以标记集群和池。这些标签传播到详细DBU使用报告和云提供商vm和blob存储实例进行成本分析。
确保成本控制和归因已经记住当设置工作区和集群团队和用例。这种简化标签的准确性,提高成本归因。
整体成本、DBU虚拟机磁盘,和任何相关的网络必须考虑成本。对于serverless SQL仓库DBU以来这是简单的成本已经包含虚拟机和磁盘成本。
看到使用集群和池监控使用标签。
5。优化工作负载,可伸缩的成本目标
平衡不间断和流触发
传统上,当人们考虑流媒体,诸如“实时”“24/7”或“总是”。如果摄入发生在“实时”数据,底层集群需要运行24/7,生产消费成本的每一个小时的一天。
然而,并不是每一个用例是基于一个连续的事件流需要这些事件立即被添加到分析数据集。如果业务要求用例只需要新鲜的数据每隔几小时或每一天,然后可以实现这个要求只有一天几次运行,导致显著的降低成本的工作负载。砖建议使用结构化流触发AvailableNow
对于增量工作负载,没有低延迟的要求。看到配置增量的批处理。
选择最有效的集群大小
砖一个人均执行器节点运行。因此,执行者和工人是交替使用的砖结构。人们常把集群规模的工人的数量,但也有其他重要的因素需要考虑:
总执行人核心(计算):在所有执行者核心的总数。这决定了集群的最大并行度。
总执行人内存:内存的总量在所有执行者。这决定了多少数据可以存储在内存溢出到磁盘之前。
遗嘱执行人本地存储:本地磁盘存储的类型和数量。本地磁盘中主要是用于泄漏的情况下震荡和缓存。
其他因素包括工人实例类型和大小,也影响前面的因素。分级集群时,考虑以下:
数据将工作负载消耗多少?
你的工作负载的计算复杂度是什么?
你读取数据从哪儿来的?
外部存储器中的数据分区吗?
你需要多少并行?
可以找到的细节和例子集群规模的考虑。