CN103718186A - 存储系统及数据操作请求处理方法 - Google Patents

存储系统及数据操作请求处理方法 Download PDF

Info

Publication number
CN103718186A
CN103718186A CN201380001830.XA CN201380001830A CN103718186A CN 103718186 A CN103718186 A CN 103718186A CN 201380001830 A CN201380001830 A CN 201380001830A CN 103718186 A CN103718186 A CN 103718186A
Authority
CN
China
Prior art keywords
time
clock
storage system
reference clock
real
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
CN201380001830.XA
Other languages
English (en)
Other versions
CN103718186B (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN103718186A publication Critical patent/CN103718186A/zh
Application granted granted Critical
Publication of CN103718186B publication Critical patent/CN103718186B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/1805Append-only file systems, e.g. using logs or journals to store data
    • G06F16/181Append-only file systems, e.g. using logs or journals to store data providing write once read many [WORM] semantics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/72Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
    • G06F21/725Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits operating on a secure reference time value
    • 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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/0757Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Quality & Reliability (AREA)
  • Electric Clocks (AREA)

Abstract

本发明实施例提供了一种存储系统及数据操作请求处理方法。该方法应用于具有“一次写入多次读取”(Write Once Read Many,WORM)的功能的存储系统中,该方法包括:接收应用服务器发送的数据操作请求,所述数据操作请求用于对存储于所述存储系统中的数据进行变更;获取实时时钟与参考时钟的时间差,其中,所述实时时钟用于为所述存储系统提供系统时间,所述参考时钟在系统运行过程中无法被修改;判断所述时间差是否大于所述参考时钟的时间精度累计误差;若所述时间差大于所述时间精度累计误差,则拒绝执行所述数据操作请求。本发明实施例提供的数据操作请求处理方法能够提高存储于存储系统中的数据的安全性。

Description

存储系统及数据操作请求处理方法
技术领域
本发明涉及存储技术领域,尤其涉及存储系统及数据操作请求处理方法。
背景技术
现代企业需要存储的重要文件越来越多,为了满足企业对这些重要文件的查询需求,以及为了满足相关存储法规对文件审计的要求,越来越多的存储系统支持“一次写入多次读取”(Write Once Read Many,WORM)的功能。支持WORM功能的存储系统能够为用户指定的文件设定保护期限,在该保护期限内,该文件的安全属性通常被设置为只读属性。在保护期限内,该文件只能被读取而不能被修改或删除。当达到该文件的保护期限时,才可以根据用户的需求对该文件的安全属性进行修改或删除。并且,通常,在文件的保护期限内,用户也不能对设定的保护期限进行修改,以最大限度的保证文件的安全性。
文件的保护期限与存储系统的系统时钟密切相关,文件的保护期限是根据存储系统的系统时钟计算获得的。如果存储系统的系统时钟被恶意更改,文件的实际保护期限则会被改变,则文件的安全属性和文件内容就可能被变更,进而影响了文件的安全性。
现有技术中,为了保证存储系统有一个可信的系统时钟,通常会在存储系统的控制器中的南桥中集成一个实时时钟(Real Time Clock,RTC)。实时时钟是指能够像时钟一样输出实际时间的电子设备,实时时钟一般可以是集成电路,因此也可称为时钟芯片。实时时钟通常可以应用在个人电脑、服务器、存储系统或嵌入式系统等需要精确时间的系统中。当存储系统的控制器中的处理器上电时,处理器读取南桥芯片中集成的RTC的时间,将RTC的时间作为存储系统的系统时钟。然而,现有技术中,入侵者很容易通过修改集成在南桥芯片中的RTC时钟来达到修改存储系统的系统时钟的目的,从而达到修改文件的保护期限的目的,影响了文件的安全性。
发明内容
本发明实施例中提供了一种数据操作请求处理方法及存储系统,能够提高存储系统中存储的数据的安全性。
第一方面,本发明实施例提供了一种存储系统,该存储系统为具有“一次写入多次读取”(Write Once Read Many,WORM)的功能的存储系统,包括存储设备和控制器,所述存储设备用于存储数据,所述控制器包括实时时钟、参考时钟和处理器。所述实时时钟用于为所述存储系统提供系统时间。所述参考时钟用于对所述存储系统的系统时间进行校验。所述参考时钟在系统运行过程中无法被修改。所述处理器用于接收应用服务器发送的数据操作请求,所述数据操作请求用于对存储于所述存储设备中的数据进行变更;获取所述实时时钟与所述参考时钟的时间差;判断所述时间差是否大于所述参考时钟的时间精度累计误差;若所述时间差大于所述时间精度累计误差,则拒绝执行所述数据操作请求。
结合第一方面,在第一种可能的实现方式中,所述存储系统还包括:单板管理控制器(Board Manage Controller,BMC),用于读取所述参考时钟的时间寄存器的值,获得所述参考时钟的时间。所述处理器具体用于读取实时时钟的时间寄存器的值,以获得所述实时时钟的时间,通过所述BMC与南桥芯片之间的通信通道获得所述参考时钟的时间,并根据所述实时时钟的时间以及所述参考时钟的时间获得所述时间差。
结合第一方面以及第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述处理器还用于:若所述时间差不大于所述时间精度累计误差,则判断所述实时时钟的当前时间是否大于所述数据操作请求指向的数据的保护时间;若所述实时时钟的当前时间大于所述保护时间,则执行所述数据操作请求。
结合第一方面的第二种可能的实现方式,在第三种可能的实现方式中,所述处理器还用于若所述实时时钟的当前时间不大于所述保护时间,则拒绝执行所述数据操作请求。
结合第一方面或者第一方面的第一种至第三种任意一种可能的实现方式,在第四种可能的实现方式中,所述处理器还用于:按照设定的时间间隔判断所述时间差是否大于所述参考时钟的时间精度累计误差;若所述时间差大于所述时间精度累计误差,则将所述实时时钟的时间与所述参考时钟的时间保持同步。
结合第一方面或者第一方面的第一种至第四种任意一种可能的实现方式,在第五种可能的实现方式中,所述处理器还用于根据所述存储系统的生命周期以及所述参考时钟的时间精度误差来确定所述参考时钟的时间精度累计误差。
结合第一方面或者第一方面的第一种至第四种任意一种可能的实现方式,在第六种可能的实现方式中,所述处理器还用于根据所述存储系统的运行时间以及所述参考时钟的时间精度误差来确定所述参考时钟的时间精度累计误差。
结合第一方面或者第一方面的第一种至第六种任意一种可能的实现方式,在第七种可能的实现方式中,所述存储系统还包括备电设备,该备电设备用于在所述存储系统掉电时,为所述实时时钟以及所述参考时钟提供电源。
第二方面,本发明实施例提供了一种数据操作请求处理方法,该方法应用于具有“一次写入多次读取”(Write Once Read Many,WORM)的功能的存储系统中,该方法包括:接收应用服务器发送的数据操作请求,所述数据操作请求用于对存储于所述存储系统中的数据进行变更;获取实时时钟与参考时钟的时间差,其中,所述实时时钟用于为所述存储系统提供系统时间,所述参考时钟在系统运行过程中无法被修改;判断所述时间差是否大于所述参考时钟的时间精度累计误差;若所述时间差大于所述时间精度累计误差,则拒绝执行所述数据操作请求。
结合第二方面,在第一种可能的实现方式中,所述获取实时时钟与参考时钟的时间差包括:读取所述实时时钟的时间寄存器的值以获得所述实时时钟的时间;通过南桥芯片与单板管理控制器(Board Manage Controller,BMC)之间的通信通道获得所述参考时钟的时间;比较所述实时时钟的时间与所述参考时钟的时间,获得所述实时时钟与所述参考时钟的时间差。
结合第二方面或第二方面的第一种可能的实现方式,在第二种可能的实现方式中,该方法还包括:若所述时间差不大于所述时间精度累计误差,则判断所述实时时钟的当前时间是否大于所述数据操作请求指向的数据的保护时间;若所述实时时钟的当前时间大于所述保护时间,则执行所述数据操作请求。
结合第二方面的第二种可能的实现方式,在第三种可能的实现方式中,该方法还包括:若所述实时时钟的当前时间不大于所述保护时间,则拒绝执行所述数据操作请求。
结合第二方面或第二方面的第一种至第三种任意一种可能的实现方式,在第四种可能的实现方式中,该方法还包括:按照设定的时间间隔判断所述时间差是否大于所述参考时钟的时间精度累计误差;若所述时间差大于所述时间精度累计误差,则将所述实时时钟的时间与所述参考时钟的时间保持同步。
结合第二方面或第二方面的第一种至第四种任意一种可能的实现方式,在第五种可能的实现方式中,该方法还包括:根据所述存储系统的生命周期以及所述参考时钟的时间精度误差确定所述参考时钟的时间精度累计误差。
结合第二方面或第二方面的第一种至第四种任意一种可能的实现方式,在第六种可能的实现方式中,该方法还包括:根据所述存储系统的运行时间以及所述参考时钟的时间精度误差来确定所述参考时钟的时间精度累计误差。
第三方面,本发明实施例提供了一种非短暂性的机器可读介质,用于存储可执行上述方法的计算机指令。
本发明实施例提供的存储系统,包括了在存储系统运行过程中无法被修改的参考时钟,并通过将实时时钟与参考时钟的时间差与参考时钟的时间精度累计误差进行比较来判断是否执行对存储于存储系统中的数据的变更操作,从而能够防止因实时时钟被恶意修改而导致的存储系统中存储的数据被恶意变更,提高了存储的数据的安全性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍。
图1是本发明实施例提供的一种存储系统的应用场景示意图;
图2本发明实施例提供的一种的存储系统中的控制器的结构示意图;
图3为本发明实施例提供的一种数据操作请求处理方法的流程图;
图4为本发明实施例提供的一种存储系统的系统时钟维护方法的流程图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。
图1是本发明实施例提供的一种存储系统的应用场景示意图。如图1所示,在该应用场景下,应用服务器110通过连接设备与存储系统100进行通信。应用服务器110中可以安装有操作系统以及其他应用程序。应用服务器110可以通过连接设备向存储系统100发送数据操作请求,用于对存储系统100中的数据进行修改或读取等操作。其中,应用服务器110可以包括数据库服务器、邮件服务器等应用服务器。连接设备可以包括当前技术已知的存储系统和应用服务器之间的任何接口,如光纤交换机、以太网交换机或者其他现有的交换机。根据这种连接方式,应用服务器110可以通过光纤通道、以太网或其他通信方式与存储系统100通信。应用服务器110可以有多个。
时间服务器120是一种网络服务器。时间服务器120从原子钟、GPS时钟或另一时间服务器等获得时间信息,并将获得的时间信息通过网络(Internet)传递给网络设备,例如存储系统100,从而能够为用户提供精确、标准、安全和可靠的时间服务。
存储系统100为支持“一次写入多次读取”(Write Once Read Many,WORM)的功能的存储系统。存储系统100包括控制器105以及磁盘108。其中,控制器105用于根据应用服务器110发送的操作请求对磁盘108中存储的数据进行操作。磁盘108用于存储数据。可以理解的是,磁盘108可以为一个,也可以有多个。需要说明的是,磁盘108仅仅是本发明实施例中所示的存储设备的一种示例,除了磁盘之外,存储设备还可以包括廉价磁盘阵列(RedundantArrays of Inexpensive Disks,RAID)、磁盘簇(Just a Bunch Of Disks,JBOD)、直接存取存储器(Direct Access Storage Device,DASD)的一个或多个互连的磁盘驱动器,其中,直接存取存储器可以包括诸如磁带库、一个或多个存储单元的磁带存储设备。在本发明实施例中不对存储系统100中的存储设备进行限定。
存储系统100将从时间服务器120获得的网络时间作为系统时钟。在存储系统100的运行过程中,存储系统100通过时间同步协议使存储系统100的系统时钟与时间服务器120保持时间同步,并将系统时钟作为磁盘108中存储的数据的存储期限的判断依据。时间同步协议包括但不限于网络时间协议(Network Time Protocol,NTP)、简单网络时间协议(Simple Network TimeProtocol,SNTP)以及精确时间协议(Precision Timing Protocol,PTP)。其中,PTP是IEEE1588标准的简称,IEEE1588标准的全称是“网络测量和控制系统的精密时钟同步协议标准(IEEE1588Precision Clock Synchronization Protocol)”。
图2为本发明实施例提供的一种存储系统的控制器结构示意图。如图2所示,控制器105可以包括:处理器200、存储器205、南桥芯片(South Bridge)210、实时时钟(Real Time Clock,RTC)215、单板管理控制器(Board ManageController,BMC)220、参考时钟225、电源230以及电池235。其中,处理器200与存储器205之间通过内存总线进行通信。处理器200与南桥芯片210通过通信总线通信,其中,通信总线可以包括高速外围组件互联(PeripheralComponent Interconnect Express,PCI-E)总线或直接媒体接口(Direct MediaInterface,DMI)总线等通信总线。
存储器205,用于存放程序2051。存储器205可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可以理解的是,存储器205可以为随机存储器(Random-AccessMemory,RAM)、磁碟、硬盘、光盘、固态硬盘(Solid State Disk,SSD)或者非易失性存储器等各种可以存储程序代码的非短暂性的(non-transitory)机器可读介质,在此不做限定。
程序2051可以包括程序代码,所述程序代码包括计算机操作指令。
南桥芯片210用于负责处理器200与外部设备之间的通信,以实现处理器对外设部件互连标准(Peripheral Component Interconnect,PCI)接口设备、通用串行总线(Universal Serial Bus,USB)接口设备、实时时钟(Real Time Clock,RTC)等设备的控制。此外,南桥芯片210还可以通过串行ATA(Serial AdvancedTechnology Attachment,SATA)接口连接磁盘108。南桥芯片包括但不限于集成南桥,例如平台控制中枢(Platform Controller Hub,PCH)。
实时时钟215可以是南桥芯片210中内嵌的一个实时时钟功能电路,是存储系统的系统时钟的时钟源。在实际应用中,在存储系统100初始上电时,可以通过时间同步协议将实时时钟215的初始时间与时间服务器120的时间保持一致。例如,在t1时刻,处理器200可以根据NTP协议向时间服务器120发送同步报文,该同步报文于t2时刻到达时间服务器120,时间服务器120于t3时刻向处理器200返回所述同步报文的响应报文,该响应报文中携带有t2时刻和t3时刻的时间信息,该响应报文于t4时刻到达处理器200。处理器200可以计算[(t2-t1)+(t3-t4)]/2的值,将计算获得的值作为实时时钟215与时间服务器120的时间差Δt。处理器200可以通过读取实时时钟215的时间寄存器的值获得实时时钟215的当前时间T1,并将T1-Δt的值写入实时时钟215的时间寄存器,作为实时时钟215的初始时间。通过上述方式可以将实时时钟215的初始时间与时间服务器120的时间保持一致。在存储系统运行过程中,实时时钟215也可以通过时间同步协议与时间服务器120保持时间同步,从而能够为存储系统提供准确的系统时间。
由于实时时钟215集成在南桥芯片210中,实时时钟215的读写IO地址是对任何人公开的,因此,处理器200可以通过inb或outb指令对RTC215的时钟寄存器进行访问。例如,处理器200可以通过inb指令读取RTC215的时钟寄存器的值,获得RTC215的当前时间,并将RTC215的时间作为系统时钟的当前时间。处理器200还可以通过outb指令修改RTC215的时钟寄存器的值,以修改RTC215的时间,从而达到修改系统时钟的时间的目的。可以理解的是,实时时钟215的时间是以XXXX年XX月XX日XX时XX分XX秒的格式呈现的。
由于处理器200可以通过outb指令修改RTC215的时钟寄存器的值,且RTC215在存储系统运行过程中通常与时间服务器120的时间保持同步,因此入侵者可以通过修改RTC215的时钟寄存器的值修改RTC215的时间,达到修改系统时间的目的。入侵者还可以通过修改存储系统100与时间服务器120之间的网络连接,将存储系统100与虚假的时间服务器连接,从而通过时间同步协议使得RTC215的时间与虚假的时间服务器的时间保持同步,以达到修改系统时间的目的。因此在存储系统100运行的过程中,RTC215的时间可能被恶意修改。
单板管理控制器220,用于对控制器单板的管理,包括对控制器中的电源管理、参数配置以及维护等。单板管理控制器220可以是一颗嵌入式处理器。单板管理控制器220可以通过串口或先入先出(First In First Out,FIFO)接口与南桥芯片210进行通信。
参考时钟225,用于对所述存储系统的系统时间进行校验。参考时钟225可以是一颗独立的具有实时时钟功能的芯片或者一个独立的实时时钟功能电路模块。在本发明实施例中,在存储系统100运行过程中,参考时钟225无法被修改。参考时钟225的时间也是以XXXX年XX月XX日XX时XX分XX秒的格式呈现的。参考时钟225的时间精度比实时时钟215的时间精度高,通常参考时钟225的时间精度为几个ppm,其中,1ppm等于百万分之一(即1ppm=1*10-6)。通常,参考时钟225的时间精度误差比较小,例如,参考时钟225的时间精度为±2ppm,根据这种方式,参考时钟225运行1秒,存在小于2ppm的误差。可以理解的是,实际应用中,由于参考时钟225的时间精度要求比较高,因此,参考时钟225的时间精度误差可以不超过±5ppm。根据设定的参考时钟225的时间精度误差可以获得所述存储系统中参考时钟225的时间精度累计误差。例如,若参考时钟225的时间精度误差为5ppm,则以一年为365天为例进行计算,参考时钟225在一年内的时间精度误差的总和大约为:60*60*24*365*5*10-6=157.68秒。根据这种方式,参考时钟225运行365天,允许的误差的最大值为157.68秒。
参考时钟225提供有一个外部访问接口,该外部访问接口可以是集成电路(Inter-Integrated Circuit,I2C)接口。单板管理控制器220通过参考时钟225提供的外部访问接口对参考时钟225进行控制,例如,单板管理控制器220可以通过参考时钟225提供的I2C接口读取或修改参考时钟225的时间寄存器的值,其中I2C接口可以为一种串行通信总线接口。在本发明实施例中,由于参考时钟225并没有集成在南桥芯片210中,因此,处理器200无法通过inb或outb指令对参考时钟225的时钟寄存器进行访问。处理器200可以通过南桥芯片210与单板管理控制器220之间的通信通道获得参考时钟225的时间寄存器的值,以获取参考时钟225的时间。
在本发明实施例中,当存储系统100初次上电时,管理员可以通过单板管理控制器220的管理接口启动参考时钟225的时间管理程序,通过单板管理控制器220与参考时钟225之间的I2C接口,将参考时钟225的初始时间设定为与实时时钟215的时间一致。其中,参考时钟225的时间管理程序可以存储在单板管理控制器220的程序存储器中。在将参考时钟225的初始时间设定后,删除参考时钟225的时间管理程序,使参考时钟225的时间无法被更改,以便参考时钟225能够为存储系统100提供一个准确的校验时间。
电源230,用于给控制器105供电,以实现对实时时钟215和参考时钟225供电,使实时时钟215和参考时钟225能够正常计时。
电池235,用于当存储系统100出现故障,电源230无法供电时,为实时时钟215和参考时钟225提供电源。电池235可以是锂电池。需要说明的是,电池235仅仅是备电设备的一种示例,实际应用中,备电设备还可以包括超级电容等供电器件。
处理器200,可能是一个中央处理器CPU,或者是特定集成电路(Application Specific Integrated Circuit,ASIC),或者是被配置成实施本发明实施例的一个或多个集成电路。在本发明实施例中,处理器200用于执行程序,具体可以执行下述图3至图5所示的方法实施例中的相关步骤。
图3为本发明实施例提供的一种数据操作请求处理方法的流程图。该方法可以应用于图1中所示的存储系统100中,其中,存储系统100为支持“一次写入多次读取”(Write Once Read Many,WORM)的功能的存储系统。该方法可以由图1或图2中所示的存储系统100的控制器105来执行,具体的可以由控制器105中的处理器200来执行。下面将结合图1及图2对图3中所示的方法进行描述。如图3所示,该方法可以包括:
在步骤300中,存储系统100接收应用服务器110发送的数据操作请求,所述数据操作请求用于对存储于存储系统100中的数据进行变更。其中,本发明实施例中描述的存储于存储系统100中的数据是指已经写入存储系统100,并在设定的保护期限内能只能进行读取操作的数据。换一种表达方式,本发明实施例中描述的数据是指在设定的保护期限内具有只读属性的数据。本发明实施例中描述的对数据的变更包括对数据的修改、删除或增加等除了读取操作之外的能够使已存储的数据内容产生变化的操作。
在步骤310中,存储系统100获取实时时钟215与参考时钟225的时间差。其中,所述实时时钟215与时间服务器120同步,所述参考时钟225的时间在存储系统100运行过程中无法被修改。
在存储系统100接收到应用服务器110发送的数据操作请求后,为了确定实时时钟215的时间没有被恶意修改,存储系统100可以获取实时时钟215与参考时钟225的时间差,通过参考时钟225对实时时钟215的时间进行校验。具体的,存储系统100的处理器200可以通过图4所述的方法流程获得获取实时时钟215与参考时钟225的时间差。如图4所示,该方法包括:
在步骤400中,存储系统100读取实时时钟215的时钟寄存器的值,以获得所述实时时钟215的时间。具体的,处理器200可以通过inb指令读取RTC215的时钟寄存器的值,获得RTC215的当前时间。例如RTC215的时间可以为:2015年01月01日23时00分00秒。
在步骤405中,存储系统100通过BMC220与南桥芯片210之间的通信通道获得参考时钟225的时间。由于参考时钟225由BMC220进行管理,BMC220可以通过参考时钟225与BMC220之间的I2C接口读取参考时钟225的时间寄存器的值,以获得参考时钟225的当前时间。从而,处理器200可以通过BMC220与南桥芯片210之间的通信通道从BMC220处获得参考时钟225的当前时间。例如,处理器200通过通信通道向BMC220发起读取参考时钟225时间的请求,BMC220根据处理器200的请求读取参考时钟225的寄存器的值,再通过该通信通道将参考时钟225的寄存器的值返回给处理器200,从而处理器200能够知道参考时钟225的当前时间。参考时钟225的当前时间可以为:2013年01月01日01时00分00秒。
在步骤410中,存储系统100根据实时时钟215的时间以及参考时钟225的时间获得所述时间差。具体的,处理器200可以根据实时时钟215的时间与参考时钟225的时间的差值获得实时时钟215与参考时钟225的时间差。例如,在上述示例中,实时时钟215与参考时钟225的时间差可以为:2015年01月01日23时00分00秒与2013年01月01日01时00分00秒的差值,根据这种方式,实时时钟215与参考时钟225的时间差为17542小时。
在步骤310中,存储系统100判断所述时间差是否大于参考时钟225的时间精度累计误差。在一种实施方式中,参考时钟225的时间精度累计误差可以预先设定,具体的,可以预先根据存储系统100的生命周期与参考时钟225的时间精度误差来确定参考时钟225的时间精度累计误差。例如,若存储系统100的生命周期为10年,若如前示例,参考时钟225的时间精度误差为±5微秒,参考时钟225运行一年的时间精度误差为157.68秒,则参考时钟225的时间精度累计误差为:10年*157.68秒/年=1576.8秒。
在另一种实施方式中,参考时钟225的时间精度累计误差还可以根据存储系统100的运行时间以及参考时钟225的时间精度误差来确定。具体的,可以记录存储系统100初始上电运行时参考时钟225的初始时间,并通过计算收到数据操作请求时参考时钟225的当前时间与参考时钟225的初始时间的差值来获得存储系统100的运行时间,进而能够根据存储系统100的运行时间与参考时钟225的时间精度误差获得参考时钟225的时间精度累计误差。例如,若存储系统100当前运行了5年,且参考时钟225运行一年的时间精度误差为157.68秒,则参考时钟225的时间精度累计误差为:5年*157.68秒/年=788.4秒。在本发明实施例中不对参考时钟225的时间精度累计误差的获得方式进行限定。
在获得实时时钟215与参考时钟225的时间差后,处理器200可以判断将该时间差与参考时钟225的时间精度累计误差进行比较,判断所述时间差是否大于参考时钟225的时间精度累计误差。例如,如前述示例,实时时钟215与参考时钟225的时间差为17542小时,参考时钟225的时间精度累计误差为1576.8秒,则实时时钟215与参考时钟225的时间差大于参考时钟225的时间精度累计误差。如果所述时间差大于参考时钟225的时间精度累计误差,则该方法进入步骤315,如果所述时间差不大于参考时钟225的时间精度累计误差,则该方法进入步骤320。
在步骤315中,存储系统100拒绝执行所述数据操作请求。由于如前所述,在存储系统100运行过程中,RTC215可能被恶意修改,而参考时钟225在存储系统100运行过程中无法被修改,参考时钟225在存储系统100运行过程中也不与时间服务器120保持同步。因此,参考时钟225的时间不存在被恶意修改的可能,参考时钟225的时间比实时时钟215的时间更可信。在本发明实施例中,若在步骤310中,处理器200判断实时时钟215与参考时钟225的时间差大于参考时钟225的时间精度累计误差,则说明实时时钟215已经被恶意修改。为了保护存储系统100中存储的数据的安全性,存储系统100可以拒绝执行所述数据操作请求,拒绝根据接收的数据操作请求对存储与存储系统100中的数据进行变更。
可以理解的是,若所述实时时钟215和参考时钟225的时间差大于所述参考时钟225的时间精度累计误差时,存储系统100在拒绝执行所述数据操作请求的同时,还可以发出告警,并将实时时钟215的时间同步为参考时钟225的时间,从而达到修正存储系统100的系统时钟的目的。
在步骤320中,存储系统100判断实时时钟215的当前时间是否大于所述数据操作请求指向的数据的保护期限。例如,若为了满足数据存储法规的要求,数据操作请求要变更的数据的保护期限为2015年01月01日00时00分00秒,也就是说,该数据需要到2015年01月01日00时00分00秒后才能被修改或删除。若在步骤310中,存储系统100判断实时时钟215与参考时钟225的时间差不大于参考时钟225的时间精度累计误差,则存储系统100需要进一步判断实时时钟215的当前时间是否大于所述数据操作请求指向的数据的保护期限,如果实时时钟215的当前时间不大于所述数据操作请求指向的数据的保护期限,则说明该数据操作请求指向的数据还处于保护期限内,不能对该数据进行修改或删除操作,则该方法进入步骤315,存储系统100拒绝执行所述数据操作请求。如果实时时钟215的当前时间大于所述数据操作请求指向的数据的保护期限,则说明该数据操作请求指向的数据已经过了保护期限,可以对该数据进行修改或删除等变更操作。
例如:若实时时钟215的当前时间为2013年01月01日00时00分00秒,数据操作请求要变更的数据的保护期限为2015年01月01日00时00分00秒,则说明该数据还处于保护期限内,则进入步骤315,存储系统100拒绝执行所述数据操作请求。若实时时钟215的当前时间为2013年01月01日00时00分00秒,数据操作请求要变更的数据的保护期限为2012年01月01日00时00分00秒,则说明该数据已经过了保护期限,该方法进入步骤325。
在步骤325中,存储系统100执行所述数据操作请求。例如,存储系统100可以根据所述数据操作请求对存储的数据进行删除或修改等能够改变已存储的数据内容的变更操作。
本发明实施例所述的数据操作请求的处理方法中,当存储系统100接收到应用服务器发送的数据操作请求时,存储系统100通过参考时钟225的时间对实时时钟215的时间进行校验,若实时时钟215与参考时钟225的时间差大于参考时钟225的时间精度累计误差,则拒绝执行所述数据操作请求。由于参考时钟225在存储系统运行过程中无法被修改,因此,参考时钟225的时间比实时时钟215的时间更为准确。本发明实施例通过将实时时钟215与参考时钟225的时间差与参考时钟225的时间精度累计误差进行比较来判断是否执行对数据的变更操作,从而能够防止因实时时钟215被恶意修改而导致的存储系统中存储的数据被恶意变更,提高了存储的数据的安全性。
在另一方面,为了使存储系统100有一个更可靠的系统时钟,本发明实施例还提供了一种对存储系统100的系统时钟进行维护的方法,该方法依然可以由图1或图2中所示的存储系统100中的控制器105来执行。下面结合图1及图2对图4中的方法进行描述,如图4所示,该方法包括:
在步骤405中,控制器105监测存储系统100的运行时间。具体的,可以在存储系统100初始上电时开始监控存储系统100的运行时间,其中,存储系统100的系统时钟的初始时间为实时时钟215的初始时间,实时时钟215的初始时间为存储系统100初始上电时同步的时间服务器120的时间。换一种表达方式,存储系统100的系统时钟的初始时间与存储系统100初始上电时时间服务器120的时间相同。本领域人员可以知道,在存储系统100的运行过程中,实时时钟215会与时间服务器120保持同步。
在步骤410中,控制器105可以判断存储系统100的运行时间是否达到设置的时间。可以理解的是,可以设置一个固定时间周期,例如1个月或6个月等等,当然,设置的时间也可以不是一个固定的时间周期,例如可以设置为运行到XX年XX月XX日。在此不对设置的时间做限定。如果运行时间达到设置时间,则该方法进入步骤415,否则返回步骤405,继续监测存储系统100的运行时间。
在步骤415中,控制器105获取实时时钟215与参考时钟225的时间差,其中,所述实时时钟215与时间服务器120同步,所述参考时钟225在系统运行过程中无法被修改。步骤415与图3中步骤305类似,具体可以参见前述对图3中步骤305的描述。
在步骤420中,控制器105判断所述时间差是否大于参考时钟225的时间精度累计误差。若所述时间差大于参考时钟225的时间精度累计误差,该方法进入步骤425,否则,返回执行步骤405,继续监测存储系统100的运行时间。步骤420与图3中步骤310类似,具体可以参见前述对图3中步骤310的描述。
在步骤425中,控制器105发出告警,并将实时时钟215的时间同步为参考时钟225的时间。由于参考时钟225的时间精度通常比实时时钟215的时间精度高,且在系统运行的过程中参考时钟225无法被修改,因此参考时钟225的时间更加准确。为了给存储系统100提供一个更准确的系统时间,存储系统100可以在系统的运行时间达到设置的时间时,利用参考时钟225对实时时钟215进行校正。
通过图4所示的系统时钟的维护方法,本发明实施例提供的存储系统100的系统时钟不仅与时间服务器120保持同步,同时还利用参考时钟225对实时时钟215进行校正,从而使存储系统100有一个更加准确的系统时间。
本发明实施例中,对参考时钟和系统时钟的具体形式并不进行限定。在另一种情形下,例如,在存储系统100中包含多个嵌入式CPU的情况下,还可以在多个嵌入式CPU下增加实时时钟,根据这种方式,一个存储系统中可以有多个实时时钟。在这种情形下,在第一种方式中,可以通过选举的方式,确定一个实时时钟为该存储系统的系统时钟的时钟源。当处理数据操作请求或需要根据校正系统时钟时,可以根据将多个实时时钟的时间进行比较,若所述多个实时时钟中半数以上的时钟的时间相同,则将该半数以上实时时钟的时间作为参考时钟。在第二种方式中,还可以通过将存储系统中的多个实时时钟的时间进行比较,若所述多个实时时钟中半数以上的时钟的时间相同,则将该半数以上实时时钟的时间作为该存储系统的系统时间,以为存储系统提供一个可靠、准确的系统时间。
可以理解的是,本发明实施例同样适用于包含文件系统的存储系统中,换一种表达方式,本发明实施例所述的数据还可以以文件的形式存储于存储系统中。无论是针对存储系统中的数据块的操作还是对存储系统中的文件的操作,均可适用本发明实施例所述的方法。
需要说明的是,本申请所提供的实施例仅仅是示意性的。所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。在本发明实施例、权利要求以及附图中揭示的特征可以独立存在也可以组合存在。在本发明实施例中以硬件形式描述的特征可以通过软件来执行,反之亦然。在此不做限定。

Claims (15)

1.一种存储系统,所述存储系统为具有“一次写入多次读取”(Write OnceRead Many,WORM)的功能的存储系统,其特征在于,包括:
存储设备,用于存储数据;
控制器,包括:
实时时钟,用于为所述存储系统提供系统时间;
参考时钟,用于对所述存储系统的系统时间进行校验,所述参考时钟在系统运行过程中无法被修改;
处理器,用于接收应用服务器发送的数据操作请求,所述数据操作请求用于对存储于所述存储设备中的数据进行变更;
获取所述实时时钟与所述参考时钟的时间差;
判断所述时间差是否大于所述参考时钟的时间精度累计误差;
若所述时间差大于所述时间精度累计误差,则拒绝执行所述数据操作请求。
2.根据权利要求1所述的存储系统,其特征在于,还包括:
单板管理控制器(Board Manage Controller,BMC),用于读取所述参考时钟的时间寄存器的值,获得所述参考时钟的时间;
所述处理器具体用于:
读取实时时钟的时间寄存器的值,以获得所述实时时钟的时间;
通过所述BMC与南桥芯片之间的通信通道获得所述参考时钟的时间;
根据所述实时时钟的时间以及所述参考时钟的时间获得所述时间差。
3.根据权利要求1-2任意一项所述的存储系统,其特征在于,所述处理器还用于:
若所述时间差不大于所述时间精度累计误差,则判断所述实时时钟的当前时间是否大于所述数据操作请求指向的数据的保护时间;
若所述实时时钟的当前时间大于所述保护时间,则执行所述数据操作请求。
4.根据权利要求3所述的存储系统,其特征在于,所述处理器还用于:
若所述实时时钟的当前时间不大于所述保护时间,则拒绝执行所述数据操作请求。
5.根据权利要求1-4任意一项所述的存储系统,其特征在于,所述处理器还用于:
按照设定的时间间隔判断所述时间差是否大于所述参考时钟的时间精度累计误差;
若所述时间差大于所述时间精度累计误差,则将所述实时时钟的时间与所述参考时钟的时间保持同步。
6.根据权利要求1-5任意一项所述的存储系统,其特征在于,所述处理器还用于根据所述存储系统的生命周期以及所述参考时钟的时间精度误差来确定所述参考时钟的时间精度累计误差。
7.根据权利要求1-5任意一项所述的存储系统,其特征在于,所述处理器还用于根据所述存储系统的运行时间以及所述参考时钟的时间精度误差来确定所述参考时钟的时间精度累计误差。
8.根据权利要求1-7任意一项所述的存储系统,其特征在于,还包括:
备电设备,用于在所述存储系统掉电时,为所述实时时钟以及所述参考时钟提供电源。
9.一种数据操作请求处理方法,所述方法应用于具有“一次写入多次读取”(Write Once Read Many,WORM)的功能的存储系统中,其特征在于,所述方法包括:
接收应用服务器发送的数据操作请求,所述数据操作请求用于对存储于所述存储系统中的数据进行变更;
获取实时时钟与参考时钟的时间差,其中,所述实时时钟用于为所述存储系统提供系统时间,所述参考时钟在系统运行过程中无法被修改;
判断所述时间差是否大于所述参考时钟的时间精度累计误差;
若所述时间差大于所述时间精度累计误差,则拒绝执行所述数据操作请求。
10.根据权利要求9所述的方法,其特征在于,所述获取实时时钟与参考时钟的时间差包括:
读取所述实时时钟的时间寄存器的值以获得所述实时时钟的时间;
通过南桥芯片与单板管理控制器(Board Manage Controller,BMC)之间的通信通道获得所述参考时钟的时间;
比较所述实时时钟的时间与所述参考时钟的时间,获得所述实时时钟与所述参考时钟的时间差。
11.根据权利要求9-10任意一项所述的方法,其特征在于,还包括:
若所述时间差不大于所述时间精度累计误差,则判断所述实时时钟的当前时间是否大于所述数据操作请求指向的数据的保护时间;
若所述实时时钟的当前时间大于所述保护时间,则执行所述数据操作请求。
12.根据权利要求11所述的方法,其特征在于,还包括:
若所述实时时钟的当前时间不大于所述保护时间,则拒绝执行所述数据操作请求。
13.根据权利要求9-12任意一项所述的方法,其特征在于,还包括:
按照设定的时间间隔判断所述时间差是否大于所述参考时钟的时间精度累计误差;
若所述时间差大于所述时间精度累计误差,则将所述实时时钟的时间与所述参考时钟的时间保持同步。
14.根据权利要求9-13任意一项所述的方法,其特征在于,还包括:
根据所述存储系统的生命周期以及所述参考时钟的时间精度误差确定所述参考时钟的时间精度累计误差。
15.根据权利要求9-13任意一项所述的方法,其特征在于,还包括:
根据所述存储系统的运行时间以及所述参考时钟的时间精度误差来确定所述参考时钟的时间精度累计误差。
CN201380001830.XA 2013-09-05 2013-09-05 存储系统及数据操作请求处理方法 Active CN103718186B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2013/083024 WO2015032059A1 (zh) 2013-09-05 2013-09-05 存储系统及数据操作请求处理方法

Publications (2)

Publication Number Publication Date
CN103718186A true CN103718186A (zh) 2014-04-09
CN103718186B CN103718186B (zh) 2015-07-08

Family

ID=50409485

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380001830.XA Active CN103718186B (zh) 2013-09-05 2013-09-05 存储系统及数据操作请求处理方法

Country Status (4)

Country Link
US (1) US9753941B2 (zh)
EP (1) EP2902940B1 (zh)
CN (1) CN103718186B (zh)
WO (1) WO2015032059A1 (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104332170A (zh) * 2014-08-26 2015-02-04 华为技术有限公司 一种存储设备和数据存储方法
CN105046115A (zh) * 2015-09-15 2015-11-11 北京深思数盾科技有限公司 检测软件运行时间被篡改的方法及装置
CN106020012A (zh) * 2015-03-24 2016-10-12 发那科株式会社 数值控制装置
CN107046600A (zh) * 2017-03-09 2017-08-15 广东艾檬电子科技有限公司 一种Android系统标准时间的确定方法及装置
CN108073484A (zh) * 2017-11-23 2018-05-25 郑州云海信息技术有限公司 一种bmc时间准确性测试方法及系统
WO2020258958A1 (zh) * 2019-06-28 2020-12-30 华为技术有限公司 一种时间同步的方法和服务器
CN114895746A (zh) * 2022-06-14 2022-08-12 北京东土军悦科技有限公司 一种系统时间的同步方法及装置、计算设备、存储介质

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11392168B1 (en) * 2021-03-10 2022-07-19 Dell Products L.P. Managing clock synchronization for a baseboard management controller (BMC) of an information handling system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0359573A2 (en) * 1988-09-15 1990-03-21 International Business Machines Corporation Apparatus for recovering data recorded on a magnetic storagemedium
CN1702596A (zh) * 2005-07-08 2005-11-30 北京北大方正电子有限公司 一种手持设备上数字作品内容的保护方法
CN101000646A (zh) * 2007-01-17 2007-07-18 北京大学 一种数字内容按时间控制的版权保护方法及系统

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5001752A (en) * 1989-10-13 1991-03-19 Fischer Addison M Public/key date-time notary facility
DE69515223T2 (de) * 1994-07-18 2000-06-21 Thomson Consumer Electronics, Inc. System zum aktualisieren der Daten eines ausgebreiteten Datendiensts
US20050235095A1 (en) * 2004-04-14 2005-10-20 Winarski Daniel J Write-once read-many hard disk drive using a WORM LBA indicator
US20050231846A1 (en) * 2004-04-14 2005-10-20 International Business Machines Corporation Write-once read-many hard disk drive using a WORM pointer
CN1327309C (zh) * 2004-09-21 2007-07-18 华为技术有限公司 手持设备系统时间的维护方法及用其进行版权管理的方法
JP4481141B2 (ja) * 2004-10-13 2010-06-16 株式会社日立製作所 ストレージシステム及び計算機システム
US8327448B2 (en) 2005-06-22 2012-12-04 Intel Corporation Protected clock management based upon a non-trusted persistent time source
US8190923B2 (en) * 2005-12-20 2012-05-29 Microsoft Corporation Method to securely initialize, protect and recover system date/time
JP2008084515A (ja) * 2006-09-01 2008-04-10 Ricoh Co Ltd 追記型光記録媒体とその記録方法
US7716515B2 (en) * 2006-12-21 2010-05-11 Inventec Corporation Method for updating the timing of a baseboard management controller
CN101539972B (zh) 2009-04-28 2012-08-29 北京红旗贰仟软件技术有限公司 一种电子文档信息保护方法及系统
CN102298414A (zh) * 2010-06-22 2011-12-28 鸿富锦精密工业(深圳)有限公司 服务器时间同步系统
US20120185444A1 (en) * 2011-01-14 2012-07-19 Sparkes Andrew Clock Monitoring in a Data-Retention Storage System
US8516022B1 (en) * 2012-01-11 2013-08-20 Emc Corporation Automatically committing files to be write-once-read-many in a file system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0359573A2 (en) * 1988-09-15 1990-03-21 International Business Machines Corporation Apparatus for recovering data recorded on a magnetic storagemedium
CN1702596A (zh) * 2005-07-08 2005-11-30 北京北大方正电子有限公司 一种手持设备上数字作品内容的保护方法
CN101000646A (zh) * 2007-01-17 2007-07-18 北京大学 一种数字内容按时间控制的版权保护方法及系统

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104332170A (zh) * 2014-08-26 2015-02-04 华为技术有限公司 一种存储设备和数据存储方法
CN106020012A (zh) * 2015-03-24 2016-10-12 发那科株式会社 数值控制装置
CN106020012B (zh) * 2015-03-24 2019-02-15 发那科株式会社 数值控制装置
CN105046115A (zh) * 2015-09-15 2015-11-11 北京深思数盾科技有限公司 检测软件运行时间被篡改的方法及装置
CN107046600A (zh) * 2017-03-09 2017-08-15 广东艾檬电子科技有限公司 一种Android系统标准时间的确定方法及装置
CN108073484A (zh) * 2017-11-23 2018-05-25 郑州云海信息技术有限公司 一种bmc时间准确性测试方法及系统
WO2020258958A1 (zh) * 2019-06-28 2020-12-30 华为技术有限公司 一种时间同步的方法和服务器
CN114895746A (zh) * 2022-06-14 2022-08-12 北京东土军悦科技有限公司 一种系统时间的同步方法及装置、计算设备、存储介质
CN114895746B (zh) * 2022-06-14 2023-11-07 北京东土军悦科技有限公司 一种系统时间的同步方法及装置、计算设备、存储介质

Also Published As

Publication number Publication date
US20150302024A1 (en) 2015-10-22
EP2902940A4 (en) 2015-09-16
WO2015032059A1 (zh) 2015-03-12
EP2902940B1 (en) 2017-04-19
EP2902940A1 (en) 2015-08-05
US9753941B2 (en) 2017-09-05
CN103718186B (zh) 2015-07-08

Similar Documents

Publication Publication Date Title
CN103718186B (zh) 存储系统及数据操作请求处理方法
CN107423303B (zh) 数据同步的方法和系统
CN109933632B (zh) 一种数据库的数据迁移方法、装置及设备
US10037346B1 (en) Time reservations for ensuring consistent reads in a distributed database without logging
US11226745B2 (en) Optimizing data writes in a distributed computing system
EP2222003B1 (en) Field control system
US10365978B1 (en) Synchronization of snapshots in a distributed consistency group
CN103458036A (zh) 一种集群文件系统的访问装置和方法
US9460101B2 (en) Management of file cache
GB2500085A (en) Determining whether a standby database is synchronized with a primary database
US9026493B1 (en) Multi-master RDBMS improvements for distributed computing environment
US20150081646A1 (en) Classifying and monitoring database operations based on a cost of recovery
US9507798B1 (en) Centralized logging for a data storage system
CN111552701A (zh) 确定分布式集群中数据一致性的方法及分布式数据系统
CN108958965A (zh) 一种bmc监控可恢复ecc错误的方法、装置及设备
WO2012101531A1 (en) Data integrity protection in storage volumes
US20190163776A1 (en) Ensuring consistent replication of updates in databases
CN113849328B (zh) 一种容灾系统的管理方法和装置
US8392481B2 (en) Accessing snapshots of a time based file system
US7546384B1 (en) Maintaining relative time stamps when transferring files across network
EP3166027B1 (en) Method and apparatus for determining hot page in database
CN106030714A (zh) Dimm设备控制器监控器
JP2005135063A (ja) 情報処理装置及び情報処理装置の時計異常検出プログラム
CN102368268B (zh) 一种实现多元数据一致性的方法
CN108804463B (zh) 一种MySQL数据库的数据同步方法、装置及电子设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant