在电子商务推荐系统中,使用Amazon S3

随着电子商务的快速发展,个性化的推荐系统已成为改善用户体验和销售转换的关键技术。但是,推荐系统的模型培训和在线推断对存储系统提出了很高的要求,需要大量存储大量的用户行为和商品数据,以及低潜伏期和高吞吐量读写性能。

尽管传统的文件存储系统(例如Amazon弹性文件系统(Amazon EFS)易于使用,但在大规模应用程序方案中都有性能瓶颈和高成本。

我们将深入探讨亚马逊S3 Express One区域在电子商务建议方案中的应用:技术可行性,性能优化和风险管理。

电子商务推荐服务的功能

推荐系统对于电子商务至关重要。他们的推荐模型的质量和性能直接确定用户的购物体验和平台交易量。随着电子商务公司增加对推荐系统的投资,他们在运行推荐系统时面临一些独特的挑战:

1。推荐模型的培训频率通常很高。由于用户行为,产品信息和市场趋势的快速变化,因此需要经常更新推荐模型,以保持其准确性和相关性。

每日更新:许多系统每天或每周都会进行增量更新。

全卷更新:每隔几周或几个月进行一次全容量训练。

实时更新:某些系统使用在线学习实时更新模型。

2。推荐的模型经常加载。

电子商务业务访问的弹性,这导致了建议模型,该模型需要经常加载到新的计算节点上。

更新模型后,推荐系统还需要及时加载最新的推荐模型。

频繁的更新和负载对模型存储的效率和性能提出了很高的要求。

例如,当业务扩展或模型更新时,如果需要在30秒内加载,则每批有100个应用程序,并且需要同时加载30GB模式。目前,存储系统需要100GB/s的读带宽来实现这一目标,而Amazon EFS无法支持。

同时,如果需要每天更新一次模型,并且随着企业每天加载6000次,随着企业的弹性扩展,则加载模型每天将产生180TB的流量。

如果我们使用Amazon EFS弹性吞吐量模式,则根据当前的US-West-2地区的官方上市价格,我们希望每月收取约184,000美元的吞吐量费用。

因此,使用传统的共享文件存储(Amazon EFS)在吞吐性能和交通成本方面面临巨大的挑战。

为什么选择

Amazon S3 Express一个区域

Amazon S3 Express One区域是Amazon Web Services在2023年推出的新存储类别,是Amazon S3存储服务的重要扩展。

Amazon S3 Express One区域,设计用于需要极低延迟和高吞吐量的工作负载,特别适合经常访问的数据。

Amazon S3 Express一个区域的主要功能包括:

超低潜伏期:与标准Amazon S3相比,提供高达10倍的性能改进,最低单位请求延迟最高为毫秒。

高吞吐量:支持每秒数万次的读写操作,适用于高并发方案。

成本效益:尽管单位存储成本很高,但由于性能的显着提高,总体运营成本可以降低某些情况。

兼容性:与现有的Amazon S3 API完全兼容,以方便整合和迁移。

在电子商务推荐系统中

使用Amazon S3 Express一个区域

绩效和成本评估

成本分析

存储费用:高性能存储存储您最频繁访问的数据。

请求费:Amazon S3 Express One区域收取最高512 KB的要求固定费用。对于该请求的512kb以上,GB中会收取其他额外的看法和获取请求。

绩效分析

性能:使用Amazon S3 Express One区域,可以实现数百个GB/秒,并且目录存储桶将数据组织到层次结构中的目录中,而不是通用桶的平坦存储结构。每个Amazon S3目录存储桶都可以支持每秒数十万笔交易(TPS),而不管存储桶中的目录数量如何。

可靠性:使用Amazon S3 Express One区域,您的数据将被冗余存储在单个可用性区域的多个设备上。 Amazon S3 Express One区域旨在在单个可用性区域内提供99.95的可用性,并由Amazon S3服务水平协议提供动力。

性能优化

为了更好地提高容器中的访问性能,我们建议通过以下方式优化性能:

1.最大量表Gbps:设置最大吞吐量。 MountPoint调整并行请求的数量和速率,以实现目标最大网络吞吐量。单个安装点进程共享此最大值,以访问所有文件和目录。

默认情况下,在亚马逊弹性计算云(Amazon EC2)实例上运行时,MountPoint将最大网络吞吐量设置为可用的网络带宽,以其他方式将其设置为10 Gbps。

2. Max-threads:控制并发线程的数量。 MountPoint默认情况下最多可以同时发生16个文件或目录操作,并自动扩展到此上限。

如果您的应用程序的并发读写(包括读取和写入相同或不同的文件)超过此限制,则可以使用-max-threads命令行参数来提高性能。

该标志的价值越大,可以消耗山位点的实例资源越多。

3.部分大小:优化大文件传输。将文件读取或写入Amazon S3时,MountPoint将文件分为部分,并使用并行请求来改善吞吐量。

这些参数的默认值为8 MIB(8,306,688字节),在我们的测试中,这是实现最大吞吐量的最大值。较大的值减少了MountPoint发出的计费请求的数量,但也减少了对象读取和写入Amazon S3的吞吐量。

在安装点1.7.2之后,支持分割的分段传输( – 读取零件大小和- – 零件大小),以分别设置和写入读写。

4.Metadata-TTL:控制元数据缓存时间。用于控制坐骑在文件系统元数据(文件存在,大小,对象etag等)中精确时的确切时间长度。

如果单独配置或使用本地或共享缓存配置,MountPoint通常会减少安装的Amazon S3文件存储桶的请求,但不能保证其报告的信息与已安装的Amazon S3文件存储桶的内容一致。

当配置为本地缓存或共享缓存时,在元数据TTL到期之前,存储的数据被认为是准确的。到期后,MountPoint将验证该对象的ETAG是否已更改并回顾了缓存数据仍然准确。

5.MAX-CACHE-SIZE:设置本地缓存大小。默认情况下,MountPoint限制了本地缓存的最大大小,因此文件系统的不到5,并在缓存新内容时自动从本地缓存中删除最不使用的内容。

您可以使用-Max-Cache-size命令行参数手动配置本地缓存的最大大小。

注意:调整元数据-TTL可能会增加ListObjectV2 API调用,这需要在性能和成本之间进行权衡。

Mountoptions:

– uid=1000

在电子商务推荐系统中,使用Amazon S3

-GID=2000

– 允许

– 美国西部2区

– 允许删除

– 最大通知金bps 100

– 最大线程40

– 局部尺寸5242880

-Metadata-TTL 60

– 允许撰写

– 缓存/TMP

-Max-Cache-Size 100000

滑梯看到更多

风险管理

在应用程序中访问Amazon S3的方法有很多,包括Amazon Web Services CLI,Amazon Web Services SDK和Amazon Web Services API。通常在容器中,我们使用与业务脱合的CSI驱动程序方法,该方法可以替换Amazon Elastic Block Store(Amazon EBS),Amazon EFS和其他存储服务,而无需任何业务代码更改。

尽管这些访问技术是由亚马逊Web服务实施和开源的,但我们需要关注不同访问方法的技术差异和可能的潜在风险:

亚马逊S3的Mountpoint使用保险丝技术。保险丝允许非特权用户在不修改内核代码的情况下创建自己的文件系统。

Amazon S3 CSI驱动程序的Mountpoint,存在极端情况的风险,即过程崩溃可能导致文件系统不可用。通常为了解决这个问题,我们有多种确保可靠性的方法:

实施监视和自动重新启动机制,用于安装上的Amazon S3 CSI驱动程序。

当没有Amazon EFS作为备份读取模型的存储空间时,当Amazon S3 CSI驱动程序不可用时,在应用程序服务方面实现备份存储解决方案。

从Amazon EFS迁移到Amazon S3 Express一个区域

从亚马逊EFS迁移到Amazon S3 Express一个区域可能有一定风险:

数据一致性:确保在迁移过程中不会丢失或损坏数据。

服务中断:最小化迁移对企业的影响。

回滚机制:制定详细的回滚计划来处理迁移失败。

移民政策:

阶段迁移:首先迁移非关键业务并逐渐扩大范围。

双写机制:在迁移过程中同时编写Amazon EFS和Amazon S3,以确保数据安全性。

灰度发布:使用流控制逐渐将请求切换到新系统。

使用MountPoint为Amazon S3 CSI驱动程序从Amazon EFS存储转换为Amazon S3存储,在Amazon EKS群集中并不是特别复杂,而是需要一些步骤和考虑因素。

这是切换过程的概述:

创建一个Amazon S3存储器来存储数据。

安装Amazon S3 CSI驱动程序的坐骑。

定义一种新的Storageclass,该Storageclass使用MountPoint为Amazon S3 CSI驱动程序。

创建一个新的PVC,并使用新的StorageClass指向Amazon S3存储。

修改部署,状态填充等以使用新的PVC。

数据迁移:将最新的模型数据存储到Amazon S3 Express存储桶中。

测试和验证:在将更改应用于生产环境之前,请在测试环境中验证新的存储配置。

结果

应用Amazon S3 Express One区域后,推荐服务的并行加载能力已大大提高,而存储和访问成本已大大降低:

由于亚马逊S3吞吐量带宽的优势,当200-500应用程序同时加载模型时,与亚马逊EFS的最大吞吐量相比,Amazon S3的总吞吐量达到了200GB,增加了3-5倍。

由于没有交通费,因此总体成本降低了90。

得益于亚马逊S3的低延迟,单个10GB级型号加载速度比亚马逊EFS高38,比Amazon S3 Standard Storage高14。

总结

在推荐的电子商务方案中,使用Amazon S3 Express One区域作为Amazon EKS的存储区域可以大大降低成本,同时确保性能。通过合理的配置和优化,Amazon S3 Express一个区域可以满足推荐系统的高性能存储需求。

随着亚马逊Web服务继续改善Amazon S3 Express One区域的功能和工具支持,我们相信该存储解决方案将来将具有更广泛的应用程序,从而为更高性能,大规模的云原状应用程序提供了强有力的支持。

Zhang Kai,亚马逊Web服务解决方案架构师

主要负责基于Amazon Web服务的设计和解决方案咨询,在建筑设计和项目管理方面拥有多年的经验。

Amazon Web服务的高级数据存储架构师Dai Yiyang

致力于促进云中各种出色的存储技术实践。

推荐阅读

一分钟内从头开始建造数据湖,亚马逊S3桌有什么魔术?

从0到可开发的环境:部署Amazon EC2,一键单击负载平衡和开发环境

在MySQL和Amazon Aurora Mysql上,在Amazon RDS上实现高速InnoDB清理

用户评论


作业是老师的私生子

这篇文章说的太棒了!我一直都是亚马逊S3的忠实粉丝,它提供的存储空间和数据处理能力确实很强大,运用到电商推荐系统里能提高效率不少。

    有9位网友表示赞同!


你的眸中有星辰

讲道理,对于大规模电商平台来说用 Amazon S3 存取用户数据再做推荐确实靠谱。 scalable 确实是关键吧? 我现在还在琢磨如何优化推荐模型参数。

    有11位网友表示赞同!


愁杀

Amazon S3 的安全性我一直比较担心,对于电子商务平台的数据安全极其重要啊,希望文章能具体提到一些安全保障措施。

    有15位网友表示赞同!


海盟山誓总是赊

其实除了 Amazon S3,还有其他云存储选择可以考虑吧? 比如阿里云,微软 Azure。 这篇文章是不是偏向推广亚马逊的?

    有17位网友表示赞同!


苍白的笑〃

数据可视化在电商推荐系统里太重要了!能利用 Amazon S3 做数据挖掘,做出更直观的分析图表,就能更好地理解用户的喜好并进行个性化推荐,这真是个好思路! <br/>

    有9位网友表示赞同!


゛指尖的阳光丶

虽然Amazon S3很强大,但对于中小平台来说成本可能有点高啊?是不是有其他更轻量级的解决方案? 文章可以多介绍一些。

    有17位网友表示赞同!


此刻不是了i

我觉得利用 Amazon S3 能够提高推荐系统的精准度,让用户看到更多自己喜欢的商品,提升购物体验。 但同时我也担心过度针对用户的个人兴趣可能会带来隐私问题,需要谨慎考虑!

    有10位网友表示赞同!


开心的笨小孩

这篇文章给我打开了一个全新的思路!没想到 Amazon S3 还能应用到电商推荐系统中,这真是个宝藏技术啊!

    有19位网友表示赞同!


ゞ香草可樂ゞ草莓布丁

感觉文章只讲理论,实际操作细节不多。 对开发者来说太概括了,希望能提供更详细的实施指南和代码示例。

    有5位网友表示赞同!


暮光薄凉

我想问问,亚马逊 S3 的使用成本是怎么计算的? 大规模数据存储会花费多少呢?

    有13位网友表示赞同!


凉话刺骨

这几年电商市场竞争激烈,商家要想在推荐系统上脱颖而出确实需要找到新思路。 利用 Amazon S3 可以提供更好的用户画像和个性化推荐, 帮助商家提升转化率!

    有7位网友表示赞同!


怅惘

文章内容很浅显,对我们技术人员来说没有多大参考意义。 希望作者能够深入探讨Amazon S3 在电商推荐系统中的具体实现方案,以及常见的挑战和解决方案。

    有13位网友表示赞同!


情字何解ヘ

个人觉得这种利用云存储做数据分析的方式趋势非常明朗。 Amazon S3 其实不仅限于电商领域,还可以应用到各个行业中去,未来发展空间很大!

    有15位网友表示赞同!


青瓷清茶倾城歌

对于我这样的新手开发者来说,这篇文章很有帮助! 让我更了解亚马逊S3这个工具,以后可以试试用它来做个人项目。

    有10位网友表示赞同!


遗憾最汹涌

我觉得文章比较偏向于科普性介绍,缺乏实践案例和实战指导。 希望能结合实际公司场景进行分析,更加深入地阐释 Amazon S3 在电商推荐系统中的应用价值。

    有20位网友表示赞同!


伪心

我很喜欢亚马逊的生态系统,S3 的安全性、可靠性和价格优势都非常出色! 用它做电商推荐系统绝对是个明智的选择!

    有10位网友表示赞同!


等量代换

文章提到的数据预处理和特征工程部分很重要。 在使用 Amazon S3 构建推荐系统的时候,如何有效地完成这些步骤显得尤为关键。

    有17位网友表示赞同!


淡抹丶悲伤

越来越觉得云计算的重要性了。 Amazon S3 的出现为我们提供了更便捷、高效的存储和处理方式, 未来电商行业将会更加依赖云服务!

    有10位网友表示赞同!

上一篇
下一篇

为您推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

联系我们

0898-88881688

在线咨询: QQ交谈

邮箱: email@zhutibaba.com

工作时间:周一至周五,9:00-17:30,节假日休息
关注微信
微信扫一扫关注我们

微信扫一扫关注我们

手机访问
手机扫一扫打开网站

手机扫一扫打开网站

返回顶部