?作者 | Dan Neault
譯者 | 陳峻
如今,大家都普遍認為數據是商業環境中最有價值的資源。企業的成功往往與他們從數據中獲利的能力有著直接關系。而作為傳統關系型數據庫的演進,數據湖(Data Lake)能夠從多個來源獲取原始形式的數據。這就是為什么許多組織已經開始轉向通過數據湖,來改進分析,實現更有效的協作,并支持大規模的數據驅動型決策的原因。
雖然數據湖能夠給組織帶來卓越的業務成果,但它們的快速采用,也可能會給一些缺乏資源和專業領域知識團隊,帶來合規性和安全控制上的門檻。更復雜的是,數據湖的廣泛使用,會讓更多內、外部角色接觸到數據,進而放大了業務安全的潛在風險。
1、從數據庫到數據湖
在上個世紀60年代,隨著計算機變得更易于訪問,各個組織需要有效地存儲和管理手中的數據,這便催生了數據庫技術的產生。
在之后的幾十年中,在線事務處理(online transactional processing,OLTP)型的工作負載和關系型數據庫,充當了快速、準確地處理數據的主力軍。
到了20世紀80年代,數據倉庫(data warehouses)將數據處理從事務或操作系統,轉變為了決策支持系統。這種轉變使得許多組織能夠聚合來自多個環境的數據,并通過匯集商業智能(business intelligence,BI),來支持戰略決策的制定。
如今,大量的組織都會利用數據庫、數據倉庫和BI ,用以提供創新信息,并指導戰略決策。然而,隨著云計算和現代化編程語言的興起,數據庫的使用方式也隨著如下因素,發生了巨大的變化:
- 組織開始意識到,如果他們不被限制于預定義的模式、以及在事務或分析系統中的使用方式,那么他們可以從數據中獲得更多的價值。
- 數據可以被用于開發、訓練、分析機器學習(machine learning,ML)模型,或是針對在任何類型的數據庫上,運行的現有工作負載,進行現代化的改造。
- 云計算能夠以前所未有的速度和規模,快速配置現代化的工作負載。
數據倉庫在處理和分析結構化的數據方面固然表現出色,但它們無法捕獲原始的、非結構化的數據,這在某種程度上對組織的數字化業務產生了限制。因此,數據湖等非關系數據庫變得越來越受歡迎,一些數據架構師正在嘗試著默認使用數據湖,來處理新的工作負載,并對現有的工作負載進行現代化的改造。
2、為什么要采用數據湖
正是由于數據架構師們通過使用數據湖,來構建ML模型,為無數分析系統提供數據,進而按需執行查詢與分析等操作,因此他們從中獲得了數據的潛在價值,也促進了越來越多的組織,開始在數據湖中構造它們的數據生命周期。
畢竟,在傳統方式上,數據倉庫常被用于定期分析大量的結構化數據,或定期生成數據報告。而這往往要求企業在處理和存儲數據之前,就已經完成、并將預定義的模式應用到數據庫上。這在某種程度上,就限制了數據在后續交易或分析系統中的創新使用方式。
而數據湖并不需要這樣的前期工作。它能夠集成和存儲未經轉換、或僅被少量處理的數據。這些數據可以來自包括:非結構化的日志數據、物聯網(internet of things,IoT)傳感器、社交媒體、以及多媒體內容等多個指向數據湖的來源。利用與數據湖配套的實現技術,數據架構師們可以:
- 使用Apache Kafka等數據流處理工具,近乎實時地處理流入數據湖中的數據。
- 使用Google BigQuery或Amazon Athena等高性能查詢引擎,直接從數據湖中獲取特定的數據洞見。
- 使用Elasticsearch等工具對大量結構化和非結構化的數據進行按需分析,對來自日志和運營的數據予以搜索、過濾和可視化。
3、數據湖安全嗎?
顯然,進入數據湖的數據需要得到與過去被存儲在關系型數據庫中的數據,有著相同級別、甚至更高的保護。那么數據湖主要會面臨哪些安全風險呢?
- 訪問控制:針對數據庫表的訪問權限控制,向來是靈活多變、且極具挑戰性的。而針對數據湖的權限設置更是如此。我們往往需要基于特定的對象或元數據來予以定義。否則,整個組織的人員都可以訪問數據湖的話,其中的個人數據、以及根據合規性要求保密的數據,就沒有了安全保證。根據 Forrester Consulting 曾委托進行的一項研究,58% 的安全事件都是由內部威脅所引起的,如果不加以控制的話,員工對敏感數據的訪問將是一場安全噩夢。
- 數據保護:數據湖通常充當的是組織內信息的單一存儲庫。因此,它往往成為了最有價值的攻擊目標。如果沒有適當的訪問控制機制,不良行為者可以據此獲得整個組織的敏感數據,甚至修改各種訪問權限。
- 治理、隱私和合規性:由于數據湖的數據源多且雜,因此某些數據可能包含了在不同的系統和地域范圍內屬于隱私、甚至是違規的信息內容。由此產生的跨數據湖存儲架構的定位、以及對不同層級數據的管控,將具有挑戰性。
可見,為了在不影響安全性的情況下,充分發揮數據湖的優勢,組織需要遵循一套優秀的實踐,來降低運營不合規、管理不善、數據泄漏、以及其他安全事件的發生風險。
4、如何保護數據湖
有效的安全策略往往能夠給數據湖賦予清晰的可見性和控制權。為此,組織可以采取四個步驟:
- 梳理標準化的數據訪問流程:由于既可以給真實的用戶使用,也能夠供集成系統的調用,因此該流程應當能夠跟蹤數據的訪問和使用的全過程。
- 創建數據的分類方案和目錄:在數據湖中,數據應當按照內容、使用場景、類型、以及可能的用戶群體進行分類,并提供相應的目錄,以實現數據的搜索和索引。同時,我們還應該采取一種便利的方法,將需要保留的數據與待刪除的數據分開。
- 啟用數據保護:數據加密和自動監控等安全管控措施應被事先設置好。而當出現未授權的訪問用戶、及其可疑活動時,應能夠及時發出警報。
- 加強數據的治理、隱私保護、以及合規性:我們需要通過明確的數據政策,向相關人員傳達,該如何定位和使用數據湖,如何提高數據質量和敏感數據的使用,以及如何按照數據隱私標準去存儲歷史數據。
5、在防范安全和隱私風險的同時最大化數據價值
綜上所述,為了解決與數據湖的相關安全和合規風險,組織應該首先創建一種有效且高效的方法,來分類和發現其環境中的數據。接著,組織必須能夠識別誰在訪問數據,何時訪問了敏感數據,以及防止數據被惡意的內部人員所竊取。
雖然上面提到的各種安全優秀實踐都是創建數據湖安全環境的基礎步驟,但是組織應當從基礎入手,以數據為中心,確保數據在數據湖乃至組織的內外部,無論身處何處、以何種形式存在,都是安全可控的。
原文鏈接:https://thenewstack.io/data-lake-security-dive-into-the-best-practices/