关键字: [Amazon Web Services re:Invent 2023, Cien, Analytics, Git, Dev Ops, Embedded Analytics, Ci/Cd]
本文字数: 1300, 阅读完需: 6 分钟
强大的DevOps文化有助于维护产品稳定性,提高问题解决时间,并加快软件交付。但是,分析平台通常无法与DevOps流程配合使用,因为它们无法合并更改,不支持开发/暂存/生产阶段的部署和CI/CD,或者根本无法与SCM系统配合使用——这在开发团队需要使用商业智能或嵌入式分析平台时会产生真正的痛点。 在这个闪电式演讲中,了解Sisense整合了Git以将嵌入式分析平台与DevOps流程和方法集成的方法,以及这如何改变了分析和软件工程团队共同工作的方式。这个报告由亚马逊云科技合作伙伴Sisense提供。
以下是小编为您整理的本次演讲的精华,共1000字,阅读时间大约是5分钟。如果您想进一步了解演讲内容或者观看演讲全文,请观看演讲完整视频或者下面的演讲原文。
斯科特·考利,作为亚马逊云科技re:Invent的演讲者,以其过去的软件开发者身份与观众互动。他询问在座是否有以编程为生的人,并收到了一些回应。斯科特强调,开发者永远不会在不将代码提交到源代码控制、对其进行适当测试并在推送到生产环境之前先进行阶段设置的情况下直接向生产环境推送代码。然而,令人惊讶的是,他发现那些构建商业智能工具和仪表板的人通常确实是这样做的——直接在生产环境中推送更改,而没有任何标准的软件开发实践。
正如斯科特所言,这是一种极其糟糕的工作方式。他指出,在过去,这种情况并不重要,因为商业智能传统上仅用于内部目的,如计算资金。但现在情况已经改变,因为分析和商业智能功能正被越来越多地嵌入到面向客户的产品中。斯科特询问观众,谁的产品管理团队将分析作为其路线图中的一项重要优先事项,许多人的手举了起来。接着,他又问,谁是购买了用于集成到其产品的分析工具,而不是使用类似于Highcharts的工具构建自己的自定义分析的?一些人购买了工具,而更多的人是自己构建了。
斯科特强调,如果你购买了一个分析工具来整合到一个现有的应用程序中,那么将其适应你的正常开发操作和发布过程可能会非常困难。分析栈和工具从根本上不同于传统的软件开发栈和工具。
在一个标准的软件环境中,所有东西都通过源代码控制管理(SCM)。你有明显的开发、阶段和生产环境。你可以利用特征分支、持续集成和持续交付等实践。但是大多数分析平台都不提供这些。没有源控制,没有提交或回滚更改的方法,没有更改的分离,而且通常根本没有更改的历史或审计轨迹。
因此,当你尝试将分析嵌入到一个现有的软件应用程序中时,它会导致你在DevOps过程中遇到各种挑战和故障。唯一将分析与DevOps正确结合的方法是实施你对你正常的软件代码所采取的相同类型的实践和工作流程:
所有分析内容应以源代码形式呈现,这样可以进行提交更改和实施持续集成与持续交付等工作。常见的格式包括JSON和YAML。
支持主流的Git工作流程和分支策略,以便与现有的Git工作流程相集成,而不是强制使用自己的专属分支模式。
提供轻松启动分支的环境,使得能够快速从不同的Git分支启动开发和测试环境,以确保更改的有效性,然后再将其推广到生产环境中。
提供完整的Git API和功能,使团队能够访问全部的底层Git实现,而非受限的专用界面。
需要注意的是,有些工具只是将部分分析内容(如语义模型)纳入源代码控制,而要将所有控制面板、模型和其他内容表示为源代码,需要进行全面整合。同时,有些工具可能会强制使用他们自己的分支模型,而不是让用户使用已有的集中式Git工作流程。此外,如果从分支动态启动环境困难且成本高昂,那么这将阻碍团队在项目中实施持续集成与持续交付的实践。最后,在选择工具时要仔细审查其Git集成界面,确保能以开发者熟悉的完整功能方式进行操作。
斯科特强调,他所在的公司Sense提供的分析平台Cien天生支持端到端的Git。所有分析内容都以JSON格式存储在源代码中。用户可以立即从分支启动环境以进行检测。Cien能够与任何标准的Git存储库和工作流程无缝协作。
总的来说,Git在分析中的一些关键优势包括:
随着分析和技术智能越来越深入地融入产品之中,这一点变得越来越重要。原生Git集成提供了一种简单的方法,将分析与现代DevOps方法统一起来。
下面是一些演讲现场的精彩瞬间:
领导者幽默地说,人们在未经过适当测试就直接推向生产的过程中建立了商业智能。
领导者们讨论了分析如何已经成为许多产品的核心组成部分,这使得将分析功能整合到开发流程中变得具有挑战性。
领导者们强调了解决完整分析覆盖问题的重要性,以便真正实现dev ops方法。
为了实现基础设施即代码的持续集成和持续部署,他们建议使用与应用程序代码相同的分支策略。
领导者们强调了团队在就开发过程达成共识方面的重要性,以防止未来出现问题。
Cien能够灵活地适应Git工作流程,并可与现有的存储库和基础设施无缝集成。
领导者幽默地邀请观众们在他的闪电演讲结束后迅速向他投掷腐烂的番茄。
斯科特·考利(Scott Cawley)探讨了在DevOps环境中如何整合分析问题。他强调,与软件代码不同,分析成果(如未经过测试的仪表盘)通常会直接推送到生产环境中。因此,他建议对分析实施类似于软件开发的CI/CD和功能分支策略。这意味着要将图表等分析组件以源代码文件(而非二进制文件)的形式呈现,并充分支持像产品代码库其他部分一样的Git工作流程。
对于分析平台的关键需求包括:将所有内容表示为源代码;支持与您软件团队相同的Git分支策略;轻松启动用于不同分支的环境;以及提供API和UI的全Git功能。
Cien天生就集成了Git支持,将所有工件表示为源代码,支持分支/合并,并与任何Git存储库无缝协作。这充分利用了现有的软件团队技能,并使测试/发布分析变得更加可靠。
2023亚马逊云科技re:Invent全球大会 - 官方网站
点击此处,一键获取亚马逊云科技全球最新产品/服务资讯!
点击此处,一键获取亚马逊云科技中国区最新产品/服务资讯!
【免费】亚马逊云科技“100 余种核心云服务产品免费试用”
【免费】亚马逊云科技中国区“40 余种核心云服务产品免费试用”
亚马逊云科技(Amazon Web Services)是全球云计算的开创者和引领者,自 2006 年以来一直以不断创新、技术领先、服务丰富、应用广泛而享誉业界。亚马逊云科技可以支持几乎云上任意工作负载。亚马逊云科技目前提供超过 200 项全功能的服务,涵盖计算、存储、网络、数据库、数据分析、机器人、机器学习与人工智能、物联网、移动、安全、混合云、虚拟现实与增强现实、媒体,以及应用开发、部署与管理等方面;基础设施遍及 31 个地理区域的 99 个可用区,并计划新建 4 个区域和 12 个可用区。全球数百万客户,从初创公司、中小企业,到大型企业和政府机构都信赖亚马逊云科技,通过亚马逊云科技的服务强化其基础设施,提高敏捷性,降低成本,加快创新,提升竞争力,实现业务成长和成功。