使用 Python 进行商业云备份
使用 Python 进行商业云备份。我知道,可能乍一看没什么意义,但它确实有意义。对我们来说,新常态是超越传统的 Python 实践,这意味着:我们 a) 做商业而非免费,b) 做闭源而非开源,c) 将 Python 用于企业级后端而非 Java 或 C#。
我们的故事 Smartsheet (https://www.smartsheet.com/welcome-customers-home) 是一个备受推崇的企业平台,75% 的财富 100 强公司都在使用它。它主要用于围绕项目或销售的协作工作管理,采用多用户、类似表格的环境,或者如果你喜欢,“打了兴奋剂的 Excel”。
介绍我们 – AcuWorkflow (https://www.acuworkflow.com/smartbackup.html),一家围绕 Smartsheet 提供服务的利基公司。我们看到了保护 Smartsheet 数据的空白,并用 Python 构建了一个名为 SMARTBACKUP (https://www.acuworkflow.com/smartbackup.html) 的产品。我懂你的意思,好像世界不需要另一个备份解决方案。然而,答案在于它解决了什么问题。Smartsheet 中的一个 Sheet 是一个多方面的对象,一旦通过 Smartsheet 设施备份到 Smartsheet 之外,它就会失去大约 60% 以上的可恢复功能。原因是,大部分只备份了数据,而忽略了所有格式、公式、单元格链接自动化规则等。实际上,构成 Smartsheet 表格的那些东西并没有得到有效备份。
我们的解决方案 SMARTBACKUP 在 Smartsheet 中划出了一部分,称为“保险库”,然后在此内部进行备份。这样,恢复变得轻而易举,并且保证获得一个几乎完全相同的副本——所有这些当然都在完全/增量备份控制之下。我们并没有止步于此,还推出了一个补充存档解决方案和创新的导出功能。
为什么选择 Python?回到为什么选择 Python?最初我们希望利用 Smartsheet 提供的 REST API 层进行快速开发。由于我们多年来一直深入研究 Java/C# 等,这是我们早期的选择。幸运的是,我们开始尝试 Python,因为我们需要 Pandas 数据框带来的智能分箱功能。当我们看到我们可以多快多容易地消费 API 时,工作就完成了,我们继续只使用 Python 后端。对于前端,我们不喜欢典型的 Python GUI,并排除了 Django,因为我们的要求需要一个灵活的应用程序式 UI,而不是内容繁重的交互。对我们来说,如果我们需要处理大量内容,Django 会是一个不错的选择。我们选择了 Vue.js 这个响应式 SPA 框架,而线程感知型 Python 后端与 Flask 的协作对我们来说效果非常好。
关键之处 这对我们来说是关键。我们从 3-4 个月前开始,对 Python 和 Vue 完全陌生,更不用说一些支持的外围技术了。现在,我们的平台已经被一些使用 Smartsheet 的大型全球企业采用。未来一片光明,我们对我们的技术选择及其性能非常满意。