CN117827968A - 一种元数据存储分离的云分布式数据仓库数据共享方法 - Google Patents
一种元数据存储分离的云分布式数据仓库数据共享方法 Download PDFInfo
- Publication number
- CN117827968A CN117827968A CN202311708957.7A CN202311708957A CN117827968A CN 117827968 A CN117827968 A CN 117827968A CN 202311708957 A CN202311708957 A CN 202311708957A CN 117827968 A CN117827968 A CN 117827968A
- Authority
- CN
- China
- Prior art keywords
- data
- metadata
- cluster
- computing cluster
- storage
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000003860 storage Methods 0.000 title claims abstract description 70
- 238000000034 method Methods 0.000 title claims abstract description 37
- 238000000926 separation method Methods 0.000 title claims description 7
- 238000004364 calculation method Methods 0.000 claims abstract description 6
- 239000012634 fragment Substances 0.000 claims description 17
- 238000012545 processing Methods 0.000 claims description 15
- 230000008569 process Effects 0.000 claims description 9
- 238000004422 calculation algorithm Methods 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 3
- 230000000977 initiatory effect Effects 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 7
- 238000013461 design Methods 0.000 description 5
- 230000008602 contraction Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000010076 replication Effects 0.000 description 3
- 239000002699 waste material Substances 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000002688 persistence Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24552—Database cache management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- Computational Linguistics (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明属于数据库技术领域,具体涉及一种元数据存储分离的云分布式数据仓库数据共享方法,包括客户端向计算集群发起SQL请求;计算集群获取SQL请求并向元数据集群发出调度服务请求,用于获取可用元数据存储服务,并在获取后返回计算集群,使计算集群与元数据集群建立连接操作元数据;计算集群对数据进行读写,并通知元数据集群,最后提交事务;其中,所述数据少量数据缓存在计算集群中主机本地磁盘上,全量数据保存在共享对象存储中。该方法能够部署方式的轻量和弹性化,降低单位算力成本。
Description
技术领域
本发明属于数据库技术领域,具体涉及一种元数据存储分离的云分布式数据仓库数据共享方法。
背景技术
数据仓库是一个用于存储和管理企业数据的中央存储库。它通常包括来自各种不同业务***的数据,例如销售、生产、财务等,这些数据经过了清洗、转换和集成,以确保数据的一致性和准确性。通过将数据集中存储到数据仓库中,企业可以更好地了解其业务和客户,并做出更好的决策。
现有主流的数据仓库(如Greenplum)采用大规模并行处理(MPP)架构,采用sharednothing设计,这种分布式架构设计存在主机CPU利用率低、扩缩容速度慢和数据复制浪费存储空间等问题。主要原因有:计算设备与存储设备强绑定在同一台机器上,对单台主机的硬件要求较高;扩缩容时数据跨主机网络IO损耗大量时间和带宽,CPU出现闲置时间;为实现高可用需复制多份数据。在当下业务上云及降本增效的背景下,无法满足弹性伸缩,按量付费的需求。因此,需要一种更有效的数据共享方法,解决数据仓库集群数据存储和传输的瓶颈,实现部署方式的轻量和弹性化,降低单位算力成本。
发明内容
本发明的目的是提供一种元数据存储分离的云分布式数据仓库数据共享方法,通过这种方法,能够部署方式的轻量和弹性化,降低单位算力成本。
本发明采取的技术方案具体如下:
一种元数据存储分离的云分布式数据仓库数据共享方法,包括以下步骤:
S1、客户端向计算集群发起SQL请求;
S2、计算集群获取SQL请求并向元数据集群发出调度服务请求,用于获取可用元数据存储服务,并在获取后返回计算集群,使计算集群与元数据集群建立连接操作元数据;
S3、计算集群对数据进行读写,并通知元数据集群,最后提交事务;
其中,所述数据少量数据缓存在计算集群中主机本地磁盘上,全量数据保存在共享对象存储中。
在一种优选方案中,所述计算集群包括Master节点和Segment节点,所述客户端向计算集群发起SQL请求步骤包括:
客户端向计算集群Master节点发起SQL请求;
Master节点生成查询计划下发给Segment节点;
Master在生成查询计划过程中会查询元数据集群,如有更新则修改元数据并下发给Segment节点;
Segment节点查询对象存储获取用户数据。
在一种优选方案中,所述计算集群有若干个,所述计算集群对数据进行读写,并通知元数据集群,最后提交事务步骤包括:
计算集群1向Table1***数据将数据写进OSS,并通知元数据集群,最后提交事务;
计算集群2查询元数据后,将Table1的数据从OSS读出来,同时,数据缓存在本地;
计算集群2下次需要使用的时候,查询元数据后,如无更新,直接从本地缓存拿就可以,如有更新则调用OSS接口获取更新部分数据并更新缓存。
在一种优选方案中,所述元数据集群用于代替数据库内核中的元数据部分,且所述元数据集群包括调度层、无状态服务层和支持强一致性及事务的NoSQL MPP集群。
在一种优选方案中,所述计算集群沿用MPP架构Master-Segment模式,单个计算集群内有若干个节点,每个节点均有一个缓存进程,用于存储从对象存储读出的数据,向数据库实例内核屏蔽所有远程文件***,让数据库内核感觉所有文件都在本地文件***。
在一种优选方案中,所述对象存储中数据分片保存在不同文件,用于供计算集群各节点并行访问。
在一种优选方案中,所述数据分片数量在元数据集群创建时设定,所述数据分片具体数量按照计算集群最大规模设定。
一种基于元数据、计算与存储分离的云分布式数据仓库数据共享***,其特征在于:包括:
请求接收模块,所述请求接收模块用于接收来自客户端发起的SQL请求;
调度处理模块,所述调度处理模块用于多个计算集群向元数据集群发起调度服务请求;
数据读写模块,所述数据读写模块用于对数据进行读写。
一种基于元数据、计算与存储分离的云分布式数据仓库数据共享终端,其特征在于:包括:
至少一个处理器;
以及与所述至少一个处理器通信连接的存储器;
其中,所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述中任意一项所述的一种元数据存储分离的云分布式数据仓库数据共享方法。
本发明取得的技术效果为:
本发明在架构上将传统数据仓库中耦合的部分拆分,使得存储、计算和元数据三部分可以单独部署,弹性伸缩。降低了对主机硬件的要求,满足了云服务按量付费、用完即走的需求;
本发明在性能上运用了一致性Hash分片缓存技术,并且能共享存储,减少了传统数据仓库中扩缩容和查询时数据重分布和广播带来的网络IO消耗;同时多个计算集群可以共享同一个对象存储,减少了数据复制的浪费。
附图说明
图1是本发明的方法流程图;
图2是本发明的***模块图;
图3是本发明的总体架构图;
图4是本发明的元数据集群架构图;
图5是本发明的计算集群架构图;
图6是本发明的业务访问计算集群流程图;
图7是本发明的计算集群与元数据集群的交互图;
图8是本发明的计算集群各节点访问图;
图9是本发明的分布式事务以及多集群共享数据详解图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合说明书附图对本发明的具体实施方式做详细的说明。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用其他不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施例的限制。
其次,此处所称的“一个实施例”或“实施例”是指可包含于本发明至少一个实现方式中的特定特征、结构或特性。在本说明书中不同地方出现的“在一个较佳的实施方式中”并非均指同一个实施例,也不是单独的或选择性的与其他实施例互相排斥的实施例。
再其次,本发明结合示意图进行详细描述,在详述本发明实施例时,为便于说明,表示器件结构的剖面图会不依一般比例作局部放大,而且所述示意图只是示例,其在此不应限制本发明保护的范围。此外,在实际制作中应包含长度、宽度及深度的三维空间尺寸。
一种元数据存储分离的云分布式数据仓库数据共享方法,包括以下步骤:
S1、客户端向计算集群发起SQL请求;
S2、计算集群获取SQL请求并向元数据集群发出调度服务请求,用于获取可用元数据存储服务,并在获取后返回计算集群,使计算集群与元数据集群建立连接操作元数据;
S3、计算集群对数据进行读写,并通知元数据集群,最后提交事务;
其中,所述数据少量数据缓存在计算集群中主机本地磁盘上,全量数据保存在共享对象存储中。
如上述步骤S1-S3,随着云计算、大数据等技术的发展,企业对于数据仓库的需求越来越大。数据仓库是一种用于支持企业决策分析的数据库***,它可以存储大量的历史数据,提供高效的查询和分析功能。然而,传统的数据仓库在处理大规模数据时,面临着计算能力不足、存储成本高等问题。为了解决这些问题,云分布式数据仓库应运而生。云分布式数据仓库将数据存储在多个地理位置的服务器上,通过并行计算和分布式存储技术,实现了对大规模数据的高效处理。然而,云分布式数据仓库在数据共享方面仍存在一定的挑战。传统的数据共享方法通常采用集中式的数据共享模式,即所有用户都直接访问同一个数据源。这种模式下,数据源的负载较大,容易出现性能瓶颈。主流的数据仓库(如Greenplum)采用大规模并行处理(MPP)架构,采用shared nothing设计,这种分布式架构设计存在主机CPU利用率低、扩缩容速度慢和数据复制浪费存储空间等问题,其存在计算设备与存储设备强绑定在同一台机器上,对单台主机的硬件要求较高、扩缩容时数据跨主机网络IO损耗大量时间和带宽、CPU出现闲置时间、为实现高可用需复制多份数据等问题。
基于此,本方法提供一种元数据存储分离的云分布式数据仓库数据共享方法,通过客户端向计算集群发起SQL请求;在这个阶段,客户端会向计算集群发送一个SQL请求。这个请求包含了客户端想要执行的数据库操作,比如查询、***、更新或删除数据等。计算集群获取SQL请求并向元数据集群发出调度服务请求,用于获取可用元数据存储服务,并在获取后返回计算集群,使计算集群与元数据集群建立连接操作元数据;一旦计算集群接收到客户端的SQL请求,它会向元数据集群发送一个调度服务请求。这个请求的目的是获取可用的元数据存储服务,以便计算集群能够访问和操作相关的元数据。一旦元数据集群返回可用的元数据存储服务信息,计算集群会将这些信息返回给客户端,并建立与元数据集群的连接,以便进行后续的操作。计算集群对数据进行读写,并通知元数据集群,最后提交事务;在与元数据集群建立连接之后,计算集群会根据SQL请求中指定的操作对数据进行读写。这可能涉及到从对象存储中读取数据、对数据进行修改或更新,并将结果写回对象存储。在整个过程中,计算集群会及时通知元数据集群有关数据的读写操作,以确保元数据的一致性和准确性。最后,当所有的读写操作完成后,计算集群会提交事务,将更改永久保存到数据库中。其中,所述数据少量数据缓存在计算集群中主机本地磁盘上,全量数据保存在共享对象存储中。为了提高数据的访问速度和性能,计算集群可能会将经常使用的数据少量数据缓存在计算集群中主机本地磁盘上,全量数据保存在共享对象存储中。对象存储是一种分布式存储***,可以提供高可靠性、高可扩展性和低延迟的数据访问。通过将数据少量数据缓存在计算集群中主机本地磁盘上,全量数据保存在共享对象存储中,计算集群可以在需要时快速地读取和写入数据,而不需要每次都从原始的数据源中获取。这种缓存机制可以提高***的响应速度和吞吐量,提升用户体验。
数据统一存放在对象存储上,可使用主流云厂商的对象存储服务或自行搭建开源对象存储服务,获得近乎无限的容量扩展和高可用性。计算集群查询和写入时会采用一致性Hash算法将对象存储中的常用用户数据分片存储在各个Segment中,以提高访问速度。
在一个较佳的实施方式中,所述客户端向计算集群发起SQL请求步骤包括:
客户端向计算集群Master节点发起SQL请求;
Master节点生成查询计划下发给Segment节点;
Master在生成查询计划过程中会查询元数据集群,如有更新则修改元数据并下发给Segment节点;
Segment节点查询对象存储获取用户数据。
在该实施方式中,首先,客户端会向计算集群的Master节点发送SQL请求。这个请求包含了用户想要执行的SQL查询语句。一旦Master节点接收到SQL请求,它会生成一个查询计划。这个查询计划是为了指导整个查询过程,包括确定需要访问哪些数据、如何连接不同的表以及执行哪些操作等。Master节点在生成查询计划的过程中,会查询元数据集群以获取相关的元数据信息。元数据是描述数据结构和属性的数据,它可以帮助Master节点理解数据的组织结构和关系。如果Master节点在查询元数据集群时发现有更新的元数据信息,它会及时修改本地的元数据缓存,并将最新的元数据信息下发给Segment节点。这样,Segment节点就可以使用最新的元数据信息来执行查询操作。一旦Master节点生成了查询计划并下发了最新的元数据信息给Segment节点,Segment节点会根据查询计划开始执行查询操作。Segment节点会查询对象存储来获取用户数据。对象存储是一种分布式存储***,它可以存储大量的非结构化数据,如文本、图像、视频等。Segment节点会根据查询计划中指定的条件和过滤条件,从对象存储中检索出符合要求的用户数据。一旦Segment节点获取到用户数据,它会将结果返回给Master节点。Master节点接收到Segment节点返回的结果后,会进行结果的聚合和处理,然后将最终的查询结果返回给客户端。
其次,所述计算集群对数据进行读写,并通知元数据集群,最后提交事务步骤包括:
计算集群1向Table1***数据将数据写进OSS,并通知元数据集群,最后提交事务;
计算集群2查询元数据后,将Table1的数据从OSS读出来,同时,数据缓存在本地;
计算集群2下次需要使用的时候,查询元数据后,如无更新,直接从本地缓存拿就可以,如有更新则调用OSS接口获取更新部分数据并更新缓存。
上述中,计算集群1向Table1***数据并将数据写入OSS(对象存储服务),同时通知元数据集群。在完成数据写入后,计算集群1会提交事务,确保数据的持久化和一致性。计算集群2查询元数据集群以获取Table1的最新数据信息。根据查询结果,计算集群2会从OSS中读取Table1的数据,并将其缓存在本地。这样,下次需要使用这些数据时,计算集群2可以直接从本地缓存中获取,而无需再次从OSS中读取。如果计算集群2下次需要使用Table1的数据时,查询元数据集群后发现数据没有更新,那么它可以直接从本地缓存中获取数据。这种方式可以提高数据的访问速度和效率。然而,如果计算集群2查询元数据集群后发现Table1的数据有更新,那么它会调用OSS接口来获取更新部分的数据。通过比较本地缓存中的数据和从OSS获取的更新数据,计算集群2可以确定哪些数据发生了变化,并进行相应的更新操作。这样可以确保计算集群2始终使用最新的数据进行计算和处理。
通过以上步骤,计算集群能够高效地读写数据,并通过通知元数据集群来实现数据的同步和一致性。同时,通过本地缓存的方式,计算集群可以在下次需要使用数据时直接从缓存中获取,提高数据的访问速度和效率。
再其次,所述元数据集群用于代替数据库内核中的元数据部分,且所述元数据集群包括调度层、无状态服务层和支持强一致性及事务的NoSQL MPP集群。
上述,元数据集群主要用于存储表到对象的映射、数据库数据字典、统计信息、表索引信息四类数据,其中表到对象的映射是指具体库表与对象存储中对象的对应关系,而元数据集群中的调度层负责元数据服务发现以及调度,无状态服务负责响应计算集群请求,对NoSQL集群中数据进行增删改查,同时,无状态服务层还需将NoSQL中Key-Value格式的数据转换为标准的数据库元数据,数据转换的设计中,采用了多级键和稀疏索引键值对以提升效率。
其次,所述计算集群沿用MPP架构Master-Segment模式,单个计算集群内有若干个节点,每个节点均有一个缓存进程,用于存储从对象存储读出的数据,向数据库实例内核屏蔽所有远程文件***,让数据库内核感觉所有文件都在本地文件***。
上述,单个计算集群内的若干个节点分为Master节点和Segment节点,其中Master节点只用于缓存元数据,Segment节点会缓存元数据和用户数据,且Segment节点缓存的数据会按照LRU算法进行置换,计算集群接收客户端请求时通过Master节点接受客户端的请求转交给Segment节点处理,Segment节点处理完成后汇总到Master节点返回给客户端,每个节点将原本访问元数据的部分用元数据代理层替换,而不同集群间资源完全隔离,可以采用不同配置、不同品牌、甚至不同架构的硬件搭建,不需要时可以释放整个集群资源。
在一个较佳的实施方式中,所述对象存储中数据分片保存在不同文件,用于供计算集群各节点并行访问,所述数据分片数量在元数据集群创建时设定,所述数据分片具体数量按照计算集群最大规模设定。
在该实施方式中,为提高访问性能,在对象存储上,数据分片保存在不同的文件,供计算集群各节点并行访问,分片数量在元数据集群创建时设定,一般按照计算集群最大规模设定数据分片数量(2的幂次方),将每张表的数据按照指定的分布键使用Hash算法(如MD5)均匀分布到不同数据分片存储。每个计算节点按照一致性哈希算法,对应一个或多个数据分片,计算节点均匀存储(缓存)并计算对应数据分片。
一种基于元数据、计算与存储分离的云分布式数据仓库数据共享***,包括:
请求接收模块,所述请求接收模块用于接收来自客户端发起的SQL请求;
调度处理模块,所述调度处理模块用于多个计算集群向元数据集群发起调度服务请求;
数据读写模块,所述数据读写模块用于对数据进行读写。
上述中,通过请求接收模块接收模块用于接收来自客户端发起的SQL请求,并将请求信息传输至调度模块,调度处理模块将多个计算集群向元数据集群发起调度服务请求,并根据客户端的请求,将相应的任务分配给合适的计算集群进行处理。数据读写模块是一个用于对数据进行读写的功能模块。它的主要作用是将客户端发起的SQL请求转化为对数据库的实际操作,包括数据的读取、修改和写入等操作。数据读写模块负责与数据库进行通信,执行SQL语句,并将结果返回给客户端。通过数据读写模块,可以实现对数据库中的数据进行灵活的查询和更新操作。
一种基于元数据、计算与存储分离的云分布式数据仓库数据共享终端,包括:
至少一个处理器;
以及与所述至少一个处理器通信连接的存储器;
其中,所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述中任意一项所述的一种元数据存储分离的云分布式数据仓库数据共享方法。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。本发明中未具体描述和解释说明的结构、装置以及操作方法,如无特别说明和限定,均按照本领域的常规手段进行实施。
Claims (10)
1.一种元数据存储分离的云分布式数据仓库数据共享方法,其特征在于:包括以下步骤:
S1、客户端向计算集群发起SQL请求;
S2、计算集群获取SQL请求并向元数据集群发出调度服务请求,用于获取可用元数据存储服务,并在获取后返回计算集群,使计算集群与元数据集群建立连接操作元数据;
S3、计算集群对数据进行读写,并通知元数据集群,最后提交事务;
其中,所述数据少量数据缓存在计算集群中主机本地磁盘上,全量数据保存在共享对象存储中。
2.根据权利要求1所述的一种元数据存储分离的云分布式数据仓库数据共享方法,其特征在于:所述计算集群包括Master节点和Segment节点,所述客户端向计算集群发起SQL请求步骤包括:
客户端向计算集群Master节点发起SQL请求;
Master节点生成查询计划下发给Segment节点;
Master在生成查询计划过程中会查询元数据集群,如有更新则修改元数据并下发给Segment节点;
Segment节点查询对象存储获取用户数据。
3.根据权利要求1所述的一种元数据存储分离的云分布式数据仓库数据共享方法,其特征在于:所述计算集群有若干个,所述计算集群对数据进行读写,并通知元数据集群,最后提交事务步骤包括:
计算集群1向Table1***数据将数据写进OSS,并通知元数据集群,最后提交事务;
计算集群2查询元数据后,将Table1的数据从OSS读出来,同时,数据缓存在本地;
计算集群2下次需要使用的时候,查询元数据后,如无更新,直接从本地缓存拿就可以,如有更新则调用OSS接口获取更新部分数据并更新缓存。
4.根据权利要求1所述的一种元数据存储分离的云分布式数据仓库数据共享方法,其特征在于:所述元数据集群用于代替数据库内核中的元数据部分,且所述元数据集群包括调度层、无状态服务层和支持强一致性及事务的NoSQL MPP集群。
5.根据权利要求1所述的一种元数据存储分离的云分布式数据仓库数据共享方法,其特征在于:所述计算集群沿用MPP架构Master-Segment模式,单个计算集群内有若干个节点,每个节点均有一个缓存进程,用于存储从对象存储读出的数据,向数据库实例内核屏蔽所有远程文件***,让数据库内核感觉所有文件都在本地文件***。
6.根据权利要求1所述的一种元数据存储分离的云分布式数据仓库数据共享方法,其特征在于:所述对象存储中数据分片保存在不同文件,用于供计算集群各节点并行访问。
7.根据权利要求6所述的一种元数据存储分离的云分布式数据仓库数据共享方法,其特征在于:所述数据分片数量在元数据集群创建时设定,所述数据分片具体数量按照计算集群最大规模设定。
8.根据权利要求6所述的一种元数据存储分离的云分布式数据仓库数据共享方法,其特征在于:在所述对象存储上存放数据,可使用主流云厂商的对象存储服务或自行搭建开源对象存储服务,获得近乎无限的容量扩展和高可用性,所述计算集群查询和写入时会采用一致性Hash算法将对象存储中的常用用户数据分片存储在各个Segment中。
9.一种基于元数据、计算与存储分离的云分布式数据仓库数据共享***,其特征在于:包括:
请求接收模块,所述请求接收模块用于接收来自客户端发起的SQL请求;
调度处理模块,所述调度处理模块用于多个计算集群向元数据集群发起调度服务请求;
数据读写模块,所述数据读写模块用于对数据进行读写。
10.一种基于元数据、计算与存储分离的云分布式数据仓库数据共享终端,其特征在于:包括:
至少一个处理器;
以及与所述至少一个处理器通信连接的存储器;
其中,所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1至7中任意一项所述的一种元数据存储分离的云分布式数据仓库数据共享方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311708957.7A CN117827968A (zh) | 2023-12-13 | 2023-12-13 | 一种元数据存储分离的云分布式数据仓库数据共享方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311708957.7A CN117827968A (zh) | 2023-12-13 | 2023-12-13 | 一种元数据存储分离的云分布式数据仓库数据共享方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117827968A true CN117827968A (zh) | 2024-04-05 |
Family
ID=90512545
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311708957.7A Pending CN117827968A (zh) | 2023-12-13 | 2023-12-13 | 一种元数据存储分离的云分布式数据仓库数据共享方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117827968A (zh) |
-
2023
- 2023-12-13 CN CN202311708957.7A patent/CN117827968A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10642840B1 (en) | Filtered hash table generation for performing hash joins | |
CN107169083B (zh) | 公安卡口海量车辆数据存储与检索方法及装置、电子设备 | |
US9146934B2 (en) | Reduced disk space standby | |
US20200050694A1 (en) | Burst Performance of Database Queries According to Query Size | |
CN107180113B (zh) | 一种大数据检索平台 | |
US20130191523A1 (en) | Real-time analytics for large data sets | |
US10089317B2 (en) | System and method for supporting elastic data metadata compression in a distributed data grid | |
CN111708719B (zh) | 计算机存储加速方法、电子设备及存储介质 | |
US11080207B2 (en) | Caching framework for big-data engines in the cloud | |
CN116108057B (zh) | 一种分布式数据库访问方法、装置、设备及存储介质 | |
US20230195726A1 (en) | Selecting between hydration-based scanning and stateless scale-out scanning to improve query performance | |
US20180060341A1 (en) | Querying Data Records Stored On A Distributed File System | |
Dai et al. | The state of the art of metadata managements in large-scale distributed file systems—scalability, performance and availability | |
CN114265814A (zh) | 一种基于对象存储的数据湖文件*** | |
Brezany et al. | An elastic OLAP cloud platform | |
Zhou et al. | Sfmapreduce: An optimized mapreduce framework for small files | |
CN113672583B (zh) | 基于存储与计算分离的大数据多数据源分析方法及*** | |
Choi et al. | A write-friendly approach to manage namespace of Hadoop distributed file system by utilizing nonvolatile memory | |
US20210397581A1 (en) | Sparse file system implemented with multiple cloud services | |
CN117827968A (zh) | 一种元数据存储分离的云分布式数据仓库数据共享方法 | |
d'Orazio et al. | Building adaptable cache services | |
Zhang et al. | Big data storage technology suitable for the operation and maintenance of new generation power grid dispatching control system operation | |
Fong et al. | Toward a scale-out data-management middleware for low-latency enterprise computing | |
Noah et al. | Distributed multi-level query cache: the impact on data warehousing | |
JP7458610B2 (ja) | データベースシステム、及びクエリ実行方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |