WO2022107931A1 - Data storage method for preventing data redundancy, and data platform using same - Google Patents

Data storage method for preventing data redundancy, and data platform using same Download PDF

Info

Publication number
WO2022107931A1
WO2022107931A1 PCT/KR2020/016483 KR2020016483W WO2022107931A1 WO 2022107931 A1 WO2022107931 A1 WO 2022107931A1 KR 2020016483 W KR2020016483 W KR 2020016483W WO 2022107931 A1 WO2022107931 A1 WO 2022107931A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
history table
time
stored
received
Prior art date
Application number
PCT/KR2020/016483
Other languages
French (fr)
Korean (ko)
Inventor
김성윤
최성찬
정승명
Original Assignee
한국전자기술연구원
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 한국전자기술연구원 filed Critical 한국전자기술연구원
Publication of WO2022107931A1 publication Critical patent/WO2022107931A1/en

Links

Images

Classifications

    • 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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • G06F11/1453Management of the data involved in backup or backup restore using de-duplication of the data
    • 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/14Error detection or correction of the data by redundancy in operation
    • 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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • 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
    • 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
    • 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/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks

Definitions

  • the present invention relates to data processing technology, and more particularly, to a data storage method for preventing redundant processing of data histories, and a data platform to which the same is applied.
  • the data platform is a data storage server that collects and stores data generated from sensors through IoT/M2M technology.
  • the data collected on the data platform is used to monitor and control the system, and is also used to obtain meaningful information through big data analysis.
  • Duplicate data not only wastes storage space, but also causes unnecessary resource usage in processing/analysis.
  • the present invention has been devised to solve the above problems, and an object of the present invention is to eliminate unnecessary use of resources required for data processing/analysis and storage for storing data in a data platform, and data history An object of the present invention is to provide a data storage method for preventing duplicated processing and a data platform to which the same is applied.
  • a data storage method includes the steps of: receiving data; a first checking step of checking whether duplicate data having a time field containing the same time as the time field of the received data exists in the history table; If there is duplicate data in the history table, a second checking step of checking whether the data reception time is newer than the duplicate data; and updating the data stored in the history table with the received data if it is the latest as a result of the check in the second checking step.
  • a plurality of time fields included in the received data may be compared with a plurality of time fields included in the data stored in the history table.
  • the first confirmation step only a time field set by a user among a plurality of time fields may be compared.
  • the data storage method may further include: if there is no duplicate data in the history table, storing the received data in the history table.
  • the data storage method further includes the step of checking whether a duplicate prevention flag is set, and the first checking step may be performed when the duplicate prevention flag is set.
  • the data storage method may further include, if the duplicate prevention flag is not set, storing the received data in a history table.
  • the data storage method may further include: if the reception time of data is newer than the reception time of data stored in the latest table, updating the data stored in the latest table with the received data.
  • a data platform a communication unit for receiving data; a storage unit storing a history table; and check whether there is duplicate data in the history table that has a time field that contains the same time as the time field of the received data. and a processor that updates the data stored in the backside history table with the received data.
  • unnecessary use of resources required for data processing/analysis and storage for storing data in the data platform can be excluded by preventing redundant data histories from being stored during data storage. be able to
  • FIG. 1 is a diagram provided for the description of a data platform to which the present invention is applicable;
  • 3 to 6 are diagrams provided for the explanation of the redundant data determination process
  • FIG. 7 is a diagram provided for the description of a data storage system to which the present invention is applicable.
  • FIG. 8 is a block diagram illustrating a hardware structure of a data platform.
  • the illustrated data platform 100 is a server/system in which data is stored, and stores/manages data by placing the latest table 110 and the history table 120 for each ID.
  • the latest table 110 is a table in which the latest data is stored. In the latest table 110, only one piece of data having the latest reception time is stored.
  • the history table 120 stores all of the received data. That is, the latest data as well as past data are stored in the history table 120 .
  • the range of data stored in the history table 120 may be limited.
  • the data platform 100 checks whether data is duplicated when storing data in the history table 120 , and prevents this when determining that the data is duplicated.
  • FIG. 2 is a flowchart provided to explain a data storage method according to an embodiment of the present invention.
  • the data platform 100 compares the received data with the reception time of the data stored in the latest table 110 (S220).
  • the data platform 100 transmits the data stored in the latest table 110 to the data received in step S210 to update (S230).
  • reception time of the received data is not more recent than the reception time of the data stored in the latest table 110, that is, if both are the same or it is confirmed that the reception time of the data stored in the latest table 110 is the latest ( S220-N), data update (S230) in the latest table 110 is not performed.
  • the duplicate prevention flag is a flag indicating whether to allow redundant storage of data in the history table 120 .
  • the data platform 100 stores the data received in step S210 in the history table 120 ( S280 ).
  • the data platform 100 stores the data duplicated with the data received in step S210 in the history table 120, Check whether there is (S250).
  • step S250 the data redundancy check is performed by comparing the time information included in the time field included in the data.
  • time information "2018-11-15T20:10:00,000+09:00” included in “observedAt” of the time field "waterLevel” included in the history data (right) stored in the history table 120 is the same, It is judged that there is duplicate data.
  • history data Although only one history data is illustrated in FIG. 3 , it should be noted that there are actually a plurality of history data, and only one is illustrated for convenience of understanding and explanation, which is also the same hereafter.
  • data redundancy check is based on one time field, but it may be based on multiple time fields.
  • a time field which is a criterion for determining whether data is duplicated, can be set. For example, if it is set to check whether there is overlap only with respect to "observedAt" of the time field "waterLevel", both the case shown in FIG. 5 and the case shown in FIG. 6 are determined to be duplicates.
  • step S250-Y If it is determined that the data is duplicated in step S250 (S250-Y), data is stored in the history table 120 based on the data reception time.
  • the data platform 100 stores the data stored in the history table 110 It is updated with the data received in step S210 (S270).
  • the data platform 100 does not store the data received in step S210 in the history table 120 .
  • FIG. 7 is a diagram provided for explanation of a data storage system to which the present invention is applicable.
  • a user terminal 310 and an administrator terminal 320 are further illustrated.
  • the user terminal 310 is a terminal that requests to create/require/update/delete data stored in the data platform 100 .
  • the manager terminal 320 is a terminal for managing data stored in the data platform 100, and is a terminal for setting the aforementioned duplication prevention flag and setting a time field for determining whether data is duplicated.
  • the data platform 100 provides duplicate data for data previously stored in the history table 120 .
  • a procedure of aggregating the data that is, a procedure of deleting only one of the duplicate data, must be performed.
  • the user terminal 310 may include the function of the manager terminal 320 .
  • the data platform 100 is a server system including a communication unit 101 , a processor 102 , and a storage unit 103 .
  • the communication unit 101 is a communication interface means for communicating with the user terminal 310 and the manager terminal 320 and accessing an external network.
  • the communication unit 101 receives data to be stored.
  • the processor 102 includes at least one Application Entity (AE) and a Common Service Entity (CSE). Processes necessary for data storage/management of the processor 102 are performed.
  • AE Application Entity
  • CSE Common Service Entity
  • the storage unit 103 is a storage space in which the latest table 110 and the history table 120 described above are built.
  • the technical idea of the present invention can be applied to a computer-readable recording medium containing a computer program for performing the functions of the apparatus and method according to the present embodiment.
  • the technical ideas according to various embodiments of the present invention may be implemented in the form of computer-readable codes recorded on a computer-readable recording medium.
  • the computer-readable recording medium may be any data storage device readable by the computer and capable of storing data.
  • the computer-readable recording medium may be a ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical disk, hard disk drive, or the like.
  • the computer-readable code or program stored in the computer-readable recording medium may be transmitted through a network connected between computers.

Abstract

Provided are a data storage method for preventing data redundancy, and a data platform using same. The data storage method according to an embodiment of the present invention comprises: checking whether redundant data, which has a time field containing the same time as a time field of received data, is in a history table; determining whether the reception time of the received data is more recent than that of the redundant data if the redundant data is present in the history table; and updating the data stored in the history table to the received data if the data reception time of the received data is determined to be more recent. Accordingly, unnecessary use of data storage, in which data is stored, and resources required for data processing/analysis can be avoided in the data platform by preventing data history from being stored redundantly when storing data.

Description

데이터 중복 방지를 위한 데이터 저장 방법 및 이를 적용한 데이터 플랫폼Data storage method for data duplication prevention and data platform to which it is applied
본 발명은 데이터 처리 기술에 관한 것으로, 더욱 상세하게는 데이터 이력이 중복으로 처리되는 것을 방지하기 위한 데이터 저장 방법 및 이를 적용한 데이터 플랫폼에 관한 것이다.The present invention relates to data processing technology, and more particularly, to a data storage method for preventing redundant processing of data histories, and a data platform to which the same is applied.
데이터 플랫폼은 IoT/M2M 기술을 통해 센서에서 생성되는 데이터들을 수집하여 저장하는 데이터 저장 서버이다. 데이터 플랫폼에 수집된 데이터는 시스템 모니터링과 제어하는데 활용되고, 빅데이터 분석을 통해 유의미한 정보를 얻는데 활용되기도 한다.The data platform is a data storage server that collects and stores data generated from sensors through IoT/M2M technology. The data collected on the data platform is used to monitor and control the system, and is also used to obtain meaningful information through big data analysis.
데이터 플랫폼에는 많은 양의 데이터가 저장되기 마련이다. 하지만, 모든 데이터가 축적된 양 만큼 유의미하다고 볼 수 없다. 저장된 데이터가 중복된 경우에 특히 그러하다.A large amount of data is inevitably stored in a data platform. However, not all data are as significant as the accumulated amount. This is especially true when the stored data is duplicated.
중복 데이터는 저장 공간을 낭비하게 만드는 문제도 있지만, 처리/분석에서 불필요한 리소스 사용을 야기한다는 점에서도 문제이다.Duplicate data not only wastes storage space, but also causes unnecessary resource usage in processing/analysis.
본 발명은 상기와 같은 문제점을 해결하기 위하여 안출된 것으로서, 본 발명의 목적은, 데이터 플랫폼에서 데이터를 저장하는 저장소와 데이터 처리/분석에 소요되는 리소스의 불필요한 사용을 배제하기 위한 방안으로, 데이터 이력이 중복으로 처리되는 것을 방지하기 위한 데이터 저장 방법 및 이를 적용한 데이터 플랫폼을 제공함에 있다.The present invention has been devised to solve the above problems, and an object of the present invention is to eliminate unnecessary use of resources required for data processing/analysis and storage for storing data in a data platform, and data history An object of the present invention is to provide a data storage method for preventing duplicated processing and a data platform to which the same is applied.
상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른, 데이터 저장 방법은, 데이터를 수신하는 단계; 수신한 데이터의 시간 필드와 동일한 시간이 수록된 시간 필드를 갖고 있는 중복 데이터가 이력 테이블에 있는지 확인하는 제1 확인단계; 이력 테이블에 중복 데이터가 있으면, 데이터의 수신 시간이 중복 데이터 보다 최신인지 확인하는 제2 확인단계; 제2 확인단계에서의 확인 결과 최신이면, 이력 테이블에 저장된 데이터를 수신한 데이터로 업데이트하는 단계;를 포함한다.According to an embodiment of the present invention for achieving the above object, a data storage method includes the steps of: receiving data; a first checking step of checking whether duplicate data having a time field containing the same time as the time field of the received data exists in the history table; If there is duplicate data in the history table, a second checking step of checking whether the data reception time is newer than the duplicate data; and updating the data stored in the history table with the received data if it is the latest as a result of the check in the second checking step.
제1 확인단계는, 수신한 데이터가 갖고 있는 다수의 시간 필드들과 이력 테이블에 저장된 데이터가 갖고 있는 다수의 시간 필드들을 비교할 수 있다.In the first confirmation step, a plurality of time fields included in the received data may be compared with a plurality of time fields included in the data stored in the history table.
제1 확인 단계는, 다수의 시간 필드 중 사용자에 의해 설정된 시간 필드 만을 비교할 수 있다.In the first confirmation step, only a time field set by a user among a plurality of time fields may be compared.
그리고, 본 발명의 실시예에 따른 데이터 저장 방법은, 이력 테이블에 중복 데이터가 없으면, 수신한 데이터를 이력 테이블에 저장하는 단계;를 더 포함할 수 있다.In addition, the data storage method according to an embodiment of the present invention may further include: if there is no duplicate data in the history table, storing the received data in the history table.
본 발명의 실시예에 따른 데이터 저장 방법은, 중복 방지 플래그가 설정되어 있는지 확인하는 단계;를 더 포함하고, 제1 확인단계는, 중복 방지 플래그가 설정되어 있으면, 수행될 수 있다.The data storage method according to an embodiment of the present invention further includes the step of checking whether a duplicate prevention flag is set, and the first checking step may be performed when the duplicate prevention flag is set.
본 발명의 실시예에 따른 데이터 저장 방법은, 중복 방지 플래그가 설정되어 있지 않았으면, 수신한 데이터를 이력 테이블에 저장하는 단계;를 더 포함할 수 있다.The data storage method according to an embodiment of the present invention may further include, if the duplicate prevention flag is not set, storing the received data in a history table.
본 발명의 실시예에 따른 데이터 저장 방법은, 데이터의 수신 시간이 최신 테이블에 저장된 데이터의 수신 시간 보다 최신이면, 최신 테이블에 저장된 데이터를 수신한 데이터로 업데이트하는 단계;를 더 포함할 수 있다.The data storage method according to an embodiment of the present invention may further include: if the reception time of data is newer than the reception time of data stored in the latest table, updating the data stored in the latest table with the received data.
한편, 본 발명의 다른 실시예에 따른, 데이터 플랫폼은, 데이터를 수신하는 통신부; 이력 테이블이 저장되는 저장부; 및 수신한 데이터의 시간 필드와 동일한 시간이 수록된 시간 필드를 갖고 있는 중복 데이터가 이력 테이블에 있는지 확인하고, 이력 테이블에 중복 데이터가 있으면 데이터의 수신 시간이 중복 데이터 보다 최신인지 확인하며, 확인 결과 최신이면 이력 테이블에 저장된 데이터를 수신한 데이터로 업데이트하는 프로세서;를 포함한다.On the other hand, according to another embodiment of the present invention, a data platform, a communication unit for receiving data; a storage unit storing a history table; and check whether there is duplicate data in the history table that has a time field that contains the same time as the time field of the received data. and a processor that updates the data stored in the backside history table with the received data.
이상 설명한 바와 같이, 본 발명의 실시예들에 따르면, 데이터 저장시에 데이터 이력이 중복으로 저장되는 방지함으로써, 데이터 플랫폼에서 데이터를 저장하는 저장소와 데이터 처리/분석에 소요되는 리소스의 불필요한 사용을 배제할 수 있게 된다.As described above, according to the embodiments of the present invention, unnecessary use of resources required for data processing/analysis and storage for storing data in the data platform can be excluded by preventing redundant data histories from being stored during data storage. be able to
도 1은 본 발명이 적용 가능한 데이터 플랫폼의 설명에 제공되는 도면,1 is a diagram provided for the description of a data platform to which the present invention is applicable;
도 2는 본 발명의 일 실시예에 따른 데이터 저장 방법의 설명에 제공되는 흐름도,2 is a flowchart provided to explain a data storage method according to an embodiment of the present invention;
도 3 내지 도 6은, 중복 데이터 판단 과정의 설명에 제공되는 도면들,3 to 6 are diagrams provided for the explanation of the redundant data determination process;
도 7은 본 발명이 적용 가능한 데이터 저장 시스템의 설명에 제공되는 도면, 그리고,7 is a diagram provided for the description of a data storage system to which the present invention is applicable, and
도 8은 데이터 플랫폼의 하드웨어 구조를 나타낸 블럭도이다.8 is a block diagram illustrating a hardware structure of a data platform.
이하에서는 도면을 참조하여 본 발명을 보다 상세하게 설명한다.Hereinafter, the present invention will be described in more detail with reference to the drawings.
도 1은 본 발명이 적용 가능한 데이터 플랫폼의 설명에 제공되는 도면이다. 도시된 데이터 플랫폼(100)은 데이터가 저장되는 서버/시스템으로, ID 마다 최신 테이블(110)과 이력 테이블(120)을 두어 데이터를 저장/관리한다.1 is a diagram provided for explanation of a data platform to which the present invention is applicable. The illustrated data platform 100 is a server/system in which data is stored, and stores/manages data by placing the latest table 110 and the history table 120 for each ID.
최신 테이블(110)은 최신 데이터가 저장되는 테이블이다. 최신 테이블(110)에는 수신 시간이 최신인 하나의 데이터만이 저장된다.The latest table 110 is a table in which the latest data is stored. In the latest table 110, only one piece of data having the latest reception time is stored.
이력 테이블(120)은 수신 데이터 모두가 저장된다. 즉, 최신 데이터는 물론이고 과거 데이터 까지 이력 테이블(120)에 저장된다. 이력 테이블(120)에 저장되는 데이터의 범위를 제한할 수 있다.The history table 120 stores all of the received data. That is, the latest data as well as past data are stored in the history table 120 . The range of data stored in the history table 120 may be limited.
이를 테면, 수신 시간의 초기와 종기를 지정하거나, 만료 시갖(expiration time)을 설정함으로써, 이력 테이블(120)에 너무 많은 데이터가 쌓이는 것을 방지할 수 있다.For example, it is possible to prevent too much data from accumulating in the history table 120 by designating the beginning and end of the reception time or setting an expiration time.
한편, 이력 테이블(120)에는 데이터들이 중복하여 저장될 수 있으므로, 데이터 플랫폼(100)은 이력 테이블(120)에 데이터 저장시 데이터 중복 여부를 확인하고, 중복으로 판단시에는 이를 방지한다.Meanwhile, since data may be repeatedly stored in the history table 120 , the data platform 100 checks whether data is duplicated when storing data in the history table 120 , and prevents this when determining that the data is duplicated.
도 1에 도시된 데이터 플랫폼(100)에 의한 데이터 중복 방지 과정에 대해, 이하에서 도 2를 참조하여 상세히 설명한다. 도 2는 본 발명의 일 실시예에 따른 데이터 저장 방법의 설명에 제공되는 흐름도이다.A data duplication prevention process by the data platform 100 shown in FIG. 1 will be described in detail below with reference to FIG. 2 . 2 is a flowchart provided to explain a data storage method according to an embodiment of the present invention.
도시된 바와 같이, 데이터가 수신되면(S210), 데이터 플랫폼(100)은 수신한 데이터와 최신 테이블(110)에 저장된 데이터의 수신 시간을 비교한다(S220).As shown, when data is received (S210), the data platform 100 compares the received data with the reception time of the data stored in the latest table 110 (S220).
수신한 데이터의 수신 시간이 최신 테이블(110)에 저장된 데이터의 수신 시간 보다 최신으로 확인되면(S220-Y), 데이터 플랫폼(100)은 최신 테이블(110)에 저장된 데이터를 S210단계에서 수신한 데이터로 업데이트한다(S230).When it is confirmed that the reception time of the received data is more recent than the reception time of the data stored in the latest table 110 (S220-Y), the data platform 100 transmits the data stored in the latest table 110 to the data received in step S210 to update (S230).
만약, 수신 데이터의 수신 시간이 최신 테이블(110)에 저장된 데이터의 수신 시간 보다 최신이 아닌 것으로 확인, 즉, 양자가 동일하거나 최신 테이블(110)에 저장된 데이터의 수신 시간이 최신인 것으로 확인되면(S220-N), 최신 테이블(110)에서의 데이터 업데이트(S230)는 수행되지 않는다.If it is confirmed that the reception time of the received data is not more recent than the reception time of the data stored in the latest table 110, that is, if both are the same or it is confirmed that the reception time of the data stored in the latest table 110 is the latest ( S220-N), data update (S230) in the latest table 110 is not performed.
다음, 수신 데이터에 대해 데이터 중복 방지 플래그가 설정되어 있는지 확인한다(S240). 중복 방지 플래그는 이력 테이블(120)에 데이터의 중복 저장을 허용할지 여부를 나타내는 플래그이다.Next, it is checked whether a data duplication prevention flag is set for the received data (S240). The duplicate prevention flag is a flag indicating whether to allow redundant storage of data in the history table 120 .
따라서, 중복 방지 플래그가 설정되어 있지 않으면, 이력 테이블(120)에 데이터의 중복 저장을 허용되므로, 데이터 플랫폼(100)은 S210단계에서 수신한 데이터를 이력 테이블(120)에 저장한다(S280).Therefore, if the duplicate prevention flag is not set, redundant storage of data is allowed in the history table 120 , so the data platform 100 stores the data received in step S210 in the history table 120 ( S280 ).
반면, 중복 방지 플래그가 설정되어 있으면, 이력 테이블(120)에 데이터의 중복 저장이 허용되지 않으므로, 데이터 플랫폼(100)은 S210단계에서 수신한 데이터와 중복하는 데이터가 이력 테이블(120)에 저장되어 있는지 확인한다(S250).On the other hand, if the duplicate prevention flag is set, since redundant storage of data in the history table 120 is not allowed, the data platform 100 stores the data duplicated with the data received in step S210 in the history table 120, Check whether there is (S250).
S250단계에서의 데이터 중복 확인은 데이터에 포함되어 있는 시간 필드에 수록된 시간 정보를 비교하여 행해진다.In step S250, the data redundancy check is performed by comparing the time information included in the time field included in the data.
이를 테면, 도 3에 도시된 바와 같이, 수신 데이터(좌측)에 포함되어 있는 시간 필드인 "waterLevel"의 "observedAt"에 수록된 시간 정보 "2018-11-15T20:10:00,000+09:00"와 이력 테이블(120)에 저장되어 있는 이력 데이터(우측)에 포함되어 있는 시간 필드 "waterLevel"의 "observedAt"에 수록된 시간 정보 "2018-11-15T20:10:00,000+09:00"가 동일한 경우, 중복 데이터가 있는 것으로 판단한다.For example, as shown in FIG. 3 , time information "2018-11-15T20:10:00,000+09:00" included in "observedAt" of "waterLevel", which is a time field included in the received data (left), and When the time information "2018-11-15T20:10:00,000+09:00" included in "observedAt" of the time field "waterLevel" included in the history data (right) stored in the history table 120 is the same, It is judged that there is duplicate data.
도 3에서 이력 데이터는 하나만을 도시하였으나, 실제로 이력 데이터는 다수가 있으며, 이해와 설명의 편의를 위해 하나만을 도시한 것임에 유념하여야 하며, 이는 이하에서도 동일하다.Although only one history data is illustrated in FIG. 3 , it should be noted that there are actually a plurality of history data, and only one is illustrated for convenience of understanding and explanation, which is also the same hereafter.
반면, 도 4에 도시된 바와 같이, 수신 데이터(좌측)에 포함되어 있는 시간 필드 "waterLevel"의 "observedAt"에 수록된 시간 정보 "2018-11-15T20:10:01,000+09:00" 와 이력 테이블(120)에 저장되어 있는 이력 데이터(우측)에 포함되어 있는 시간 필드 "waterLevel"의 "observedAt"에 수록된 시간 정보 "2018-11-15T20:10:00,000+09:00" 가 동일하지 않은 경우, 중복 데이터가 없는 것으로 판단한다.On the other hand, as shown in FIG. 4 , the time information “2018-11-15T20:10:01,000+09:00” and the history table included in “observedAt” of the time field “waterLevel” included in the received data (left) and the history table When the time information "2018-11-15T20:10:00,000+09:00" included in "observedAt" of the time field "waterLevel" included in the history data (right) stored in 120 is not the same, It is judged that there is no duplicate data.
위 예에서 데이터 중복 확인은 하나의 시간 필드를 기준으로 하였으나, 다수의 시간 필드를 기준으로 할 수 있다.In the above example, data redundancy check is based on one time field, but it may be based on multiple time fields.
이를 테면, 도 5에 도시된 바와 같이, 수신 데이터(좌측)에 포함되어 있는 시간 필드들인 "waterLevel"의 "observedAt" 및 "pondage"의 "observedAt"에 수록된 시간 정보들인 "2018-11-15T20:10:00,000+09:00"와 "2018-11-15T20:10:00,000+09:00"가 이력 테이블(120)에 저장되어 있는 이력 데이터(우측)에 포함되어 있는 시간 필드들인 "waterLevel"의 "observedAt" 및 "pondage"의 "observedAt"에 수록된 시간 정보들인 "2018-11-15T20:10:00,000+09:00"와 "2018-11-15T20:10:00,000+09:00"과 각각 동일한 경우에는, 양자가 중복되는 것으로 판단할 수도 있다.For example, as shown in FIG. 5 , the time information "2018-11-15T20: 10:00,000+09:00" and "2018-11-15T20:10:00,000+09:00" of "waterLevel", which are time fields included in the history data (right) stored in the history table 120 Same as "2018-11-15T20:10:00,000+09:00" and "2018-11-15T20:10:00,000+09:00", which are time information recorded in "observedAt" of "observedAt" and "pondage", respectively In this case, it may be determined that both overlap.
그리고, 도 6에 도시된 바와 같이, 수신 데이터(좌측)에 포함되어 있는 시간 필드들 중 하나만이라도 시간 정보가 다르면, 양자는 중복되는 않는 것으로 판단한다.And, as shown in FIG. 6 , if time information is different from even one of the time fields included in the received data (left side), it is determined that both do not overlap.
한편, 데이터 중복 여부를 판단하는 기준이 되는 시간 필드는 설정이 가능하다. 이를 테면, 시간 필드 "waterLevel"의 "observedAt"에 대해서만 중복 여부를 확인하도록 설정되어 있다면, 도 5에 도시된 경우와 도 6에 도시된 경우 모두 중복으로 판단된다.Meanwhile, a time field, which is a criterion for determining whether data is duplicated, can be set. For example, if it is set to check whether there is overlap only with respect to "observedAt" of the time field "waterLevel", both the case shown in FIG. 5 and the case shown in FIG. 6 are determined to be duplicates.
S250단계에서 데이터 중복으로 판단되면(S250-Y), 데이터 수신 시간을 기초로 이력 테이블(120)에 데이터 저장이 이루어진다.If it is determined that the data is duplicated in step S250 (S250-Y), data is stored in the history table 120 based on the data reception time.
구체적으로, S210단계에서 수신한 데이터의 수신 시간이 이력 테이블(120)에 저장된 데이터의 수신 시간 보다 최신으로 확인되면(S260-Y), 데이터 플랫폼(100)은 이력 테이블(110)에 저장된 데이터를 S210단계에서 수신한 데이터로 업데이트한다(S270).Specifically, when it is confirmed that the reception time of the data received in step S210 is more recent than the reception time of the data stored in the history table 120 (S260-Y), the data platform 100 stores the data stored in the history table 110 It is updated with the data received in step S210 (S270).
이를 테면, 도 3에 도시된 바와 같이 데이터 중복인 상황에서는, 수신 데이터의 수신 시간인 "modifiedAt":"2018-11-15T20:10:01,000+09:00"가 이력 테이블(120)에 저장되어 있는 데이터의 수신 시간인 "modifiedAt":"2018-11-15T20:10:00,000+09:00" 보다 최신이므로, 이력 테이블(120)에 저장된 데이터가 수신 데이터로 업데이트 된다.For example, in the data overlapping situation as shown in FIG. 3 , "modifiedAt":"2018-11-15T20:10:01,000+09:00", which is the reception time of the received data, is stored in the history table 120 and Since it is newer than "modifiedAt":"2018-11-15T20:10:00,000+09:00", which is the reception time of the existing data, the data stored in the history table 120 is updated with the received data.
반면, 수신 데이터의 수신 시간이 이력 테이블(120)에 저장된 데이터의 수신 시간 보다 최신이 아닌 것으로 확인, 즉, 양자가 동일하거나 이력 테이블(120)에 저장된 데이터의 수신 시간이 최신인 것으로 확인되면(S260-N), 데이터 플랫폼(100)은 S210단계에서 수신한 데이터를 이력 테이블(120)에 저장하지 않는다.On the other hand, when it is confirmed that the reception time of the received data is not newer than the reception time of the data stored in the history table 120, that is, both are the same or when it is confirmed that the reception time of the data stored in the history table 120 is the latest ( S260-N), the data platform 100 does not store the data received in step S210 in the history table 120 .
도 7은 본 발명이 적용 가능한 데이터 저장 시스템의 설명에 제공되는 도면이다. 도시된 데이터 저장 시스템에는, 데이터 플랫폼(100) 외에, 사용자 단말(310)과 관리자 단말(320)이 더 도시되어 있다.7 is a diagram provided for explanation of a data storage system to which the present invention is applicable. In the illustrated data storage system, in addition to the data platform 100 , a user terminal 310 and an administrator terminal 320 are further illustrated.
사용자 단말(310)은 데이터 플랫폼(100)에 저장된 데이터를 생성(Create)/조회(Retireve)/업데이트(Update)/삭제(Delete) 요청하는 단말이다.The user terminal 310 is a terminal that requests to create/require/update/delete data stored in the data platform 100 .
관리자 단말(320)은 데이터 플랫폼(100)에 저장되는 데이터를 관리하기 위한 단말고, 전술한 중복 방지 플래그를 설정하고, 데이터 중복 여부를 판단할 시간 필드를 설정하기 위한 단말이다.The manager terminal 320 is a terminal for managing data stored in the data platform 100, and is a terminal for setting the aforementioned duplication prevention flag and setting a time field for determining whether data is duplicated.
한편, 관리자 단말(320)에 의해 최초로 중복 방지 플래그가 설정되고 데이터 중복 여부를 판단할 시간 필드가 설정되면, 데이터 플랫폼(100)은 이력 테이블(120)에 기저장되어 있는 데이터들에 대해 중복 데이터들을 취합하는 절차, 즉, 중복 데이터들 중 하나만 남기고 삭제하는 절차를 수행하여야 한다.On the other hand, when the duplicate prevention flag is first set by the manager terminal 320 and the time field for determining whether data is duplicated is set, the data platform 100 provides duplicate data for data previously stored in the history table 120 . A procedure of aggregating the data, that is, a procedure of deleting only one of the duplicate data, must be performed.
구현에 따라서는, 사용자 단말(310)이 관리자 단말(320)의 기능을 포함하는 것으로도 가능하다.Depending on the implementation, it is also possible for the user terminal 310 to include the function of the manager terminal 320 .
도 8은 데이터 플랫폼(100)의 하드웨어 구조를 나타낸 블럭도이다. 도시된 바와 같이, 데이터 플랫폼(100)은, 통신부(101), 프로세서(102) 및 저장부(103)를 포함하는 서버 시스템이다.8 is a block diagram illustrating a hardware structure of the data platform 100 . As shown, the data platform 100 is a server system including a communication unit 101 , a processor 102 , and a storage unit 103 .
통신부(101)는 사용자 단말(310) 및 관리자 단말(320)과 통신하고 외부 네트워크에 액세스하기 위한 통신 인터페이스 수단이다. 통신부(101)는 저장할 데이터를 수신한다.The communication unit 101 is a communication interface means for communicating with the user terminal 310 and the manager terminal 320 and accessing an external network. The communication unit 101 receives data to be stored.
프로세서(102)는 적어도 하나의 AE(Application Entitr)와 CSE(Common Service Entity)를 포함한다. 프로세서(102)의 데이터 저장/관리에 필요한 절차들을 수행한다.The processor 102 includes at least one Application Entity (AE) and a Common Service Entity (CSE). Processes necessary for data storage/management of the processor 102 are performed.
저장부(103)는 전술한 최신 테이블(110)과 이력 테이블(120)이 구축되는 저장 공간이다.The storage unit 103 is a storage space in which the latest table 110 and the history table 120 described above are built.
한편, 본 실시예에 따른 장치와 방법의 기능을 수행하게 하는 컴퓨터 프로그램을 수록한 컴퓨터로 읽을 수 있는 기록매체에도 본 발명의 기술적 사상이 적용될 수 있음은 물론이다. 또한, 본 발명의 다양한 실시예에 따른 기술적 사상은 컴퓨터로 읽을 수 있는 기록매체에 기록된 컴퓨터로 읽을 수 있는 코드 형태로 구현될 수도 있다. 컴퓨터로 읽을 수 있는 기록매체는 컴퓨터에 의해 읽을 수 있고 데이터를 저장할 수 있는 어떤 데이터 저장 장치이더라도 가능하다. 예를 들어, 컴퓨터로 읽을 수 있는 기록매체는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광디스크, 하드 디스크 드라이브, 등이 될 수 있음은 물론이다. 또한, 컴퓨터로 읽을 수 있는 기록매체에 저장된 컴퓨터로 읽을 수 있는 코드 또는 프로그램은 컴퓨터간에 연결된 네트워크를 통해 전송될 수도 있다.On the other hand, it goes without saying that the technical idea of the present invention can be applied to a computer-readable recording medium containing a computer program for performing the functions of the apparatus and method according to the present embodiment. In addition, the technical ideas according to various embodiments of the present invention may be implemented in the form of computer-readable codes recorded on a computer-readable recording medium. The computer-readable recording medium may be any data storage device readable by the computer and capable of storing data. For example, the computer-readable recording medium may be a ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical disk, hard disk drive, or the like. In addition, the computer-readable code or program stored in the computer-readable recording medium may be transmitted through a network connected between computers.
또한, 이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.In addition, although preferred embodiments of the present invention have been illustrated and described above, the present invention is not limited to the specific embodiments described above, and the technical field to which the present invention belongs without departing from the gist of the present invention as claimed in the claims In addition, various modifications are possible by those of ordinary skill in the art, and these modifications should not be individually understood from the technical spirit or perspective of the present invention.

Claims (8)

  1. 데이터를 수신하는 단계;receiving data;
    수신한 데이터의 시간 필드와 동일한 시간이 수록된 시간 필드를 갖고 있는 중복 데이터가 이력 테이블에 있는지 확인하는 제1 확인단계;a first checking step of checking whether duplicate data having a time field containing the same time as the time field of the received data exists in the history table;
    이력 테이블에 중복 데이터가 있으면, 데이터의 수신 시간이 중복 데이터 보다 최신인지 확인하는 제2 확인단계;If there is duplicate data in the history table, a second checking step of checking whether the data reception time is newer than the duplicate data;
    제2 확인단계에서의 확인 결과 최신이면, 이력 테이블에 저장된 데이터를 수신한 데이터로 업데이트하는 단계;를 포함하는 것을 특징으로 하는 데이터 저장 방법.and updating the data stored in the history table with the received data if it is the latest as a result of the check in the second checking step.
  2. 청구항 1에 있어서,The method according to claim 1,
    제1 확인단계는,The first confirmation step is,
    수신한 데이터가 갖고 있는 다수의 시간 필드들과 이력 테이블에 저장된 데이터가 갖고 있는 다수의 시간 필드들을 비교하는 것을 특징으로 하는 데이터 저장 방법.A method for storing data, comprising comparing a plurality of time fields of the received data with a plurality of time fields of data stored in a history table.
  3. 청구항 2에 있어서,3. The method according to claim 2,
    제1 확인 단계는,The first confirmation step is,
    다수의 시간 필드 중 사용자에 의해 설정된 시간 필드 만을 비교하는 것을 특징으로 하는 데이터 저장 방법.A data storage method characterized in that only a time field set by a user is compared among a plurality of time fields.
  4. 청구항 1에 있어서,The method according to claim 1,
    이력 테이블에 중복 데이터가 없으면, 수신한 데이터를 이력 테이블에 저장하는 단계;를 더 포함하는 것을 특징으로 하는 데이터 저장 방법.If there is no duplicate data in the history table, storing the received data in the history table; data storage method further comprising a.
  5. 청구항 1에 있어서,The method according to claim 1,
    중복 방지 플래그가 설정되어 있는지 확인하는 단계;를 더 포함하고,Checking whether the anti-duplication flag is set; further comprising;
    제1 확인단계는,The first confirmation step is,
    중복 방지 플래그가 설정되어 있으면, 수행되는 것을 특징으로 하는 데이터 저장 방법.A data storage method, characterized in that it is performed when the anti-duplication flag is set.
  6. 청구항 1에 있어서,The method according to claim 1,
    중복 방지 플래그가 설정되어 있지 않았으면, 수신한 데이터를 이력 테이블에 저장하는 단계;를 더 포함하는 것을 특징으로 하는 데이터 저장 방법.If the duplicate prevention flag is not set, storing the received data in a history table; data storage method further comprising a.
  7. 청구항 1에 있어서,The method according to claim 1,
    데이터의 수신 시간이 최신 테이블에 저장된 데이터의 수신 시간 보다 최신이면, 최신 테이블에 저장된 데이터를 수신한 데이터로 업데이트하는 단계;를 더 포함하는 것을 특징으로 하는 데이터 저장 방법.If the data reception time is newer than the reception time of the data stored in the latest table, updating the data stored in the latest table with the received data;
  8. 데이터를 수신하는 통신부;a communication unit for receiving data;
    이력 테이블이 저장되는 저장부; 및a storage unit in which a history table is stored; and
    수신한 데이터의 시간 필드와 동일한 시간이 수록된 시간 필드를 갖고 있는 중복 데이터가 이력 테이블에 있는지 확인하고, 이력 테이블에 중복 데이터가 있으면 데이터의 수신 시간이 중복 데이터 보다 최신인지 확인하며, 확인 결과 최신이면 이력 테이블에 저장된 데이터를 수신한 데이터로 업데이트하는 프로세서;를 포함하는 것을 특징으로 하는 데이터 플랫폼.Check if there is duplicate data in the history table that has a time field with the same time as the time field of the received data. If there is duplicate data in the history table, check whether the data received time is newer than the duplicate data. A data platform comprising: a processor that updates the data stored in the history table with the received data.
PCT/KR2020/016483 2020-11-20 2020-11-20 Data storage method for preventing data redundancy, and data platform using same WO2022107931A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2020-0156499 2020-11-20
KR1020200156499A KR102460910B1 (en) 2020-11-20 2020-11-20 Data storage method for preventing data duplication and data platform applying the same

Publications (1)

Publication Number Publication Date
WO2022107931A1 true WO2022107931A1 (en) 2022-05-27

Family

ID=81709136

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2020/016483 WO2022107931A1 (en) 2020-11-20 2020-11-20 Data storage method for preventing data redundancy, and data platform using same

Country Status (2)

Country Link
KR (1) KR102460910B1 (en)
WO (1) WO2022107931A1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101564639B1 (en) * 2013-05-03 2015-10-30 주식회사 엘지유플러스 A method and apparatus for processing data
KR20190029197A (en) * 2017-09-12 2019-03-20 현대자동차주식회사 Apparatus for collecting vehicle data and method thereof
KR102147528B1 (en) * 2019-10-31 2020-08-24 (주)케이아이티원 Dynamic management system and method of table, attribute, relationship using relational database
KR102165192B1 (en) * 2016-11-29 2020-10-13 한국전자기술연구원 Data Update Notification Method
JP2020181533A (en) * 2019-04-26 2020-11-05 アズビル株式会社 Data collection system and data collection method

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0613192D0 (en) * 2006-07-01 2006-08-09 Ibm Methods, apparatus and computer programs for managing persistence
KR101614890B1 (en) * 2014-05-27 2016-04-22 주식회사 엘지씨엔에스 Method of creating multi tenancy history, server performing the same and storage media storing the same

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101564639B1 (en) * 2013-05-03 2015-10-30 주식회사 엘지유플러스 A method and apparatus for processing data
KR102165192B1 (en) * 2016-11-29 2020-10-13 한국전자기술연구원 Data Update Notification Method
KR20190029197A (en) * 2017-09-12 2019-03-20 현대자동차주식회사 Apparatus for collecting vehicle data and method thereof
JP2020181533A (en) * 2019-04-26 2020-11-05 アズビル株式会社 Data collection system and data collection method
KR102147528B1 (en) * 2019-10-31 2020-08-24 (주)케이아이티원 Dynamic management system and method of table, attribute, relationship using relational database

Also Published As

Publication number Publication date
KR102460910B1 (en) 2022-10-31
KR20220069413A (en) 2022-05-27

Similar Documents

Publication Publication Date Title
WO2012057581A2 (en) Cloud computing system and data synchronization method therefor
WO2012091400A1 (en) System and method for detecting malware in file based on genetic map of file
CN1514964A (en) Method and apparatus for detection of computer viurses on network using bait server
WO2019198885A1 (en) Decentralized service platform using multiple blockchain-based service nodes
CN111444147A (en) Data page creating method and device, terminal equipment and storage medium
WO2012033283A2 (en) Method and apparatus for sharing wireless data service
US7809828B2 (en) Method for maintaining state consistency among multiple state-driven file system entities when entities become disconnected
WO2018062625A1 (en) Method for removing data frame redundancy in network environment, and device and computer program for carrying out same
WO2022107931A1 (en) Data storage method for preventing data redundancy, and data platform using same
WO2020085528A1 (en) Subscription expiration management method and m2m system employing same
WO2016117740A1 (en) Circular queue-based in-memory database system and data processing method of same
WO2012148098A1 (en) Safeguard device and method
WO2018221996A1 (en) Method for storing service internal data by using cloud account, and program
CN1192841A (en) Arrangement and method for linking clients to services at run time in a distributing networking environment
WO2013022174A1 (en) Method for installing file based on online and device controlling thereof
WO2018101547A1 (en) Resource retrieval method
WO2019066101A1 (en) Node distribution method and management server for performing same
WO2019216457A1 (en) Method for detecting missing event-based data
WO2023063443A1 (en) Method for generating machine learning inference dataset by using iot platform
WO2024080406A1 (en) Method for storing and providing data without loss even when data platform is not working
WO2023120813A1 (en) Method and device for serverless computing through mutual monitoring between network edges
WO2019231020A1 (en) Method for managing request reachability in m2m platform
WO2019107596A1 (en) Method for configuring onem2m-based data control api
WO2023068392A1 (en) Method for executing operation by using subscription/notification on data platform
WO2023022240A1 (en) Advanced semantic discovery method, and m2m platform using same

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20962537

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20962537

Country of ref document: EP

Kind code of ref document: A1