fix the problem of Ch2-6 DataManagement

This commit is contained in:
DanHaoPKU 2019-10-29 12:09:42 +08:00
parent 05ebf5ed1b
commit f3d67476ee
1 changed files with 95 additions and 95 deletions

View File

@ -1,96 +1,96 @@
大数据时代,我们用“以数据为中心的计算”这一说法来表达计算技术的发展趋势:数据在计算体系中的地位越来越重要,数据不再仅仅是算法处理的对象,也不再仅仅是依附于某种功能软件而存在,数据是组织的资产而独立存在,而且数据越积越多、规模越来越大,形成一种数据平台。
在某种程度上数据平台隔离了上层基于机器学习的数据建模和推理应用与下层大数据的存储与计算设施。这种分离增加了上层应用系统的稳定性。新一代大数据管理与分析系统也是一类系统软件具有如下特征多种数据模型并存多种计算模型融合系统可伸缩弹性扩展能力强。首先多种数据模型并存是指可以支持关系、文本、图、KV等多种数据模型的存储与访问系统能够根据应用特征甚至运行负载的情况进行模型的转化支持自适应优化。其次多计算模型融合是指高效支持批处理、流计算等多种计算模型计算系统要能将多种计算模型进行深度的融合而非简单地将两套或多套系统进行集成避免数据的反复迁移提高效率同时能够做到批流交互支持复杂应用和深度分析。最后系统要能够高效利用底层的云计算资源面向云计算平台上的虚拟资源构建效率高、弹性扩展能力强的系统能够实时进行可伸缩调整提高资源利用率在软件系统层提升从资源到性能的转换效率。
从应用角度看未来主流应用将从联机事务处理OLTP、联机分析处理OLAP走向联机机器学习OLML。机器学习等人工智能应用能够从大数据中挖掘深度知识将成为大数据管理与分析系统上的一类重要应用。机器学习系统将不再像现在这样一类模型对应一组数据而是成为一个同时支持多种机器学习模型的大规模数据平台。此外降低大数据应用的门槛非常迫切平民化数据科学成为一种趋势实现平民化数据学科的有效途径就是提供丰富易用的工具从数据采集数据整理到数据分析和模型训练等这方面的研究实践活动非常活跃成果大量涌现。未来期待大数据应用开发方法学的成果能够统领这个方向的研究。
从数据生态的角度看,围绕数据的产生、加工、分析、利用乃至交易形成了相互依存又相互独立的生态系统结构。一方面这些数据为软件系统的智能化提供基础数据支撑,另一方面智能化服务软件又进一步贡献新的数据,进入数据平台。数据生态中涉及多个方面,如用户、商业公司、政府等,需要平衡各方利益、确保可持续发展。
从软件形态的角度看,软件所呈现出的泛在化和持续演化的特性都与数据密切相关。软件的泛在化应用以及人机物融合使得我们所能够获得的数据越来越全面地覆盖了物理世界及人类生活的方方面面。软件的持续演化有赖于持续的数据收集以及数据驱动的智能化演化决策,同时也有赖于软件功能定义的数据化。此外,软件将越来越多地将来自广大用户的群智(例如使用数据反馈)融合到软件自身的持续演进中,这也是通过用户数据的收集和分析来实现的。
从系统论的角度看,未来面向复杂应用场景(如智慧城市)的软件需要多源异构的数据来支撑背后的智能决策。这些数据本身来自于很多不同的软件系统以及人机物三个方面的要素,跨越了既有的系统边界,体现了复杂系统特性。汇聚大数据之后产生的一些非预设的系统行为乃至服务业态体现了复杂系统的涌现特性。
由此可见,数据,软件,用户将以一种新的关系共存,需要重新考虑超越传统软件质量之外的与数据紧密相关的诸如隐私保护、平等(非歧视)以及信息普惠等价值观的话题
本章列出数据管理和数据工程的若干重要挑战、主要研究内容与研究趋势\footnote{陈红、陈普川、陈跃国、卢卫、张峰、张孝参与本章内容的讨论与撰写}
\section{重大挑战问题}
数据管理与数据工程的挑战问题包括两个方面。首先,在数据管理方面,主要表现在如何管理大数据(§6.1.1)、如何利用新硬件混合架构来实现大数据的管理(§6.1.2)。在数据工程方面,主要有异构数据整理(§6.1.3)、数据分析(§6.1.4)和数据安全与隐私保护(§6.1.5)等挑战。
\subsection{大数据管理的挑战}
大数据具有大容量、多类型、快变化、低质量的4V特征。大数据管理已不像传统数据库时代去追求使用关系数据库来解决所有数据管理的问题而是探索从数据存储、数据组织与存取、语言处理、应用等几个维度对各个传统数据库管理系统进行解耦解耦后的各个子系统依据大数据的4V数据特征各自独立发展用户可根据实际应用的需要采用松耦合的方式对各个子系统进行组装量身定制自己的大数据管理系统。大数据管理系统技术目前还在快速进化之中还没有成型。管理好4V的数据是对大数据管理系统的基本要求。从这个基本点出发可以归纳出大数据管理系统的若干技术挑战
第一多数据模型的统一管理。i数据模型是数据管理的核心数据结构、数据操作、完整约束是构成数据模型的三大要素。关系模型有单一的关系数据结构、封闭的关系操作集合、灵活的关系完整性约束而大数据管理中的其他数据模型包括键值对、图、文档等虽然数据结构定义清晰但缺少数据模型中数据操作和数据约束两大要素的定义亟待理论上的突破。ii关系数据库有严格的关系数据理论和模式分解算法辅助数据建模如何对大数据进行有效数据建模尚缺少理论和技术支撑。iii) 大数据多源、异构的特点,使得大数据管理系统无法采用单一数据模型进行管理,多数据模型并存并统一管理,需要系统从语言处理、数据组织与存取、数据存储等多个层次进行重新设计与优化\cite{Du19,Du2018}
第二,多计算模型的深度融合。大数据管理系统更需要高效支持批处理、流计算等多种计算模型,将多种计算模型进行深度的融合,而非简单地将两套或多套系统进行集成,避免数据的反复迁移,提高效率,同时能够做到批流交互,支持复杂应用和深度分析。为此,需要研究
第三新型系统架构。大数据的大容量和快变化特征要求大数据管理系统具备高可扩展性。针对大容量特点采用“分而治之”的思想将数据进行分片每个分片部署到指定的节点上进行管理。针对快变化的特点当数据快速增加时可以通过增加节点的数量使系统仍然具备较低的响应时间。在此背景下大数据管理系统架构面临如下挑战i容错。一方面大数据管理中的存储节点、计算节点已经不局限于传统分布式数据库中的高性能服务器可以是普通服务器甚至是普通的PC机器可靠性有限。更重要的是节点数量的增加整个系统出现节点故障的可能性增大。如何从容错的角度设计可靠的系统架构不影响数据存储、数据操纵、数据运维等管理的正确性和高效性。ii去中心化。大数据管理系统是分布式的中心节点可能会成为访问的瓶颈。一方面中心节点的故障会造成整个系统的瘫痪另一方面中心节点负载过重也会影响系统的可扩展性和高效性如何研究去中心化的大数据管理系统架构突破单点瓶颈实现系统的高可扩展性和高效性。iii) 自适应优化。一方面,集群环境下,存储节点、计算节点的硬件能力可能存在较大差异,需要研究异构集群环境下的自适应优化。另一方面,负载任务的多变性和复杂性,要求研究多数据模型下的自适应优化。
\subsection{新硬件与混合架构的挑战}
数据管理系统的实现受计算机软件技术和硬件技术以及应用三方面的影响。随着新硬件及各种混合架构的出现,支持数据管理与数据工程的底层硬件正在经历巨大的变革,各类新型加速设备、混合架构出现也在逐渐改变数据管理和数据工程中的设计,并带来了巨大挑战。
近些年以GPU为代表的新硬件得到了迅猛发展越来越多的数据管理与数据工程应用采用新硬件与传统系统相混合的架构使用GPU等新硬件进行加速\cite{Cui19}。相对于传统数据管理与数据工程相关应用GPU等新硬件的引入可提供更高的数据处理速度以及更好的实时处理效果。然而虽然新硬件与混合架构为数据管理和数据工程提供了新思路但也带来了一系列亟待解决的新挑战
第一混合架构中的新硬件资源分配。不同种类的新硬件具有完全不同的体系结构特征适合处理的应用特征也不完全相同。例如GPU硬件依赖众核的并行提升吞吐量隐藏访问延迟往往适合高吞吐量、对延迟不敏感的应用。因此在数据管理和数据工程中需要尽可能使各新硬件设备处理各自适合的负载而如何识别出适合新硬件加速的程序进行有效地任务分配是一个不小的挑战。
第二混合架构下的数据传输。混合架构中的GPU等新硬件设备往往通过PCIE与传统CPU处理器相连接由于GPU等新硬件设备具有独立的存储结构处理数据时需要从主存将数据传输至设备存储中存在的挑战是如何降低数据传输所带来的性能影响等。
第三新硬件下的数据结构与算法。传统的数据管理和数据工程应用所采用的数据结构和算法往往是针对x86系统架构设计的不适用于GPU等新型硬件。例如GPU中具有大量的计算核心存在可以控制的局部缓存体系结构组织方式也和传统CPU不同需要使用GPU编程语言考虑硬件特性进行程序设计。此外新硬件编程往往涉及编程语言的扩展因此新硬件下需要有针对性地设计数据结构和算法是一个重要挑战。
第四,新型存储结构。以非易失性存储器为代表的新介质可进一步加速数据处理的速度,但随着新型存储的引入,数据管理的过程中有可能会涉及多种存储类型,存储的层次结构也可能与以往不同,如何设计相应的数据存储也是数据管理与数据工程的挑战。
\subsection{异构数据整理的挑战}
数据整理是在挖掘提炼数据价值的过程中需要进行的前期的数据预处理工作。它看似不足轻重实则非常重要。有调查研究表明很多大数据分析任务80\%以上的工作花费在数据整理上,这给数据分析带来了巨大的人力成本。很多分析设想因为承担不起前期巨大的数据整理工作而最终被放弃。更重要的是,由于缺少系统性和理论性的支撑,数据整理的质量千差万别,这给数据分析的结果带来了很大的不确定性,大大影响了大数据价值的挖掘与提炼。
与数据仓库时代的ETL只关注业务系统内的数据不同数据整理技术通常需要帮助用户将其拥有的数据与外部的一些数据源进行关联和数据融合。融合过程中面临着比较大的数据集成难题伴随着大量的数据质量问题如数据项缺失、不一致、重复、错位、异常值等。而很多情况下这些数据集成和数据质量方面的问题又与具体的应用场景关系密切很难形成通用的、一体化的数据整理解决方案。因此如何从不同的应用场景中抽象出数据整理的共性需求在新的数据整理的方法论指导下系统地研究数据整理工具和平台在未来会越来越重要也必将面临很多挑战。
数据准备服务于企业内部所有的数据使用者,以对数据处理技术不熟悉的业务用户为主。这些用户缺少数据管理与数据处理知识,但对业务熟悉,对数据背后的语义更清楚,他们是企业机构大数据价值发现的主力。如何针对这类业务型数据分析人员的需求和特点,提供高效的数据整理工具,是数据整理技术面临的一大挑战。这即包括数据整理工具的易用性,有包括工具在执行数据整理任务过程中的执行性能和被整理后数据的有效性。数据整理工具适用性和易用性之间通常还存在一定的矛盾,如何利用一些自动化的手段,降低用户使用工具的难度,根据场景自动优化配置数据整理工具,会是数据整理面临的一项重要难题\cite{Dubd2019}
数据仓库中的ETL是为了建立数据仓库所采用的相对固定的数据处理流水线。数据处理过程一旦建立整个过程比较静态很少再变化。数据整理任务是针对企业业务系统中的问题动态构建的数据处理过程。它针对具体问题做数据预处理会随着不同问题采用不同的数据整理过程虽然一些任务之间可以共享某些数据整理过程。如何优化不同数据整理任务所构成工作流共享数据整理的知识和经验避免重复性操作也是数据整理所面临的较大难题\cite{Xin19}
\subsection{交互式数据分析的挑战}
传统数据仓库,可以预先创建好结构清晰的数据模式,分析人员往往对数据模式比较了解,因此分析任务也能围绕数据模式较为清晰的定义出来。但是,大数据的异构性给数据分析带来了复杂性。在很多大数据场景中,异构性等让数据模式变复杂、并且可能在需要经常变化,数据分析人员不太容易预先构建好清晰的数据模式和其上的数据分析模型。在这种情况下,数据分析师往往需要交互式的数据分析能力,需要通过交互认识数据,调整模型和参数,对数据分析的一些假设不断做出调整。这就与传统报表式的数据分析有了很大的差别。交互式数据分析有很多新的挑战:
首先,要有很好的数据可视化做为支撑。数据可视化能够帮助分析人员简洁清晰地认识数据的重要特性,为调整分析维度、数据范围、模型类型等提供基本的数据和决策支撑。好的结果可视化分析界面,能够帮助用户更好地与数据分析系统进行交互,让分析任务更快地按用户想要的视角和方向而展开。可视化不仅包含结果的可视化,还要能够引导分析人员朝更有利于开展深入分析的方向而进行分析流程的推荐,辅助分析人员更有效地探索数据空间。
其次可视分析系统要想做的好分析处理的性能至关重要。有研究曾表明秒级以上的交互性能通常会让分析人员失去很多耐心很难保持住流畅持续的分析工作流。因此要求用户每次对分析任务进行调整后新的分析任务能够尽可能在亚秒级完成。这在大数据上近乎是很难实现的必须从技术层面解决高性能数据分析的需求。常见的技术里利用新硬件技术GPU, FPGA, NVM, RDMA等提速、数据预取与预计算、近似查询等都是提升大数据分析性能的有效手段。
再者,交互式数据分析的效果评价也是很有挑战的事情。由于交互式分析过程中分析人员往往存在分析目的不明确的问题,分析任务要在交互过程中不断调整,这为评价交互式分析算法和系统的好坏带来很多挑战。很多研究,需要借鉴人机交互领域的一些方法去衡量交互式分析解决方案的效果。因此,交互式分析也是人机交互和数据分析的学科交叉,需要技术和设计两个方面的支撑与紧密结合。
最后,交互式数据分析的复杂性为分析系统的设计和架构带来了很多挑战。需要在可视化、人机交互、高性能数据处理、数据库等多层面综合考虑,很多环节还需要跨层的紧密结合。该领域的研究难度也比较大,通常只有构建出可用的系统原型,才能够有效验证交互式数据分析算法和系统的优劣。
\subsection{数据隐私保护与数据安全的挑战}
数据安全与隐私保护问题长期以来一直受到人们的广泛关注。尤其是近年来大数据和人工智能技术的高速发展,数据外包到云平台上的需求与日俱增,各类应用对数据共享的呼声日益强烈,人们日常生活和出行对于基于位置的服务的依赖性逐步提高,这些都使得数据安全和隐私保护问题变得愈加突出和复杂。虽然学术界和工业界在隐私保护与数据安全方面已经取得了一些可喜的进展,但面对大数据的应用需求和应用场景,还是显得力不从心。目前数据隐私和安全问题存在于大数据收集、存储、管理、使用的各个阶段,如何抵御非法用户的恶意攻击和隐私窃取;如何防止数据被非法篡改或删除,导致错误的查询和分析结果;如何避免合法用户利用数据之间的关联关系,通过反复搜索推演出数据隐私;如何防止人们在使用数据服务时暴露自身的偏好、位置、轨迹等隐私信息,都是亟需解决的关键问题,也是关系到大数据应用前景的重要现实问题。这里面的重要技术挑战包括:
第一,敏感数据的安全存储与检索。大数据促进了云存储和云计算的快速发展,许多公司,如亚马逊,谷歌,微软等,已经加快了开发云服务步伐,大数据系统将数据外包到云平台上已成为一种趋势,但云平台是不可信的第三方,存在隐私数据被泄露、关键数据被篡改等风险,敏感数据在云平台上的安全存储与检索是必须解决的挑战性问题,它制约了云服务的推广与应用。
第二,数据的安全计算与共享。“数据孤岛”已成为在智慧医疗、金融分析、商品推荐、电商服务等各个领域中存在的普遍现象。对于作为数据拥有者的服务商,在不泄露各自敏感数据的前提下,联合多个服务商进行计算使用是充分挖掘数据价值的迫切需求,也是未来发展趋势。然而各个服务商的敏感数据难以直接透明化共享,以及在使用新技术过程中造成的隐私安全漏洞,都使得数据安全计算与共享成为一个挑战性问题。
第三动态数据的安全发布。数据发布是数据服务的一种重要形式k-匿名、l-多样性等传统隐私保护技术难以解决大数据环境中动态数据发布所带来的隐私泄露问题,差分隐私技术能够对静态数据的统计类信息进行安全发布,但是对于动态持续的数据发布场景,由于数据之间具有关联关系,其隐私泄露问题更加突出和严重,目前还没有有效的解决方案,是一个尚待突破的研究挑战。
第四,隐私性和数据可用性的平衡。数据挖掘技术能够深入挖掘大数据中所蕴含的知识和规律,使大数据的价值能得到更充分的发挥。但与此同时,即使采用了数据加密、数据加噪等数据保护手段,隐藏在不同来源数据背后的个人隐私信息仍然有可能被分析和推断出来。简单地切断社交网络信息、医疗信息、社保信息、购物平台信息、出行轨迹信息等不同来源数据之间的关联,对大数据系统的可用性和数据价值会造成致命影响,如何在隐私性和数据可用性之间寻求平衡是一个重要挑战。
\section{主要研究内容每一项内容300字左右}
为了应对上述重大挑战需要在多方面开展研究。这里我们列出了11项研究内容其中5个属于数据管理范畴包括分布数据管理(§6.2.1)、云数据管理(§6.2.2)、图数据管理(§6.2.3)、新硬件数据管理§6.2.4和内存数据管理§6.2.5。另外6项属于数据工程范畴包括多源数据集成§6.2.6、数据整理§6.2.7、数据分析§6.2.8、数据可视化§6.2.9、数据隐私§6.2.10和数据安全§6.2.11)。
\subsection{分布式数据管理}
由于大数据的管理需求分布式数据库一直是工业界和学术界的研究重点。分布式数据库应该具备强一致性、高可用性、可扩展性、易运维、容错容灾以及满足ACID属性的高并发事务处理能力。由于受限于CAP理论即在必须支持分区容错性的前提下系统实现只能侧重一致性和可用性的一个方面而无法同时满足另一方面支持ACID事务属性及高并发事务处理一直是分布式关系数据库的难点。分布式数据库基本是围绕数据强一致性、系统高可用性和ACID事务支持等核心问题展开研究工作。这些性质与系统的扩展性和性能密切相关甚至相互制约往往需要根据具体的应用需求进行取舍。很多NoSQL数据库都是放弃支持事务ACID属性来换取性能的提升。近年来新型数据库NewSQL的出现给分布式数据库的发展带来新的方向。它的目标是提供与NoSQL相同的可扩展性和性能同时支持事务的ACID属性。这种融合一致性和可用性的NewSQL已经成为分布式数据库的研究热点。
\subsection{云数据管理}
云数据管理以大容量、多类型、快变化、低质量的大数据为管理对象提供弹性、可靠的与高效的数据存储、组织与存取、查询处理、运行与维护等管理功能。针对多类型特征研究多模型数据统一管理技术提供统一查询语言例如SQL和编程接口。针对大数据的大容量、快变化特点从系统容错、数据划分与迁移、去中心化、自适应优化等维度研究弹性、高可靠、高性能的云数据管理系统架构。针对大数据应用的多样性特点从分布式系统的强一致性、最终一致性、弱一致性与分布式事务的隔离级别两个维度出发研究去中心化的分布式事务处理技术。研究基于新硬件、基于人工智能的云数据管理技术优化数据存取、查询处理、并发访问控制与故障恢复、系统运维等子系统。研究云计算资源的按需分配和弹性伸缩调整技术支撑系统的弹性管理。
\subsection{图数据管理}
针对规模巨大的图数据按照对图数据管理的抽象程度可以被分成两类。低层次抽象的提供编程接口的图数据管理系统针对图数据管理中的基本操作设计并实现相应的编程接口用户利用这些编程接口来实现相应的管理功能高层次抽象的描述性查询语言用户将相应的管理需求用描述性查询语言表达系统解析这些描述性查询语句并生成相应的查询计划来进行执行处理实现包括图搜索、基于图的社区发现、图节点的重要性和相关性分析、图匹配查询等查询和分析需求。新的研究问题还包括异构计算环境下的图数据管理、多源流式图数据管理、RDF知识图谱构建和推理等。
\subsection{新硬件数据管理}
近年计算机体系结构的研究异常活跃新进展层出不穷。新架构和新硬件技术的发展为数据管理技术带来新的挑战也带来明显的机遇。作为系统软件数据库底层需要做出适应性调整充分利用新架构和新硬件带来的便利同时避免新瓶颈。目前研究较多的包括高性能和专用处理器、高速网络、和非易失性内存以及包括各种混合架构等。针对高性能和专用处理器数据库底层核心算法需要充分考虑多核并行的能力重新设计连接、排序等基本操作。图形处理器GPU、现场可编程门阵列FPGA等专用处理器具备更大规模的数据并行操作能力从而提升数据的向量处理效率支持数据库内核范围内的机器学习等任务。传统分布式数据库或者并行数据库在高速网络环境中网络传输不在是瓶颈需要设计新的分布式连接方法和分布式并发控制策略等。而非易失存储的高速和持久化能力对数据库系统结构层面结合方式和恢复机制等带来新的研究课题。
\subsection{内存数据管理}
相对于以磁盘为主要存储介质的传统数据库内存数据库带来多个量级的性能提升内外存数据交换不再是主要性能代价而关注CPU特性对内存操作的影响如CPU中的缓存、指令和数据的预取、共享数据结构等重点研究上述变化在数据组织、数据索引、事务机制、查询优化等方面的不同。在数据组织方面内存数据库中数据可以按照其处理器核进行划分同一个划分中数据操作串行减少并发控制带来的各种代价也可以采用所有处理器核都可以访问全部数据的方式。内存数据库索引设计主要考虑索引结点的大小和CPU缓存大小相关,从而在索引操作过程中提升CPU缓存的命中率同时内存索引结构的设计需要考虑多核环境中的并发查询和更新减少内存数据结构中并发锁的使用减低索引维护代价。内存数据库的事务处理和并发控制机制使用多版本并发控制协议通过保存不同版本从而支持无阻塞高效率的读取操作或采用乐观并发机制提高效率。
\subsection{多源数据集成}
多源数据集成,指为多个异构的数据源提供统一的存取方法。多源数据集成需要解决两个核心问题:数据集成的精确性以及查询处理的效率。首先,须研究实体匹配的问题,即判断多个字符串或元组是否对应同一个实体。为此需要定义两个字符串或元组相似度的度量标准,如基于字符序列的度量标准、基于集合的度量标准以及混合度量标准。实体匹配方法还需要具备可扩展性,以处理大规模的数据集。其次,须解决模式匹配问题,其目标是建立不同模式到一个统一的集成模式之间的映射。模式匹配的研究方法包括基于实例的匹配,基于模式信息的匹配,以及混合匹配等。近来的一个趋势是采用机器学习或深度学习方法来提高模式匹配的准确度。最后,多源数据集成还包括查询改写和查询优化。查询改写研究形式上不一致的两个查询是否等价,以及一个查询是否可以在一组视图上执行。数据集成系统中的查询优化重点是自适应的查询处理,即查询处理器可以在运行时动态修改查询计划。
\subsection{数据整理}
数据整理是为了使数据能够更好地服务于数据分析而对数据进行的审查和转换的过程它是整个数据分析流程中最占用精力的过程。从技术上讲数据整理包含了前期数据解析与结构化处理、数据质量评估与数据清洗、数据集成和提纯等过程。由于问题的复杂性数据整理过程通常不是完全自动化的而是需要用户介入的反复迭代和交互的过程。数据可视化、用户反馈与交互在整个过程中都发挥了重要作用。如何开展有针对性的研究工作提出数据整理方法论并系统化地集成相关工具形成数据整理方面整体上的研究和应用影响力从事相关领域的研究学者应充分利用庞大的Python开源社区PyData投入系统化的数据准备工具研制中将研究成果更好地应用在实际场景中或许是一条较为可行的技术路线。
\subsection{数据分析}
从系统角度交互式分析对大数据处理的性能要求极高如何利用好新硬件如GPU, FPGA, NVM, RDMA等来加速大数据分析至关重要。在数据处理层面还可以利用用户在交互分析时需要花时间去理解数据分析的结果利用这个时间完成数据的预取和预计算操作把最有可能的下一步分析任务的结果提前算出来或者采用近似计算方法给出统计分析结果的上下界并随着数据处理的进行不断更新计算结果让分析结果随着用时的增加更为精确。如何根据一些常见的数据分析类型设计相关的评测基准让不同交互式数据分析解决方案之间有更好的可比性也是很值得研究的方向。再有就是解决具体分析任务时如何设计有效的交互界面结合数据模式和数据空间的特点设计有效的数据交互方式让数据和分析流程都能更好地通过可视化方式引导用户以较低的代价参与到数据分析的整个流程中。
\subsection{数据可视化}
数据可视化利用计算机图形学、数据分析、用户交互界面等技术通过数据建模等手段为用户提供有效的数据呈现方式。数据可视化能够帮助用户迅速理解数据定位问题。数据可视化技术可以从不同维度来刻画如可视化后台的数据类型、不同类型的可视化交互技术等。数据可视化技术的进展通常针对不同的数据类型展开图数据的海量规模包括节点和边以及有限的可视空间限制成为图数据可视化的主要挑战主要研究侧重于图简化的思路通过边聚集或者点聚集构建不同层次的图同时引入交互策略支持用户对其感兴趣的部分进一步动态分析时空数据是包含时间维度和空间维度的数据其空间维度通常和地理系统进行结合重点研究采用属性可视化技术展示对象随着时空维度变化如将事件流和地理流结合的Flowmap、时间-空间-事件等信息的三维立方体方式等;数据仓库中多维数据可视化则着重更加友好呈现数据,利用散点图、平行坐标等方式提高用户对整体分布和不同维度之间关系的理解。
\subsection{数据隐私}
数据隐私保护技术主要利用以密码学为基础的加密、签名、协议等技术,以统计学为手段的匿名化技术、模糊化技术以及基于概率分析的差分隐私技术等,为用户数据提供隐私保证。大数据背景下潜在隐私泄露方式更加多元,主要研究内容可以包括以下三方面,一是大数据隐私保护理论,包括隐私定义与搜索能力之间的关系、支持数据隐私的安全搜索机理、隐私保护方法评测基准等。二是数据存储、查询和发布中的隐私保护技术,包括基于隐私识别的数据加密算法、带密检索机制、动态数据的安全连续发布、具有复杂关联的敏感数据反推演策略等。三是数据服务中的个人隐私保护,包括社交网络环境下的个性化隐私度量及保护手段,数据服务中对用户偏好、地理位置、行动轨迹等信息的隐藏策略,及其与服务质量之间的关系度量等。
\subsection{数据安全}
数据安全研究主要是利用现代密码学算法对数据进行主动保护。大数据背景下,海量规模数据和多样化类型数据给数据的检索和存储都带来巨大的压力,传统数据安全技术可能失效。
主要研究内容可以包括以下三方面,一是大数据安全保护模型,包括攻击者行为形式化、大数据完整性、真实性和可用性定义、大数据访问控制方法等。二是数据存储、访问和处理中的安全保护技术,包括基于属性的身份鉴别、同态认证、基于属性的访问控制、零知识证明、函数加密以及通过安全计算协议解决大数据环境下人工智能高速发展所带来的数据安全共享计算的难题,包括优化同态加密及多方安全计算的高昂通信代价等。三是大数据安全保护动态化管理,包括用户失效证书管理、访问权限更新、应对数据权属变更的代理重加密、支持临时授权的访问控制等。
\section{本章小结}
在“以数据为中心的计算”计算时代,数据在计算体系中的重要性凸显。数据不再是依附软件(业务)而存在的,数据本身可以是独立存在的。这给数据管理和数据工程带来新的挑战和机遇。一方面数据不仅仅支撑业务的运行,即使在业务活动结束后还要继续保存,因此,数据会越积越多,需要新的支撑平台。另一方面,数据只有利用才有价值,围绕数据价值的提升,需要有方法学和工具的支撑。
大数据时代,我们用“以数据为中心的计算”这一说法来表达计算技术的发展趋势:数据在计算体系中的地位越来越重要,数据不再仅仅是算法处理的对象,也不再仅仅是依附于某种功能软件而存在,数据是组织的资产而独立存在,而且数据越积越多、规模越来越大,形成一种数据平台。
在某种程度上数据平台隔离了上层基于机器学习的数据建模和推理应用与下层大数据的存储与计算设施。这种分离增加了上层应用系统的稳定性。新一代大数据管理与分析系统也是一类系统软件具有如下特征多种数据模型并存多种计算模型融合系统可伸缩弹性扩展能力强。首先多种数据模型并存是指可以支持关系、文本、图、KV等多种数据模型的存储与访问系统能够根据应用特征甚至运行负载的情况进行模型的转化支持自适应优化。其次多计算模型融合是指高效支持批处理、流计算等多种计算模型计算系统要能将多种计算模型进行深度的融合而非简单地将两套或多套系统进行集成避免数据的反复迁移提高效率同时能够做到批流交互支持复杂应用和深度分析。最后系统要能够高效利用底层的云计算资源面向云计算平台上的虚拟资源构建效率高、弹性扩展能力强的系统能够实时进行可伸缩调整提高资源利用率在软件系统层提升从资源到性能的转换效率。
从应用角度看未来主流应用将从联机事务处理OLTP、联机分析处理OLAP走向联机机器学习OLML。机器学习等人工智能应用能够从大数据中挖掘深度知识将成为大数据管理与分析系统上的一类重要应用。机器学习系统将不再像现在这样一类模型对应一组数据而是成为一个同时支持多种机器学习模型的大规模数据平台。此外降低大数据应用的门槛非常迫切平民化数据科学成为一种趋势实现平民化数据学科的有效途径就是提供丰富易用的工具从数据采集数据整理到数据分析和模型训练等这方面的研究实践活动非常活跃成果大量涌现。未来期待大数据应用开发方法学的成果能够统领这个方向的研究。
从数据生态的角度看,围绕数据的产生、加工、分析、利用乃至交易形成了相互依存又相互独立的生态系统结构。一方面这些数据为软件系统的智能化提供基础数据支撑,另一方面智能化服务软件又进一步贡献新的数据,进入数据平台。数据生态中涉及多个方面,如用户、商业公司、政府等,需要平衡各方利益、确保可持续发展。
从软件形态的角度看,软件所呈现出的泛在化和持续演化的特性都与数据密切相关。软件的泛在化应用以及人机物融合使得我们所能够获得的数据越来越全面地覆盖了物理世界及人类生活的方方面面。软件的持续演化有赖于持续的数据收集以及数据驱动的智能化演化决策,同时也有赖于软件功能定义的数据化。此外,软件将越来越多地将来自广大用户的群智(例如使用数据反馈)融合到软件自身的持续演进中,这也是通过用户数据的收集和分析来实现的。
从系统论的角度看,未来面向复杂应用场景(如智慧城市)的软件需要多源异构的数据来支撑背后的智能决策。这些数据本身来自于很多不同的软件系统以及人机物三个方面的要素,跨越了既有的系统边界,体现了复杂系统特性。汇聚大数据之后产生的一些非预设的系统行为乃至服务业态体现了复杂系统的涌现特性。
由此可见,数据,软件,用户将以一种新的关系共存,需要重新考虑超越传统软件质量之外的与数据紧密相关的诸如隐私保护、平等(非歧视)以及信息普惠等价值观的话题
本章列出数据管理和数据工程的若干重要挑战、主要研究内容与研究趋势\footnote{陈红、陈普川、陈跃国、卢卫、张峰、张孝参与本章内容的讨论与撰写}
\section{重大挑战问题}
数据管理与数据工程的挑战问题包括两个方面。首先,在数据管理方面,主要表现在如何管理大数据(§6.1.1)、如何利用新硬件混合架构来实现大数据的管理(§6.1.2)。在数据工程方面,主要有异构数据整理(§6.1.3)、数据分析(§6.1.4)和数据安全与隐私保护(§6.1.5)等挑战。
\subsection{大数据管理的挑战}
大数据具有大容量、多类型、快变化、低质量的4V特征。大数据管理已不像传统数据库时代去追求使用关系数据库来解决所有数据管理的问题而是探索从数据存储、数据组织与存取、语言处理、应用等几个维度对各个传统数据库管理系统进行解耦解耦后的各个子系统依据大数据的4V数据特征各自独立发展用户可根据实际应用的需要采用松耦合的方式对各个子系统进行组装量身定制自己的大数据管理系统。大数据管理系统技术目前还在快速进化之中还没有成型。管理好4V的数据是对大数据管理系统的基本要求。从这个基本点出发可以归纳出大数据管理系统的若干技术挑战
第一多数据模型的统一管理。i数据模型是数据管理的核心数据结构、数据操作、完整约束是构成数据模型的三大要素。关系模型有单一的关系数据结构、封闭的关系操作集合、灵活的关系完整性约束而大数据管理中的其他数据模型包括键值对、图、文档等虽然数据结构定义清晰但缺少数据模型中数据操作和数据约束两大要素的定义亟待理论上的突破。ii关系数据库有严格的关系数据理论和模式分解算法辅助数据建模如何对大数据进行有效数据建模尚缺少理论和技术支撑。iii) 大数据多源、异构的特点,使得大数据管理系统无法采用单一数据模型进行管理,多数据模型并存并统一管理,需要系统从语言处理、数据组织与存取、数据存储等多个层次进行重新设计与优化\cite{Du19,Du2018}
第二,多计算模型的深度融合。大数据管理系统更需要高效支持批处理、流计算等多种计算模型,将多种计算模型进行深度的融合,而非简单地将两套或多套系统进行集成,避免数据的反复迁移,提高效率,同时能够做到批流交互,支持复杂应用和深度分析。为此,需要研究
第三新型系统架构。大数据的大容量和快变化特征要求大数据管理系统具备高可扩展性。针对大容量特点采用“分而治之”的思想将数据进行分片每个分片部署到指定的节点上进行管理。针对快变化的特点当数据快速增加时可以通过增加节点的数量使系统仍然具备较低的响应时间。在此背景下大数据管理系统架构面临如下挑战i容错。一方面大数据管理中的存储节点、计算节点已经不局限于传统分布式数据库中的高性能服务器可以是普通服务器甚至是普通的PC机器可靠性有限。更重要的是节点数量的增加整个系统出现节点故障的可能性增大。如何从容错的角度设计可靠的系统架构不影响数据存储、数据操纵、数据运维等管理的正确性和高效性。ii去中心化。大数据管理系统是分布式的中心节点可能会成为访问的瓶颈。一方面中心节点的故障会造成整个系统的瘫痪另一方面中心节点负载过重也会影响系统的可扩展性和高效性如何研究去中心化的大数据管理系统架构突破单点瓶颈实现系统的高可扩展性和高效性。iii) 自适应优化。一方面,集群环境下,存储节点、计算节点的硬件能力可能存在较大差异,需要研究异构集群环境下的自适应优化。另一方面,负载任务的多变性和复杂性,要求研究多数据模型下的自适应优化。
\subsection{新硬件与混合架构的挑战}
数据管理系统的实现受计算机软件技术和硬件技术以及应用三方面的影响。随着新硬件及各种混合架构的出现,支持数据管理与数据工程的底层硬件正在经历巨大的变革,各类新型加速设备、混合架构出现也在逐渐改变数据管理和数据工程中的设计,并带来了巨大挑战。
近些年以GPU为代表的新硬件得到了迅猛发展越来越多的数据管理与数据工程应用采用新硬件与传统系统相混合的架构使用GPU等新硬件进行加速\cite{Cui19}。相对于传统数据管理与数据工程相关应用GPU等新硬件的引入可提供更高的数据处理速度以及更好的实时处理效果。然而虽然新硬件与混合架构为数据管理和数据工程提供了新思路但也带来了一系列亟待解决的新挑战
第一混合架构中的新硬件资源分配。不同种类的新硬件具有完全不同的体系结构特征适合处理的应用特征也不完全相同。例如GPU硬件依赖众核的并行提升吞吐量隐藏访问延迟往往适合高吞吐量、对延迟不敏感的应用。因此在数据管理和数据工程中需要尽可能使各新硬件设备处理各自适合的负载而如何识别出适合新硬件加速的程序进行有效地任务分配是一个不小的挑战。
第二混合架构下的数据传输。混合架构中的GPU等新硬件设备往往通过PCIE与传统CPU处理器相连接由于GPU等新硬件设备具有独立的存储结构处理数据时需要从主存将数据传输至设备存储中存在的挑战是如何降低数据传输所带来的性能影响等。
第三新硬件下的数据结构与算法。传统的数据管理和数据工程应用所采用的数据结构和算法往往是针对x86系统架构设计的不适用于GPU等新型硬件。例如GPU中具有大量的计算核心存在可以控制的局部缓存体系结构组织方式也和传统CPU不同需要使用GPU编程语言考虑硬件特性进行程序设计。此外新硬件编程往往涉及编程语言的扩展因此新硬件下需要有针对性地设计数据结构和算法是一个重要挑战。
第四,新型存储结构。以非易失性存储器为代表的新介质可进一步加速数据处理的速度,但随着新型存储的引入,数据管理的过程中有可能会涉及多种存储类型,存储的层次结构也可能与以往不同,如何设计相应的数据存储也是数据管理与数据工程的挑战。
\subsection{异构数据整理的挑战}
数据整理是在挖掘提炼数据价值的过程中需要进行的前期的数据预处理工作。它看似不足轻重实则非常重要。有调查研究表明很多大数据分析任务80\%以上的工作花费在数据整理上,这给数据分析带来了巨大的人力成本。很多分析设想因为承担不起前期巨大的数据整理工作而最终被放弃。更重要的是,由于缺少系统性和理论性的支撑,数据整理的质量千差万别,这给数据分析的结果带来了很大的不确定性,大大影响了大数据价值的挖掘与提炼。
与数据仓库时代的ETL只关注业务系统内的数据不同数据整理技术通常需要帮助用户将其拥有的数据与外部的一些数据源进行关联和数据融合。融合过程中面临着比较大的数据集成难题伴随着大量的数据质量问题如数据项缺失、不一致、重复、错位、异常值等。而很多情况下这些数据集成和数据质量方面的问题又与具体的应用场景关系密切很难形成通用的、一体化的数据整理解决方案。因此如何从不同的应用场景中抽象出数据整理的共性需求在新的数据整理的方法论指导下系统地研究数据整理工具和平台在未来会越来越重要也必将面临很多挑战。
数据准备服务于企业内部所有的数据使用者,以对数据处理技术不熟悉的业务用户为主。这些用户缺少数据管理与数据处理知识,但对业务熟悉,对数据背后的语义更清楚,他们是企业机构大数据价值发现的主力。如何针对这类业务型数据分析人员的需求和特点,提供高效的数据整理工具,是数据整理技术面临的一大挑战。这即包括数据整理工具的易用性,有包括工具在执行数据整理任务过程中的执行性能和被整理后数据的有效性。数据整理工具适用性和易用性之间通常还存在一定的矛盾,如何利用一些自动化的手段,降低用户使用工具的难度,根据场景自动优化配置数据整理工具,会是数据整理面临的一项重要难题\cite{Dubd2019}
数据仓库中的ETL是为了建立数据仓库所采用的相对固定的数据处理流水线。数据处理过程一旦建立整个过程比较静态很少再变化。数据整理任务是针对企业业务系统中的问题动态构建的数据处理过程。它针对具体问题做数据预处理会随着不同问题采用不同的数据整理过程虽然一些任务之间可以共享某些数据整理过程。如何优化不同数据整理任务所构成工作流共享数据整理的知识和经验避免重复性操作也是数据整理所面临的较大难题\cite{Xin19}
\subsection{交互式数据分析的挑战}
传统数据仓库,可以预先创建好结构清晰的数据模式,分析人员往往对数据模式比较了解,因此分析任务也能围绕数据模式较为清晰的定义出来。但是,大数据的异构性给数据分析带来了复杂性。在很多大数据场景中,异构性等让数据模式变复杂、并且可能在需要经常变化,数据分析人员不太容易预先构建好清晰的数据模式和其上的数据分析模型。在这种情况下,数据分析师往往需要交互式的数据分析能力,需要通过交互认识数据,调整模型和参数,对数据分析的一些假设不断做出调整。这就与传统报表式的数据分析有了很大的差别。交互式数据分析有很多新的挑战:
首先,要有很好的数据可视化做为支撑。数据可视化能够帮助分析人员简洁清晰地认识数据的重要特性,为调整分析维度、数据范围、模型类型等提供基本的数据和决策支撑。好的结果可视化分析界面,能够帮助用户更好地与数据分析系统进行交互,让分析任务更快地按用户想要的视角和方向而展开。可视化不仅包含结果的可视化,还要能够引导分析人员朝更有利于开展深入分析的方向而进行分析流程的推荐,辅助分析人员更有效地探索数据空间。
其次可视分析系统要想做的好分析处理的性能至关重要。有研究曾表明秒级以上的交互性能通常会让分析人员失去很多耐心很难保持住流畅持续的分析工作流。因此要求用户每次对分析任务进行调整后新的分析任务能够尽可能在亚秒级完成。这在大数据上近乎是很难实现的必须从技术层面解决高性能数据分析的需求。常见的技术里利用新硬件技术GPU, FPGA, NVM, RDMA等提速、数据预取与预计算、近似查询等都是提升大数据分析性能的有效手段。
再者,交互式数据分析的效果评价也是很有挑战的事情。由于交互式分析过程中分析人员往往存在分析目的不明确的问题,分析任务要在交互过程中不断调整,这为评价交互式分析算法和系统的好坏带来很多挑战。很多研究,需要借鉴人机交互领域的一些方法去衡量交互式分析解决方案的效果。因此,交互式分析也是人机交互和数据分析的学科交叉,需要技术和设计两个方面的支撑与紧密结合。
最后,交互式数据分析的复杂性为分析系统的设计和架构带来了很多挑战。需要在可视化、人机交互、高性能数据处理、数据库等多层面综合考虑,很多环节还需要跨层的紧密结合。该领域的研究难度也比较大,通常只有构建出可用的系统原型,才能够有效验证交互式数据分析算法和系统的优劣。
\subsection{数据隐私保护与数据安全的挑战}
数据安全与隐私保护问题长期以来一直受到人们的广泛关注。尤其是近年来大数据和人工智能技术的高速发展,数据外包到云平台上的需求与日俱增,各类应用对数据共享的呼声日益强烈,人们日常生活和出行对于基于位置的服务的依赖性逐步提高,这些都使得数据安全和隐私保护问题变得愈加突出和复杂。虽然学术界和工业界在隐私保护与数据安全方面已经取得了一些可喜的进展,但面对大数据的应用需求和应用场景,还是显得力不从心。目前数据隐私和安全问题存在于大数据收集、存储、管理、使用的各个阶段,如何抵御非法用户的恶意攻击和隐私窃取;如何防止数据被非法篡改或删除,导致错误的查询和分析结果;如何避免合法用户利用数据之间的关联关系,通过反复搜索推演出数据隐私;如何防止人们在使用数据服务时暴露自身的偏好、位置、轨迹等隐私信息,都是亟需解决的关键问题,也是关系到大数据应用前景的重要现实问题。这里面的重要技术挑战包括:
第一,敏感数据的安全存储与检索。大数据促进了云存储和云计算的快速发展,许多公司,如亚马逊,谷歌,微软等,已经加快了开发云服务步伐,大数据系统将数据外包到云平台上已成为一种趋势,但云平台是不可信的第三方,存在隐私数据被泄露、关键数据被篡改等风险,敏感数据在云平台上的安全存储与检索是必须解决的挑战性问题,它制约了云服务的推广与应用。
第二,数据的安全计算与共享。“数据孤岛”已成为在智慧医疗、金融分析、商品推荐、电商服务等各个领域中存在的普遍现象。对于作为数据拥有者的服务商,在不泄露各自敏感数据的前提下,联合多个服务商进行计算使用是充分挖掘数据价值的迫切需求,也是未来发展趋势。然而各个服务商的敏感数据难以直接透明化共享,以及在使用新技术过程中造成的隐私安全漏洞,都使得数据安全计算与共享成为一个挑战性问题。
第三动态数据的安全发布。数据发布是数据服务的一种重要形式k-匿名、l-多样性等传统隐私保护技术难以解决大数据环境中动态数据发布所带来的隐私泄露问题,差分隐私技术能够对静态数据的统计类信息进行安全发布,但是对于动态持续的数据发布场景,由于数据之间具有关联关系,其隐私泄露问题更加突出和严重,目前还没有有效的解决方案,是一个尚待突破的研究挑战。
第四,隐私性和数据可用性的平衡。数据挖掘技术能够深入挖掘大数据中所蕴含的知识和规律,使大数据的价值能得到更充分的发挥。但与此同时,即使采用了数据加密、数据加噪等数据保护手段,隐藏在不同来源数据背后的个人隐私信息仍然有可能被分析和推断出来。简单地切断社交网络信息、医疗信息、社保信息、购物平台信息、出行轨迹信息等不同来源数据之间的关联,对大数据系统的可用性和数据价值会造成致命影响,如何在隐私性和数据可用性之间寻求平衡是一个重要挑战。
\section{主要研究内容每一项内容300字左右}
为了应对上述重大挑战需要在多方面开展研究。这里我们列出了11项研究内容其中5个属于数据管理范畴包括分布数据管理(§6.2.1)、云数据管理(§6.2.2)、图数据管理(§6.2.3)、新硬件数据管理§6.2.4和内存数据管理§6.2.5。另外6项属于数据工程范畴包括多源数据集成§6.2.6、数据整理§6.2.7、数据分析§6.2.8、数据可视化§6.2.9、数据隐私§6.2.10和数据安全§6.2.11)。
\subsection{分布式数据管理}
由于大数据的管理需求分布式数据库一直是工业界和学术界的研究重点。分布式数据库应该具备强一致性、高可用性、可扩展性、易运维、容错容灾以及满足ACID属性的高并发事务处理能力。由于受限于CAP理论即在必须支持分区容错性的前提下系统实现只能侧重一致性和可用性的一个方面而无法同时满足另一方面支持ACID事务属性及高并发事务处理一直是分布式关系数据库的难点。分布式数据库基本是围绕数据强一致性、系统高可用性和ACID事务支持等核心问题展开研究工作。这些性质与系统的扩展性和性能密切相关甚至相互制约往往需要根据具体的应用需求进行取舍。很多NoSQL数据库都是放弃支持事务ACID属性来换取性能的提升。近年来新型数据库NewSQL的出现给分布式数据库的发展带来新的方向。它的目标是提供与NoSQL相同的可扩展性和性能同时支持事务的ACID属性。这种融合一致性和可用性的NewSQL已经成为分布式数据库的研究热点。
\subsection{云数据管理}
云数据管理以大容量、多类型、快变化、低质量的大数据为管理对象提供弹性、可靠的与高效的数据存储、组织与存取、查询处理、运行与维护等管理功能。针对多类型特征研究多模型数据统一管理技术提供统一查询语言例如SQL和编程接口。针对大数据的大容量、快变化特点从系统容错、数据划分与迁移、去中心化、自适应优化等维度研究弹性、高可靠、高性能的云数据管理系统架构。针对大数据应用的多样性特点从分布式系统的强一致性、最终一致性、弱一致性与分布式事务的隔离级别两个维度出发研究去中心化的分布式事务处理技术。研究基于新硬件、基于人工智能的云数据管理技术优化数据存取、查询处理、并发访问控制与故障恢复、系统运维等子系统。研究云计算资源的按需分配和弹性伸缩调整技术支撑系统的弹性管理。
\subsection{图数据管理}
针对规模巨大的图数据按照对图数据管理的抽象程度可以被分成两类。低层次抽象的提供编程接口的图数据管理系统针对图数据管理中的基本操作设计并实现相应的编程接口用户利用这些编程接口来实现相应的管理功能高层次抽象的描述性查询语言用户将相应的管理需求用描述性查询语言表达系统解析这些描述性查询语句并生成相应的查询计划来进行执行处理实现包括图搜索、基于图的社区发现、图节点的重要性和相关性分析、图匹配查询等查询和分析需求。新的研究问题还包括异构计算环境下的图数据管理、多源流式图数据管理、RDF知识图谱构建和推理等。
\subsection{新硬件数据管理}
近年计算机体系结构的研究异常活跃新进展层出不穷。新架构和新硬件技术的发展为数据管理技术带来新的挑战也带来明显的机遇。作为系统软件数据库底层需要做出适应性调整充分利用新架构和新硬件带来的便利同时避免新瓶颈。目前研究较多的包括高性能和专用处理器、高速网络、和非易失性内存以及包括各种混合架构等。针对高性能和专用处理器数据库底层核心算法需要充分考虑多核并行的能力重新设计连接、排序等基本操作。图形处理器GPU、现场可编程门阵列FPGA等专用处理器具备更大规模的数据并行操作能力从而提升数据的向量处理效率支持数据库内核范围内的机器学习等任务。传统分布式数据库或者并行数据库在高速网络环境中网络传输不在是瓶颈需要设计新的分布式连接方法和分布式并发控制策略等。而非易失存储的高速和持久化能力对数据库系统结构层面结合方式和恢复机制等带来新的研究课题。
\subsection{内存数据管理}
相对于以磁盘为主要存储介质的传统数据库内存数据库带来多个量级的性能提升内外存数据交换不再是主要性能代价而关注CPU特性对内存操作的影响如CPU中的缓存、指令和数据的预取、共享数据结构等重点研究上述变化在数据组织、数据索引、事务机制、查询优化等方面的不同。在数据组织方面内存数据库中数据可以按照其处理器核进行划分同一个划分中数据操作串行减少并发控制带来的各种代价也可以采用所有处理器核都可以访问全部数据的方式。内存数据库索引设计主要考虑索引结点的大小和CPU缓存大小相关,从而在索引操作过程中提升CPU缓存的命中率同时内存索引结构的设计需要考虑多核环境中的并发查询和更新减少内存数据结构中并发锁的使用减低索引维护代价。内存数据库的事务处理和并发控制机制使用多版本并发控制协议通过保存不同版本从而支持无阻塞高效率的读取操作或采用乐观并发机制提高效率。
\subsection{多源数据集成}
多源数据集成,指为多个异构的数据源提供统一的存取方法。多源数据集成需要解决两个核心问题:数据集成的精确性以及查询处理的效率。首先,须研究实体匹配的问题,即判断多个字符串或元组是否对应同一个实体。为此需要定义两个字符串或元组相似度的度量标准,如基于字符序列的度量标准、基于集合的度量标准以及混合度量标准。实体匹配方法还需要具备可扩展性,以处理大规模的数据集。其次,须解决模式匹配问题,其目标是建立不同模式到一个统一的集成模式之间的映射。模式匹配的研究方法包括基于实例的匹配,基于模式信息的匹配,以及混合匹配等。近来的一个趋势是采用机器学习或深度学习方法来提高模式匹配的准确度。最后,多源数据集成还包括查询改写和查询优化。查询改写研究形式上不一致的两个查询是否等价,以及一个查询是否可以在一组视图上执行。数据集成系统中的查询优化重点是自适应的查询处理,即查询处理器可以在运行时动态修改查询计划。
\subsection{数据整理}
数据整理是为了使数据能够更好地服务于数据分析而对数据进行的审查和转换的过程它是整个数据分析流程中最占用精力的过程。从技术上讲数据整理包含了前期数据解析与结构化处理、数据质量评估与数据清洗、数据集成和提纯等过程。由于问题的复杂性数据整理过程通常不是完全自动化的而是需要用户介入的反复迭代和交互的过程。数据可视化、用户反馈与交互在整个过程中都发挥了重要作用。如何开展有针对性的研究工作提出数据整理方法论并系统化地集成相关工具形成数据整理方面整体上的研究和应用影响力从事相关领域的研究学者应充分利用庞大的Python开源社区PyData投入系统化的数据准备工具研制中将研究成果更好地应用在实际场景中或许是一条较为可行的技术路线。
\subsection{数据分析}
从系统角度交互式分析对大数据处理的性能要求极高如何利用好新硬件如GPU, FPGA, NVM, RDMA等来加速大数据分析至关重要。在数据处理层面还可以利用用户在交互分析时需要花时间去理解数据分析的结果利用这个时间完成数据的预取和预计算操作把最有可能的下一步分析任务的结果提前算出来或者采用近似计算方法给出统计分析结果的上下界并随着数据处理的进行不断更新计算结果让分析结果随着用时的增加更为精确。如何根据一些常见的数据分析类型设计相关的评测基准让不同交互式数据分析解决方案之间有更好的可比性也是很值得研究的方向。再有就是解决具体分析任务时如何设计有效的交互界面结合数据模式和数据空间的特点设计有效的数据交互方式让数据和分析流程都能更好地通过可视化方式引导用户以较低的代价参与到数据分析的整个流程中。
\subsection{数据可视化}
数据可视化利用计算机图形学、数据分析、用户交互界面等技术通过数据建模等手段为用户提供有效的数据呈现方式。数据可视化能够帮助用户迅速理解数据定位问题。数据可视化技术可以从不同维度来刻画如可视化后台的数据类型、不同类型的可视化交互技术等。数据可视化技术的进展通常针对不同的数据类型展开图数据的海量规模包括节点和边以及有限的可视空间限制成为图数据可视化的主要挑战主要研究侧重于图简化的思路通过边聚集或者点聚集构建不同层次的图同时引入交互策略支持用户对其感兴趣的部分进一步动态分析时空数据是包含时间维度和空间维度的数据其空间维度通常和地理系统进行结合重点研究采用属性可视化技术展示对象随着时空维度变化如将事件流和地理流结合的Flowmap、时间-空间-事件等信息的三维立方体方式等;数据仓库中多维数据可视化则着重更加友好呈现数据,利用散点图、平行坐标等方式提高用户对整体分布和不同维度之间关系的理解。
\subsection{数据隐私}
数据隐私保护技术主要利用以密码学为基础的加密、签名、协议等技术,以统计学为手段的匿名化技术、模糊化技术以及基于概率分析的差分隐私技术等,为用户数据提供隐私保证。大数据背景下潜在隐私泄露方式更加多元,主要研究内容可以包括以下三方面,一是大数据隐私保护理论,包括隐私定义与搜索能力之间的关系、支持数据隐私的安全搜索机理、隐私保护方法评测基准等。二是数据存储、查询和发布中的隐私保护技术,包括基于隐私识别的数据加密算法、带密检索机制、动态数据的安全连续发布、具有复杂关联的敏感数据反推演策略等。三是数据服务中的个人隐私保护,包括社交网络环境下的个性化隐私度量及保护手段,数据服务中对用户偏好、地理位置、行动轨迹等信息的隐藏策略,及其与服务质量之间的关系度量等。
\subsection{数据安全}
数据安全研究主要是利用现代密码学算法对数据进行主动保护。大数据背景下,海量规模数据和多样化类型数据给数据的检索和存储都带来巨大的压力,传统数据安全技术可能失效。
主要研究内容可以包括以下三方面,一是大数据安全保护模型,包括攻击者行为形式化、大数据完整性、真实性和可用性定义、大数据访问控制方法等。二是数据存储、访问和处理中的安全保护技术,包括基于属性的身份鉴别、同态认证、基于属性的访问控制、零知识证明、函数加密以及通过安全计算协议解决大数据环境下人工智能高速发展所带来的数据安全共享计算的难题,包括优化同态加密及多方安全计算的高昂通信代价等。三是大数据安全保护动态化管理,包括用户失效证书管理、访问权限更新、应对数据权属变更的代理重加密、支持临时授权的访问控制等。
\section{本章小结}
在“以数据为中心的计算”计算时代,数据在计算体系中的重要性凸显。数据不再是依附软件(业务)而存在的,数据本身可以是独立存在的。这给数据管理和数据工程带来新的挑战和机遇。一方面数据不仅仅支撑业务的运行,即使在业务活动结束后还要继续保存,因此,数据会越积越多,需要新的支撑平台。另一方面,数据只有利用才有价值,围绕数据价值的提升,需要有方法学和工具的支撑。