每个人都有数据。数据总是在增长,您应该拥有对所有接触您数据的事物的自主权。您需要能够查看和更改管理您存储系统的代码。拥有数据的自主权使您能够掌控自己的命运。
这一切都始于 Web 应用程序:公司正在拥抱 Web,将其作为一种向大量受众轻松交付软件的新方式,并寻找可扩展的基础设施来构建他们的应用程序。因此,i在 2009 年,Rackspace Hosting 发布了一款产品,旨在让应用程序开发人员能够访问灵活、可扩展的存储,该存储旨在大规模地服务内容。
然后,Rackspace 开始着手重写底层存储引擎,以提高性能并降低运营成本。 正是在这个时候,我加入了团队(声明:我已经离开),并开始开发一个名为 Swift 的存储引擎,该引擎至今仍为 Rackspace 的全球存储基础设施提供支持。
在 2010 年 Swift 投入生产后,该公司将该代码开源,作为 OpenStack 的一部分。在过去的三年里,Swift 的发展远远超出了最初的目标,现在任何人都可以将其部署在自己的硬件上,并访问其技术。
因为它开源
Swift 让用户拥有对其数据的自主权, 因为它采用开放的设计、开放的社区和开放的代码。没有供应商锁定,并且通过本地部署,无需担心将敏感信息发送给其他公司保管,尤其是当这些公司位于另一个国家时。
社区贡献的两个功能显著改进了 Swift,它们是
- Swift 最初设计用于部署在由许多机架组成的庞大集群中。社区引入的更改改变了数据放置方法,因此不再需要多个可用区,但如果存在可用区,则可以加以利用。这使得 Swift 集群现在可以从单机实例扩展到全球范围的集群。
- Swift 最初部署时假设客户端位于相对较慢的网络另一侧,并且没有针对通过 10gbps 连接直接连接的客户端进行充分测试。发现了一个漏洞,该漏洞允许如此快速的客户端垄断网络连接并阻止处理其他请求。开发了一个补丁,问题得到了解决。
这两个社区贡献都来自在其原始设计要求之外使用 Swift 的人员。由于 Swift 是一个开放项目,因此它变得比首次发布时更强大、更可靠,并且更适合更多用例。这些功能以及许多其他类似的功能之所以成为可能,是因为 Swift 是开源的。有人对 Swift 产生了兴趣,尝试使用它,发现了痛点,并贡献了一个功能或错误修复。
为解决可扩展存储的需求而创建
Swift 的创建是为了支持现代 Web 应用程序。它不断改进,增加了对象清单、版本化写入、CORS、临时签名 URL、过期对象和 ACL 等功能。
这些由围绕 Swift 的开源社区开发的功能,使 Swift 不仅适用于公共云服务提供商,而且适用于全球许多寻求私有云存储的组织。
但我们还没有完成——还有许多功能需要编写,我们作为一个社区不断共同努力,使 Swift 变得更好。现在正在讨论一些特别令人兴奋的改进
- 自从 Swift 首次发布以来,用户一直希望确保他们的数据可以跨广泛的地理区域存储。在过去的六个月里,几家公司一直在努力实施支持全球集群部署所需的功能。该功能已包含在 Swift 1.9.0 版本中。
- 改进 Swift 与底层存储介质的对话方式。这将使我们能够为特定的存储介质编写特定的优化。
- 添加对存储策略的支持将允许 Swift 集群支持多个存储层级。我希望看到 Swift 发展成为一个存储系统,可以有效地管理数据,从新的、热门的内容到旧的、冷的数据。
到目前为止,OpenStack Swift 是我最有幸参与的最令人兴奋的项目。我们正在编写并不断改进一个世界一流的存储系统,旨在提供经过验证的、可扩展的基础设施来支持现代应用程序。
如果您想参与其中,请在 http://swift.openstack.org 上找到我们,或在 freenode 网络上的 #openstack-swift IRC 频道中加入我们。
评论已关闭。