数据——它是新的货币。多年前,我们以千兆字节为单位衡量处理的数据量;然后我们迅速转向太字节。由于智能手机和移动设备的影响,我们的数据量正在迅速增加到拍字节。
除了管理数据的大小之外,我们还需要处理各种类型的数据,并开始理解数据可以告诉我们什么。DevOps 中的一个机会是分析大量的机器数据。更重要的是,机器数据,例如多种基础设施监控工具的日志和指标,可以继续在整个混合云中运行当前的 IT 系统。另一个机会是使用这些机器数据快速响应问题,并识别何时可能需要人工干预。
通过使用机器数据,特别是日志和指标,来改造任何 DevOps 计划至关重要。借助基于机器数据的高级分析能力,DevOps 工程师或站点可靠性工程师 (SRE) 可以使用统计、索引、过滤和许多其他机器学习技术来理解这些拍字节的数据。
预测分析是高级分析的一个关键领域,用于预测未知的未来事件。它分析来自混合基础设施中多个应用程序的当前数据,并使用数据挖掘、统计建模、深度学习和人工智能等方法对未来进行预测。
预测分析软件工具提供高级分析功能,例如数据挖掘、深度学习、统计分析、实时评分、预测建模和优化。它们使您能够收集、分析和挖掘关于已发生事件的结构化和非结构化数据,并根据基础设施中应用程序中过去的事件预测可能发生的事情。预测模型通常由分类模型和回归模型组成。
以下是您可以作为 DevOps 计划一部分使用的三种流行的开源预测分析工具。
- Anaconda 是一个开放的数据科学 Python 平台。它是 Python 和 R 的高性能发行版,包含 100 多个最流行的 Python、R 和 Scala 数据科学软件包。
- H2O 是一个开源、可扩展的机器学习 API,用于更智能的应用程序,包括深度学习、梯度提升、随机森林和广义线性建模。它可以轻松应用机器学习和预测分析。
- Apache Mahout 构建了一个可以快速创建可扩展高性能机器学习应用程序的环境。它是一个简单且可扩展的编程环境和框架,用于构建可扩展的算法,并包括用于 Scala、Apache Spark、H2O 和 Apache Flink 的各种预算法。
在 DevOps 计划中采用预测分析对于许多公司来说至关重要,可以提高效率和客户满意度。由于不断测试新技术、新竞争对手和市场中现有组织的新业务模式,变化率正在提高。因此,组织必须能够快速响应变化,同时保持比竞争对手更低的成本和更高的质量。
预测分析主要用于 DevOps 计划中,以加速应用程序交付在跟踪、安全、质量和性能方面的能力。例如,如果 DevOps 管道中的自动化测试工具使用深度学习算法检测到新的错误并向 QA 团队发出警报,他们可以通过创建测试模式库来加速错误修复过程。此功能提高了测试效率、应用程序质量并缩短了上市时间。另一个示例可能导致在高峰负载时自动配置额外的资源,或在空闲期间消除过多的资源。它还可以检测安全问题,包括 DDoS 攻击和内存泄漏的开始。
因此,DevOps 工程师可以通过识别和解决潜在问题而受益,例如意外的错误代码、延长的构建时间、降低的发布速度、其他瓶颈以及不必要的、耗时的任务。
结论
在您的 DevOps 计划中使用预测分析可以在软件交付生命周期中带来巨大的好处。这些好处包括通过管理浪费的软件开发来消除技术债务,并通过模式化来突出显示必要的警报来减少不必要的警报风暴。最终,正确的预测监控工具可以更早地触发事件并防止生产故障。
1 条评论