使用 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 中的一個工作表是一個多方面的物件,一旦透過 Smartsheet 設施在 Smartsheet 外部備份,它會丟失大約 60% 以上的可恢復功能。原因是,大體上只備份資料,而將所有的格式、公式、單元格連結、自動化規則等遺漏。實際上,構成 Smartsheet 工作表的那些要素實際上並沒有備份。
我們的解決方案 SMARTBACKUP 從 Smartsheet 中劃分出一個稱為 Vault 的部分,然後在其中進行備份。這樣,恢復就變得非常容易,並且可以保證近乎相同的副本 - 當然,所有這些都在完整/增量備份控制之下。我們並沒有止步於此,而是繼續提供了一個互補的存檔解決方案和創新的匯出功能。
為什麼選擇 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 的大型全球企業已經採用了我們的平臺。未來看起來光明,我們對我們的技術選擇及其效能感到非常滿意。