CN104737136A - 分布式存储设备、存储节点、数据提供方法和程序 - Google Patents

分布式存储设备、存储节点、数据提供方法和程序 Download PDF

Info

Publication number
CN104737136A
CN104737136A CN201380051160.2A CN201380051160A CN104737136A CN 104737136 A CN104737136 A CN 104737136A CN 201380051160 A CN201380051160 A CN 201380051160A CN 104737136 A CN104737136 A CN 104737136A
Authority
CN
China
Prior art keywords
data
time frame
memory node
data element
index
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.)
Granted
Application number
CN201380051160.2A
Other languages
English (en)
Other versions
CN104737136B (zh
Inventor
小林大
山川聪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Publication of CN104737136A publication Critical patent/CN104737136A/zh
Application granted granted Critical
Publication of CN104737136B publication Critical patent/CN104737136B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24568Data stream processing; Continuous queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24575Query processing with adaptation to user needs using context
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/248Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明的目的在于允许数据元素获取时分配和存储从设备传递的流数据的多个存储节点的每一个生成数据的时间足够近。分布式存储装置中包括的多个存储节点具有:数据存储单元,积累从设备输出的流数据;第一时间帧生成单元,生成与其他存储节点之间同步的时间帧,并且将数据存储节点中积累的流数据中包括的数据元素与时间帧之一相关联;数据选择单元,基于来自客户端的访问请求,从数据存储单元中已经积累的流数据之中选择与预定时间帧相关联的数据元素;以及数据传输单元,将数据选择单元选择的数据元素发送到客户端。

Description

分布式存储设备、存储节点、数据提供方法和程序
技术领域
[相关申请的说明]
本申请基于(2012年9月28日提交的)日本专利申请No.2012-217852,其全部内容通过引用合并于此。
本发明涉及分布式存储设备、存储节点、数据提供方法和程序,并且具体地,涉及分配和积累流数据并且将积累的流数据提供给信息物理系统(CPS)中的分析处理的分布式存储设备、存储节点、数据提供方法和程序。
背景技术
通过对按小时实时获得的大量数据(流数据)执行分解或分析获得对商业有用的知识的数据处理系统被称为信息物理系统(CPS)或类似,并且其需求已经增加。
作为这样的数据处理系统的结构,考虑首先在存储设备(数据存储器)中存储流数据并且通过单独的计算机分析所存储的数据的结构。通过积累数据,可以更快地释放传感器设备侧的缓存存储器。另外,通过积累数据,执行分析的多个计算机也可以使用该数据。
存储设备从车辆、移动终端、气象设备等的传感器或设备获得并且积累流数据,诸如车辆的运行状况和位置、移动终端的用户的位置和天气数据。同时,存储设备向执行分析的计算机提供积累的流数据。执行分析的计算机根据预定分解情况来对存储设备中积累的流数据执行分析处理,以生成分解结果。作为由执行分析的计算机进行的处理的示例,存在复杂事件处理(CEP)、MapReduce处理等。
例如,在业务信息的监视系统中,在存储设备中积累流数据,诸如由安装在每个车辆上的传感器检测的每个车辆的速度。同时,基于最近位置和存储设备中积累的每个车辆的速度由执行分析的计算机计算车辆的未来位置。然后,可以通过检查每个车辆的未来位置来检测是否发生交通堵塞、事故等。
考虑在增加应该积累的数据量的情况下系统的可扩展性,存储设备被认为是基于分布式数据存储结构实现的。图7是示出基于例如分布式数据存储结构的分布式存储设备140的结构的示图。参考图7,分布式存储设备140包括经由存储间网络130彼此连接的多个存储节点110a至110n。存储节点110a至110n中的每一个包括能够连接到存储间网络130的计算器和存储介质。此外,可以通过利用多个存储节点110a至110n的分布式处理来实现数据存储的控制功能。
作为现有技术,在NPL 1中描述了在存储器中生成休息点图像的快照。此外,在NPL 2中描述了在对数据库中的特定客户端的初始访问(开始)之前传输一致的静止图像的技术。
[引文列表]
[非专利文献]
[NPL 1]K.M.Chandy and L.Lamport,"Distributed Snapshots:Determining Global States of Distributed Systems,"ACM Transactions onComputer Systems,Vol.3,No.1,1985年2月.pp.63-75.20
[NPL 2]A.Fekete,et al.,"Making Snapshot Isolation Serializable,"ACM Transactions on Database Systems,Vol.30,No.2,2005年6月,pp.492-528.
发明内容
技术问题
上述非专利文献的全部公开通过引用合并于此。已经由本发明的发明人做出下述分解。
当试图从分配和积累多个传感器获得的传感器数据的多个存储节点(图7)获得最新同步数据时,引起下列问题。
通常,存储流数据,包括唯一主密钥(primary key)和1或2或更多元数据(metadatal、metadata2、…)。例如,除了主密钥之外,包括两个元数据值(namel和name2)的流数据具有下列结构。
{key:hogehoge,namel:valuel,name2:value2}
图8是示出根据现有技术的分布式存储设备中基于主密钥访问流数据时的问题的示图。
参考图8,存储节点110a积累从传感器发送的流数据A。在此,流数据A包括数据元素A1、A2、…。类似地,存储节点110b、110c和110d分别积累从传感器发送的流数据B(数据元素B1、B2、…)、流数据C(数据元素C1、C2、…)和流数据D(数据元素D1、D2、…)。
在此,考虑下述访问:其中,基于主密钥获得在存储节点110a至110d中分配和积累的所有传感器的最新数据元素。在此,假设在时间tl开始访问。此时,对于读出数据元素D8的客户端,期望提供与数据元素D8一致的数据元素C8、数据元素B8和数据元素A8(即,当考虑到以后处理中使用的准确度时,生成数据的时间足够接近)。然而,如图8中的虚线箭头所示,当用户读出所有数据元素需要时间时,可能读出不一致的数据元素D8、数据元素C10、数据元素B11和数据元素A12。
具体地,在图8示出的情况下,对于在访问开始时间tl之后立即试图获得数据元素D8、数据元素C8、数据元素B8和数据元素A8的情况,当要求虚线箭头指示的访问时间时,存在的问题是,不能获得期望的数据元素,而是从分布式存储设备获得数据元素D8、数据元素C10、数据元素B11和数据元素A12。
为了解决这种问题,考虑在多个存储节点之间在每个存储节点积累的每个时间数据同步。然而,当增加存储节点的数量时,由于存储节点之间的通信负载大,导致同步处理成为瓶颈,因此,可能降低分布式存储设备的性能。
在图8示出的示例中,基于访问请求“主密钥=xxx”选择流数据。另一方面,当选择流数据时,有时期望不是基于主密钥,而是基于数据内容,诸如“名称=aaa的元数据的值=bbb”,来选择数据。基于主密钥,通过例如分布式哈希表(DHT)等方法在多个存储节点分配和积累流数据。此时,当基于上述数据内容执行搜索(元数据搜索)时,需要执行所有数据的搜索。此外,除了识别数据内容之外,有时获得提供数据范围的多个数据。因此,为了实现高速数据检索,需要提供索引服务器。
图9是示出根据现有技术的在分布式存储设备中使用元数据访问时的问题的示图。参考图9,存储节点110a至110d分别积累从传感器发送的流数据A至D。流数据A至D分别包括数据元素A1、A2、…,数据元素B1、B2、…,数据元素C1、C2、…,数据元素D1、D2、…。此外,索引服务器120积累相对于在存储节点110a至110c积累的流数据A至C的索引。
由于索引服务器102生成索引需要花费时间,因此在图9所述的分布式存储设备中,存储节点110a至110c与索引服务器102之间的一致性成为问题。具体地,在图9所示的分布式存储设备中,当希望获得数据元素A8、B8和C8时,由于索引的更新延迟以及存储节点的访问延迟,导致可能读出数据元素A12、B13和C14,并且可能导致不能获得期望的数据元素。
注意到,由于高处理负载,很难应用上述NPL 1中描述的分布式快照解决上述问题。类似地,由于分布式控制的高处理负载,很难实现NPL 2中描述的进一步事务处理(快照隔离和串行化快照隔离)。
因此,需要可以从分配和积累从设备发送的流数据的多个存储节点的每一个快速获得生成数据的时间足够近的数据元素。本发明的目的在于提供一种符合这个要求的分布式存储设备、存储节点、数据提供方法和程序。
解决方案
根据本发明的第一方面的分布式存储设备,包括:
多个存储节点,所述多个存储节点包括:
数据存储单元,积累从设备输出的流数据;
第一时间帧生成单元,生成与另一存储节点同步的时间帧,并且将数据存储节点中积累的流数据中包括的数据元素与时间帧之一相关联;
数据选择单元,基于来自客户端的访问请求,从数据存储单元中积累的流数据选择与预定时间帧相关联的数据元素;以及
数据传输单元,将数据选择单元选择的数据元素发送到客户端。
根据本发明的第二方面的存储节点,所述存储节点是分布式存储设备中包括的多个存储节点之一,所述存储节点包括:
数据存储单元,积累从设备输出的流数据;
第一时间帧生成单元,生成与另一存储节点同步的时间帧,并且将数据存储节点中积累的流数据中包括的数据元素与时间帧之一相关联;
数据选择单元,基于来自客户端的访问请求,从数据存储单元中积累的流数据选择与预定时间帧相关联的数据元素;以及
数据传输单元,将数据选择单元选择的数据元素发送到客户端。
根据本发明的第三方面的数据提供方法,所述方法包括:
作为分布式存储设备中包括的多个存储节点之一的存储节点在数据存储单元中积累从设备输出的流数据的步骤;
生成与另一存储节点同步的时间帧以及将数据存储单元中积累的流数据中包括的数据元素与时间帧之一相关联的步骤;
基于来自客户端的访问请求从数据存储单元中积累的流数据选择与预定时间帧相关联的数据元素的步骤;以及
将选择的数据元素发送至客户端的步骤。
根据本发明的第四方面的程序,所述程序使分布式存储设备中包括的存储节点中设置的计算机执行:
在数据存储单元中积累从设备输出的流数据的处理;
生成与另一存储节点同步的时间帧以及将数据存储单元中积累的流数据中包括的数据元素与时间帧之一相关联的处理;
基于来自客户端的访问请求从数据存储单元中积累的流数据选择与预定时间帧相关联的数据元素的处理;以及
将选择的数据元素发送至客户端的处理。
注意到,本程序可以被实现为记录在非临时性计算机可读存储介质中的程序产品。
有益效果
根据基于本发明的分布式存储设备、存储节点、数据提供方法和程序,可以从分配和积累从设备发送的流数据的多个存储节点的每一个快速获得生成数据的时间足够近的数据元素。
附图说明
图1是示出根据第一示例性实施例的分布式存储设备的结构的框图作为示例;
图2是示出根据第一示例性实施例的分布式存储设备的每个存储节点生成时间帧的行为的示图作为示例;
图3是例示根据第一示例性实施例的分布式存储设备的每个存储节点中积累的流数据与时间帧之间的关系的示图;
图4是示出根据第二示例性实施例的分布式存储设备的结构的框图作为示例;
图5是示出根据第二示例性实施例的分布式存储设备的每个存储节点生成时间帧的行为的示图作为示例;
图6是例示根据第二示例性实施例的分布式存储设备的每个存储节点中积累的流数据与时间帧之间的关系的示图;
图7是示出分布式存储设备的结构的示图作为示例;
图8是示出根据现有技术的分布式存储设备中使用主密钥访问时的问题的示图;以及
图9是示出根据现有技术的在分布式存储设备中使用元数据访问时的问题的示图。
具体实施方式
首先,将描述示例性实施例的概要。注意到,概要中使用的附图标号仅是示例,以帮助理解本发明,而不是将本发明限制到示出的方面。
参考图1,分布式存储设备(40)包括多个存储节点(10a至l0n)。存储节点(10a至l0n)的每一个包括数据存储单元(14),积累从设备输出的流数据,时间帧生成单元(13),生成与另一存储节点同步的时间帧,将数据存储单元(14)中积累的流数据中包括的每个数据元素与时间帧中的一个(即,时间段或时隙)相关联;数据选择单元(12),基于来自客户端(50)的访问请求从数据存储单元(14)中积累的流数据选择与预定时间帧相关联的数据元素;以及数据传输单元(11),将数据选择单元(12)选择的数据元素发送到客户端(50)。
在此,不是直接接收从设备输出的流数据,而是在另一计算机接收流数据之后,分布式存储设备(40)可以接收从该计算机传输的流数据。
客户端(50)可以是与存储节点(10a至l0n)独立的计算机或者是其上运行的软件实例(处理、线程、光纤等)。此外,客户端(50)可以是构成存储节点(10a至l0n)和分布式存储设备(40)的另一设备上运行的软件实例。另外,一个或多个计算器上运行的多条软件可以虚拟地视为一个客户端(50)。
数据选择单元(12)选择与时间帧(fa1)相关联的数据元素(例如,图3中的A6),作为相对于来自客户端(50)的随后访问请求的数据元素,其中,时间帧(fa1)与已经选择的数据元素(A6)相关联。此外,存储节点(10b)的数据选择单元(未示出)选择与时间帧(图2中的fbl)相关联的数据元素(例如,图3中的B7),作为相对于来自客户端(50)的随后访问请求的数据元素,其中,时间帧(图2中的fbl)与时间帧(fa1)同步,时间帧(fa1)与另一存储节点(例如,10a)相对于来自客户端(50)的访问请求选择的数据元素(例如,A6)相关联。
根据分布式存储设备(40),可以从分配和积累从设备发送的流数据的多个存储节点(10a至l0n)获得同步的数据元素(例如,图3中的A6和B7)。
参考图1,分布式存储设备(40)可以包括节点间同步单元(30),生成更新时间帧的请求。时间帧生成单元(13),在接收(接受)节点间同步单元(30)生成的时间帧更新请求的每个定时生成时间帧。此时,尽管可能与实际时间存在一点差异,但是在存储节点(10a至l0n)之间生成逻辑同步的时间帧。例如,在图2中,获得逻辑同步的时间帧组(fal,fbl)、(fa2,fb2)和(fa3,fb3)。
参考图4,优选地,分布式存储设备(40)还包括索引服务器(20)。索引服务器(20)包括索引存储单元(23),相对于多个存储节点(10a至l0n)的每一个的数据存储单元(14)中积累的流数据积累索引;时间帧生成单元(25),生成与多个存储节点(10a至l0n)同步的时间帧,并且将索引存储单元(23)中积累的索引与时间帧之一相关联;索引检索单元(21),基于从多个存储节点(10a至l0n)中的任何一个传输的访问请求,从索引存储单元(23)中积累的索引选择与预定时间帧相关联的索引,并且将选择的索引发送到所述一个存储节点。
参考图6,索引服务器(20)的索引存储单元(23)在新数据到达存储节点(10a至l0n)之后更新。此时,数据到达存储节点的时间帧(例如,图6中的fal和fbl)与检索服务器中能够检索数据的时间帧(fi3)之间的时间帧差被设计为常量(图6中的2)。
例如,在图5中,可以获得逻辑同步的时间帧组(fal,fbl,fil)、(fa2,fb2,fi2)和(fa3,fb3,fi3)。此外,在图6中,索引服务器(20)中的时间帧(fi3)与存储节点(10a和10b)中移位两个时间帧的时间帧(fal和fbl)相应。
此外,多个存储节点(10a至l0n)的每一个还包括数据更新单元(16),向索引服务器(20)发送数据存储单元(14)中积累的流数据;以及数据检索单元(17),将来自客户端(50)的访问请求传输至索引检索单元(21)。
数据选择单元(12)相对于传输到索引检索单元(21)的来自客户端(50)的访问请求选择与自身存储节点(10a)上时间帧(图6中的fal)相关联的数据元素(例如,图6中的A6),作为相对于来自客户端(50)的随后访问请求的数据元素,其中,所述自身存储节点(10a)上时间帧(图6中的fal)与索引服务器(20)上的时间帧(图6中的fi3)相应,所述索引服务器(20)上的时间帧(图6中的fi3)与索引检索单元(21)选择的索引(例如,图6中相对于数据元素A1至A6和B1至B7的索引)相关联。此外,存储节点(10b)的数据选择单元(未示出)相对于另一存储节点(10a)传输到索引检索单元(21)的来自客户端(50)的访问请求选择与自身存储节点(10b)上时间帧(图6中的fbl)相关联的数据元素(例如,图6中的B7),作为相对于来自客户端(50)的随后访问请求的数据元素,其中,所述自身存储节点(10b)上时间帧(图6中的fbl)与索引服务器(20)上的时间帧(图6中的fi3)相应,所述索引服务器(20)上的时间帧(图6中的fi3)与索引检索单元(21)选择的索引(例如,图6中相对于数据元素A1至A6和B1至B7的索引)相关联。
根据分布式存储设备(40),可以从多个存储节点(10a至l0n)的每一个和索引服务器(20)获得一致的数据元素和索引(例如,图6中的数据元素A6和B7,以及数据元素A1至A6和B1至B7的索引),其中,所述多个存储节点(10a至l0n)的每一个分配和积累从设备发送的流数据,所述索引服务器(20)积累相对于存储节点(10a至l0n)中积累的流数据的索引。
(示例性实施例1)
将参考附图详细描述根据第一示例性实施例的分布式存储设备。图1是示出根据当前示例性实施例的分布式存储设备的结构的框图作为示例。参考图1,分布式存储设备40包括多个存储节点10a至l0n。此外,分布式存储设备40可以包括节点间同步单元30。存储节点10a至l0n的每一个包括数据传输单元11、数据选择单元12、时间帧生成单元13、数据存储单元14和时间帧存储单元15。注意:在图1中,仅示出存储节点10a的构成。因为存储节点10b至10n具有与存储节点10a相同的结构,所以省略存储节点10b至10n的示图。
客户端50使用数据访问单元51从分布式存储设备40获得期望的数据。
数据访问单元51向分布式存储设备40发送客户标识符和包括指示期望的流数据的数据密钥(主密钥)的访问请求,并且获得相应流数据中包括的数据元素。
数据传输单元11从数据访问单元51接收访问请求,使用数据选择单元12识别将要被发送的数据,从流数据挑出适当的数据元素,并且将该数据元素发送到数据访问单元51。
数据选择单元12基于客户标识符识别将响应适当客户端的时间帧,根据数据密钥和时间帧选择应该发送的数据元素。在客户端50初始访问的情况下,将响应的时间帧可以是最新时间帧之前的第k(预定数,例如,1)时间帧。此外,将被发送的数据元素可以是时间帧中流数据中包括的预定(例如,最新)数据元素。
时间帧生成单元13生成多个存储节点10a至10n之间同步的时间帧。时间帧生成单元13可以使用节点间同步单元30从而生成与另一存储节点生成的时间帧同步的时间帧。时间帧生成单元13更新多个存储节点之间的一致时间帧,并且将每个存储的数据元素与时间帧之一相关联。时间帧生成单元13可以存储指示时间帧存储单元15中的关联的“时间帧信息”。
数据存储单元14积累传感器等生成的流数据。
时间帧存储单元15将指示时间帧与数据存储单元14积累的流数据中包括的每个数据元素相关联的信息存储为“时间帧信息”。
节点间同步单元30生成更新时间帧的请求,以生成多个存储节点10a至10n之间的一致时间帧。注意:节点间同步单元30可以通过使用作为现有技术的分布式同步算法和分布式共识算法(例如,PAXOS等)执行通信来更新时间帧。此外,可以在存储节点10a至10n的每一个中设置具有足够高准确度的时钟,诸如原子钟,可以通过每个存储节点确定时间帧,而不执行通信。此外,存储节点10a至10n的每一个可以包括节点间同步单元30,或者节点间同步单元30可以是单独的计算器。
图2和图3是示出根据当前示例性实施例的分布式存储设备(图1)的行为的示图作为示例。图2是示出根据分布式存储设备40的每个存储节点生成时间帧的行为的示图作为示例。另一方面,图3是例示分布式存储设备的每个存储节点中积累的流数据与时间帧之间的关系的示图。注意:在当前示例性实施例中,代替在存储节点10a和10b之间执行完美的同步,基于离散时间在存储节点10a和10b之间执行同步,并且执行版本控制。
参考图2和图3,分布式存储设备40包括两个存储节点10a和10b。存储节点10a和10b的每一个积累从设备(例如,传感器)输出的流数据。存储节点10a积累包括数据元素A1、A2、…的流数据A。类似地,存储节点10b积累包括数据元素B1、B2、…的流数据B。
存储节点10a和10b的每一个生成与另一存储节点(至少逻辑)同步的时间帧,并且将积累的流数据中包括的每个数据元素与时间帧之一相关联。在图2中,存储节点10a生成时间帧fal至fa3。另一方面,存储节点10b生成时间帧fbl至fb3。此时,在存储节点10a和10b之间分别同步时间帧fal和fbl、时间帧fa2和fb2以及时间帧fa3和fb3。
参考图3,作为示例,存储节点10a分别将流数据A包括数据元素中的数据元素A1至A6、数据元素A7至A11和数据元素A12至A15与时间帧fal、fa2和fa3相关联。另一方面,存储节点10b分别将流数据B包括数据元素中的数据元素B1至B7、数据元素B8至B12和数据元素B13至B16与时间帧fbl、fb2和fb3相关联。
在此,假设客户端50在时间tl访问存储节点10a。此时,存储节点10a选择与积累的流数据A中的预定时间帧相关联的数据元素。作为示例,存储节点10a可以选择与在接收来自客户端50的访问请求的时间帧之前预定数量的时间帧相关联的数据元素。此外,存储节点10a可以选择该时间帧中包括的最新数据元素。例如,当预定数量是1时,存储节点10a选择与时间帧fa1相关联的数据元素中的最新数据元素A6。此外,存储节点10a将选择的数据元素A6发送至客户端50。
接下来,假设客户端50在时间t2访问存储节点10b。此时,存储节点10b相对于来自客户端50的访问请求选择与时间帧fal同步的时间帧(即,时间帧fbl)相关联的数据元素,所述时间帧fal与存储节点10a选择的数据元素A6相关联。此外,存储节点10b可以选择时间帧中fbl包括的最新数据元素。此时,存储节点10b选择数据元素B7,并且将选择的数据元素B7发送至客户端50。
根据分布式存储设备,可以从分配和积累从设备发送的流数据的多个存储节点的每一个获得同步的数据元素(在上述示例中,数据元素A6和B7)。
此外,假设与客户端50不同的客户端50b(未示出)在时间t2访问存储节点10b。此时,存储节点10b相对于来自客户端50b的访问请求选择与时间帧fb2相关联的数据元素,作为相对于来自客户端50b的访问请求的数据元素。此外,存储节点10b可以选择时间帧中fb2包括的最新数据元素。此时,存储节点10b选择数据元素B7,并且将选择的数据元素B7发送至客户端50。
根据分布式存储设备,可以从分配和积累从设备发送的流数据的多个存储节点的每一个获得同步的数据元素(在上述示例中,数据元素A6和B7)。
(示例性实施例2)
将参考附图详细描述根据第二示例性实施例的分布式存储设备。图4是示出根据当前示例性实施例的分布式存储设备的结构的框图作为示例。参考图4,分布式存储设备40包括多个存储节点10a至l0n和索引服务器20。此外,分布式存储设备40可以包括节点间同步单元30。
与根据第一示例性实施例的分布式存储设备中的存储节点相同,存储节点10a至l0n的每一个包括数据传输单元11、数据选择单元12、时间帧生成单元13、数据存储单元14和时间帧存储单元15。此外,存储节点10a至l0n包括数据更新单元16和数据检索单元17。
索引服务器20包括索引检索单元21、索引更新单元22、索引存储单元23、索引时间帧存储单元24和时间帧生成单元25。
数据更新单元16从设备接收数据,该设备将从传感器等获得的流数据发送到分布式存储设备40。然后,数据更新单元16存储存储节点的数据存储单元14中的流数据,并且将该数据传输到索引服务器20的索引更新单元22。
数据检索单元17从客户端50的数据访问单元51接收包括数据检索询问的访问请求。数据检索单元17将访问请求传输到索引服务器20,并且获得指示适当数据的信息。例如,指示适当数据的信息可以是主密钥的列表。此外,指示适当数据的信息可以是指示存储数据的存储设备的特定存储区域的地址和区域大小的组合。然而,指示适当数据的信息不限于此。
索引服务器20相对于分布式存储设备40中存储的数据,根据数据的内容检索询问的适当数据和发出客户信息。可以在分布式存储设备40中包括的任何存储节点上实现索引服务器20,或者可以通过多个存储节点的分布式协作实现索引服务器20。此外,可以通过单独的一个或多个计算器实现索引服务器20。
索引检索单元21基于索引数据和索引时间帧信息生成与数据检索询问相应的信息和将返回到客户端50的指示数据,并且响应数据检索单元17。在来自客户端50的初始访问的情况下,将被返回的数据可以是遇到询问的第n(预定数量)先前时间帧信息。另一方面,在第二次或后续访问的情况下,将被返回的数据可以是遇到询问的与客户端50相应的时间帧信息。
索引更新单元22将索引数据注册到索引存储单元23,从而能够以高速检索从数据更新单元16获得的数据。在新数据到达存储节点之后更新检索更新单元22。此时,数据到达存储节点的时间帧f1与检索服务器可以检索数据的时间帧f2之间的时间帧数量被设计为常量。作为示例,所有数据的索引的重建可以被设计为在三个时间帧内完成。此外,作为另一示例,可以形成至少两个索引,仅存储最新更新的数据的索引和在先数据的索引,可以使用通过并行扫描这些索引搜索最近数据的配置,从而可以在更短且有保证的时间检索最新数据。此外,可以通过总扫描而不形成索引仅检索最近更新的数据,另一方面,可以通过索引仅检索旧数据,从而在更短且有保证的时间检索最新数据。注意:数据结构不限于此。
在此,索引数据维持数据具有能够以高速处理询问的数据结构。例如,可以使用诸如B+-tree、哈希表、R-tree、位图索引和Trie的数据结构。然而,索引数据的数据结构不限于此。
索引时间帧存储单元24维持索引时间帧信息。在此,索引时间帧信息时指示时间帧与每个存储的“索引数据”相关联的信息。此外,索引时间帧存储单元24还可以包括指示存储服务器的时间帧与索引服务器的时间帧相关联的信息。
时间帧生成单元25通过使用节点间同步单元30根据多个存储节点10a至10n之间的一致时间帧更新请求来更新时间帧,并且更新指示时间帧与每个存储的“数据”相关联的“索引时间帧信息”。
图2和图3是示出根据当前示例性实施例的分布式存储设备(图4)的行为的示图作为示例。图5是示出根据分布式存储设备40的每个存储节点生成时间帧的行为的示图作为示例。另一方面,图6是例示分布式存储设备的每个存储节点中积累的流数据与时间帧之间的关系的示图。在当前示例性实施例中,与第一示例性实施例相同,基于离散时间在存储节点10a和10b之间执行同步,并且执行版本控制。此外,索引服务器20相对于存储节点10a和10b中积累的流数据A和B生成索引。
参考图5,分布式存储设备40包括两个存储节点10a和10b。存储节点10a和10b的每一个积累从设备(例如,传感器)输出的流数据。存储节点10a积累包括数据元素A1、A2、…的流数据A。另一方面,存储节点10b积累包括数据元素B1、B2、…的流数据B。索引服务器20相对于存储节点10a和10b中积累的流数据生成和维持索引。
存储节点10a和10b和索引服务器20的每一个生成与其他节点同步的时间帧,将积累的流数据中包括的每个数据元素与时间帧之一相关联。在图5中,存储节点10a生成时间帧fal至fa3。另一方面,存储节点10b生成时间帧fbl至fb3。此外,索引服务器20生成时间帧fil至fi3。此时,在存储节点10a、10b和索引服务器20之间分别同步时间帧fal、fbl和fil、时间帧fa2、fb2和fi2以及时间帧fa3、fb3和fi3。
参考图6,作为示例,存储节点10a分别将流数据A包括数据元素中的数据元素A1至A6、数据元素A7至A11和数据元素A12至A15与时间帧fal、fa2和fa3相关联。另一方面,存储节点10b分别将流数据B包括数据元素中的数据元素B1至B7、数据元素B8至B12和数据元素B13至B16与时间帧fbl、fb2和fb3相关联。此外,索引服务器20在时间帧fi2相对于与时间帧fal和fb2相关联的数据元素A1至A6和B1至B7构建索引,并且使构建的索引在时间帧fi3或者在时间帧fi3之后可被参考。此时,索引服务器20上的时间帧fi3与时间帧fal和fbl相应。在此情况下,索引服务器20和存储节点10a和10b之间彼此相应的时间帧被移位两个时间帧。注意:移位的时间帧数不限于两个。
在此,假设在时间tl客户端50向存储节点10a发送包括数据检索询问的访问请求,并且存储节点10a向检索服务器20传输访问请求。检索服务器20选择与预定的时间帧相关联的索引数据。作为示例,检索服务器20可以选择与在接收来自客户端50的访问请求的时间帧之前预定数量的时间帧相关联的索引数据。例如,当预定数量是0时,检索服务器20选择与时间帧fi3相关联的索引数据(即,相对于数据元素A1至A6和B1至B7)。此外,检索服务器20经由存储节点10a向客户端50发送选择的索引数据。
接下来,假设相同的客户端50在时间t2访问存储节点10a。此时,存储节点10a相对于来自客户端50的访问请求选择与自身存储节点10a上的时间帧fal相关联的数据元素,作为相对于来自客户端50的访问请求的数据元素,其中,所述时间帧fal与检索服务器20上的时间帧fi3相应,所述时间帧fi3与检索服务器20选择的索引数据相关联。在此,存储节点10a可以选择时间帧中fal包括的最新数据元素。此时,存储节点10a选择数据元素A6,并且将选择的数据元素A6发送至客户端50。
根据分布式存储设备,从分配和积累从设备发送的流数据的多个存储节点的每一个以及相对于存储节点中积累的流数据积累索引的索引服务器可以获得一致的数据元素和索引。
注意:在上述示例性实施例中,多个组件还可以包括用于阻止同时更新具有相同标识符的流数据的装置。例如,仅通过预先在系统中插入或预留插入具有特定标识符(ID)的传感器数据,可以防止新客户插入具有相同ID的数据。
此外,在上述示例性实施例中,考虑询问从多个存储节点获得预定时间帧中包括的预定数据元素(例如,最新)。然而,除了该询问之外,可以添加增量处理的询问。在增量处理中,考虑在客户端使用数据访问分布式存储设备40若干次以从访问到最新数据元素之前获得的数据元素获得一系列数据的情况。作为示例,在分布式存储设备40中,可以通过维持每个客户端50的标识符以及指示读出哪个时间帧的信息将增量除了中需要的数据元素返回到客户端50。
此外,在上述示例性实施例中,考虑各个存储节点存储单独的数据的情况。然而,为了防止存储节点故障时存储的数据丢失,可以使用两个或更多存储节点存储相同的数据的结构。此外,在此情况下,可以将维持特定数据的多个存储节点中的一个定义为数据的主节点,并且可以通过被存储在另一节点使用与主节点中的数据相关联的时间帧信息。
对于本发明,下述实施例可行。
(实施例1)
提供一种分布式存储设备,所述分布式存储设备包括:
多个存储节点,
所述多个存储节点包括:
数据存储单元,积累从设备输出的流数据;
第一时间帧生成单元,生成与另一存储节点同步的时间帧,并且将数据存储节点中积累的流数据中包括的数据元素与时间帧之一相关联;
数据选择单元,基于来自客户端的访问请求,从数据存储单元中积累的流数据选择与预定时间帧相关联的数据元素;以及
数据传输单元,将数据选择单元选择的数据元素发送到客户端。
(实施例2)
数据选择单元可以选择与选择的数据元素相关联的时间帧所关联的数据元素,作为相对于来自客户端的随后访问请求的数据元素。
(实施例3)
数据选择单元可以选择与另一存储节点相对于来自客户端的访问请求选择的数据元素相关联的时间帧同步的时间帧所关联的数据元素,作为相对于来自客户端的随后访问请求的数据元素。
(实施例4)
数据选择单元可以选择与在接收来自客户端的访问请求的时间帧之前预定数量的时间帧相关联的数据元素。
(实施例5)
数据选择单元可以选择预定时间帧中包括的最新数据元素。
(实施例6)
访问请求可以包括识别客户端的标识符。
(实施例7)
分布式存储设备可以包括节点间同步单元,生成用于更新时间帧的请求,并且第一时间帧生成单元根据节点间同步单元生成的请求生成时间帧。
(实施例8)
分布式存储设备还可以包括索引服务器,所述索引服务器包括:
索引存储单元,相对于多个存储节点的数据存储单元中积累的流数据积累索引;
第二时间帧生成单元,生成与多个存储节点同步的时间帧,并且将索引存储单元中积累的索引与时间帧之一相关联;以及
索引检索单元,基于从多个存储节点中的一个存储节点传输的访问请求,从索引存储单元中积累的索引选择与预定时间帧相关联的索引,并且将选择的索引发送至所述一个存储节点,其中:
所述多个存储节点还可以包括:
数据更新单元,将数据存储单元中积累的流数据发送至索引服务器;以及
数据检索单元,将客户端的访问请求传输至索引检索单元。
(实施例9)
数据选择单元可以选择相对于传输到索引服务器的来自客户端的访问请求索引检索单元选择的索引相关联的索引服务器上的时间帧相对应的自身存储节点上的时间帧所关联的数据元素,作为相对于来自客户端的随后访问请求的数据元素。
(实施例10)
数据选择单元可以选择与相对于另一存储节点传输到索引服务器的来自客户端的访问请求索引检索单元选择的索引相关联的索引服务器上的时间帧相对应的自身存储节点上的时间帧所关联的数据元素,作为相对于来自客户端的随后访问请求的数据元素。
(实施例11)
提供一种数据提供方法,其中,所述方法包括:
作为分布式存储设备中包括的多个存储节点之一的存储节点在数据存储单元中积累从设备输出的流数据的步骤;
生成与另一存储节点同步的时间帧以及将数据存储单元中积累的流数据中包括的数据元素与时间帧之一相关联的步骤;
基于来自客户端的访问请求从数据存储单元中积累的流数据选择与预定时间帧相关联的数据元素的步骤;以及
将选择的数据元素发送至客户端的步骤。
(实施例12)
在所述数据提供方法中,存储节点可以与选择的数据元素相关联的时间帧所关联的数据元素,作为相对于来自客户端的随后访问请求的数据元素。
(实施例13)
在所述数据提供方法中,存储节点选择与另一存储节点相对于来自客户端的访问请求选择的数据元素相关联的时间帧同步的时间帧所关联的数据元素,作为相对于来自客户端的随后访问请求的数据元素。
(实施例14)
所述数据提供方法可以包括:
存储节点将数据存储单元中积累的流数据发送至索引服务器的步骤;
将来自客户端的访问请求传输至索引服务器的步骤;
索引服务器相对于索引存储单元中多个存储节点的存储单元中积累的流数据积累索引的步骤;
生成与多个存储节点同步的时间帧并且将索引存储单元中积累的索引与时间帧之一相关联的步骤;以及
基于从多个存储节点的一个存储节点传输的来自客户端的访问请求从索引存储单元中积累的索引选择与预定时间帧相关联的索引并且将选择的索引发送至所述一个存储节点的步骤。
(实施例15)
在所述数据提供方法中,存储节点可以选择与相对于传输到索引服务器的来自客户端的访问请求索引服务器选择的索引相关联的索引服务器上的时间帧相对应的自身存储节点上的时间帧所关联的数据元素,作为相对于来自客户端的随后访问请求的数据元素。
(实施例16)
在所述数据提供方法中,存储节点可以选择与相对于另一存储节点传输到索引服务器的来自客户端的访问请求索引服务器选择的索引相关联的索引服务器上的时间帧相对应的存储节点上的时间帧所关联的数据元素,作为相对于来自客户端的随后访问请求的数据元素。
(实施例17)
提供一种程序,所述程序使分布式存储设备中包括的存储节点中设置的计算机执行:
在数据存储单元中积累从设备输出的流数据的处理;
生成与另一存储节点同步的时间帧以及将数据存储单元中积累的流数据中包括的数据元素与时间帧之一相关联的处理;
基于来自客户端的访问请求从数据存储单元中积累的流数据选择与预定时间帧相关联的数据元素的处理;以及
将选择的数据元素发送至客户端的处理。
(实施例18)
所述程序可以使计算机执行:选择与选择的数据元素相关联的时间帧所关联的数据元素作为相对于来自客户端的随后访问请求的数据元素的处理。
(实施例19)
所述程序可以使计算机执行:选择与另一存储节点相对于来自客户端的访问请求选择的数据元素相关联的时间帧同步的时间帧所关联的数据元素作为相对于来自客户端的随后访问请求的数据元素的处理。
注意到,上述非专利文献等的公开将合并于此用于参考。在本发明的整体公开(包括权利要求)范围内,另外,基于基本技术思想,可以改变和调整示例性实施例。此外,本发明的权利要求的内容的范围内可以进行在此公开的元素(每个权利要求的每个元素、每个示例性实施例的每个元素和每个附图的每个元素)的各种组合或选择。更具体地,明显的是,本发明包括根据包括权利要求的所有公开和技术思想本领域的技术人员可以多种改变或修改。具体地,即使没有具体描述,在此描述的数值范围、该范围内包括的任何数值或者子范围也应该被解释为特别指出。
[附图标记列表]
10a至l0n 存储节点
11 数据传输单元
12 数据选择单元
13 时间帧生成单元
14 数据存储单元
15 时间帧存储单元
16 数据更新单元
17 数据检索单元
20,120 索引服务器
21 索引检索单元
22 索引更新单元
23 索引存储单元
24 索引时间帧存储单元
25 时间帧生成单元
30 节点间同步单元
40,140 分布式存储设备
50 客户端
51 数据访问单元
110a至110n 存储节点
130 存储间网络
fal至fa3、fbl至fb3、fil至fi3 时间帧
tl、t2 时间

Claims (26)

1.一种分布式存储设备,包括:
多个存储节点,
所述多个存储节点包括:
数据存储单元,所述数据存储单元积累从设备输出的流数据;
第一时间帧生成单元,所述第一时间帧生成单元生成与另一存储节点同步的时间帧,并且使所述数据存储节点中积累的流数据中所包括的数据元素与时间帧中的一个相关联;
数据选择单元,所述数据选择单元基于来自客户端终端的访问请求,从所述数据存储单元中积累的所述流数据中选择与预定时间帧相关联的数据元素;以及
数据传输单元,所述数据传输单元将由所述数据选择单元所选择的数据元素传送到所述客户端终端。
2.根据权利要求1所述的分布式存储设备,其中,
所述数据选择单元选择下述数据元素作为关于来自所述客户端终端的随后访问请求的数据元素:该数据元素关联于与所选择的数据元素相关联的时间帧。
3.根据权利要求1或2所述的分布式存储设备,其中,
所述数据选择单元选择下述数据元素作为关于来自所述客户端终端的随后访问请求的数据元素:该数据元素关联于与由另一存储节点关于来自所述客户端终端的访问请求选择的数据元素相关联的时间帧同步的时间帧。
4.根据权利要求1至3中的任何一项所述的分布式存储设备,其中,
所述数据选择单元选择与在接收来自所述客户端终端的访问请求时的时间帧之前预定数量的时间帧相关联的数据元素。
5.根据权利要求1至4中的任何一项所述的分布式存储设备,其中,
所述数据选择单元选择预定时间帧中所包括的最新数据元素。
6.根据权利要求1至5中的任何一项所述的分布式存储设备,其中,
所述访问请求包括识别所述客户端终端的标识符。
7.根据权利要求1至6中的任何一项所述的分布式存储设备,包括:
节点间同步单元,所述节点间同步单元生成用于更新时间帧的请求,其中,
所述第一时间帧生成单元根据由所述节点间同步单元生成的请求来生成时间帧。
8.根据权利要求1至7中的任何一项所述的分布式存储设备,包括:
索引服务器,包括:
索引存储单元,所述索引存储单元积累关于所述多个存储节点的数据存储单元中积累的流数据的索引;
第二时间帧生成单元,所述第二时间帧生成单元生成与所述多个存储节点同步的时间帧,并且使所述索引存储单元中积累的索引与时间帧中的一个相关联;以及
索引检索单元,所述索引检索单元基于从所述多个存储节点中的存储节点中的一个传输的访问请求来从所述索引存储单元中积累的索引中选择与预定时间帧相关联的索引,并且将所选择的索引传输到所述存储节点中的一个,其中,
所述多个存储节点进一步包括:
数据更新单元,所述数据更新单元将在所述数据存储单元中积累的流数据传输到所述索引服务器;以及
数据检索单元,所述数据检索单元将来自客户端终端的访问请求传输到所述索引检索单元。
9.根据权利要求8所述的分布式存储设备,其中,
所述数据选择单元选择下述数据元素作为关于来自所述客户端终端的随后访问请求的数据元素:该数据元素与自身存储节点上的时间帧相关联,所述时间帧与由所述索引检索单元关于传输到所述索引服务器的来自客户端终端的访问请求选择的索引相关联的所述索引服务器上的时间帧相对应。
10.根据权利要求8或9所述的分布式存储设备,其中,
所述数据选择单元选择下述数据元素作为关于来自所述客户端终端的随后访问请求的数据元素:该数据元素与自身存储节点上的时间帧相关联,所述时间帧与由所述索引检索单元关于由另一存储节点传输到所述索引服务器的来自客户端终端的访问请求选择的索引相关联的所述索引服务器上的时间帧相对应。
11.一种存储节点,所述存储节点是包括在分布式存储设备中的多个存储节点中的一个,所述存储节点包括:
数据存储单元,所述数据存储单元积累从设备输出的流数据;
第一时间帧生成单元,所述第一时间帧生成单元生成与另一存储节点同步的时间帧,并且使在所述数据存储节点中积累的流数据中所包括的数据元素与时间帧中的一个相关联;
数据选择单元,所述数据选择单元基于来自客户端终端的访问请求来从所述数据存储单元中积累的所述流数据中选择与预定时间帧相关联的数据元素;以及
数据传输单元,所述数据传输单元将由所述数据选择单元选择的数据元素传输到所述客户端终端。
12.根据权利要求11所述的存储节点,其中,
所述数据选择单元选择关联于与所选择的数据元素相关联的时间帧的数据元素,作为关于来自所述客户端终端的随后访问请求的数据元素。
13.根据权利要求11或12所述的存储节点,其中,
所述数据选择单元选择下述数据元素作为关于来自所述客户端终端的随后访问请求的数据元素:该数据元素关联于与由另一存储节点关于来自所述客户端终端的访问请求所选择的数据元素相关联的时间帧不同的时间帧。
14.根据权利要求11至13中的任何一项所述的存储节点,其中,
所述分布式存储设备包括:
节点间同步单元,所述节点间同步单元生成用于更新数据帧的请求,其中,
所述第一时间帧生成单元根据由所述节点间同步单元所生成的请求来生成时间帧。
15.根据权利要求11至14中的任何一项所述的存储节点,其中,
所述分布式存储设备进一步包括:
索引服务器,其中,
所述索引服务器包括:
索引存储单元,所述索引存储单元积累关于所述多个存储节点的数据存储单元中积累的流数据的索引;
第二时间帧生成单元,所述第二时间帧生成单元生成与所述多个存储节点同步的时间帧,并且使所述索引存储单元中积累的索引与时间帧中的一个相关联;以及
索引检索单元,所述索引检索单元基于从所述多个存储节点中的存储中的一个传输的所述访问请求,来从所述索引存储单元中积累的索引中选择与预定时间帧相关联的索引,并且将所选择的索引传送到所述存储节点中的一个,其中,
所述存储节点进一步包括:
数据更新单元,所述数据更新单元将所述数据存储单元中积累的流数据传送到所述索引服务器;以及
数据检索单元,所述数据检索单元将来自客户端终端的访问请求传输到所述索引检索单元。
16.根据权利要求15所述的存储节点,其中,
所述数据选择单元选择下述数据元素作为关于来自所述客户端终端的随后访问请求的数据元素:所述数据元素与所述存储节点上的时间帧相关联,所述时间帧对应于由所述索引检索单元关于从客户端终端传输到索引服务器的访问请求所选择的索引相关联的所述索引服务器上的时间帧。
17.根据权利要求15或16所述的存储节点,其中,
所述数据选择单元选择下述数据元素作为关于来自所述客户端终端的随后访问请求的数据元素:所述数据元素与所述存储节点上的时间帧相关联,所述时间帧对应于由所述索引检索单元关于由另一存储节点从客户端终端传输到索引服务器的访问请求选择的索引相关联的所述索引服务器上的时间帧。
18.一种数据提供方法,包括下述步骤:
由作为分布式存储设备中包括的多个存储节点中的一个的存储节点在数据存储单元中积累从设备输出的流数据;
生成与另一存储节点同步的时间帧,并且使所述数据存储单元中积累的流数据中所包括的数据元素与时间帧中的一个相关联;
基于来自客户端终端的访问请求来从所述数据存储单元中积累的所述流数据中选择与预定时间帧相关联的数据元素;以及
将所选择的数据元素传送到所述客户端终端。
19.根据权利要求18所述的数据提供方法,其中,
所述存储节点选择关联于与所选择的数据元素相关联的时间帧的数据元素,作为关于来自所述客户端终端的随后访问请求的数据元素。
20.根据权利要求18或19所述的数据提供方法,其中,
所述存储节点选择下述数据元素作为关于来自所述客户端终端的随后访问请求的数据元素:该数据元素关联于与由另一存储节点关于来自所述客户端终端的访问请求所选择的数据元素相关联的时间帧同步的时间帧。
21.根据权利要求18至20中的任何一项所述的数据提供方法,包括下述步骤:
由所述存储节点将所述数据存储单元中积累的流数据传送到索引服务器;
将来自所述客户端终端的访问请求传输到所述索引服务器;
由所述索引服务器积累关于所述索引存储单元中的所述多个存储节点的存储单元中所积累的流数据的索引;
生成与所述多个存储节点同步的时间帧,并且使所述索引存储单元中积累的索引与时间帧中的一个相关联;以及
基于从所述多个存储节点的存储节点中的一个传输的来自所述客户端终端的访问请求来从所述索引存储单元中积累的索引中选择与预定时间帧相关联的索引,并且将所选择的索引传送到所述存储节点中的一个。
22.根据权利要求21所述的数据提供方法,其中,
所述存储节点选择下述数据元素作为关于来自所述客户端终端的随后访问请求的数据元素:该数据元素与自身存储节点上的时间帧相关联,所述时间帧对应于相对于与由所述索引服务器关于从所述客户端终端传输到所述索引服务器的访问请求所选择的索引相关联的所述索引服务器上的时间帧。
23.根据权利要求21或22所述的数据提供方法,其中,
所述存储节点选择下述数据元素作为关于来自所述客户端终端的随后访问请求的数据元素:所述数据元素与所述存储节点上的时间帧相关联,所述时间帧对应于由所述索引服务器关于由另一存储节点从所述客户端终端传输到所述索引服务器的访问请求所选择的索引相关联的所述索引服务器上的时间帧。
24.一种程序,所述程序使得在分布式存储设备中所包括的存储节点中设置的计算机执行下述处理:
在数据存储单元中积累从设备输出的流数据;
生成与另一存储节点同步的时间帧,并且使所述数据存储单元中积累的流数据中所包括的数据元素与时间帧中的一个相关联;
基于来自客户端终端的访问请求来从所述数据存储单元中积累的所述流数据中选择与预定时间帧相关联的数据元素;以及
将所选择的数据元素传送到所述客户端终端。
25.根据权利要求24所述的程序,使得所述计算机执行下述处理:
选择关联于与所选择的数据元素相关联的时间帧的数据元素,作为关于来自所述客户端终端的随后访问请求的数据元素。
26.根据权利要求24或25所述的程序,使得所述计算机执行下述处理:
选择下述数据元素作为关于来自所述客户端终端的随后访问请求的数据元素:该数据元素关联于与由另一存储节点关于来自所述客户端终端的访问请求所选择的数据元素相关联的时间帧同步的时间帧。
CN201380051160.2A 2012-09-28 2013-09-27 分布式存储设备、存储节点、数据提供方法 Expired - Fee Related CN104737136B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2012217852 2012-09-28
JP2012-217852 2012-09-28
PCT/JP2013/076309 WO2014051071A1 (ja) 2012-09-28 2013-09-27 分散ストレージ装置、ストレージノード、データ提供方法およびプログラム

Publications (2)

Publication Number Publication Date
CN104737136A true CN104737136A (zh) 2015-06-24
CN104737136B CN104737136B (zh) 2018-03-02

Family

ID=50388464

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380051160.2A Expired - Fee Related CN104737136B (zh) 2012-09-28 2013-09-27 分布式存储设备、存储节点、数据提供方法

Country Status (5)

Country Link
US (1) US9870402B2 (zh)
EP (1) EP2902909A4 (zh)
JP (1) JP6237633B2 (zh)
CN (1) CN104737136B (zh)
WO (1) WO2014051071A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109120885A (zh) * 2017-06-26 2019-01-01 杭州海康威视数字技术股份有限公司 视频数据获取方法及装置

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10303796B2 (en) * 2015-01-09 2019-05-28 Ariba, Inc. Updating distributed shards without compromising on consistency
US10838931B1 (en) * 2017-04-28 2020-11-17 EMC IP Holding Company LLC Use of stream-oriented log data structure for full-text search oriented inverted index metadata
US11100086B2 (en) 2018-09-25 2021-08-24 Wandisco, Inc. Methods, devices and systems for real-time checking of data consistency in a distributed heterogenous storage system

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7010538B1 (en) * 2003-03-15 2006-03-07 Damian Black Method for distributed RDSMS

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5377102A (en) * 1992-03-05 1994-12-27 Nishiishigaki; Kenji Apparatus for preparing map data with regional properties
US6898791B1 (en) * 1998-04-21 2005-05-24 California Institute Of Technology Infospheres distributed object system
US6243348B1 (en) * 1998-06-05 2001-06-05 Massachusetts Institute Of Technology Very-high-density memory device utilizing a scintillating data-storage medium
JP3076309B2 (ja) * 1998-09-17 2000-08-14 日本電気アイシーマイコンシステム株式会社 半導体記憶装置
US6249824B1 (en) * 1998-12-12 2001-06-19 Joseph Reid Henrichs Magnetic data storage fixed hard disk drive using stationary microhead array chips in place of flying-heads and rotary voice-coil actuators
KR100486713B1 (ko) * 2002-09-17 2005-05-03 삼성전자주식회사 멀티미디어 스트리밍 장치 및 방법
US20050076236A1 (en) * 2003-10-03 2005-04-07 Bryan Stephenson Method and system for responding to network intrusions
DE10351317B4 (de) * 2003-10-31 2009-08-27 Siemens Ag Zugriffsverfahren für ein Bildretrievalsystem in einem nach dem Client/Server-Prinzip organisierten Datenübertragungsnetz, sowie Bildretrievalsystem
JP4871213B2 (ja) * 2007-05-24 2012-02-08 日本電信電話株式会社 ストリームデータ処理方法、ストリームデータ処理プログラムおよびストリームデータ処理システム
US7849482B2 (en) * 2007-07-25 2010-12-07 The Directv Group, Inc. Intuitive electronic program guide display
JP5322518B2 (ja) * 2008-07-08 2013-10-23 キヤノン株式会社 通信方法
JP5416145B2 (ja) * 2009-02-06 2014-02-12 株式会社Nttドコモ 移動端末及び移動端末のデータ中継方法
US8443448B2 (en) * 2009-08-20 2013-05-14 Federal Reserve Bank Of New York System and method for detection of non-compliant software installation
JP5314570B2 (ja) * 2009-11-06 2013-10-16 日本電信電話株式会社 蓄積データの再構成システム、再構成方法およびプログラム
JP2012242845A (ja) * 2011-05-13 2012-12-10 Nippon Hoso Kyokai <Nhk> メディアファイル管理装置およびそのプログラム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7010538B1 (en) * 2003-03-15 2006-03-07 Damian Black Method for distributed RDSMS

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109120885A (zh) * 2017-06-26 2019-01-01 杭州海康威视数字技术股份有限公司 视频数据获取方法及装置

Also Published As

Publication number Publication date
US20150347516A1 (en) 2015-12-03
EP2902909A1 (en) 2015-08-05
WO2014051071A1 (ja) 2014-04-03
JP6237633B2 (ja) 2017-11-29
CN104737136B (zh) 2018-03-02
JPWO2014051071A1 (ja) 2016-08-25
EP2902909A4 (en) 2016-06-01
US9870402B2 (en) 2018-01-16

Similar Documents

Publication Publication Date Title
CN103390041B (zh) 一种基于中间件提供数据服务的方法和系统
CN110245023B (zh) 分布式调度方法及装置、电子设备以及计算机存储介质
CN101405728B (zh) 具有动态加载能力的关系数据库架构
CN112579692B (zh) 一种数据同步方法、装置、系统、设备及存储介质
CN104737136A (zh) 分布式存储设备、存储节点、数据提供方法和程序
CN103235820A (zh) 一种集群系统中数据存储方法与装置
CN112948450B (zh) 用于实时推荐的Flink流式处理引擎方法、装置及计算机设备
CN104598299A (zh) 用于对每条接收数据执行聚合处理的系统和方法
CN112181993A (zh) 业务数据查询方法、装置、服务器及存储介质
CN111782134A (zh) 数据处理方法、装置、系统和计算机可读存储介质
US9733997B2 (en) Event management method and distributed system
CN113177090A (zh) 数据处理方法及装置
CN108334514A (zh) 数据的索引方法以及装置
CN109657000B (zh) 一种轨道交通综合监控系统的实时数据同步方法及装置
CN113254460B (zh) 数据处理方法、系统、电子设备及存储介质
CN110825526A (zh) 基于er关系的分布式调度方法及装置、设备以及存储介质
CN107016075A (zh) 集群数据同步方法及装置
KR20180047828A (ko) 데이터 처리 시스템 및 데이터 처리 방법
CN112417043A (zh) 数据处理系统及方法
CN109471901A (zh) 一种数据同步方法及装置
CN114556320A (zh) 切换到最终一致的数据库副本
CN116483605A (zh) 数据处理方法、装置、系统、存储介质及电子设备
CN113360455B (zh) 一种超融合系统的数据处理方法、装置、设备及介质
CN117221309A (zh) 数据发送方法、装置、设备及计算机可读存储介质
CN113535695B (zh) 一种基于进程调度的档案更新方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20180302

Termination date: 20210927