当前,数据湖(湖仓一体)产品成为市场热点,我们就目前数据湖产品规划结合实践试分析之。数据湖是企业数据驱动业务发展的基础设施,是应对当前大数据时代数据规模大、类型多、实时性要求高的产品解决方案。数据湖产品在理念上是传统数据库的扩展,实践上是开源大数据在数据采集、数据计算与存储和数据分析的集成,其产品规划设计需要从实际出发,结合行业标准、竞品建设,从而规划出符合客户需求、具备核心竞争力、有可持续性的产品。规划源于问题和需求,这些问题包括为什么分布式成为数据湖产品主流?流批一体是否应该纳入到数据湖中?多模数据如何入湖与管理?多租户问题应如何解决?数据一致性如何保证?重复数据应如何处理?数据安全应做到什么级别?数据智能、尤其是多模数据实时智能如何处理?数据分析引擎及驱动是否自建?产品兼容性如何处理?数据湖与数据中台在实时数仓如何协同?不同行业对数据湖产品的特殊需求应如何处理等等跨行业、多层次问题,进而衍生的产品需求不仅是功能需求,还包括性能、体验、价格等非功能需要求,这里面我们择其要,主要谈谈数据湖的重点需求,根据我们对行业标准、竞品和客户需求的掌握,数据湖产品需求大致可分为基本功能、监控与运维、性能与稳定性、拓展性、数据安全、可用性、兼容性、客户体验八个部分 。
一、 可列入的计划
(一) 基本功能
验证开源多种异构数据源连接,支持半结构化、非结构化数据存储,支持OSS存储引擎与分级存储,实现EB级的大规模存储部署;支持MySQL、Postgresql、Oracle的CDC功能,实现此类数据更新能力与R、Tableau、Power BI、Superset等 BI 工具配合使用。(ODBC开发);支持通过域名的方进行文件/对象操作;统一元数据管理,包括元数据的备份、数据的分布和归档能力;支持索引、分区元数据管理、支持多租户和租户配额能力;能在进行多租户资源管理时实现不同的调度策略 ;支持多种引擎,不限于SQL,MapReduce,Spark RDD;支持使用SQL创建规则 支持规则动态更新 支持在流作业中调用规则处理实时数据;支持Web可视化的数据资源管理,提供建库、建表、SQL查询、执行计划、数据导入/导出、数据复制等常用操作;提供任务调度工作、任务之间支持上下依赖关系 任务可脱离一同自带调度工具,使用第三方工具集成。支持基本的机器学习算法,可以包括Kmeans算法、贝叶斯算法、PageRank算法等,支持自动化部署与在线升级。
(二) 监控与运维
监控运维是平台功能的重要组成,是管理员了解系统与数据运行的支撑,需提供针对流批、湖仓等不同角度的监控界面,支持预警与报告功能,并提供基础的运维解决方案;支持不同应支持计算和存储服务的用量统计信息,支持对数据存储服务器及集群服务器的CPU、内存、IO、磁盘空间、库大小、表数据量、每日新增量等进行实时监控和告警。
(三) 性能与稳定性
数据湖的性能与并发、稳定性是客户在私有化部署中关注的重点,计算服务性能不低于开源hadoop及spark,并能够通过标准测试集TPC-H,TPC-DS;具体操作方面:以Hive为例:需要研究参数优化:启用压缩、优化连接、更换计算执行引擎、启动并行执行、控制并行Reduce任务、启用向量化、启用基于成本的优化器;语句优化:避免使用全局排序、优化limit操作、启用MapReduce严格模式,以及存储格式选择优化等命题。稳定性等测试,以信通院STAR-A为例,涉及六部分25个子项,可多角度评估系统稳定性,为企业完善产品计提供指导。
(四) 拓展性
企业数据湖充当整个组织或部门数据的集中数据存储,它必须能够弹性扩展。注意,虽然云原生架构比较容易支持弹性扩展,但是数据中心都会有空间和电力限制,准备建设大规模数据湖的企业需要考虑多数据中心或混合云的架构,提供弹性的资源分享与隔离,能够统一调度计算、存储、网络等资源,并保障数据、资源、应用的安全隔离;无服务器是一种架构理念,其核心思想是将提供服务资源的基础设施抽象成各种服务,其服务端逻辑运行在无状态的计算容器中,以 API 接口的方式供给用户按需调用,是由事件触发的,真正做到按需伸缩、按使用收费目前业界较为公认的 无服务器架构主要包含两个方面 ,即 提供计算资源的函数服务平台FaaS,以及 提供托管云服务的后端服务BaaS。Serverless 架构适用于企业中的一些长尾应用, 调用频率低或者资源使用较少的,不需要长时间持续使用的,比如运算密集型任务(如图片压缩、数据分析)、定时任务(批处理)、边缘计算、IoT设备、轻量级API、聊天机器人等。
(五) 数据安全
很多厂商对数据安全关注不足,在数据治理中,信息安全问题一半出在技术上,法规之外,在数据库技术标准方面有GBT20733可以参照,在实践上需要关注以下内容:数据安全支持租户隔离、统一身份鉴别、支持列表级细粒度的数据访问权限控制;支持多种方式授权,如用户策略、存储桶策略/ACL,指定不同的主体对指定的资源进行指定的操作,支持各计算引擎访问数据; 支持数据存储加密与通讯加密,数据端到端加密与落盘再加密,拓展支持解密能力;支持计算与存储系统所有操作日志的记录并支持审计活动。能够记录账号级别、存储系统的敏感操作,进行追溯和审计;支持访问的数据需要具备可校验完整性保护能力跨区域实时灾备。数据安全合规:网络安全法、数据安全法、个人信息保护、涉外业务支持GDPR等。上述能力建设可根据业务安全等级研究处理,安全等级可参照国家与行业相关标准。
(六) 可用性
至少可在两个集群之间进行互相备份;能在资源调度模块的资源管理功能节点故障时继续正常提供服务。
(七) 兼容性
支持python、java等编程语言;支持计算框架高效访问湖存储服务与大数据生态;支持客户端/服务端不同版本升降级;支持与国内主流芯片、操作系统、数据库、中间件的适配。
(八) 客户体验与解决方案
客户体验是产品营销的基础,构建在线数据湖产品体验与解决方案是业内通行做法,主要有三:一是产品在线试用,提供技术支持,采集客户意见建议;二是构建多种业务演示场景,为客户提供如数据入湖、ETL、数据管理、实时数仓、即席查询等能力;三是 在线开通,通过公有云或自建云,为客户提供选购、拓展、计费、服务与支持能力。
二、 不建议列入规划的内容
以下内容,不建议列入规划,如数据资产管理能力:资产识别、数据血缘; 如数据安全能力:数据安全等级自定义、数据脱敏,这些功能主要是针对数据处理的拓展能力,不宜做为产品功能列入规划,可做为产品线问题综合考虑。此外,对于中小企业业务规模较小的情况,可考虑采用易于部署的分析型数据引擎等替代。
三、 优先级问题
列入计划的规划项,需要研究优先级,在这点上产品管理人员或有不同,我的策略是,把需求按来源和分类划定子优先级,并给出分值,做总体排序,再根据产品发布时间点倒排出研发与测试、发布计划。
四、 参考法规与标准
法规包括:我国数据安全管理领域国家法律主要有:《网络安全法》《数据安全法》《个人信息保护法》;国际数据安全管理领域法规主要有:欧盟《通用数据保护条例》(GDPR)等美国《健康保险流通与责任法》(HIPAA)等。技术标准是业内取得一致意见的文本,是产品能力应该达到的基本尺度;可参考的标准包括:一、ISO国际标准 ISO/IEC 9075、ISO/IEC 13249等;二、国家标准:GB/T 20009-2019信息安全技术 数据库管理系统安全评估准则、GB/T 20273-2019 信息安全技术 数据库管理系统安全技术要求、GB/T 30994-2014关系数据库管理系统检测规范、GB/T 32633-2016分布式关系数据库服务接口规范、GB/T 28821-2018 关系型数据库管理系统技术要求;三、行业标准:中国信通院可信云原生数据湖技术要求与测试方法和大数据YD/T系列标准或技术要求;中国人民银行《网上银行系统信息安全通用规范》(JR/T0068-z020)、《金融数据安全数据生命周期安全规范》(JR/T0223—2021)、《多方安全计算金融应用技术规范》(JR/T0196-2020);卫健委《健康医疗信息安全指南》电信和互联网行业《电信网和互联网数据安全要求》等;四、信息安全技术国家标准,如《信息技术安全评估准则》(GBT18336-2015)、《大数据服务安全能力要求》(GBT35274-2017)、《大数据交易服务安全要求》(GB/T379322019)、《大数据安全管理指南》(GBT37973-2019)、《数据安全能力成熟度模型》(GB/T37988-2019)、《政务信息共享数据安全技术要求》(GBT39477-2020)等。
五、 结论
事物不能独立存在与发展,没有一种数据产品可以包打天下,在新技术不断涌现的今天,我们在数据湖的“可靠性、可用性与性能”方面的工作还不够,要学习掌握国际先进技术与模式,加强生态建设,在实践中不断探索符合当前与未来需求的数据湖产品。




