冲减逻辑:在 Oracle Cloud 上部署云原生预测库存优化

随着后疫情的消费者将支出从家货转移到旅行,零售商发现自己坐在了没有人想购买的产品的大量库存上。

为了帮助零售商快速响应不断变化的消费者口味,Imulse Logic 创建了一个在 Oracle Cloud Infrastructure (OCI) 上运行的云原生预测库存优化应用。

Impulse Logic 成立于 2006 年,为零售、杂货、家庭改善和消费电子行业开发商店优化软件。Impulse Logic 提供了一个预测分析引擎 (SLiQ),可用于检测和暴露库存风险,并基于每个门店执行需求分析。通过这些功能,零售商可以监视利润率绩效、实现库存回报目标以及快速恢复销售点 (PoS) 采购的库存。

虽然类似的内部部署系统可能需要六个月以上才能实施,但 SLiQ 可以在 75 天内部署,而不会中断库存管理系统。SLIQ 还与零售管理系统 (RMS) 集成,例如 Oracle Retail Merchandising Cloud Services、Blue Yonder 和 SAP。

在英国和中东一些规模最大的杂货零售商部署平台后,Imulse Logic 使用 OCI 中的 Oracle Cloud Infrastructure Container Engine for Kubernetes (OKE) 集群将 SLiQ 应用从单体应用现代化到云原生应用。这使得应用程序更可扩展,更可恢复,更可满足大峰需求,同时满足 Impulse Logic 的不断扩大的客户群。每个新入职客户通常都有大量零售商店,而且产品必须随时准备在所有地点上线。Impulse Logic 利用 OKE 和 Oracle Autonomous Transaction Processing 等托管服务,将其大部分基础设施和数据库管理简化并转移到 OCI。

自从将 SLiQ 应用迁移到 OCI 后,冲刺逻辑能够帮助客户:

  • 更准确地预测库存目标
  • 将人工成本降低 40%
  • 将预计利润提高 4% 以上的门店销售

体系结构

Impulse Logic 的体系结构从 Merchandise IQ 服务 (MiQ) 开始,该服务通常作为设备部署在零售商的防火墙中,从而可以从多个源提取实时数据。

在零售商部署内部部署时,MiQ 会在特定时间间隔收集库存数据。随着零售商店的库存更新,MiQ 将提取购物者需求数据,但不包括个人身份信息、信用卡信息或零售商人员数据。MiQ 集成了来自多个应用孤岛的不同数据馈送的联盟。有 10 到 13 个单独的数据源,以本机格式读取,并对 SLiQ 执行进行规范化。MiQ 函数无需更改现有传统系统或需要对数据进行任何预处理。

Oracle Cloud Infrastructure (OCI) 中部署 MiQ 时,客户首先将数据集发送到 Oracle Cloud Infrastructure Object Storage 。然后,OCI 中的 MiQ 实例提取数据并将其发送到 SLiQ 进行处理。无论是在本地部署还是在 OCI 中部署,MiQ 都使用 REST API 将数据发送到 SLiQ。上载到对象存储的 HTTPS 已加密。

SLiQ 的微服务用于数据转换、Web 和移动应用、用户服务、商店服务、产品服务等。训练和预测的机器学习功能是在 Python 中开发的。接收 MiQ 提取的数据集后,SLiQ 会将此数据加载到 Oracle Autonomous Transaction Processing (ATP-S) 中以进行机器学习分析。机器学习功能可以训练模型、预测库存事件,然后向零售员工发送建议以通过移动设备访问结果。零售员工可以获得具体可行的洞察,例如要储存的货架以及何时进行补货,从而尽可能缩短产品在仓库或仓库中的时间。

在实施期间,冲动逻辑与零售商一起应用参数并定义特定于零售商的功能。SLiQ 使用这些参数和函数来训练和预测 SLiQ 的机器学习功能,为零售商提供优化库存的建议。

下图说明了此参考体系结构的数据流。



脉冲逻辑 - 数据流 -oracle.zip

借助 Oracle Autonomous Transaction Processing ,Impulse Logic 利用 Autonomous Database 的自我驱动、自我保护和自我修复功能简化了运营和维护。借助 Oracle Container Engine for Kubernetes (OKE),Impulse Logic 将 SLiQ 转变为云原生应用程序,从而在不影响应用程序现有组件的情况下添加其他功能。通过 OKE 开发的云原生应用,他们可以继续改进机器学习功能、引入新的培训模型并缩短测试和实施时间。

下图说明了此参考体系结构。



脉冲逻辑 - 社会架构 -oracle.zip

Impulse Logic 计划制定未来架构状态的路线图,包括增强功能和其他服务:

  • 由于应用程序的重要性质,添加辅助区域
  • 将 SLiQ 重构为多租户应用程序
  • Autonomous Database 中创建多个方案,对客户数据进行细分,而无需创建和维护多个数据库
  • Oracle Cloud Infrastructure EventsOracle Functions 与 Impulse Logic 的 MiQ 应用程序结合使用可创建无服务器平台,从而无需管理基础设施即可扩展和运行其应用程序
  • 利用 OCI 的原生安全服务,例如 Web 应用防火墙 (Web Application Firewall,WAF)、数据安全、保管库、策略、审计和日志记录
  • 预配 Oracle API Gateway 以公开和管理用于外部数据访问的 REST API。这将允许客户在 ATP-S 中安全地查询其数据的公共端点
  • 使用 Oracle Data Guard 将 Autonomous Database 复制到备用数据库
  • 使用 Oracle Cloud Infrastructure Object Storage 跨区域复制在备用位置存储备份
  • 使用 Oracle Cloud Infrastructure MonitoringOracle Cloud Infrastructure Notifications 监视资源运行状况和使用情况
  • Oracle Cloud Infrastructure Identity and Access Management (IAM) 与 Azure Active Directory (AD) 联合,从而获得一次登入体验,客户可以使用其 Azure AD 身份证明访问 SLiQ

下图说明了此参考体系结构的未来增强功能。



脉冲逻辑 - 社会架构 - 未来 -oracle.zip

该体系结构具有以下组成部分:

  • 租户

    租户是 Oracle 在您注册 Oracle Cloud Infrastructure 时在 Oracle Cloud 中设置的安全隔离分区。您可以在租户中的 Oracle Cloud 中创建、组织和管理资源。租户与公司或组织同义。通常,公司只有一个租户并反映在该租户中的组织结构。单个租户通常与单个订阅关联,单个订阅通常只有一个租户。

  • 区域

    Oracle Cloud Infrastructure 区域是一个局部地理区域,包含一个或多个称为可用性域的数据中心。区域独立于其他区域,广阔的距离可以将其分开(跨国家甚至大陆)。

  • 区间

    区间是 Oracle Cloud Infrastructure 租户中的跨区域逻辑分区。使用区间在 Oracle Cloud 中组织资源、控制对资源的访问以及设置使用限额。要控制对给定区间中资源的访问,您可以定义策略来指定哪些人可以访问资源以及他们可以执行的操作。

  • 可用性域

    可用性域是区域中的独立独立数据中心。每个可用性域中的物理资源与提供容错能力的其他可用性域中的资源隔离。可用性域不共享基础设施(例如电源或冷却设备)或内部可用性域网络。因此,一个可用性域出现故障不会影响区域中的其他可用性域。

  • 虚拟云网络 (VCN) 和子网

    VCN 是您在 Oracle Cloud Infrastructure 区域中设置的可定制软件定义网络。与传统数据中心网络一样,VCN 允许您完全控制您的网络环境。一个 VCN 可以具有多个不重叠的 CIDR 块,您可以在创建 VCN 后对其进行更改。您可以将 VCN 细分为多个子网,这些子网可以限定到区域或可用性域。每个子网包含一系列不与 VCN 中的其他子网重叠的连续地址。创建后可以更改子网的大小。子网可以是公共子网,也可以是专用子网。

  • 安全列表

    对于每个子网,您可以创建安全规则来指定必须允许进出子网的流量源、目标和类型。

  • 路由表

    虚拟路由表包含将流量从子网路由到 VCN 外部的目标(通常通过网关)的规则。

  • Internet 网关

    互联网网关允许 VCN 中的公共子网与公共互联网之间的通信。

  • 动态路由网关 (DRG)

    DRG 是虚拟路由器,用于为同一区域中的 VCN 之间、VCN 与区域外的网络(例如另一个 Oracle Cloud Infrastructure 区域中的 VCN、内部部署网络或其他云提供商中的网络)的专用网络流量提供路径。

  • 服务网关

    通过服务网关,可以从 VCN 访问其他服务,例如 Oracle Cloud Infrastructure Object Storage 。从 VCN 到 Oracle 服务的流量会通过 Oracle 网络网状结构网络传输,并且从不通过互联网传输。

  • 站点到站点 VPN

    站点到站点 VPN 可以在内部部署网络与 Oracle Cloud Infrastructure 中的 VCN 之间建立 IPSec VPN 连接。IPSec 协议套件在将数据包从源传输到目标之前加密 IP 通信,并在到达时解密通信。

  • 负载平衡器

    Oracle Cloud Infrastructure Load Balancing 服务提供从单个入口点到后端多个服务器的自动流量分配。

  • 堡垒服务

    Oracle Cloud Infrastructure 堡垒提供对没有公共端点且需要严格资源访问控制(例如裸金属和虚拟机、Oracle MySQL Database Service自治事务处理 (Autonomous Transaction Processing,ATP)、Oracle Container Engine for Kubernetes (OKE) 以及允许安全 Shell 协议 (Secure Shell Protocol,SSH) 访问的任何其他资源的受限且有时限的安全访问。通过 Oracle Cloud Infrastructure 堡垒服务,您可以启用对专用主机的访问,而无需部署和维护跳转主机。此外,您还可以使用基于身份的权限和集中、审计和有时限的 SSH 会话来提高安全状况。Oracle Cloud Infrastructure 堡垒消除了对堡垒访问的公共 IP 的需求,在提供远程访问时消除了散列表和潜在攻击面。

  • 对象存储

    通过对象存储,可以快速访问任意内容类型的大量结构化和非结构化数据,包括数据库备份、分析数据以及丰富的内容(例如图像和视频)。您可以安全可靠地存储数据,然后直接从互联网或云平台检索数据。您可以无缝扩展存储,而不会降低性能或服务可靠性。将标准存储用于“热”存储,您需要快速、立即和频繁地访问这些存储。将归档存储用于保留很长时间、很少或很少访问的“冷”存储。

  • 注册表

    Oracle Cloud Infrastructure Registry 是 Oracle 管理的注册表,可用于简化开发到生产工作流。通过注册表,您可以轻松存储、共享和管理开发构件,例如 Docker 映像。Oracle Cloud Infrastructure 的高可用性和可扩展的体系结构可确保您可以可靠地部署和管理应用。

  • 身份和访问管理 (IAM)

    Oracle Cloud Infrastructure Identity and Access Management (IAM) 是 Oracle Cloud Infrastructure (OCI) 和 Oracle Cloud Applications 的访问控制层。通过 IAM API 和用户界面,您可以管理身份域和身份域中的资源。每个 OCI IAM 身份域代表一个独立的身份和访问管理解决方案或不同的用户群体。

  • Autonomous Database

    Oracle Cloud Infrastructure Autonomous Database 是一个完全托管的预配置数据库环境,可用于事务处理和数据仓库负载。您不需要配置或管理任何硬件,或安装任何软件。Oracle Cloud Infrastructure 可处理数据库创建以及备份、打补丁、升级和调优数据库。

  • Autonomous Transaction Processing

    Oracle Autonomous Transaction Processing 是一种自我驱动、自我保护和自我修复的数据库服务,针对事务处理负载进行了优化。您不需要配置或管理任何硬件,或安装任何软件。Oracle Cloud Infrastructure 可处理数据库创建以及备份、打补丁、升级和调优数据库。

充分利用内置和部署功能

想要展示您在 Oracle Cloud Infrastructure 上构建的内容?与我们的云架构师全球社区分享您的经验教训、最佳实践和参考架构?让我们帮助您入门。

  1. 下载模板 (PPTX)

    通过将图标拖放到示例线框中,说明您自己的参考体系结构。

  2. 观看体系结构教程

    获取有关如何创建引用体系结构的分步说明。

  3. 提交您的图表

    请向我们发送一封包含您的图表的电子邮件。我们的云架构师将查看您的图表并与您联系以讨论您的架构。

确认

  • Authors :Robert Huie、Jay Lakumb、Wei Han、Steven Riley、Sasha Banks-Louie
  • 贡献者:Robert Lies