多租户系统(multi-tenant systems)对于现代、快节奏的企业来说是宝贵的。这些系统允许多个用户和团队同时访问和使用它们。特别是机器学习操作(MLOps,machine learning operations)团队,尤其会从多租户系统中受益匪浅。
不利用多租户系统的 MLOps 团队可能会面临低效率、不一致、重复工作和入职受阻等问题,这给本就复杂的工作流增加了阻力。让我们来看看多租户系统对 MLOps 团队的好处和挑战、有效扩展的最佳实践,以及多租户系统的未来可能是什么样子。
多租户系统允许多个用户在同一系统下共同工作,而不会妨碍各自的工作。
(来源:AI 生成)
google Drive 和 Salesforce 是多租户系统的优秀示例。它们允许大公司在单个系统上开发单个工作主体,通过消除重复工作来降低成本。
在 MLOps 情景中,使用多租户系统的好处是多方面的。机器学习工程师、数据科学家、分析师、建模师和其他参与 MLOps 的实践者,通常需要使用相似的软件堆栈执行类似的活动。
对于公司来说,只维护堆栈的一个实例或其功能是非常有益的——这可以降低成本、节省时间并增强协作。从本质上讲,多租户系统上的 MLOps 团队可以成倍地提高效率,因为他们不会把时间浪费在两个不同的堆栈或系统切换上。
多租户系统的采用正在增长,这是有充分理由的。这些系统有助于统一计算环境,避免了个别组织设置定制系统的情况。像这样的割裂的计算环境是高度重复的,并且增加了拥有成本,因为每个组可能需要一个专门的团队来保持其本地系统的运行。
这也会导致不一致的问题。在大公司中,可能会有一些组运行版本 7 的软件,另一些组运行版本 8,某些技术可能只在特定团队中使用。这样的例子不胜枚举。这些不一致导致对整个系统中正在发生的事情缺乏掌控,从而出现了潜在的风险。
归根结底,多租户并不是一个平台的特性:它是一个基本的安全功能。关于安全的考虑是预防性的,它需要成为系统基本架构的一部分。
对于努力构建多租户系统的团队来说,最大的好处之一是其架构固有的安全性。
尽管实现多租户系统有很多好处,但它们并非没有挑战。不管从事什么任务,这些系统的主要障碍之一是规模。每当任何扩展操作开始时,就会出现以前可能不明显的问题。
当你开始扩展时,会获得更多不同的用户体验和期望。突然间,你发现自己身处这样一个世界:用户开始与正在扩展的东西进行交互,并以你未曾预料到的方式使用该工具。更大、更根本的挑战是,你必须能够管理更多的复杂性。
当你构建多租户系统时,你可能会构建一个由多个用户使用的通用操作平台。这是一个重要的考虑因素。多租户也可能成为你业务的基本组成部分,因为这是一项有意义的投资。
要成功构建多租户系统,强大的产品管理至关重要,特别是如果系统是由机器学习专家构建的和为机器学习专家构建的。
设计和构建专供特定领域的系统的人员,应该对该领域有深入的了解,这一点很重要,这使他们能够根据用户的需求和能力给出设计,同时能够预测未来的业务和技术趋势。
这种需求只在机器学习等不断发展的领域得到强调,正如 MLOps 系统的扩散和增长所证明的那样。
除了这些最佳实践之外,还要确保对系统的每个组件,以及它们所支持的交互和工作流进行严格的测试。所谓的严格测试,是数百次测试,同时引入用户来测试每个元素和功能。有时你会发现,由于业务或技术的原因,你需要以特定的方式实现某些东西。但是你必须忠实于你的用户以及他们是如何使用系统来解决问题的。你绝对不想误解用户的需求。
用户可能会对你说:“嘿,我需要一匹更快的马。”你可能会把所有的时间都花在训练一匹更快的马上,而他们真正需要的是一种更可靠、更快速的运输工具,而这种运输工具不一定要吃干草,也可以烧汽油。
最后,专注于程序迭代,这可能听起来是一个缓慢的过程,但从长远来看,它将为你节省时间和资源。因为你已经完成了那些最繁琐的工作,并在问题再次困扰你之前就可以解决它。
这是一个令人兴奋的领域,预计这种势头将持续下去。我们可以期待看到对云技术和其他全托管服务的持续投资。特别是在 AI、机器学习和 MLOps 领域,事情发展十分迅速,以至于每当有人推荐一项新技术或软件时,它几乎立即就过时了。
现在真正重要的是快速迭代的能力,这在未来会更加重要。我们将看到越来越多的公司,无论大小,都在努力掌握这种敏捷性。他们做得越多,我们就会看到更多的进步,未来就会变得更令人兴奋。
支持:Ren