CN107479824A - 冗余磁盘阵列系统及其数据储存方法 - Google Patents

冗余磁盘阵列系统及其数据储存方法 Download PDF

Info

Publication number
CN107479824A
CN107479824A CN201610402648.0A CN201610402648A CN107479824A CN 107479824 A CN107479824 A CN 107479824A CN 201610402648 A CN201610402648 A CN 201610402648A CN 107479824 A CN107479824 A CN 107479824A
Authority
CN
China
Prior art keywords
write
those
page
data
page number
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
CN201610402648.0A
Other languages
English (en)
Other versions
CN107479824B (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.)
Shanghai Chuanyuan Information Technology Co., Ltd
Original Assignee
Jie Ding Internaional Inc
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 Jie Ding Internaional Inc filed Critical Jie Ding Internaional Inc
Priority to CN201610402648.0A priority Critical patent/CN107479824B/zh
Priority to US15/204,442 priority patent/US10127106B2/en
Publication of CN107479824A publication Critical patent/CN107479824A/zh
Application granted granted Critical
Publication of CN107479824B publication Critical patent/CN107479824B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0613Improving I/O performance in relation to throughput
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提出一种冗余磁盘阵列系统及其数据储存方法,冗余磁盘阵列系统包含多数磁盘、多数数据条带及处理单元。各磁盘包含多个页面,各数据条带横跨页面中的多个写入页面。写入页面用以储存多个写入数据及对应写入数据的校验数据。处理单元以日志方式将写入数据对应的第一逻辑页码储存于写入页面,并记录第一逻辑页码的写入位置;处理单元对第一逻辑页码中的无效页码进行垃圾收集;于执行垃圾收集后,处理单元将写入数据对应的第二逻辑页码以日志方式写入数据条带中具有最多无效页码的数据条带所横跨的写入页面,并记录第二逻辑页码的写入位置。

Description

冗余磁盘阵列系统及其数据储存方法
技术领域
本发明是关于一种储存装置,特别是一种冗余磁盘阵列系统及其数据储存方法。
背景技术
独立磁盘冗余阵列(Redundant Array of Independent Disks;RAID)是将许多独立的小容量磁盘规划为一大容量的磁盘。在储存数据时,将数据切割成多个区段(即条带化)并分别存放于各个磁盘上;在读取数据时,再由各个磁盘读出,以提升整体磁盘的吞吐量。再者,RAID具有容错功能,藉由奇偶校验(parity-check)技术,例如计算各数据的一校验数据,使RAID在任一个磁盘发生错误时,能使原有数据复原。
然而,在公知的RAID技术中,各条带与磁盘的页面的地址对应关系为固定而不可变动,在将数据写入磁盘的指定页面后,条带中各数据所对应的校验数据亦随之更新,于是,校验数据计算的过程中会造成额外的数据读写而产生写入放大的问题。再者,若是采用日志方式将数据储存于磁盘的页面中,则必须记录的逻辑地址与磁盘的页面地址之间的映射关系,而记录此映射关系所需的存储器容量相当可观。举例来说,若磁盘页面大小为4K,且假设RAID整体的可储存容量为1PB,则所需的存储器容量约为2,000GB。
发明内容
有鉴于此,本发明提出一种冗余磁盘阵列系统及其数据储存方法。
在一实施例中,冗余磁盘阵列系统包含多数磁盘、多数数据条带及处理单元。每一磁盘包含多个页面;每一数据条带横跨每一磁盘的页面中的多个写入页面,此些写入页面用以储存多个写入数据及对应写入数据的一校验数据,其中每一写入数据对应一第一逻辑页码;处理单元用以根据写入页面于每一数据条带中的顺序将第一逻辑页码依序且连续地写入写入页面,且处理单元记录每一第一逻辑页码的写入位置以计算前述的校验数据,再者,第一逻辑页码包含至少一无效页码,处理单元对无效页码进行垃圾收集;于处理单元执行垃圾收集之后,处理单元将多数第二逻辑页码依序且连续地写入数据条带中具有最多无效页码的数据条带所横跨的写入页面,且处理单元记录每一第二逻辑页码的写入位置以计算校验数据。
在一实施例中,前述处理单元将第一逻辑页码及第二逻辑页码写入数据条带所横跨的磁盘中的一指定磁盘的写入页面。
在一实施例中,前述处理单元将第一逻辑页码及第二逻辑页码写入数据条带所横跨的磁盘中的一任意磁盘的写入页面。
在一实施例中,前述的每一磁盘对应于以多数位元表示的一第一索引值,且位元的数量对应磁盘的数量,每一第一逻辑页码及每一第二逻辑页码分别对应于一第二索引值,处理单元记录储存第一逻辑页码的磁盘的第一索引值与第二索引值的对应关系,并记录储存第二逻辑页码的磁盘的第一索引值与第二索引值的对应关系。
在一实施例中,前述的第一逻辑页码中的一逻辑页码于一第一时间点储存于写入页面中的一第一写入页面,处理单元于一第二时间点将逻辑页码写入写入页面中的一第二写入页面,使第一写入页面的状态由有效更新为无效,其中,第一写入页面与第二写入页面位于不同磁盘中。
在一实施例中,数据储存方法适于前述的冗余磁盘阵列,数据储存方法包含建立前述的多数数据条带;根据前述写入页面于每一数据条带中的顺序将第一逻辑页码依序且连续地写入写入页面;记录每一第一逻辑页码的写入位置以计算前述的校验数据;对前述的至少一无效页码进行垃圾收集;将多数第二逻辑页码依序且连续地写入数据条带中具有最多无效页码的数据条带所横跨的写入页面;及记录每一第二逻辑页码的写入位置以计算校验数据。
在一实施例中,将前述第一逻辑页码依序且连续地储存于写入页面的步骤以及将第二逻辑页码依序且连续地写入数据条带的步骤是将第一逻辑页码及第二逻辑页码写入数据条带所横跨的磁盘中的一指定磁盘的写入页面。
在一实施例中,将前述第一逻辑页码依序且连续地储存于写入页面的步骤以及将第二逻辑页码依序且连续地写入数据条带的步骤是将第一逻辑页码及第二逻辑页码写入数据条带所横跨的磁盘中的任意磁盘的写入页面。
在一实施例中,将前述第一逻辑页码及第二逻辑页码写入数据条带所横跨的磁盘中的任意磁盘的步骤包含建立每一磁盘的一第一索引值,第一索引值以多数位元表示,且位元的数量对应磁盘的数量;建立每一第一逻辑页码的一第二索引值;建立每一第二逻辑页码的第二索引值;记录储存第一逻辑页码的磁盘的第一索引值与第二索引值的对应关系;及记录储存第二逻辑页码的磁盘的第一索引值与第二索引值的对应关系。
在一实施例中,将前述第一逻辑页码依序且连续地储存于写入页面的步骤包含于一第一时间点将第一逻辑页码中的一逻辑页码写入写入页面中的一第一写入页面;记录第一写入页面的状态为有效;于一第二时间点将逻辑页码储存于写入页面中的一第二写入页面,第二写入页面与第一写入页面位于不同磁盘中;以及将第一写入页面的状态更新为无效。
综上所述,根据本发明的冗余磁盘阵列系统的一实施例,逻辑页码可储存于任意数据条带,且可优先选择无效页码数量最多的数据条带来储存逻辑页码;并且,进一步藉由记录索引值来储存逻辑页码与其磁盘储存位置的对应关系,如此不但提升了数据条带所横跨的空白写入页面的使用效率,还大幅地降低了采用日志方式所需的存储器容量。
附图说明
图1为根据本发明的冗余磁盘阵列系统的一实施例的方块示意图。
图2为根据本发明的数据储存方法的一实施例的流程图。
图3为图1的冗余磁盘阵列系统的第一实施例的第一逻辑页码储存于数据条带15、17的方块示意图。
图4为图1的冗余磁盘阵列系统的第一实施例的第一逻辑页码储存于数据条带15-18的方块示意图。
图5为图1的冗余磁盘阵列系统的第一实施例的第一逻辑页码储存于数据条带16、18的方块示意图。
图6为图1的冗余磁盘阵列系统的第一实施例的第一逻辑页码及第二逻辑页码储存于数据条带15、16、18的方块示意图。
图7为图1的冗余磁盘阵列系统的第二实施例的第一逻辑页码储存于数据条带15、16的方块示意图。
图8为图1的冗余磁盘阵列系统的第二实施例的第一逻辑页码储存于数据条带15-17的方块示意图。
图9为图1的冗余磁盘阵列系统的第二实施例的第一逻辑页码储存于数据条带15-18的方块示意图。
图10为图1的冗余磁盘阵列系统的第二实施例的第一逻辑页码及第二逻辑页码储存于数据条带15、17、18的方块示意图。
【符号说明】
11-14 磁盘 131-134 写入页面
15-18 数据条带 141-144 写入页面
111-114 写入页面 20 处理单元
121-124 写入页面
L10-L15 第一逻辑页码
P1-P10 校验数据
具体实施方式
图1为根据本发明的冗余磁盘阵列系统的一实施例的方块示意图,图2为根据本发明的数据储存方法的一实施例的流程图。请同时参照图1及图2,如图1所示,冗余磁盘阵列系统包含多数磁盘11-14、多数数据条带15-18及处理单元20。处理单元20电性连接磁盘11-14。图1所绘示的冗余磁盘阵列系统包含四个磁盘11-14及四条数据条带15-18,但本发明不以此为限,磁盘数量及条带数量可依电路设计需求而增加或减少。
磁盘11-14包含多个页面(page),数据条带15-18横跨四个磁盘11-14的页面,而数据条带15-18横跨的页面称之为写入页面。如图1所示,以数据条带15-18横跨每一磁盘中的一页面为例,数据条带15-18横跨四个磁盘11-14而横跨四个写入页面,即数据条带15横跨的页面为写入页面111、121、131、141,数据条带16横跨的页面为写入页面112、122、132、142,数据条带17横跨磁盘11-14的页面为写入页面113、123、133、143,数据条带18横跨磁盘11-14的页面为写入页面114、124、134、144。
写入页面111-114、121-124、131-134、141-144用以储存多笔写入数据及对应的校验数据。换言之,处理单元20可接收来自输出入装置的多个数据,并将每一数据切割成多个写入数据后将写入数据储存于写入页面111-114、121-124、131-134、141-144,以建立数据条带15-18(步骤S01)。并且,处理单元20再将对应多个写入数据的校验数据储存于写入页面111-114、121-124、131-134、141-144。于此,当磁盘11-14中的一磁盘故障时,其他未故障的磁盘可藉由校验数据的错误更正码(Error Control Coding;ECC)校验而将故障磁盘中所储存的写入数据复原。以下以应用RAID level 4而磁盘14为校验数据磁盘为例,但本发明不以此为限,磁盘11-14亦可应用RAID level 5甚至是RAID level 6以上。
写入页面111-114、121-124、131-134、141-144亦可用来储存对应于多个写入数据的第一逻辑页码,处理单元20根据写入页面于每一数据条带中的顺序将第一逻辑页码依序且连续地储存于写入页面111-114、121-124、131-134、141-144(步骤S02)。换言之,处理单元20在选定一数据条带后,例如数据条带16,处理单元20根据数据条带16所横跨的写入页面112、122、132、142的地址高低顺序来储存第一逻辑页码。处理单元20将先接收的第一逻辑页码储存于高地址的写入页面,并将后接收的第一逻辑页码储存于低地址的写入页面,且处理单元20前后储存的两写入页面之间并未包含其他写入页面;或者,在另一些实施态样中,处理单元20将先接收的第一逻辑页码储存于低地址的写入页面,并将后接收的第一逻辑页码储存于高地址的写入页面。
以下列举两实施例来说明。图3至图5分别为图1的冗余磁盘阵列系统的第一实施例的第一逻辑页码储存于数据条带15-18的方块示意图。图6为图1的冗余磁盘阵列系统的第一实施例的第一逻辑页码及第二逻辑页码储存于数据条带15-18的方块示意图。请同时参照图3至图6,在第一实施例中,每一第一逻辑页码所能储存的磁盘为固定,可藉由数学运算的余数运算或查表法来决定每一第一逻辑页码所能储存的指定磁盘。也就是说,处理单元20将第一逻辑页码写入数据条带15-18所横跨的磁盘11-14中的一指定磁盘的写入页面。举例来说,以多笔写入数据对应的第一逻辑页码为「L10」、「L11」、「L12」、「L13」、「L14」、「L15」为例,假设第一逻辑页码「L14」、「L11」所能储存的指定磁盘为磁盘11,第一逻辑页码「L12」、「L15」所能储存的指定磁盘为磁盘12,第一逻辑页码「L13」、「L10」所能储存的指定磁盘为磁盘13。若处理单元20接收第一逻辑页码的顺序为「L14」、「L11」、「L12」、「L15」、「L13」、「L10」,由于处理单元20得任意选择数据条带,如图3所示,处理单元20选择数据条带17后将第一逻辑页码「L14」储存于磁盘11的页面,即写入页面113;再者,由于第一逻辑页码「L11」所能储存的指定磁盘为磁盘11,此时处理单元20不选择数据条带17而选择其他数据条带15、16、18,以选择数据条带15为例,处理单元20将「L11」储存于数据条带15所横跨的磁盘11的页面,即写入页面111。
接着,由于第一逻辑页码「L12」所能储存的指定磁盘为磁盘12,处理单元20可选择将L12储存于数据条带17中与写入页面113互为连续的页面,即写入页面123,以连续地写入数据条带17以填满数据条带17所横跨的写入页面。或者,在另一些实施态样中,处理单元20亦可选择将第一逻辑页码「L12」储存于数据条带15中与写入页面111互为连续的页面,即写入页面121,以连续地写入数据条带15。在处理单元20将第一逻辑页码「L12」储存于写入页面123之后,处理单元20将第一逻辑页码「L15」储存于数据条带15中与写入页面111互为连续的页面,即写入页面121,以连续地写入数据条带15。最后,处理单元20选择将第一逻辑页码「L13」储存于写入页面131以连续地写入数据条带15而填满数据条带15所横跨的写入页面111、121、131,且将第一逻辑页码「L10」储存于写入页面133以连续地写入数据条带17而填满数据条带17所横跨的写入页面113、123、133。
另一方面,为计算每一数据条带的校验数据,处理单元20记录每一第一逻辑页码的写入位置(步骤S07)。举例来说,以图3为例,处理单元20记录第一逻辑页码「L11」、「L15」、「L13」的写入位置分别为写入页面111、121、131,且处理单元20记录第一逻辑页码「L14」、「L12」、「L10」的写入位置分别为写入页面113、123、133。于是,处理单元20读取写入页面111、121、131而获得第一逻辑页码「L11」、「L15」、「L13」以计算得条带数据15的校验数据为「P1」,且处理单元20读取写入页面113、123、133而获得第一逻辑页码「L14」、「L12」、「L10」以计算得数据条带17的校验数据为「P3」。处理单元20分别将「P1」、「P3」储存于写入页面141、143。在一些实施态样中,处理单元20可将前第一逻辑页码的写入位置记录于其自身所包含的暂存器中或其它具储存能力的储存单元中。
如图4所示,在一些实施例中,若对应于第一逻辑页码「L11」的写入数据更新,则处理单元20重复接收第一逻辑页码「L11」,由于第一逻辑页码「L11」所能储存的指定磁盘为磁盘11,此时处理单元20得选择数据条带16或数据条带18,以处理单元20选择数据条带16为例,处理单元20将第一逻辑页码「L11」储存于数据条带16所横跨的磁盘11的页面,即写入页面112。
处理单元20将第一逻辑页码「L11」储存于写入页面112之后,若对应于第一逻辑页码「L14」、「L15」、「L10」、「L12」、「L13」的写入数据依序更新,则处理单元20先后接收重复的第一逻辑页码「L14」、「L15」、「L10」、「L12」、「L13」,处理单元20将第一逻辑页码「L14」储存于数据条带18所横跨的磁盘11的页面,即写入页面114,且处理单元20将第一逻辑页码「L15」储存于数据条带16或数据条带18所横跨的磁盘12的页面,即写入页面122或写入页面124,以连续地写入数据条带16或数据条带18。而图4以处理单元20选择数据条带18而将第一逻辑页码「L15」储存于写入页面124为例。并且,处理单元20将第一逻辑页码「L10」储存于数据条带18所横跨的磁盘13的页面,即与写入页面124互为连续的写入页面134,以选择优先将数据条带18填满;最后,处理单元20将第一逻辑页码「L12」、「L13」储存于数据条带16所横跨的磁盘12、13的页面,即连续的写入页面122、132。
另一方面,为计算数据条带16、18的校验数据,处理单元20需更新第一逻辑页码的写入位置,也就是说,处理单元20将第一逻辑页码「L11」、「L12」、「L13」、「L14」、「L15」、「L10」的写入位置分别更新为写入页面112、122、132、114、124、134。基此,处理单元20读取写入页面112、122、132以计算出条带数据16的校验数据为「P2」,并读取写入页面114、124、134以计算出数据条带18的校验数据为「P4」。处理单元20分别将校验数据「P2」、「P4」储存于写入页面142、144。
进一步,在处理单元20更新多个第一逻辑页码之后,相同第一逻辑页码中的先储存者对应旧写入数据,以图3为例,数据条带15、16储存的第一逻辑页码包含多个无效页码,数据条带15中的无效页码的数量为3,且无效的第一逻辑页码为「L11」、「L15」、「L13」,数据条带16中的无效页码的数量为0,数据条带17中的无效页码的数量为3,且无效的第一逻辑页码为「L14」、「L12」、「L10」,而数据条带18中的无效页码的数量为0。另一方面,处理单元20实时地判断是否需要进行垃圾收集(步骤S03),当磁盘11-14的可储存空间低于临界值(或达成自设定的执行垃圾收集的条件)时,例如磁盘11-14的可储存空间剩余20%,或磁盘11-14的可储存空间仅剩保留空间,此时步骤S03的判断结果为「是」,处理单元20开始执行垃圾收集(步骤S04),以释放储存有无效页码的写入页面,即写入页面111、121、131、113、123、133。图5绘示处理单元20执行垃圾收集后释放无效页码的示意图。在一些实施态样中,若步骤S03的判断结果为「否」,则处理单元20重复执行步骤S02以将第一逻辑页码依序且连续地储存于写入页面。
于执行步骤S04之后,若输出入装置所发出的多数数据分别对应于多个第二逻辑页码,此时处理单元20将第二逻辑页码储存于数据条带15-18中所横跨的写入页面中的空白页面。在本实施例中,每一第二逻辑页码所能储存的磁盘亦为固定,即处理单元20将第二逻辑页码写入数据条带15-18所横跨的磁盘11-14中的一指定磁盘的写入页面。此时,处理单元20可选择数据条带15-18中具有最多无效页码的数据条带来储存第二逻辑页码(步骤S05)。以图4为例,数据条带15、17的无效页码的数量最多,处理单元20优先选择数据条带15或数据条带17来储存第二逻辑页码。以处理单元20选择数据条带15且第二逻辑页码依序为「L14」、「L12」、「L10」为例,如图6所示,处理单元20将第二逻辑页码「L14」、「L12」、「L10」依序且连续地储存于数据条带15所横跨的写入页面111、121、131。在一些实施态样中,第二逻辑页码亦可为不重复的逻辑页码,例如,「L16」、「L19」、「L107」,本发明不以此为限。
同理,于执行步骤S04之后,为重新计算数据条带15的校验数据,处理单元20亦记录每一第二逻辑页码的写入位置(步骤S06),如图6所示,处理单元20记录第二逻辑页码「L14」、「L12」、「L10」的写入位置为写入页面111、121、131。基此,处理单元20读取写入页面111、121、131后计算出条带数据15的校验数据为「P5」并将其储存于写入页面141。
在一些实施态样中,第一逻辑页码及第二逻辑页码的状态为有效(valid)或无效(invalid)记录于磁盘11-14中,举例来说,以前述的第一逻辑页码「L14」、「L11」所能储存的指定磁盘为磁盘11,第一逻辑页码「L12」、「L15」所能储存的指定磁盘为磁盘12,第一逻辑页码「L13」、「L10」所能储存的指定磁盘为磁盘13为例,磁盘11记录第一逻辑页码「L14」、「L11」的状态为有效或无效,磁盘12记录第一逻辑页码「L12」、「L15」的状态为有效或无效,磁盘13记录第一逻辑页码「L13」、「L10」的状态为有效或无效。基此,于执行垃圾收集时,处理单元20可藉由轮询每一磁盘来获得数据条带15-18中的无效页码的数量。以图4为例,处理单元20轮询磁盘11后可得知数据条带15-18中的无效页码的数量分别为1、0、1、0,且处理单元20在轮询磁盘12、13后可得知数据条带15、17中的无效页码的数量由1增加为3,而数据条带16、18中不具有无效页码。
图7至图9分别为图1的冗余磁盘阵列系统的第二实施例的第一逻辑页码储存于数据条带15-18的方块示意图。图10为图1的冗余磁盘阵列系统的第二实施例的第一逻辑页码及第二逻辑页码储存于数据条带15-18的方块示意图。请同时参照图7至图10,在第二实施例中,第一逻辑页码与第二逻辑页码可储存于任意的磁盘中,也就是说,即便是先后接收的相同的第一逻辑页码,或相同的第二逻辑页码,处理单元20可选择数据条带15-18所横跨的磁盘11-14中的任意磁盘,并将第一逻辑页码与第二逻辑页码写入任意磁盘的写入页面。如图7所示,以处理单元20于执行步骤S02中所依序接收的第一逻辑页码为「L12」、「L11」、「L14」、「L15」、「L13」、「L10」为例,处理单元20可选择将第一逻辑页码「L12」储存于数据条带15-18所横跨的磁盘11-14,以选择数据条带15为例,处理单元20将第一逻辑页码「L12」储存于条带15所横跨的磁盘11的页面,即写入页面111。接着,处理单元20可将第一逻辑页码「L11」、「L14」写入数据条带15中的连续的写入页面121、131,以选择优先将数据条带15所横跨的连续的写入页面111、121、131填满。或者,在另一些实施态样中,处理单元20亦可将第一逻辑页码「L11」、「L14」写入数据条带16、17、18。最后,处理单元20选择将「L15」、「L13」、「L10」储存于数据条带16以选择优先将数据条带16所横跨的连续的写入页面112、122、132填满。
在第二实施例中,处理单元20亦记录第一逻辑页码及第二逻辑页码的写入位置以计算每一数据条带的校验数据,其已详述于第一实施例,于此不再赘述。处理单元20计算得条带数据15、16的校验数据分别为「P6」、「P7」后将其储存于写入页面141、142。
再者,如图8所示,若处理单元20依序接收的写入数据对应至重复的第一逻辑页码,例如第一逻辑页码依序为「L13」、「L15」、「L12」,此时,处理单元20可将第一逻辑页码「L13」储存于数据条带17或数据条带18,以处理单元20选择数据条带17为例,处理单元20将第一逻辑页码「L13」储存于数据条带17所横跨的磁盘11的页面中,即写入页面113,且处理单元20将第一逻辑页码「L15」写入数据条带17中与写入页面113互为连续的写入页面123,并将第一逻辑页码「L12」写入数据条带17中与写入页面123互为连续的写入页面133,以选择优先将数据条带17填满。另一方面,处理单元20计算条带数据17的校验数据为「P8」后将其储存于写入页面143。
由图8可以得知,多个第一逻辑页码中的一逻辑页码于先后的时间点储存于不同的磁盘中,以第一逻辑页码「L13」为例,于较先的第一时间点,第一逻辑页码「L13」储存于磁盘12中的写入页面122。此时磁盘12中所储存的写入页面122的状态为有效,而处理单元20于较后的第二时间点将第一逻辑页码「L13」储存于与写入页面122位于不同的磁盘(磁盘11)中的另一写入页面113。于是,处理单元20发出一信号来控制磁盘12,以将磁盘12中所储存的写入页面122的状态由有效更新为无效而更新数据条带15-18中的无效页码的数量。
进一步,在处理单元20更新多个第一逻辑页码(第一逻辑页码「L14」、「L10」、「L11」分别更新于写入页面114、124、134,且数据条带18的校验数据为「P9」)之后,如图9所示,数据条带15、16所横跨的磁盘11-13包含多个无效页码,若此时磁盘11-14的可储存空间低于临界值(或达成自设定的执行垃圾收集的条件),处理单元20执行垃圾收集(步骤S04)以释放储存有无效页码的写入页面,即写入页面111、121、131、112、122、132。在第二实施例中,处理单元亦可藉由轮询每一磁盘而获得数据条带15-18中的无效页码的数量。
于执行步骤S04之后,处理单元20接收的多个写入数据对应至第二逻辑页码,此时处理单元20接续执行步骤S05,以依据数据条带15-18中具有无效页码的数量来选择具有最多无效页码的数据条带,举例来说,以图9为例,数据条带15中的无效页码的数量为3,数据条带16中的无效页码的数量为3,数据条带17中的无效页码的数量为0,而数据条带18中的无效页码的数量为0,此时,处理单元20选择数据条带15或数据条带16来储存第二逻辑页码。以选择数据条带15且第二逻辑页码依序为「L12」、「L11」、「L13」为例,如图10所示,处理单元20将第二逻辑页码「L12」、「L11」、「L13」依序储存于数据条带15中,以选择优先将数据条带15所横跨的写入页面111、121、131填满。另一方面,处理单元20计算条带数据15的校验数据为「P10」后将其储存于写入页面141。
在本实施例中,由于第一逻辑页码中的相同者以及第二逻辑页码中的相同者可储存于不同的磁盘中,因此,处理单元20记录每一第一逻辑页码及每一第二逻辑页码的磁盘储存位置。于此,设计每一磁盘11-14对应于一索引值(为方便描述,以下称的为第一索引值),第一索引值可以多数位元表示,且位元的数量对应磁盘的数量,以四个磁盘11-14为例,第一索引值可以2位元来表示,即以位元「00」、「01」、「10」、「11」分别表示磁盘11-14。若磁盘的数量为20,则第一索引值可以5位元来表示;若磁盘的数量为256,则第一索引值可以8位元来表示,其余则依此类推,不再赘述。再者,设计每一第一逻辑页码对应于另一索引值(以下称的为第二索引值),且设计每一第二逻辑页码对应于第二索引值,也就是说,第一逻辑页码及第二逻辑页码可共用对应于第二索引值。处理单元20记录储存有第一逻辑页码的磁盘11-14对应的第一索引值以及对应第一逻辑页码的第二索引值之间的对应关系(即第一逻辑页码的磁盘储存位置)。并且,处理单元20将储存有第二逻辑页码的磁盘11-14对应的第一索引值以及对应第二逻辑页码的第二索引值之间的对应关系(即第二逻辑页码的磁盘储存位置)。在一些实施态样中,磁盘11-14中所储存的第一逻辑页码及第二逻辑页码可为以多数位元所组成的第二索引值。在一些实施态样中,第二索引值的位元数量对应于第一逻辑页码及第二逻辑页码的数量。
请重新参照图7-10,其中的表格分别呈现第一索引值与第二索引值之间的对应关系,以分别表示图7-10所示例的磁盘11-14与第一逻辑页码及第二逻辑页码的磁盘储存位置之间的对应关系。假设磁盘11-14分别对应的第一索引值为「00」、「01」、「10」、「11」,而第一逻辑页码「L10」、「L11」、「L12」、「L13」、「L14」、「L15」对应的第二索引值分别为「000」、「001」、「010」、「011」、「100」、「101」,以图7为例,第一逻辑页码「L12」、「L15」储存于磁盘11,第一逻辑页码「L11」、「L13」储存于磁盘12,第一逻辑页码「L14」、「L10」储存于磁盘13。于是,处理单元20记录位元「00」与位元「010」、「101」的对应关系、位元「01」与位元「001」、「011」的对应关系以及位元「10」与位元「100」、「000」的对应关系。而图8-10中所绘示的第一索引值与第二索引值的对应关系则依此类推不再赘述。
在实作上,处理单元20可为微控制器、微处理机、中央处理器或以专用集成电路(ASIC)来实现;并且,处理单元20可将第一索引值与第二索引值之间的对应关系记录于具有数据储存能力的储存装置中,而此储存装置可为处理单元20的一部分或其他另外设置的储存装置。
综上所述,根据本发明的冗余磁盘阵列系统的一实施例,逻辑页码可储存于任意数据条带,且可优先选择无效页码数量最多的数据条带来储存逻辑页码;并且,进一步藉由记录索引值来储存逻辑页码与其磁盘储存位置的对应关系,如此不但提升了数据条带所横跨的空白写入页面的使用效率,还大幅地降低了采用日志方式所需的存储器容量。
虽然本发明已以实施例揭露如上然其并非用以限定本发明,任何所属技术领域中的技术人员,在不脱离本发明的精神和范围内,当可作些许的更动与润饰,故本发明的保护范围当视后附的权利要求书所界定者为准。

Claims (10)

1.一种冗余磁盘阵列系统,其特征在于,包含:
多数磁盘,每一该磁盘包含多个页面;
多数数据条带,每一该数据条带横跨每一该磁盘的该些页面中的多个写入页面,该些写入页面用以储存多个写入数据及对应该些写入数据的一校验数据,其中每一该写入数据对应一第一逻辑页码;及
一处理单元,用以根据该些写入页面于每一该数据条带中的顺序将该些第一逻辑页码依序且连续地写入该些写入页面,且该处理单元记录每一该第一逻辑页码的写入位置以计算该校验数据,该些第一逻辑页码包含至少一无效页码,该处理单元对该至少一无效页码进行垃圾收集;
其中,于该处理单元执行垃圾收集之后,该处理单元将对应该些写入数据的多数第二逻辑页码依序且连续地写入该些数据条带中具有最多无效页码的数据条带所横跨的该些写入页面,且该处理单元记录每一该第二逻辑页码的写入位置以计算该校验数据。
2.如权利要求1所述的冗余磁盘阵列系统,其特征在于,该处理单元将该些第一逻辑页码及该些第二逻辑页码写入该些数据条带所横跨的该些磁盘中的一指定磁盘的该些写入页面。
3.如权利要求1所述的冗余磁盘阵列系统,其特征在于,该处理单元将该些第一逻辑页码及该些第二逻辑页码写入该些数据条带所横跨的该些磁盘中的一任意磁盘的该些写入页面。
4.如权利要求3所述的冗余磁盘阵列系统,其特征在于,每一该磁盘对应于一第一索引值,该第一索引值以多数位元表示,且该些位元的数量对应该些磁盘的数量,每一该第一逻辑页码及每一该第二逻辑页码分别对应于一第二索引值,该处理单元记录储存该些第一逻辑页码的该些磁盘的该第一索引值与该第二索引值的对应关系,并记录储存该些第二逻辑页码的该些磁盘的该第一索引值与该第二索引值的对应关系。
5.如权利要求3所述的冗余磁盘阵列系统,其特征在于,该些第一逻辑页码中的一逻辑页码于一第一时间点储存于该些写入页面中的一第一写入页面,该处理单元于一第二时间点将该逻辑页码写入该些写入页面中的一第二写入页面,使该第一写入页面的状态由有效更新为无效,其中该第一写入页面与该第二写入页面位于该些磁盘中的不同磁盘。
6.一种数据储存方法,适于一冗余磁盘阵列,该冗余磁盘阵列包含多数磁盘,每一该磁盘包含多个页面,其特征在于,该数据储存方法包含:
建立多数数据条带,每一该数据条带横跨每一该磁盘的该些页面中的多个写入页面,该些写入页面用以储存多个写入数据及对应该些写入数据的一校验数据,其中每一该写入数据对应一第一逻辑页码;
根据该些写入页面于每一该数据条带中的顺序将该些第一逻辑页码依序且连续地写入该些写入页面,该些第一逻辑页码包含至少一无效页码;
记录每一该第一逻辑页码的写入位置以计算该校验数据;
对该至少一无效页码进行垃圾收集;
将对应该些写入数据的多数第二逻辑页码依序且连续地写入该些数据条带中具有最多无效页码的数据条带所横跨的该些写入页面;及
记录每一该第二逻辑页码的写入位置以计算该校验数据。
7.如权利要求6所述的数据储存方法,其特征在于,将该些第一逻辑页码依序且连续地写入该些写入页面的步骤以及将该些第二逻辑页码依序且连续地写入该些数据条带的步骤是将该些第一逻辑页码及该些第二逻辑页码写入该些数据条带所横跨的该些磁盘中的一指定磁盘的该些写入页面。
8.如权利要求6所述的数据储存方法,其特征在于,将该些第一逻辑页码依序且连续地写入该些写入页面的步骤以及将该些第二逻辑页码依序且连续地写入该些数据条带的步骤是将该些第一逻辑页码及该些第二逻辑页码写入该些数据条带所横跨的该些磁盘中的任意磁盘的该些写入页面。
9.如权利要求8所述的数据储存方法,其特征在于,将该些第一逻辑页码及该些第二逻辑页码写入该些数据条带所横跨的该些磁盘中的任意磁盘的步骤包含:
建立每一该磁盘所对应的一第一索引值,该第一索引值以多数位元表示,且该些位元的数量对应该些磁盘的数量;
建立每一该第一逻辑页码所对应的一第二索引值;
建立每一该第二逻辑页码所对应的该第二索引值;
记录储存该些第一逻辑页码的该些磁盘所对应的该第一索引值与该第二索引值的对应关系;及
记录储存该些第二逻辑页码的该些磁盘所对应的该第一索引值与该第二索引值的对应关系。
10.如权利要求6所述的数据储存方法,其特征在于,将该些第一逻辑页码依序且连续地写入该些写入页面的步骤包含:
于一第一时间点将该些第一逻辑页码中的一逻辑页码写入该些写入页面中的一第一写入页面;
记录该第一写入页面的状态为有效;
于一第二时间点将该逻辑页码写入该些写入页面中的一第二写入页面,该第二写入页面与该第一写入页面位于该些磁盘中的不同磁盘;及
将该第一写入页面的状态更新为无效。
CN201610402648.0A 2016-06-08 2016-06-08 冗余磁盘阵列系统及其数据储存方法 Active CN107479824B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201610402648.0A CN107479824B (zh) 2016-06-08 2016-06-08 冗余磁盘阵列系统及其数据储存方法
US15/204,442 US10127106B2 (en) 2016-06-08 2016-07-07 Redundant disk array system and data storage method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610402648.0A CN107479824B (zh) 2016-06-08 2016-06-08 冗余磁盘阵列系统及其数据储存方法

Publications (2)

Publication Number Publication Date
CN107479824A true CN107479824A (zh) 2017-12-15
CN107479824B CN107479824B (zh) 2020-03-06

Family

ID=60572632

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610402648.0A Active CN107479824B (zh) 2016-06-08 2016-06-08 冗余磁盘阵列系统及其数据储存方法

Country Status (2)

Country Link
US (1) US10127106B2 (zh)
CN (1) CN107479824B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111831470A (zh) * 2019-04-18 2020-10-27 上海川源信息科技有限公司 磁盘阵列系统的数据还原方法

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10503425B2 (en) * 2017-08-18 2019-12-10 Seagate Technology Llc Dual granularity dynamic mapping with packetized storage
CN108228376A (zh) * 2017-12-29 2018-06-29 北京联想核芯科技有限公司 一种ssd硬盘的数据处理方法和装置
US10891077B2 (en) * 2018-12-26 2021-01-12 Macronix International Co., Ltd. Flash memory device and controlling method thereof
CN112596673B (zh) * 2020-12-18 2023-08-18 南京道熵信息技术有限公司 具有双重raid数据保护的多活多控存储系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002182860A (ja) * 2000-12-18 2002-06-28 Pfu Ltd ディスクアレイ装置
KR20060067084A (ko) * 2004-12-14 2006-06-19 후지쯔 가부시끼가이샤 스토리지 제어 장치 및 방법
CN101201724A (zh) * 2006-12-11 2008-06-18 富士通株式会社 数据存储装置、重布置数据的方法及其记录介质
CN104471546A (zh) * 2012-02-09 2015-03-25 Tli有限公司 用于提高固态硬盘可靠性的有效的磁盘冗余阵列技法
CN105335098A (zh) * 2015-09-25 2016-02-17 华中科技大学 一种基于存储级内存的日志文件系统性能提高方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8959280B2 (en) * 2008-06-18 2015-02-17 Super Talent Technology, Corp. Super-endurance solid-state drive with endurance translation layer (ETL) and diversion of temp files for reduced flash wear
US8621113B2 (en) * 2011-05-31 2013-12-31 Micron Technology, Inc. Apparatus including host bus adapter and serial attachment programming compliant device and related methods
US9619158B2 (en) * 2014-12-17 2017-04-11 International Business Machines Corporation Two-level hierarchical log structured array architecture with minimized write amplification
KR20160075229A (ko) * 2014-12-19 2016-06-29 삼성전자주식회사 가비지 컬렉션 동작 방법 및 이를 적용하는 레이드 스토리지 시스템
US9606734B2 (en) * 2014-12-22 2017-03-28 International Business Machines Corporation Two-level hierarchical log structured array architecture using coordinated garbage collection for flash arrays
KR102368071B1 (ko) * 2014-12-29 2022-02-25 삼성전자주식회사 레이드 스토리지 시스템에서의 스트라이프 재구성 방법 및 이를 적용한 가비지 컬렉션 동작 방법 및 레이드 스토리지 시스템

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002182860A (ja) * 2000-12-18 2002-06-28 Pfu Ltd ディスクアレイ装置
KR20060067084A (ko) * 2004-12-14 2006-06-19 후지쯔 가부시끼가이샤 스토리지 제어 장치 및 방법
CN101201724A (zh) * 2006-12-11 2008-06-18 富士通株式会社 数据存储装置、重布置数据的方法及其记录介质
CN104471546A (zh) * 2012-02-09 2015-03-25 Tli有限公司 用于提高固态硬盘可靠性的有效的磁盘冗余阵列技法
CN105335098A (zh) * 2015-09-25 2016-02-17 华中科技大学 一种基于存储级内存的日志文件系统性能提高方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111831470A (zh) * 2019-04-18 2020-10-27 上海川源信息科技有限公司 磁盘阵列系统的数据还原方法
CN111831470B (zh) * 2019-04-18 2024-03-08 上海川源信息科技有限公司 磁盘阵列系统的数据还原方法

Also Published As

Publication number Publication date
US20170357547A1 (en) 2017-12-14
CN107479824B (zh) 2020-03-06
US10127106B2 (en) 2018-11-13

Similar Documents

Publication Publication Date Title
CN107479824A (zh) 冗余磁盘阵列系统及其数据储存方法
CN109791520B (zh) 物理介质感知的空间耦合的日志记录和重放
JP6422600B2 (ja) メモリにおけるストライプマッピング
CN109977034B (zh) 数据储存装置以及非挥发式存储器操作方法
JP6855102B2 (ja) 不揮発性メモリ・システムにおけるマルチページ障害の回復
CN104978281B (zh) 数据存储设备中的数据完整性管理
US8996790B1 (en) System and method for flash memory management
KR101910840B1 (ko) 동적 그래뉼기반 매개 스토리지
US8341336B2 (en) Region-based management method of non-volatile memory
CN108733319A (zh) 用于非易失性存储器中的混合推拉数据管理的系统和方法
CN106708751A (zh) 包括用于多模操作的多分区的存储装置及其操作方法
CN106708424A (zh) 对用户数据执行选择性底层暴露映射的设备和方法
KR101678868B1 (ko) 플래시 주소 변환 장치 및 그 방법
KR102603070B1 (ko) 메모리 시스템, 메모리 시스템에 데이터를 기록하는 방법 및 메모리 시스템으로부터 데이터를 판독하는 방법
US20180260331A1 (en) Multibit nand media using pseudo-slc caching technique
US20090204846A1 (en) Automated Full Stripe Operations in a Redundant Array of Disk Drives
CN109976938B (zh) 数据储存装置以及非挥发式存储器操作方法
CN110032521A (zh) 用于增强闪存转换层映射灵活性以得到性能和寿命改进的方法和系统
CN108958656B (zh) 基于raid5固态硬盘阵列的动态条带系统设计方法
CN103793335B (zh) 存储控制设备、存储设备、信息处理系统及存储控制方法
CN103229243A (zh) 用于在非易失性存储设备中以冗余方式存储数据块的存储控制器和系统
CN109426441A (zh) 数据储存装置以及其操作方法
CN104461388A (zh) 一种存储阵列配置保存及仲裁方法
CN103544995B (zh) 一种坏道修复方法及装置
CN108255414A (zh) 固态硬盘访问方法及装置

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
TA01 Transfer of patent application right

Effective date of registration: 20180615

Address after: Taiwan, Taipei, China, Nanhai District, 6 East section 465, 10

Applicant after: Czecho innovation Limited by Share Ltd

Address before: Taiwan, Taipei, China, Nanhai District, 6 East section 465, 10

Applicant before: Jie Ding Internaional, Inc

TA01 Transfer of patent application right
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20200213

Address after: No. 5, 237, 1 Datong Road, Taiwan, Xinbei City, Xinbei City, China

Applicant after: INNODISK Corp.

Address before: Taiwan, Taipei, China, Nanhai District, 6 East section 465, 10

Applicant before: AccelStor, Inc.

GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20200611

Address after: 04-95, Fanglin building, 531a, upper section of Klaus street, Singapore

Patentee after: Jieding Singapore Pte Ltd

Address before: No. 5, 237, 1 Datong Road, Taiwan, Xinbei City, Xinbei City, China

Patentee before: INNODISK Corp.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20200810

Address after: Building C, No. 888, Huanhu West 2nd Road, Lingang New Area, Pudong New Area (Shanghai) pilot Free Trade Zone

Patentee after: Shanghai Chuanyuan Information Technology Co., Ltd

Address before: Fong Lam building, 531a upper cross street, Singapore 051531

Patentee before: Jieding Singapore Pte Ltd

TR01 Transfer of patent right