關於「把 Excel 當企業資料庫用」造成的各種災難,我們過去已經說了許多,不過今天又有一個新出爐的血淋淋案例:英國政府誤用 Excel ,導致漏報高達 1.6 萬筆新型冠狀肺炎(Covid-19)確診數、造成疫情被低估甚至延誤相關措施。事關現在全世界最重要的疫情管控議題,值得好好來討論一下。
先摘要一下:
事情是怎麼發生的?
我們在各大媒體或 WHO 等官方管道看到的每日疫情統計,主要是由各國政府官方通報而來。英國政府確診數據來源主要是英格蘭公共衛生局(PHE)。根據 BBC 的報導,由於檢測工作交給外部機構進行,外部機構會將大量的檢測結果以 CSV 檔案的格式交給 PHE,此時資料並沒有問題。
但 PHE 拿到原始資料之後,無法直接原封不動發出資料,需要經過一些統整——得彙整不同檢測機構的資料、整合格式等等。在公司、組織裡曾經負責統整過資料的人,應該很能懂這情境。
此時,他們選擇了最常見、大家最熟悉,在此情境中其實也最危險的工具 -- Excel,寫了一些自動化流程,讓他們收到的 CSV 檔自動被統整到 Excel 工作表中,然後再將此份統整 Excel 的資料上傳到內部系統中。
問題就出在 Excel 這一關:儘管有自動化流程省去純手工複製貼上造成的痛苦、麻煩與貼錯的機會,但最終仍然出錯了,因為 PHE 用的是 Office 2007 以前版本、 xls 格式的 Excel,這個舊版格式單一工作表的資料上限是六萬多列(65,536列),當工作表裡儲存的資料超過此列數時,下方就無法再存資料,而外部檢測機構不斷匯入的檢測資訊超出這個數字,造成了最終統計確診數的漏失,而且問題顯然沒能馬上被發現。
PHE 在 10 月 2 日發現這個問題,此時他們已經漏算了 9/25 到 10/2 整整一週的確診數字,總計足足少算了 15,841 個確診數。從這篇報導中的圖表可以看到,原本這一週公佈的新確診人數約在每日六、七千人之間,且看似曲線趨緩,現在把漏算資料加回來,原來 9/28 之後單日新確診數突破八千大關,十月之後甚至破萬,這是疫情以來新高。在大家每天看數據評估疫情的時候,錯誤的數據可能會引來怎樣的誤判,需要注意。
與此同時,漏失資料的問題也不只於數據誤判,因為這份資料也用於其他政府機構追蹤關聯者,而綜合各家報導,雖然 PHE 強調沒有因為漏資料延誤通知確診病患,但有公衛官員說,許多「確診者的接觸者」被延誤通知,代表許多原本該即刻進行的隔離等措施沒有落實,這使得英國在野黨工黨政治人物、影子衛生大臣 Jonathan Ashworth 痛批政府致人民性命於險境。
用 Excel 錯在哪?
以這件事情來說,很多人第一時間講到的是 PHE 用的 Excel 版本問題:舊版 xls 格式 Excel 檔的資料列數上限只有六萬多筆,如果用的是 2007 年之後的新版 xlsx,單一工作表的資料列數上限約百萬筆(1,048,576 列),可能「暫時」就沒問題了。
PHE 在事發後迅速宣稱已解決「技術問題」,據報導方式是馬上拆解原本的 Excel 檔,來避免資料量超出負荷的問題。
但其實,更根源的問題是:PHE 需要的其實明明是「資料庫」,不是嗎?他們沒有使用正規的資料庫系統來處理,反而用了「常常被硬當成資料庫來用,但真的不是資料庫」的 Excel。
Excel 是個很好用的試算表軟體、很好用的文書處理工具,但它天生不是用來當「資料庫」的工具,當資料不斷增加、複雜化,Excel 遲早會超出它的負荷,不管是檔案開不了、動不了、資料筆數/儲存格總數超過限制(Ragic 有許多客戶就是感覺到自己的 Excel 或 Google Sheet 跑不動、快超過限制後,趕快找上我們的)、或是其他超出原先設計的使用方法,都可能讓它從好用工具變地雷。
如何離開 Excel?
反過來說,我們其實能理解為什麼IT 專家不斷提醒直接把 Excel 當資料庫、處理大量資料的壞處,許多企業(包括全球知名企業)甚至政府組織卻對 Excel 無法放手,很多時候是因為跟其他冷冰冰的商用軟體、「資料庫方案」比起來,Excel 實在太親切、太方便、也太容易開始了!
但時代其實已經改變了,像 Ragic 企業雲端資料庫這樣「外表看起來像 Excel、實際運作起來是個資料庫(存放/查詢數百萬筆資料不是問題!)」的解決方案,就是希望提供 Excel 和傳統資料庫方案之外的第三條路,讓你兼顧低門檻、高彈性、資料庫特性。
額外提醒:
即使講了很多「Excel 恐怖故事」,我們其實從未否認 Excel 有它的優點,也不會不負責任的說「不用 Excel 就不會出任何錯」。
得強調的是,不管是使用 Excel 這樣的傳統試算表工具,還是 Ragic 這樣的資料庫工具,重點是「用對工具」,讓文書軟體做文書軟體該做的事、資料庫做資料庫該做的事。
(當然,良好的使用習慣、正確觀念和上線前測試,也都很重要 :P)
標籤: Excel
分類: 逃離惡夢, 逃離 Excel 災難