美文网首页
看人工智能如何在DevOps中大展身手

看人工智能如何在DevOps中大展身手

作者: AI课工场 | 来源:发表于2020-12-09 14:13 被阅读0次

    对于人工智能,我们通过机器学习、深度学习算法已经有很了很多了解了。但实际上,我们还在人工智能的初级阶段,未来一段时间内可能处于并将长期处于人工智能初级阶段。在人工智能逐渐“智能”的过程中,有一种形态有点意思,那便是知识图谱。

    这是Google在2012年5月17日提出的新概念,它本质上是实体之间关系的语义网络,把信息转化为知识。日常生活中我们接触到的信息是外部的客观事实,比如这里有一只冰淇淋,它现在是凝固状态,而知识是对外部客观规律的归纳和总结,比如冰淇淋的保存维度是0度以下,大于0度时就会融化。

    DevOps,即研发运维,它指的是技术团队一种新的软件研发管理思想,把团队开发人员和运维人员一体化,将业务需求拆分原子化,使用云计算、微服务、持续集成交付工具来最大化的将业务流程自动化,对所有的过程进行记录和分析,使用数据来精准营销与决策。

    大家觉得DevOps和人工智能都是技术领域的两个分支,都是赋能业务的,两者之间不会有什么交集。那你可就错了。人工智能是技术领域的一个分支,它适用的范围非常广,只要有数据的地方它都能发挥作用,用户使用产品产生的数据,研发开发产品所产生的数据,系统内部交互的数据,它都可以做分析。DevOps可以让人工智能领域的开发人员更好的开发,让业务部门的开发人员更好的利用人工智能领域的数据,反过来,人工智能数据也可以让DevOps更好的进行,我们就一起来看看人工智能的分支知识图谱如何在DevOps中大展身手吧。

    在软件研发过程中,从需求的开发到上线包含很多数据。它包含需求评审确认之后的研发开发工时、测试工时、整个需求上线时长;研发开发过程中的代码提交次数、代码量;上线过程中的成功发布次数、回滚次数;运行产品的数据中心、物理机、虚拟机、接入交换机、核心交换机、路由、部署实例。通过一整套数据可以搭建软硬件研发运维知识图谱,以全局的视角只是系统内各个应用、软件、硬件、虚拟机、物理机的逻辑、调用关系、链接关系,帮助研发人员在遇到问题时更好的找到问题、解决问题,帮助产品人员在产品开发时更好的知道风险、解决风险。

    研发运维知识图谱其实很好搭建,它的模型其实是最简单的。为什么这么说呢?因为它的数据来源、数据类型、数据结构、使用用户都是固定的,机器硬件产生的数据、系统之间调用的数据、研发工具软件产生的数据全汇聚到一起,每一个实体与实体之间的关系也是相对固定的,比如系统间的调用关系、部署集群与业务的所属关系、数据与数据的上下游关系。相对业务所遇到的不同场景的半结构化数据、非结构化数据的收集与处理,实体之间关系的甄别、论证、优化来说,研发运维知识图谱真的太简单了。

    在研发运维知识图谱搭建的过程中,我们可以使用图数据库来进行存储。图数据库的模式天然就是和知识图谱匹配的,都以实体为中心,实体与实体之间通过关系链接起来,因此采用图数据库存储数据是最好的选择。此外图数据库在查询数据、获取数据时性能也很好,不需要像关系型数据库那么复杂。图数据库的扩展性也很好,有新的数据增加时就增加新的实体属性、关系属性就好了,不用像关系型数据库那样还需要增加新的表、新的字段、新的关联关系。

    在研发运维知识图谱搭建好了之后,我们就可以基于此建立我们的告警规则了。在系统数据告警中,可以基于告警数据的模型训练来智能建立告警规则,也可以通过人为的经验值来设定告警阈值,不断的调整适应。通过人为经验值就比较简单了,有经验的开发同学他会根据所遇到的业务规模、用户流量、机器系统硬件配置、负载情况来设定,比如设置CPU达到90%时触发告警,内存使用率超过80%时告警。通过数据训练告警模型就是一个比较长期的事情,我们需要先采集告警数据,数据分类,历史发生过的告警次数,准确告警次数来学习告警、分类告警,最后达到预测告警。

    智能运维的目标是实现告警风暴收敛、告警准确预测、告警自动恢复、根因自动定位,这也是研发运维中所期待的内容。随着知识图谱技术不断的发展,运维知识图谱的不断建设和丰富,告警知识图谱的不断优化和完善,人工智能与DevOps必定会更好的协同,共同提升开发运维人员的工作效率,为企业降本提效,为用户提供更好服务~

    相关文章

      网友评论

          本文标题:看人工智能如何在DevOps中大展身手

          本文链接:https://www.haomeiwen.com/subject/cipzwktx.html