其他

DaSESS2016-面向科学发现的大数据管理系列回顾之三

2016-09-18 DaSE 华东师范大学数据学院
7月21日
题目:面向天文应用的科学数据库技术主讲人:李晖 副教授  贵州大学 计算机学院主讲人简介:李晖,2012年于中国人民大学计算机软件与理论专业获博士学位。2012年度Google助力西部教育人才引进励教金获得者。现为贵州大学计算机学院副教授,并担任贵州省先进计算与医疗信息服务工程实验室副主任,贵州省(教育厅)数据分析云服务创新团队联合负责人。主要研究方向为大规模数据管理与分析。其在天文数据管理与分析领域的部分技术成果,已被国家天文台FAST(500米口径球面射电望远镜)工程科学部在巡天数据科学研究规划中应用。
回顾:
摘要:天文大数据是第四研究范式的典型应用,对科学数据库和大规模数据管理及分析领域提出了新的挑战。李晖副教授对天文学领域的背景知识进行了简要介绍,结合FAST项目的需求,研究诸多大数据系统,最后选择SciDB,并衍生出FastDB。1.       研究范式的转变经典科学研究的范式包含实验科学、归纳总结以及计算机仿真。随着技术发展,数据密集型科学研究(科学大数据研究)已成为了一种新的研究范式。计算机技术是数据存储、管理及分析的基础,因此计算机在科学研究中扮演着非常重要的角色。在“电脑+人脑”的这种第四范式中,电脑的比重提高,甚至希望成为主角。调整对因果关系的执着,转而着重关注相关关系。互联网技术的发展使得人类进入到大数据的时代,但是和宇宙数百亿光年相比,人类产生的数据量是微乎其微。先进的观测设备运行过程中积累了大量的科学数据,毫无疑问,天文学是最早迎接大数据挑战的领域之一,并且也是最早意识到数据驱动的科学研究趋势的学科之一。2.       FAST及典型应用随着世界上最大射电望远镜FAST(Five-hundred-meter Aperture Spherical radio Telescope)的建成,这不仅给中国天文研究人员带来了新的机遇,也给科学数据库和大规模数据管理及分析领域带来了新的挑战。FAST是世界上在建的口径最大的单天线射电望远镜,其口径有500米,位于贵州省平塘县,每天可产生10-50TB的数据,如下图所示。
FastNavi和FastSky是针对天文数据开发的系统。FastNavi:面向FAST的多源巡天数据融合探索系统,其支持多谓词范围查询、多维NN查询、交叉证认,并包含计算密集型任务。FastSky:天图系统,可以对不同来源的不同类型的天文数据进行可视化,并提供多种数据分析功能。3.       需求与挑战在科学大数据的4V(Volume,Variety,Velocity,Value)视角中,巨量化是非常大的一个挑战。大数据的真正问题在于如何高效的管理和分析数据,而巨量数据的无法存储,将失去大数据的意义。FAST对其数据管理与技术有一定的需求,这些需求集中在可扩展性、成本、易用性、运维以及性能等方面。低成本高可扩展性系统、保持SQL类语言的可用性、海量结构化和非结构化数据存储共存将成为主要挑战。在性能方面,可以通过各种索引技术以及查询优化进行提高。4.       大数据系统选型与扩展实践面对科学大数据的挑战,大数据系统选型有两类解决方案:(1)大数据类系统类方案,如Hadoop、Phoenix和SQL on Hadoop等MR类的NoSQL系统;(2)数据库系统类方案,即并行的数据库管理系统。这两类系统在不同的应用场景下各有优势,因此不同的科学大数据系统需要按照自身的需求来选取合适的系统。具体针对于FAST巡天大数据系统的选型,除了需要考虑典型的科学大数据的需求,还需要考虑支持计算密集型大数据分析服务、面向分析优化和天文大数据的可视化分析。因此选型过程经过了大量的实践。通过使用Hadoop、Impala、Shark/Spark、TDW等系统,分析其优缺点,发现这些系统无法满足FAST。经过广泛调研,最后重点考虑Phoenix、Hive和SciDB,并进一步对系统进行改进。4.1.  PhoenixPhoenix系统是Hbase的“关系数据库层”,是一个查询处理引擎,具有学习门槛低的特点,并且还具有生态环境好、性能高等特点。但是考虑到该系统成熟度、稳定性较低,以及不适合科学计算、查询优化不够完善等原因,最终放弃使用Phoenix。在探索该系统的过程中,为了让HBase具有多维数据存取能力,李老师团队为HBase实现一个非侵入式的索引层,提供了将传统索引存取技术进行分布式扩展的一种不错的参考模式。该工作优化了K近邻查询和多维范围查询,性能测试符合预期。4.2.  HiveHive是基于Hadoop的数据仓库系统,相较于Phoenix,具有成熟、稳定,社区活跃;基于Hadoop/MR,可扩展性好;支持SQL,提供Python脚本、UDF等功能扩展方式;查询优化器较为完整,便于优化和扩展等优点。但是比较适合批处理,复杂任务的交互式响应程度较差。于是李老师的团队针对这个问题进行优化,总体工作如下图,具体包括工程层面参数优化和基于代价的查询优化器。
4.3.  SciDB       SciDB最初面向LSST应用,运行在分布式集群上,具有良好的可扩展性;采用数组数据模型,提高效率;支持多维度分块、块重叠、不确定行、多版本、数据压缩等功能,是面向科学数据分析系统的先驱。根据常见科学数据分析任务的需求,将SciDB与Hive进行实验对比,发现SciDB具有占有空间少,线性扩展,便于科学分析等的明显优势,因此最终确定SciDB为适合FAST数据管理和处理的系统。       即使SciDB比其他系统适合FAST的需求,但是依然需要提升,于是李老师团队对SciDB进行优化,衍生出一个新的分支——FastDB。5.       FastDB       FastDB框架图如下所示,它从以下四个方面对SciDB进行优化:
(1)     AFL/AQL语言的易用性需提升基于可视化分析任务构建系统来定义和编制分析任务,用户无需学习复杂查询语言的复杂语法和语义规则,有助于用户快速编制数据分析任务,获取分析结果。(2)     数据加载优化chunk大小的影响将贯穿系统执行的各个过程,合理选择chunk大小是提升系统性能的一个关键,通过实验确定chunk的大小,从而优化数据加载。(3)     索引技术研究多维、追加高效的索引技术,设计出DAER-Tree和ABR-Tree。另外对通用索引存储框架进行改造。(4)     查询优化器和Join优化技术探索基于代价模型,优化聚集操作和连接操作组合的执行顺序,尤其针对于现有集群的分布式、CPU密集和大量并行的特征进行考虑。除此之外,对于外部查询优化器ORCA深入研究。6.       总结根据实践经验和长期的知识积累,李老师最后针对于天文大数据管理现状得出以下总结:(1)     面向天文应用的科学数据库技术仍然不够成熟(2)     天文大数据研究对数据管理与分析技术提出了很多挑战(3)     阵列数据库仍然有很多需继续优化之处(4)     很多传统数据库技术值得阵列数据库借鉴,尤其是索引、查询的优化和并行执行
长按二维码关注


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存