HashData助力中科院打造地球大数据

2023-12-23 08:50

本文主要是介绍HashData助力中科院打造地球大数据,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

请添加图片描述
背景

中国科学院“地球大数据科学工程”A类战略性先导科技专项(简称“地球大数据专项”)于2018年1月1日正式立项。该工程以建成具有全球影响力、国际化、开放式的国际地球大数据科学中心为目标,致力于推动并实现地球大数据技术创新、重大科学发现和一站式全方位宏观决策系统。

地球大数据专项一个典型的应用例子是:定量统计分析黄河三角洲过去40年的变化,包括湿地海岸线、河岸生态系统以及土地利用类型等。传统的做法是派遣科研人员到实地考察,这是几乎不能完成的任务。我们希望通过该工程,基于对地检测卫星过去40年拍摄到的黄河三角洲的遥感图片,利用深度学习和海量地理数据处理技术,精确地量化具体变化指标。

产品形态上,地球大数据专项的目标是打造中国版的“谷歌地球”,设置了包括地球大数据卫星、数据一路一带、全景美丽中国和大数据云服务平台等在内的共9个子项目。其中,大数据云服务平台是整个专项的技术基座,通过将资源、环境、生物、人文、生态等领域的数据汇聚起来,构建一个数据存储、分析处理和共享平台,并在此基础上提供数字地球科学服务。

面临挑战

作为一个雄心勃勃的项目技术基座,地球大数据云服务平台自然面临着一系列技术挑战:
数据规模庞大,结构众多:
• 支持38PB基础存储量,每年新增5PB数据;
• 对地观测、地面观测、基础地理等多种业务模式;
• 涵盖结构化、半结构化、非结构化格式;
应用场景广泛:
• 支持33个院系、129个单位使用;
• 涵盖资源、环境、生物、生态多个领域,不同学科的融合;
科学计算特性:
• 满足高性能计算需求及数据格式多样化;
数据存储和访问:
• 支持100+PB的数据规模及灵活访问方式;
共享与隔离:
• 方便数据共享及计算性能的隔离;

解决方案

作为地球大数据专项的外协单位,我们与中科院网络中心、中科院计算所一起参与规划建设了大数据云服务平台,利用HashData数据仓库为整个工程提供海量数据的存储和处理分析能力。大数据云平台整体架构图如下:
请添加图片描述通过集成到地球大数据云平台的HashData数据仓库服务,科研院所单位用户可以在几分钟内创建启动一个数据仓库,规模从几个到上百个节点,数据加载后立即开始数据分析任务。随着数据量和分析工作负载的变化,还可以动态地对数据仓库集群进行弹性伸缩。同时,由于是完全托管的云服务,HashData管理控制台承担了所有的集群资源配置、数据备份、持续监控、网络迁移、故障恢复、高可用和升级等纷繁复杂、易出错的运维工作,让用户(特别是考虑到地球大数据云平台的主要用户是科研人员,而不是IT人员)专注于科研数据分析上。

其次,对象存储作为整个地球大数据云平台的数据持久层,能够以非常低的成本存储提供海量存储能力,包括结构化、半结构化和非结构化数据,有很高的可用性和持久性,满足专项日益增长的数据量。结合HashData湖仓一体的能力,用户可以通过统一的SQL接口对各种数据进行高性能的融合分析处理。

再次,借助HashData数据仓库元数据、计算和存储三者分离、多集群统一数据存储的架构(参考文章《HashData多集群共享统一存储架构》),每个科研院系单位都可以创建自己的计算集群,确保计算性能隔离的同时,又能够实现数据在不同院系之间的充分共享,加速科研进度。

最后,通过基于HashData的MPP计算引擎实现分布式PostGIS功能,进行矢量和栅格数据处理,架构示意如下:
请添加图片描述
整体实现了分布式GIS空间数据处理, 支持矢量、栅格数据分布式加载入库,并在库内针对空间数据建立索引, 栅格数据入库可自动切割瓦片,根据瓦片边界建立索引。在内部实现的GIS空间数据高效分布式计算,支持空间范围查询、矢量数据叠加分析。

总结

HashData数据仓库云服务已于2020年12月30号在地球大数据云平台上线,可为130余家科研院所提供大数据分析服务。除了为大数据云平台包括地球共享服务系统、CASEarth Databank系统和数据丝路地球大数据系统等其它系统提供支撑外,同时还为科学院内部院系提供通用的数据仓库服务,用于多种应用场景,包括寒旱所的地表观测数据处理,遥感所的植被分布统计,和地质所的地质勘探数据分析。在地理信息数据处理性能方面,相对于之前的解决方案,HashData数据仓库也有很大的提升,例如数据加载提速近100倍,栅格数据叠加分析提速近70倍。

随着地球大数据云平台的逐步成熟稳定,HashData数据仓库将支撑越来越多的数据存储、分析和共享任务,为中科院数字地球科学研究做出更多贡献。

这篇关于HashData助力中科院打造地球大数据的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/527439

相关文章

Linux下利用select实现串口数据读取过程

《Linux下利用select实现串口数据读取过程》文章介绍Linux中使用select、poll或epoll实现串口数据读取,通过I/O多路复用机制在数据到达时触发读取,避免持续轮询,示例代码展示设... 目录示例代码(使用select实现)代码解释总结在 linux 系统里,我们可以借助 select、

C#使用iText获取PDF的trailer数据的代码示例

《C#使用iText获取PDF的trailer数据的代码示例》开发程序debug的时候,看到了PDF有个trailer数据,挺有意思,于是考虑用代码把它读出来,那么就用到我们常用的iText框架了,所... 目录引言iText 核心概念C# 代码示例步骤 1: 确保已安装 iText步骤 2: C# 代码程

Pandas处理缺失数据的方式汇总

《Pandas处理缺失数据的方式汇总》许多教程中的数据与现实世界中的数据有很大不同,现实世界中的数据很少是干净且同质的,本文我们将讨论处理缺失数据的一些常规注意事项,了解Pandas如何表示缺失数据,... 目录缺失数据约定的权衡Pandas 中的缺失数据None 作为哨兵值NaN:缺失的数值数据Panda

C++中处理文本数据char与string的终极对比指南

《C++中处理文本数据char与string的终极对比指南》在C++编程中char和string是两种用于处理字符数据的类型,但它们在使用方式和功能上有显著的不同,:本文主要介绍C++中处理文本数... 目录1. 基本定义与本质2. 内存管理3. 操作与功能4. 性能特点5. 使用场景6. 相互转换核心区别

python库pydantic数据验证和设置管理库的用途

《python库pydantic数据验证和设置管理库的用途》pydantic是一个用于数据验证和设置管理的Python库,它主要利用Python类型注解来定义数据模型的结构和验证规则,本文给大家介绍p... 目录主要特点和用途:Field数值验证参数总结pydantic 是一个让你能够 confidentl

JAVA实现亿级千万级数据顺序导出的示例代码

《JAVA实现亿级千万级数据顺序导出的示例代码》本文主要介绍了JAVA实现亿级千万级数据顺序导出的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 前提:主要考虑控制内存占用空间,避免出现同时导出,导致主程序OOM问题。实现思路:A.启用线程池

SpringBoot分段处理List集合多线程批量插入数据方式

《SpringBoot分段处理List集合多线程批量插入数据方式》文章介绍如何处理大数据量List批量插入数据库的优化方案:通过拆分List并分配独立线程处理,结合Spring线程池与异步方法提升效率... 目录项目场景解决方案1.实体类2.Mapper3.spring容器注入线程池bejsan对象4.创建

PHP轻松处理千万行数据的方法详解

《PHP轻松处理千万行数据的方法详解》说到处理大数据集,PHP通常不是第一个想到的语言,但如果你曾经需要处理数百万行数据而不让服务器崩溃或内存耗尽,你就会知道PHP用对了工具有多强大,下面小编就... 目录问题的本质php 中的数据流处理:为什么必不可少生成器:内存高效的迭代方式流量控制:避免系统过载一次性

C#实现千万数据秒级导入的代码

《C#实现千万数据秒级导入的代码》在实际开发中excel导入很常见,现代社会中很容易遇到大数据处理业务,所以本文我就给大家分享一下千万数据秒级导入怎么实现,文中有详细的代码示例供大家参考,需要的朋友可... 目录前言一、数据存储二、处理逻辑优化前代码处理逻辑优化后的代码总结前言在实际开发中excel导入很

MyBatis-plus处理存储json数据过程

《MyBatis-plus处理存储json数据过程》文章介绍MyBatis-Plus3.4.21处理对象与集合的差异:对象可用内置Handler配合autoResultMap,集合需自定义处理器继承F... 目录1、如果是对象2、如果需要转换的是List集合总结对象和集合分两种情况处理,目前我用的MP的版本