译者 | 陈峻
如今,大家都普遍认为数据是商业环境中最有价值的资源。企业的成功往往与他们从数据中获利的能力有着直接关系。而作为传统关系型数据库的演进,数据湖(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/