[发明专利]一种分布式数据存储系统,及其实现方法在审
申请号: | 202111490560.6 | 申请日: | 2021-12-08 |
公开(公告)号: | CN114138910A | 公开(公告)日: | 2022-03-04 |
发明(设计)人: | 陆佳明 | 申请(专利权)人: | 简单类型软件技术(上海)有限公司 |
主分类号: | G06F16/27 | 分类号: | G06F16/27;G06F16/2455;G06F16/22;G06F11/30 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 200335 上海市*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 分布式 数据 存储系统 及其 实现 方法 | ||
本发明涉及数据存储领域,其实现了一种新型的存储系统,其可以存储任意复杂数据,包括嵌套数据结构,并为存储系统实现了一种自动分片和自动索引的机制。本发明所提出的存储系统,相比于SQL更灵活,相比于NoSQL更类型安全,为分布式程序语言的设计与实现提供了存储模型。
技术领域
本发明涉及数据存储领域。
背景技术
在数据存储领域,现有的数据存储方式包括以下几种。
其一,直接存入文件。此种方式太过底层,需要开发者注意大量文件访问、数据格式、存储位置的细节,仅适用于简单且无性能要求的数据,如配置文件等。
其二,使用SQL数据库。此种方式适合大量特定结构的结构化数据,同时提供了高效的查询方法,但需要提前建表,以及在表结构变更时手动迁移。
其三,使用键值数据库。此种分式需要开发者自行解析数据格式,对数据格式变更不作限制,但仅能通过键查询。
其四,使用新型SQL数据库,如TiDB。其在传统SQL数据库的基础上增加了分布式能力,可以轻松应对大数据量的需求,但此类数据库依然未能支持不特定格式的数据,同时无法应对时间序列数据。
其五,使用时间序列数据库。此类数据库专门为时间序列数据优化,无法用作其他用途。
所有现有的存储系统均不能支持对大量、任意不特定结构、嵌套复杂结构的数据提供存储及高效查询的能力,以满足一个程序语言对其底层存储模型的要求。
发明内容
本发明实现了一种分布式数据存储系统,该系统具有以下特征。
本发明的特征之一:可以以树状存储任意类型数据,具体来说,其可以存储基本数据类型、结构数据类型、数据表类型,并支持任意类型间的互相嵌套。
定义结构数据类型:指通过名称访问其成员的数据类型,可以包含多个任意类型数据(包括数据表类型)。
定义数据表类型:指包含不特定数量的固定数据类型的数据容器,其每个元素都可以包含数据表类型。
定义基础数据类型:指平凡的字符串、二进制、整数等不需要被存储系统处理的数据类型。
本发明所述结构数据类型,其包含一定数量的不特定类型成员;每个成员都可以通过其名称访问。
本发明所述数据表类型,其包含任意数量的特定类型成员;其成员可以通过ID访问,也可以通过遍历获得;其最关键的特征在于可以为其建立索引,以提供高效的查询能力。
在该存储系统中,其数据表可在分布式部署的情况下支持大量写入请求,并在任何访问模式下避免其中某一台机器成为写入热点。
在该存储系统中,结构数据类型的每个字段都可以添加元数据,用于描述诸如权限、翻译等内容。
在该存储系统中,该系统的自动分片机制,其具有以下特征: 通过监控某存储容器的写入频率,当写入频率超过某阈值时,自动增加分片数量; 写入时,使写入压力匀均分散在各个分片中; 读取时,同时读取多个分片并将结果聚合后返回用户。
在该自动分片机制中,当写入压力低于某阈值时,可以减少分片,此时,读取操作是否访问被删除分片分两种情况: 其一,依然访问被删除分片,直到有后台任务合并分片数据; 其二,如果所存数据的在时间上有序,则可以按时间划分,当访问的时间范围不包含由被删除分片的时间段,则不访问被删除分片。
该系统的实现方法,在一个实施例中该方法包含以下特征: 该方法底层使用现有的分布式有序键值存储系统,例如TiKV; 该方法使用自动分片机制以避免单一机器成为写入热点。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于简单类型软件技术(上海)有限公司,未经简单类型软件技术(上海)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111490560.6/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置