KR102655685B1 - System for sharing data - Google Patents

System for sharing data Download PDF

Info

Publication number
KR102655685B1
KR102655685B1 KR1020190048524A KR20190048524A KR102655685B1 KR 102655685 B1 KR102655685 B1 KR 102655685B1 KR 1020190048524 A KR1020190048524 A KR 1020190048524A KR 20190048524 A KR20190048524 A KR 20190048524A KR 102655685 B1 KR102655685 B1 KR 102655685B1
Authority
KR
South Korea
Prior art keywords
data
local
edge
information
remote
Prior art date
Application number
KR1020190048524A
Other languages
Korean (ko)
Other versions
KR20200124974A (en
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 엘에스일렉트릭(주)
Priority to KR1020190048524A priority Critical patent/KR102655685B1/en
Publication of KR20200124974A publication Critical patent/KR20200124974A/en
Application granted granted Critical
Publication of KR102655685B1 publication Critical patent/KR102655685B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • H04L67/5682Policies or rules for updating, deleting or replacing the stored data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • G06F16/275Synchronous replication

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은 소정의 클라우드 서비스를 제공하는 코어서버, 상기 코어서버에 연결되는 에지서버, 및 상기 에지서버에 연결되는 복수의 로컬 단말을 포함하는 데이터 공유 시스템에 있어서, 상기 에지서버는 상기 복수의 로컬 단말 중 적어도 두 개의 로컬 단말에 공유되는 에지 데이터를 보유하는 리모트 데이터 캐시 모듈, 및 상기 각 로컬 단말과 연결되고 상기 에지 데이터를 송수신하는 리모트 동기화 모듈을 포함하고, 상기 리모트 데이터 캐시 모듈은 상기 에지 데이터에 대응하는 위치정보, 데이터정보, 더티플래그(dirty flag)정보 및 공유목록정보를 포함하는 데이터 공유 시스템을 제공한다.The present invention relates to a data sharing system including a core server providing a predetermined cloud service, an edge server connected to the core server, and a plurality of local terminals connected to the edge server, wherein the edge server is connected to the plurality of local terminals. It includes a remote data cache module that holds edge data shared by at least two local terminals among the terminals, and a remote synchronization module that is connected to each local terminal and transmits and receives the edge data, wherein the remote data cache module stores the edge data. Provides a data sharing system that includes location information, data information, dirty flag information, and shared list information corresponding to

Figure R1020190048524
Figure R1020190048524

Description

데이터 공유 시스템{SYSTEM FOR SHARING DATA}Data sharing system{SYSTEM FOR SHARING DATA}

본 발명은 로컬단말 간의 데이터 공유를 제공하는 시스템에 관한 것이다. The present invention relates to a system that provides data sharing between local terminals.

프로세서와 메모리 및 네트워크 기술 발전으로 인해, 컴퓨팅 환경은 각 단말의 독립적인 하드웨어 성능에 의존하지 않고, 네트워크 상의 모든 컴퓨팅 자원을 활용하여 단말의 요청에 따라 해당 서비스를 제공하는 클라우드 컴퓨팅(Cloud Computing) 형태로 진화하고 있다.Due to advances in processor, memory, and network technology, the computing environment is a form of cloud computing that does not depend on the independent hardware performance of each terminal but utilizes all computing resources on the network to provide services according to the request of the terminal. is evolving into

클라우드 컴퓨팅 서비스란, 인터넷과 같은 정보통신망을 통한 '컴퓨팅 자원의 온 디맨드 아웃소싱 서비스(on demand outsourcing service)'라고 정의할 수 있다. 즉, 클라우드 컴퓨팅 서비스는 클라우드 컴퓨팅 환경에서 서비스 제공자가 여러 곳에 분산되어 있는 데이터 센터를 가상화 기술로 통합하여 사용자들이 필요로 하는 서비스를 제공하는 방식이다. Cloud computing service can be defined as 'on demand outsourcing service of computing resources' through information and communication networks such as the Internet. In other words, cloud computing service is a method in which service providers provide services needed by users by integrating data centers dispersed in various locations in a cloud computing environment using virtualization technology.

이러한 클라우드 컴퓨팅에 따르면, 각 로컬단말은 다른 로컬단말과의 데이터 공유를 위해 코어서버(Core Server)에 접속해야만 한다. 그로 인해, 로컬 단말 간에 공유되는 데이터가 증가될수록, 코어서버의 부하가 기하급수적으로 증가된다. 즉, 각 로컬 단말은 코어서버를 통해 다른 로컬 단말과 데이터를 공유할 수 있으므로, 로컬 단말 간의 데이터 공유에 소모되는 통신 자원 및 처리시간이 증가되는 문제점이 있다. 그로 인해, 클라우드 컴퓨팅을 기반으로 구현된 자동화 설비의 경우, 신속성 및 안정성을 확보하는 데에 한계가 있는 문제점이 있다.According to this cloud computing, each local terminal must access the Core Server to share data with other local terminals. As a result, as the data shared between local terminals increases, the load on the core server increases exponentially. In other words, since each local terminal can share data with other local terminals through the core server, there is a problem that communication resources and processing time consumed for data sharing between local terminals increase. As a result, in the case of automated equipment implemented based on cloud computing, there are limitations in securing speed and stability.

본 발명은 로컬 단말 간의 데이터 공유에 소모되는 처리시간 및 통신 자원을 경감할 수 있는 데이터 공유 시스템을 제공한다.The present invention provides a data sharing system that can reduce processing time and communication resources consumed for data sharing between local terminals.

본 발명의 목적들은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있고, 본 발명의 실시예에 의해 보다 분명하게 이해될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.The objects of the present invention are not limited to the objects mentioned above, and other objects and advantages of the present invention that are not mentioned can be understood by the following description and will be more clearly understood by the examples of the present invention. Additionally, it will be readily apparent that the objects and advantages of the present invention can be realized by the means and combinations thereof indicated in the patent claims.

이와 같은 과제를 해결하기 위하여, 본 발명의 일 예시는 소정의 클라우드 서비스를 제공하는 코어서버, 상기 코어서버에 연결되는 에지서버, 및 상기 에지서버에 연결되는 복수의 로컬 단말을 포함하되, 상기 에지서버는 상기 복수의 로컬 단말 중 적어도 두 개의 로컬 단말에 공유되는 에지 데이터를 보유하는 리모트 데이터 캐시 모듈, 및 상기 각 로컬 단말과 연결되고 상기 에지 데이터를 송수신하는 리모트 동기화 모듈을 포함하는 데이터 공유 시스템을 제공한다. 여기서, 상기 리모트 데이터 캐시 모듈은 상기 에지 데이터에 대응하는 위치정보, 데이터정보, 더티플래그(dirty flag)정보 및 공유목록정보를 포함한다. 상기 위치정보는 상기 에지 데이터의 식별자에 대응하며, 상기 데이터정보는 상기 에지 데이터의 데이터값에 대응한다. 상기 더티플래그정보는 상기 에지 데이터의 변경 여부에 대응하며, 상기 공유목록정보는 상기 에지 데이터를 사용하는 소프트웨어를 포함한 적어도 하나의 로컬 단말의 ID를 포함한다.In order to solve this problem, an example of the present invention includes a core server that provides a predetermined cloud service, an edge server connected to the core server, and a plurality of local terminals connected to the edge server, wherein the edge The server includes a remote data cache module that holds edge data shared by at least two local terminals among the plurality of local terminals, and a remote synchronization module that is connected to each local terminal and transmits and receives the edge data. A data sharing system. to provide. Here, the remote data cache module includes location information, data information, dirty flag information, and shared list information corresponding to the edge data. The location information corresponds to the identifier of the edge data, and the data information corresponds to the data value of the edge data. The dirty flag information corresponds to whether the edge data has been changed, and the shared list information includes the ID of at least one local terminal including software that uses the edge data.

상기 위치정보는 상기 에지 데이터를 공급하는 로컬 단말의 ID, 상기 에지 데이터를 처리하는 소프트웨어의 ID 및 상기 소프트웨어 내에서의 데이터 식별을 위한 데이터의 ID를 포함한다.The location information includes the ID of the local terminal that supplies the edge data, the ID of the software that processes the edge data, and the ID of the data for data identification within the software.

상기 에지서버는 상기 리모트 데이터 캐시 모듈의 상기 에지 데이터 중 상기 코어서버에 공유되는 메인 데이터를 보유한 메인 데이터 캐시 모듈, 및 상기 코어 서버와 연결되고 상기 메인 데이터를 송수신하는 메인 동기화 모듈을 더 포함할 수 있다. 상기 메인 데이터 캐시 모듈은 상기 각 메인 데이터에 대응하는 위치정보 및 데이터정보를 포함한다.The edge server may further include a main data cache module that holds main data shared with the core server among the edge data of the remote data cache module, and a main synchronization module that is connected to the core server and transmits and receives the main data. there is. The main data cache module includes location information and data information corresponding to each main data.

상기 각 로컬 단말은 상기 리모트 데이터 캐시 모듈의 상기 에지 데이터 중 상기 각 로컬 단말에 설치된 적어도 하나의 소프트웨어의 실행을 위한 로컬 데이터를 보유하는 로컬 데이터 캐시 모듈, 및 상기 에지서버의 상기 리모트 동기화 모듈에 상기 에지 데이터를 송수신하는 로컬 동기화 모듈을 포함한다. 여기서, 상기 로컬 데이터 캐시 모듈은 상기 각 로컬 데이터에 대응하는 위치정보 및 데이터정보를 포함한다.Each local terminal has a local data cache module that holds local data for execution of at least one software installed in each local terminal among the edge data of the remote data cache module, and the remote synchronization module of the edge server. It includes a local synchronization module that transmits and receives edge data. Here, the local data cache module includes location information and data information corresponding to each local data.

상기 로컬 데이터 캐시 모듈은 상기 적어도 하나의 소프트웨어의 실행 중에 신규 에지 데이터가 발생된 경우, 상기 신규 에지 데이터의 위치정보 및 데이터정보를 상기 로컬 동기화 모듈에 전달하고, 상기 로컬 동기화 모듈은 상기 신규 에지 데이터의 위치정보 및 데이터정보를 포함한 데이터등록요청을 상기 리모트 동기화 모듈에 전달한다. 상기 리모트 동기화 모듈은 상기 데이터등록요청을 상기 리모트 데이터 캐시 모듈에 전달하고, 상기 리모트 데이터 캐시 모듈은 상기 데이터등록요청에 대응한 신규 에지 데이터의 더티플래그정보를 리셋(reset)상태로 설정하며, 상기 데이터등록요청에 대응한 신규 에지 데이터의 더티플래그정보, 위치정보 및 데이터정보를 더 보유한다.When new edge data is generated during execution of the at least one software, the local data cache module transmits the location information and data information of the new edge data to the local synchronization module, and the local synchronization module transmits the new edge data A data registration request including location information and data information is transmitted to the remote synchronization module. The remote synchronization module transmits the data registration request to the remote data cache module, and the remote data cache module sets dirty flag information of new edge data corresponding to the data registration request to a reset state, It further retains dirty flag information, location information, and data information of new edge data in response to data registration requests.

상기 복수의 로컬 단말 중 어느 하나의 상기 로컬 데이터 캐시 모듈은 상기 적어도 하나의 소프트웨어의 실행 중에 신규 로컬 데이터가 발생된 경우, 상기 신규 로컬 데이터의 위치정보를 상기 로컬 동기화 모듈에 전달하고, 상기 로컬 동기화 모듈은 상기 신규 로컬 데이터의 위치정보를 포함한 데이터제공요청을 상기 리모트 동기화 모듈에 전달한다. 상기 리모트 동기화 모듈은 상기 데이터제공요청을 상기 리모트 데이터 캐시 모듈에 전달하고, 상기 리모트 데이터 캐시 모듈은 상기 에지 데이터 중 상기 데이터제공요청의 위치정보에 대응하는 호출 에지 데이터를 검출하고, 상기 데이터제공요청에 대응한 로컬 단말의 ID를 상기 호출 에지 데이터의 공유목록정보에 부가하며, 상기 호출 에지 데이터의 위치정보 및 데이터정보를 상기 리모트 동기화 모듈에 전달한다. 상기 리모트 동기화 모듈은 상기 호출 에지 데이터의 위치정보 및 데이터정보를 포함하는 데이터제공응답을 상기 데이터제공요청에 대응한 로컬 단말의 상기 로컬 동기화 모듈에 전달한다. 상기 로컬 동기화 모듈은 상기 데이터제공응답을 상기 로컬 데이터 캐시 모듈에 전달하며, 상기 로컬 데이터 캐시 모듈은 상기 데이터제공응답의 데이터정보에 기초하여 상기 신규 로컬 데이터의 데이터정보를 변경한다. 여기서, 어느 하나의 로컬 단말의 신규 로컬 데이터는 상기 에지서버에 보유된 에지 데이터 중 상기 어느 하나의 로컬 단말이 새롭게 로컬 데이터로 추가한 것을 지칭한다.When new local data is generated during execution of the at least one software, the local data cache module of any one of the plurality of local terminals transmits location information of the new local data to the local synchronization module, and performs the local synchronization. The module transmits a data provision request including location information of the new local data to the remote synchronization module. The remote synchronization module transmits the data provision request to the remote data cache module, and the remote data cache module detects call edge data corresponding to the location information of the data provision request among the edge data, and transmits the data provision request. The ID of the local terminal corresponding to is added to the shared list information of the call edge data, and the location information and data information of the call edge data are transmitted to the remote synchronization module. The remote synchronization module transmits a data provision response including location information and data information of the call edge data to the local synchronization module of the local terminal corresponding to the data provision request. The local synchronization module transmits the data provision response to the local data cache module, and the local data cache module changes data information of the new local data based on the data information in the data provision response. Here, new local data of a local terminal refers to new local data added by a local terminal among edge data held in the edge server.

상기 로컬 데이터 캐시 모듈은 상기 적어도 하나의 소프트웨어의 실행 중에 상기 로컬 데이터의 데이터정보가 변경된 경우, 상기 변경된 로컬 데이터의 위치정보 및 데이터정보를 상기 로컬 동기화 모듈에 전달하고, 상기 로컬 동기화 모듈은 상기 변경된 로컬 데이터의 위치정보 및 데이터정보를 포함한 데이터변경요청을 상기 리모트 동기화 모듈에 전달한다. 상기 리모트 동기화 모듈은 상기 데이터변경요청을 상기 리모트 데이터 캐시 모듈에 전달하고, 상기 리모트 데이터 캐시 모듈은 상기 에지 데이터 중 상기 데이터변경요청의 위치정보에 대응하는 변경 에지 데이터를 검출하고, 상기 변경 에지 데이터의 더티플래그정보를 셋(set)상태로 변경하며, 상기 데이터변경요청의 데이터정보에 기초하여 상기 변경 에지 데이터의 데이터정보를 변경한다. When data information of the local data is changed during execution of the at least one software, the local data cache module transmits location information and data information of the changed local data to the local synchronization module, and the local synchronization module transmits the changed location information and data information to the local synchronization module. A data change request including location information and data information of local data is transmitted to the remote synchronization module. The remote synchronization module transmits the data change request to the remote data cache module, and the remote data cache module detects change edge data corresponding to the location information of the data change request among the edge data, and the change edge data The dirty flag information of is changed to the set state, and the data information of the change edge data is changed based on the data information of the data change request.

상기 리모트 데이터 캐시 모듈은 소정의 에지동기화주기가 도래하면 상기 에지 데이터 중 상기 더티플래그정보가 셋상태인 대상 에지 데이터를 검출하고, 상기 대상 에지 데이터의 위치정보, 데이터정보 및 공유목록정보를 상기 리모트 동기화 모듈에 전달하고, 상기 리모트 동기화 모듈은 상기 대상 에지 데이터의 공유목록정보에 포함된 적어도 하나의 로컬 단말의 ID에 대응한 적어도 하나의 로컬 단말의 로컬 동기화 모듈에 상기 대상 에지 데이터의 위치정보 및 데이터정보를 포함한 에지동기화요청을 전달한다. 상기 로컬 동기화 모듈은 상기 에지동기화요청을 상기 로컬 데이터 캐시 모듈에 전달하고, 상기 로컬 데이터 캐시 모듈은 상기 로컬 데이터 중 상기 에지동기화요청의 위치정보에 대응한 대상 로컬 데이터를 검출하며, 상기 에지동기화요청의 데이터정보에 기초하여 상기 대상 로컬 데이터의 데이터정보를 변경한다.When a predetermined edge synchronization period arrives, the remote data cache module detects target edge data with the dirty flag information set among the edge data, and sends the location information, data information, and shared list information of the target edge data to the remote device. transmits to the synchronization module, and the remote synchronization module transmits the location information of the target edge data to the local synchronization module of at least one local terminal corresponding to the ID of at least one local terminal included in the shared list information of the target edge data, and Sends an edge synchronization request including data information. The local synchronization module transmits the edge synchronization request to the local data cache module, and the local data cache module detects target local data corresponding to the location information of the edge synchronization request among the local data, and the edge synchronization request Change the data information of the target local data based on the data information.

전술한 바와 같은 데이터 공유 시스템은 클라우드 서비스를 제공하는 코어서버, 코어서버에 연결되는 에지서버 및 에지서버에 연결되는 복수의 로컬단말을 포함한다. The data sharing system as described above includes a core server that provides cloud services, an edge server connected to the core server, and a plurality of local terminals connected to the edge server.

에지서버는 복수의 로컬 단말 중 적어도 두 개의 로컬 단말에 공유되는 에지 데이터를 보유하는 리모트 데이터 캐시 모듈을 포함한다. The edge server includes a remote data cache module that holds edge data shared by at least two local terminals among a plurality of local terminals.

리모트 데이터 캐시 모듈은 에지 데이터에 대응하는 위치정보, 데이터정보, 더티플래그정보 및 공유목록정보를 포함한다. 여기서, 위치정보는 에지 데이터의 식별자에 대응하고, 데이터정보는 에지 데이터의 데이터값에 대응하며, 더티플래그정보는 에지 데이터의 변경 여부에 대응하고, 공유목록정보는 에지 데이터를 사용하는 소프트웨어를 포함한 적어도 하나의 로컬 단말의 ID를 포함한다. The remote data cache module includes location information, data information, dirty flag information, and shared list information corresponding to edge data. Here, the location information corresponds to the identifier of the edge data, the data information corresponds to the data value of the edge data, the dirty flag information corresponds to whether the edge data has been changed, and the shared list information includes software that uses edge data. Contains the ID of at least one local terminal.

이로써, 복수의 로컬 단말 간의 데이터 공유는 코어서버가 아니라 에지서버에 의해 처리될 수 있다. 그로 인해, 각 로컬 단말은 다른 로컬 단말과의 데이터 공유를 위해 코어서버에 접속될 필요가 없고, 클라우드 서비스를 제공하는 코어서버는 어느 하나의 에지서버에 연결된 복수의 로컬 단말 간의 데이터 공유를 처리할 필요가 없다. 그러므로, 데이터 공유에 소모되는 통신 자원 및 처리시간이 감소될 수 있다. 이러한 데이터 공유 시스템을 적용한 경우, 자동화 설비의 신속성 및 안정성을 확보하기에 유리해질 수 있다. Accordingly, data sharing between multiple local terminals can be handled by the edge server rather than the core server. As a result, each local terminal does not need to be connected to the core server to share data with other local terminals, and the core server providing cloud services can handle data sharing between multiple local terminals connected to any one edge server. no need. Therefore, communication resources and processing time consumed for data sharing can be reduced. If this data sharing system is applied, it can be advantageous to ensure the speed and stability of automated equipment.

도 1은 본 발명의 일 실시예에 따른 데이터 공유 시스템을 나타낸 도면이다.
도 2는 도 1의 에지서버의 리모트 데이터 캐시 모듈에 보유된 에지 데이터에 대한 일 예시이다.
도 3은 도 1의 복수의 로컬 단말 중 제 1 로컬 단말의 로컬 데이터 캐시 모듈에 보유된 로컬 데이터에 대한 일 예시이다.
도 4는 도 1의 에지서버의 메인 데이터 캐시 모듈에 보유된 메인 데이터에 대한 일 예시이다.
도 5는 도 1의 데이터 공유 시스템에 있어서, 어느 하나의 로컬 단말과 에지서버가 신규 에지 데이터를 동기화하는 과정을 나타낸 순서도이다.
도 6은 도 3의 제 1 로컬 단말의 로컬 데이터 캐시 모듈에 있어서, 도 5의 신규 에지 데이터를 로컬 데이터 캐시 모듈에 전달하는 단계에 대한 일 예시이다.
도 7은 도 2의 리모트 데이터 캐시 모듈에 있어서, 도 5의 신규 에지 데이터를 리모트 데이터 캐시 모듈에 전달하는 단계에 대한 일 예시이다.
도 8은 도 1의 데이터 공유 시스템에 있어서, 어느 하나의 로컬 단말과 에지서버가 신규 로컬 데이터를 동기화하는 과정을 나타낸 순서도이다.
도 9는 도 1의 복수의 로컬 단말 중 제 3 로컬 단말의 로컬 데이터 캐시 모듈에 보유된 로컬 데이터에 있어서, 도 8의 신규 로컬 데이터를 로컬 데이터 캐시 모듈에 전달하는 단계에 대한 일 예시이다.
도 10은 도 2의 에지서버에 있어서, 도 8의 검출된 에지 데이터의 공유목록정보를 리모트 데이터 캐시 모듈에 전달하는 단계에 대한 일 예시이다.
도 11은 도 9의 제 3 로컬 단말의 로컬 데이터 캐시 모듈에 있어서, 도 8의 신규 로컬 데이터의 변경된 데이터정보를 로컬 데이터 캐시 모듈에 전달하는 단계에 대한 일 예시이다.
도 12는 도 1의 데이터 공유 시스템에 있어서, 어느 하나의 로컬 단말에 의해 변경된 에지 데이터를 에지서버에 동기화하는 과정을 나타낸 순서도이다.
도 13은 도 3의 제 1 로컬 단말의 로컬 데이터 캐시 모듈에 있어서, 도 12의 변경된 로컬 데이터를 로컬 데이터 캐시 모듈에 전달하는 단계에 대한 일 예시이다.
도 14는 도 2의 리모트 데이터 캐시 모듈에 있어서, 도 12의 변경 에지 데이터를 리모트 데이터 캐시 모듈로 전달하는 단계에 대한 일 예시이다.
도 15는 도 1의 데이터 공유 시스템에 있어서, 에지서버의 에지 데이터를 복수의 로컬 단말에 동기화하는 과정을 나타낸 순서도이다.
도 16은 도 14의 리모트 데이터 캐시 모듈에 있어서, 도 15의 대상 에지 데이터를 검출하는 단계에 대한 일 예시이다.
도 17은 도 11의 제 3 로컬 단말의 로컬 데이터 캐시 모듈에 있어서, 도 15의 대상 로컬 데이터를 로컬 데이터 캐시 모듈에 전달하는 단계에 대한 일 예시이다.
Figure 1 is a diagram showing a data sharing system according to an embodiment of the present invention.
FIG. 2 is an example of edge data held in the remote data cache module of the edge server of FIG. 1.
FIG. 3 is an example of local data held in a local data cache module of a first local terminal among a plurality of local terminals in FIG. 1.
FIG. 4 is an example of main data held in the main data cache module of the edge server of FIG. 1.
FIG. 5 is a flowchart showing a process in which a local terminal and an edge server synchronize new edge data in the data sharing system of FIG. 1.
FIG. 6 is an example of a step of transmitting new edge data of FIG. 5 to the local data cache module of the first local terminal of FIG. 3.
FIG. 7 is an example of a step of transmitting new edge data of FIG. 5 to the remote data cache module of FIG. 2.
FIG. 8 is a flowchart showing a process by which one local terminal and an edge server synchronize new local data in the data sharing system of FIG. 1.
FIG. 9 is an example of a step of transmitting new local data of FIG. 8 to the local data cache module in the local data held in the local data cache module of the third local terminal among the plurality of local terminals of FIG. 1.
FIG. 10 is an example of a step of transmitting shared list information of the detected edge data of FIG. 8 to a remote data cache module in the edge server of FIG. 2.
FIG. 11 is an example of a step of transmitting changed data information of new local data of FIG. 8 to the local data cache module of the third local terminal of FIG. 9.
FIG. 12 is a flowchart showing a process of synchronizing edge data changed by one local terminal to the edge server in the data sharing system of FIG. 1.
FIG. 13 is an example of a step of transmitting the changed local data of FIG. 12 to the local data cache module of the first local terminal of FIG. 3.
FIG. 14 is an example of a step of transmitting the changed edge data of FIG. 12 to the remote data cache module of FIG. 2.
FIG. 15 is a flowchart showing a process of synchronizing edge data of an edge server to a plurality of local terminals in the data sharing system of FIG. 1.
FIG. 16 is an example of a step of detecting target edge data of FIG. 15 in the remote data cache module of FIG. 14.
FIG. 17 is an example of a step of transmitting the target local data of FIG. 15 to the local data cache module of the third local terminal of FIG. 11.

전술한 목적, 특징 및 장점은 첨부된 도면을 참조하여 상세하게 후술되며, 이에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 상세한 설명을 생략한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명하기로 한다. 도면에서 동일한 참조부호는 동일 또는 유사한 구성요소를 가리키는 것으로 사용된다.The above-mentioned objects, features, and advantages will be described in detail later with reference to the attached drawings, so that those skilled in the art will be able to easily implement the technical idea of the present invention. In describing the present invention, if it is determined that a detailed description of known technologies related to the present invention may unnecessarily obscure the gist of the present invention, the detailed description will be omitted. Hereinafter, preferred embodiments according to the present invention will be described in detail with reference to the attached drawings. In the drawings, identical reference numerals are used to indicate identical or similar components.

이하, 첨부된 도면을 참조하여, 본 발명의 일 실시예에 따른 데이터 공유 시스템 및 그의 데이터 공유 방법에 대해 설명한다.Hereinafter, with reference to the attached drawings, a data sharing system and a data sharing method thereof according to an embodiment of the present invention will be described.

먼저, 도 1 내지 도 4를 참조하여 본 발명의 일 실시예에 따른 데이터 공유 시스템에 대해 설명한다.First, a data sharing system according to an embodiment of the present invention will be described with reference to FIGS. 1 to 4.

도 1은 본 발명의 일 실시예에 따른 데이터 공유 시스템을 나타낸 도면이다. Figure 1 is a diagram showing a data sharing system according to an embodiment of the present invention.

도 2는 도 1의 에지서버의 리모트 데이터 캐시 모듈에 보유된 에지 데이터에 대한 일 예시이다. 도 3은 도 1의 복수의 로컬 단말 중 제 1 로컬 단말의 로컬 데이터 캐시 모듈에 보유된 로컬 데이터에 대한 일 예시이다. 도 4는 도 1의 에지서버의 메인 데이터 캐시 모듈에 보유된 메인 데이터에 대한 일 예시이다.FIG. 2 is an example of edge data held in the remote data cache module of the edge server of FIG. 1. FIG. 3 is an example of local data held in a local data cache module of a first local terminal among the plurality of local terminals in FIG. 1. FIG. 4 is an example of main data held in the main data cache module of the edge server of FIG. 1.

도 1에 도시된 바와 같이, 본 발명의 일 실시예에 따른 데이터 공유 시스템은 소정의 클라우드 서비스를 제공하는 코어서버(CS; Core Server), 코어서버에 연결되는 에지서버(EG; Edge Gateway), 및 에지서버에 연결되는 복수의 로컬 단말(LT1, LT2, LT3, LT4, LT5; Local Terminal; 이하, "LT"로 통칭함)을 포함한다.As shown in Figure 1, the data sharing system according to an embodiment of the present invention includes a core server (CS; Core Server) that provides a predetermined cloud service, an edge server (EG; Edge Gateway) connected to the core server, and a plurality of local terminals (LT1, LT2, LT3, LT4, LT5; Local Terminal; hereinafter collectively referred to as “LT”) connected to the edge server.

여기서, 각 로컬 단말(LT)은 자동화 설비의 구현을 위한 PLC(Programmable Logic Controller), HMI((Human-Machine Interface), 센서, 계전기 및 기타 통신모듈 중 어느 하나로 이루어질 수 있다. 이 경우, 데이터 공유 시스템은 자동화 설비의 구현을 위한 각종 산업 자동화 데이터를 둘 이상의 로컬 단말(LT)에 공유하기 위한 것일 수 있다. Here, each local terminal (LT) may be comprised of any one of a PLC (Programmable Logic Controller), HMI (Human-Machine Interface), sensor, relay, and other communication modules for the implementation of automation equipment. In this case, data sharing The system may be intended to share various industrial automation data for the implementation of automation equipment to two or more local terminals (LT).

에지서버(ES)는 복수의 로컬 단말(LT) 중 적어도 두 개의 로컬 단말에 공유되는 에지 데이터를 보유하는 리모트 데이터 캐시 모듈(110), 및 각 로컬 단말(LT)과 연결되고 에지 데이터를 송수신하는 리모트 동기화 모듈(120)을 포함한다.The edge server (ES) is a remote data cache module 110 that holds edge data shared by at least two local terminals among a plurality of local terminals (LT), and is connected to each local terminal (LT) and transmits and receives edge data. Includes a remote synchronization module 120.

여기서, 에지 데이터는 에지서버(ES)에 연결된 복수의 로컬 단말(LT) 중 적어도 두 개의 로컬 단말이 공유하는 데이터이다.Here, edge data is data shared by at least two local terminals among a plurality of local terminals (LT) connected to the edge server (ES).

리모트 데이터 캐시 모듈(110)은 에지 데이터에 대응한 데이터베이스를 보유하고, 에지서버(ES)를 운용하는 운용체계에 기초하여 로컬 단말(LT) 간의 데이터 공유를 처리할 수 있다. The remote data cache module 110 holds a database corresponding to edge data and can process data sharing between local terminals (LT) based on an operating system that operates an edge server (ES).

그리고, 리모트 동기화 모듈(120)은 리모트 데이터 캐시 모듈(110)로부터 수신된 데이터를 적어도 하나의 로컬 단말(LT)에 전달하고, 로컬 단말(LT)로부터 수신된 데이터를 리모트 데이터 캐시 모듈(110)에 전달한다.And, the remote synchronization module 120 transfers the data received from the remote data cache module 110 to at least one local terminal (LT), and transmits the data received from the local terminal (LT) to the remote data cache module 110. deliver it to

그리고, 에지서버(ES)는 리모트 데이터 캐시 모듈(110)의 에지 데이터 중 코어서버(CS)에 공유되는 메인 데이터를 보유하는 메인 데이터 캐시 모듈(130), 및 코어서버(CS)와 연결되고 메인 데이터를 송수신하는 메인 동기화 모듈(140)을 더 포함할 수 있다.In addition, the edge server (ES) is connected to the main data cache module 130, which holds main data shared with the core server (CS) among the edge data of the remote data cache module 110, and the core server (CS), and is connected to the main It may further include a main synchronization module 140 that transmits and receives data.

여기서, 메인 데이터는 리모트 데이터 캐시 모듈(110)의 에지 데이터 중 다른 적어도 일부이고 코어서버(CS)와 공유되는 데이터이다.Here, the main data is at least part of the edge data of the remote data cache module 110 and is data shared with the core server (CS).

일 예로, 메인 데이터 캐시 모듈(130)은 메인 데이터에 대응한 데이터베이스를 보유하고, 에지서버(ES)를 운용하는 운용체계에 기초하여 코어서버(CS)와의 데이터 공유를 처리할 수 있다. As an example, the main data cache module 130 may hold a database corresponding to main data and process data sharing with the core server (CS) based on the operating system that operates the edge server (ES).

복수의 로컬 단말(LT) 중 어느 하나인 제 1 로컬 단말(LT1)을 예로 들면, 각 로컬 단말(LT)은 로컬 데이터 캐시 모듈(210) 및 로컬 동기화 모듈(220)을 포함한다.Taking the first local terminal LT1, which is one of a plurality of local terminals LT, as an example, each local terminal LT includes a local data cache module 210 and a local synchronization module 220.

로컬 데이터 캐시 모듈(210)은 로컬 데이터에 대응한 데이터베이스를 보유하고 각 로컬 단말(LT1)에 설치된 적어도 하나의 소프트웨어를 실행한다. 여기서, 로컬 데이터는 리모트 데이터 캐시 모듈(110)의 에지 데이터 중 적어도 일부이며, 각 로컬 단말(LT1)에 설치된 적어도 하나의 소프트웨어의 실행을 위한 데이터이다.The local data cache module 210 holds a database corresponding to local data and executes at least one software installed in each local terminal LT1. Here, the local data is at least part of the edge data of the remote data cache module 110 and is data for executing at least one software installed in each local terminal LT1.

도 2에 도시된 바와 같이, 리모트 데이터 캐시 모듈(120)은 적어도 하나의 에지 데이터를 포함하는 데이터베이스를 보유할 수 있다. 여기서, 리모트 데이터 캐시 모듈(110)의 데이터베이스는 에지 데이터에 대응하는 위치정보, 더티플래그(DF; Dirty Flag)정보, 데이터정보 및 공유목록정보를 포함한다. As shown in FIG. 2, the remote data cache module 120 may hold a database including at least one edge data. Here, the database of the remote data cache module 110 includes location information corresponding to edge data, dirty flag (DF) information, data information, and shared list information.

위치정보는 에지 데이터의 식별자에 대응한다. 즉, 위치정보는 에지 데이터의 식별을 위한 정보이다. 이러한 위치정보는 에지 데이터를 공급하는 로컬 단말의 ID(Local_ID), 데이터 공급원의 로컬 단말에서 실행되고 에지 데이터를 처리하는 소프트웨어의 ID(SW_ID) 및 데이터 처리 주체인 소프트웨어 내에서의 데이터 식별을 위한 데이터의 ID(Data_ID)를 포함할 수 있다. Location information corresponds to the identifier of edge data. In other words, location information is information for identification of edge data. This location information includes the ID of the local terminal supplying edge data (Local_ID), the ID of the software running on the local terminal of the data source and processing edge data (SW_ID), and data for data identification within the software that is the subject of data processing. It may include ID (Data_ID).

더티플래그정보는 에지 데이터의 변경 여부에 대응한다. 일 예로, 더티플래그정보(DF)가 리셋상태(R; Reset)인 경우, 해당 에지 데이터는 변경되지 않은 상태일 수 있다. 반면, 더티플래그정보(DF)가 셋상태(S; Set)인 경우, 해당 에지 데이터는 변경된 상태일 수 있다. 여기서, 리셋상태(R)와 셋상태(S)는 0 및 1의 바이너리 코드로 표기될 수 있다.Dirty flag information corresponds to whether edge data has been changed. For example, when the dirty flag information (DF) is in a reset state (R; Reset), the corresponding edge data may remain unchanged. On the other hand, when the dirty flag information (DF) is set (S), the corresponding edge data may be in a changed state. Here, the reset state (R) and the set state (S) can be expressed as binary codes of 0 and 1.

이 경우, 에지 데이터의 데이터정보가 변경되면, 더티플래그정보(DF)는 셋상태(S)로 설정되고, 에지 데이터의 데이터정보가 동기화되면, 더티플래그정보(DF)는 리셋상태(R)로 설정될 수 있다.In this case, when the data information of the edge data is changed, the dirty flag information (DF) is set to the set state (S), and when the data information of the edge data is synchronized, the dirty flag information (DF) is set to the reset state (R). can be set.

데이터정보는 각 에지 데이터의 데이터값에 대응한다. 즉, 데이터정보는 소프트웨어의 실행에 따라 발생된 데이터 실제값이다.Data information corresponds to the data value of each edge data. In other words, data information is the actual data value generated according to the execution of software.

공유목록정보는 각 에지 데이터를 사용하는 소프트웨어를 포함한 적어도 하나의 로컬 단말의 ID를 포함한다. 즉, 각 에지 데이터의 공유목록정보는 각 에지 데이터를 공유하는 로컬 단말들의 ID를 포함한다.The shared list information includes the ID of at least one local terminal including software that uses each edge data. That is, the shared list information of each edge data includes the IDs of local terminals that share each edge data.

도 3에 도시된 바와 같이, 어느 하나의 로컬 단말(LT1)의 로컬 데이터 캐시 모듈(210)은 적어도 하나의 로컬 데이터를 포함하는 데이터베이스를 보유한다. As shown in FIG. 3, the local data cache module 210 of one local terminal LT1 holds a database containing at least one local data.

여기서, 로컬 데이터 캐시 모듈(210)의 데이터베이스는 각 로컬 데이터에 대응하는 위치정보 및 데이터정보를 포함한다. Here, the database of the local data cache module 210 includes location information and data information corresponding to each local data.

로컬 데이터의 위치정보는 에지 데이터의 위치정보와 마찬가지로, 각 로컬 데이터의 공급원인 로컬 단말의 ID(Local_ID), 데이터 공급원의 로컬 단말에서 실행되고 각 로컬 데이터를 처리하는 소프트웨어의 ID(SW_ID) 및 데이터 처리 주체인 소프트웨어 내에서의 데이터 식별을 위한 데이터의 ID(Data_ID)를 포함할 수 있다.Like the location information of edge data, the location information of local data includes the ID (Local_ID) of the local terminal that is the source of each local data, the ID (SW_ID) of the software that runs on the local terminal of the data source and processes each local data, and the data It may include the ID (Data_ID) of the data to identify the data within the software that is the subject of processing.

데이터정보는 로컬 데이터의 데이터값이다.Data information is the data value of local data.

도 4에 도시된 바와 같이, 메인 데이터 캐시 모듈(130)은 적어도 하나의 메인 데이터를 포함하는 데이터베이스를 보유한다.As shown in FIG. 4, the main data cache module 130 holds a database containing at least one main data.

여기서, 메인 데이터 캐시 모듈(130)의 데이터베이스는 각 메인 데이터에 대응하는 위치정보 및 데이터정보를 포함한다.Here, the database of the main data cache module 130 includes location information and data information corresponding to each main data.

메인 데이터의 위치정보는 에지 데이터의 위치정보와 달리, 에지서버의 ID를 더 포함할 수 있다. 즉, 메인 데이터의 위치정보는 에지서버의 ID, 각 메인 데이터의 공급원인 로컬 단말의 ID(Local_ID), 데이터 공급원의 로컬 단말에서 실행되고 각 메인 데이터를 처리하는 소프트웨어의 ID(SW_ID) 및 데이터 처리 주체인 소프트웨어 내에서의 데이터 식별을 위한 데이터의 ID(Data_ID)를 포함할 수 있다.Unlike the location information of edge data, the location information of main data may further include the ID of the edge server. In other words, the location information of the main data includes the ID of the edge server, the ID of the local terminal that is the source of each main data (Local_ID), the ID of the software that runs on the local terminal of the data source and processes each main data (SW_ID), and the data processing. It may include a data ID (Data_ID) for data identification within the subject software.

이와 같이, 본 발명의 일 실시예에 따르면, 클라우드 서비스를 제공하는 코어서버(CS)와 복수의 로컬 단말(LT) 사이에 배치된 에지서버(ES)가 적어도 두 개의 로컬 단말(LT)에서 공유되는 에지 데이터를 보유한 리모트 데이터 캐시 모듈(110)을 포함한다. 이에 따라, 동일한 에지서버(ES)에 연결된 로컬 단말(LT) 간의 데이터 공유는 코어서버(CS)가 아닌 에지서버(ES)에서 실행될 수 있으므로, 코어서버(CS)의 처리 부하를 경감시킬 수 있고, 통신자원의 소모를 줄일 수 있다. As such, according to an embodiment of the present invention, the edge server (ES) disposed between the core server (CS) providing a cloud service and a plurality of local terminals (LT) is shared by at least two local terminals (LT). It includes a remote data cache module 110 that holds edge data. Accordingly, data sharing between local terminals (LT) connected to the same edge server (ES) can be performed on the edge server (ES) rather than the core server (CS), thereby reducing the processing load on the core server (CS). , the consumption of communication resources can be reduced.

다음, 본 발명의 일 실시예에 따른 데이터 공유 시스템에 있어서, 로컬 단말 간의 데이터 공유 방법에 대해 설명한다.Next, a method for sharing data between local terminals in the data sharing system according to an embodiment of the present invention will be described.

먼저, 도 5, 도 6 및 도 7을 참조하여 에지 데이터를 등록하는 방법에 대해 설명한다.First, a method for registering edge data will be described with reference to FIGS. 5, 6, and 7.

도 5는 도 1의 데이터 공유 시스템에 있어서, 어느 하나의 로컬 단말과 에지서버가 신규 에지 데이터를 동기화하는 과정을 나타낸 순서도이다. 도 6은 도 3의 제 1 로컬 단말의 로컬 데이터 캐시 모듈에 있어서, 도 5의 신규 에지 데이터를 로컬 데이터 캐시 모듈에 전달하는 단계에 대한 일 예시이다. 도 7은 도 2의 리모트 데이터 캐시 모듈에 있어서, 도 5의 신규 에지 데이터를 리모트 데이터 캐시 모듈에 전달하는 단계에 대한 일 예시이다.FIG. 5 is a flowchart showing a process in which a local terminal and an edge server synchronize new edge data in the data sharing system of FIG. 1. FIG. 6 is an example of a step of transmitting new edge data of FIG. 5 to the local data cache module of the first local terminal of FIG. 3. FIG. 7 is an example of a step of transmitting new edge data of FIG. 5 to the remote data cache module of FIG. 2.

도 5에 도시된 바와 같이, 복수의 로컬 단말(LT) 중 어느 하나인 제 1 로컬 단말(LT1)에 있어서, 제 1 로컬 단말(LT1)에 설치된 적어도 하나의 소프트웨어의 실행 중에, 신규 에지 데이터가 발생될 수 있다. (S110) 여기서, 신규 에지 데이터는 각 로컬 단말(LT1)에서 생성되고, 다른 로컬 단말(LT)에 공유되도록 에지서버(ES)으로 전달되어야 하는 데이터를 지칭한다. As shown in FIG. 5, in a first local terminal (LT1), which is one of a plurality of local terminals (LT1), new edge data is generated while running at least one software installed in the first local terminal (LT1). It can happen. (S110) Here, new edge data refers to data that is generated in each local terminal (LT1) and must be transmitted to the edge server (ES) to be shared with other local terminals (LT).

이때, 로컬 데이터 캐시 모듈(210)은 신규 에지 데이터의 데이터정보 및 위치정보를 로컬 데이터로 보유한 상태이거나 또는 더 보유하도록 업데이트될 수 있다.At this time, the local data cache module 210 may hold the data information and location information of the new edge data as local data or may be updated to hold more.

이와 같이 신규 에지 데이터가 발생된 경우로컬 데이터 캐시 모듈(210)은 신규 에지 데이터의 위치정보 및 데이터정보를 로컬 동기화 모듈(220)에 전달한다. (S111)When new edge data is generated in this way, the local data cache module 210 transmits the location information and data information of the new edge data to the local synchronization module 220. (S111)

로컬 동기화 모듈(220)은 신규 에지 데이터의 위치정보 및 데이터정보를 포함한 데이터등록요청을 에지서버(ES)의 리모트 동기화 모듈(120)에 전달한다. (S112)The local synchronization module 220 transmits a data registration request including location information and data information of new edge data to the remote synchronization module 120 of the edge server (ES). (S112)

리모트 동기화 모듈(120)은 데이터등록요청을 리모트 데이터 캐시 모듈(110)에 전달한다. (S120)The remote synchronization module 120 transmits the data registration request to the remote data cache module 110. (S120)

리모트 데이터 캐시 모듈(110)은 데이터등록요청에 대응한 신규 에지 데이터의 더티플래그정보를 리셋(reset)상태로 설정한다. (S121) 그리고, 리모트 데이터 캐시 모듈(110)은 데이터등록요청에 대응한 신규 에지 데이터의 더티플래그정보, 위치정보 및 데이터정보를 더 보유한다. (S122)The remote data cache module 110 sets the dirty flag information of new edge data corresponding to the data registration request to a reset state. (S121) Additionally, the remote data cache module 110 further holds dirty flag information, location information, and data information of new edge data corresponding to the data registration request. (S122)

일 예로, 도 6에서 음영으로 표시된 바와 같이, 신규 에지 데이터가 발생하는 단계(S110)에서, 제 1 로컬 단말(LT1)의 로컬 데이터 캐시 모듈(LT1_210')은 신규 에지 데이터의 위치정보 및 데이터정보를 포함한 신규 레이블을 로컬 데이터의 데이터베이스에 부가하도록 업데이트된다. For example, as indicated by shading in FIG. 6, in step S110 in which new edge data is generated, the local data cache module (LT1_210') of the first local terminal (LT1) provides location information and data information of the new edge data. is updated to add new labels, including , to the database of local data.

그리고, 도 7에서 음영으로 표시된 바와 같이, 신규 에지 데이터를 더 보유하는 단계(S122)에서, 에지서버(ES)의 리모트 데이터 캐시 모듈(110a)은 데이터등록요청에 대응한 신규 에지 데이터의 더티플래그정보, 위치정보 및 데이터정보를 포함하는 신규 레이블을 에지 데이터의 데이터베이스에 부가하는 업데이트를 실행한다. 이때, 데이터등록요청에 대응한 신규 에지 데이터의 더티플래그정보는 신규 에지 데이터에 대응한 더티플래그정보의 초기값인 리셋상태(R)이다. 또한, 신규 에지 데이터의 공유목록정보는 공란일 수 있다.And, as indicated by shading in FIG. 7, in the step of further retaining new edge data (S122), the remote data cache module 110a of the edge server (ES) generates a dirty flag of the new edge data corresponding to the data registration request. An update is performed to add a new label including information, location information, and data information to the edge data database. At this time, the dirty flag information of the new edge data corresponding to the data registration request is the reset state (R), which is the initial value of the dirty flag information corresponding to the new edge data. Additionally, the shared list information of new edge data may be blank.

다음, 도 8 내지 도 11을 참조하여, 에지 데이터 중 어느 하나를 신규 로컬 데이터로 등록하는 방법에 대해 설명한다.Next, referring to FIGS. 8 to 11, a method of registering any one of edge data as new local data will be described.

도 8은 도 1의 데이터 공유 시스템에 있어서, 어느 하나의 로컬 단말과 에지서버가 신규 로컬 데이터를 동기화하는 과정을 나타낸 순서도이다. 도 9는 도 1의 복수의 로컬 단말 중 제 3 로컬 단말의 로컬 데이터 캐시 모듈에 보유된 로컬 데이터에 있어서, 도 8의 신규 로컬 데이터를 로컬 데이터 캐시 모듈에 전달하는 단계에 대한 일 예시이다. 도 10은 도 2의 에지서버에 있어서, 도 8의 검출된 에지 데이터의 공유목록정보를 리모트 데이터 캐시 모듈에 전달하는 단계에 대한 일 예시이다. 도 11은 도 9의 제 3 로컬 단말의 로컬 데이터 캐시 모듈에 있어서, 도 8의 신규 로컬 데이터의 변경된 데이터정보를 로컬 데이터 캐시 모듈에 전달하는 단계에 대한 일 예시이다. FIG. 8 is a flowchart showing a process by which one local terminal and an edge server synchronize new local data in the data sharing system of FIG. 1. FIG. 9 is an example of a step of transmitting new local data of FIG. 8 to the local data cache module in the local data held in the local data cache module of the third local terminal among the plurality of local terminals of FIG. 1. FIG. 10 is an example of a step of transmitting shared list information of the detected edge data of FIG. 8 to a remote data cache module in the edge server of FIG. 2. FIG. 11 is an example of a step of transmitting changed data information of new local data of FIG. 8 to the local data cache module of the third local terminal of FIG. 9.

도 8에 도시된 바와 같이, 복수의 로컬 단말(LT) 중 어느 하나인 제 3 로컬 단말(LT3)에 있어서, 제 3 로컬 단말(LT3)에 설치된 적어도 하나의 소프트웨어의 실행 중에, 신규 로컬 데이터가 발생될 수 있다. (S130) 여기서, 신규 로컬 데이터는 에지서버(ES)에 보유된 에지 데이터 중 어느 하나의 로컬 단말(LT)이 자신의 로컬 데이터로 새로 추가하는 것을 지칭한다. As shown in FIG. 8, in the third local terminal LT3, which is one of the plurality of local terminals LT, new local data is stored while running at least one software installed in the third local terminal LT3. It can happen. (S130) Here, new local data refers to what a local terminal (LT) adds as its own local data among the edge data held in the edge server (ES).

이때, 로컬 데이터 캐시 모듈(210)은 신규 로컬 데이터의 위치정보 및 데이터정보를 더 보유할 수 있다.At this time, the local data cache module 210 may further retain location information and data information of new local data.

이와 같이 신규 로컬 데이터가 발생된 경우, 로컬 데이터 캐시 모듈(210)은 신규 로컬 데이터의 데이터정보를 소정의 초기값으로 설정할 수 있다. (S131) 그리고, 로컬 데이터 캐시 모듈(210)은 신규 로컬 데이터의 위치정보를 로컬 동기화 모듈(220)에 전달한다. (S132) When new local data is generated in this way, the local data cache module 210 may set the data information of the new local data to a predetermined initial value. (S131) Then, the local data cache module 210 transmits the location information of new local data to the local synchronization module 220. (S132)

로컬 동기화 모듈(220)은 신규 로컬 데이터의 위치정보를 포함한 데이터제공요청을 에지서버(ES)의 리모트 동기화 모듈(120)에 전달한다. (S133)The local synchronization module 220 transmits a data provision request including location information of new local data to the remote synchronization module 120 of the edge server (ES). (S133)

리모트 동기화 모듈(133)은 데이터제공요청을 리모트 데이터 캐시 모듈(110)에 전달한다. (S140)The remote synchronization module 133 transmits the data provision request to the remote data cache module 110. (S140)

리모트 데이터 캐시 모듈(110)은 에지 데이터 중 데이터제공요청의 위치정보에 대응하는 호출 에지 데이터를 검출한다. (S141)The remote data cache module 110 detects call edge data corresponding to the location information of the data provision request among edge data. (S141)

그리고, 리모트 데이터 캐시 모듈(110)은 데이터제공요청에 대응한 로컬 단말(LT3)의 ID를 호출 에지 데이터의 공유목록정보에 부가한다. (S142) And, the remote data cache module 110 adds the ID of the local terminal (LT3) corresponding to the data provision request to the shared list information of the call edge data. (S142)

이어서, 리모트 데이터 캐시 모듈(110)은 호출 에지 데이터의 위치정보 및 데이터정보를 리모트 동기화 모듈(120)에 전달한다.Subsequently, the remote data cache module 110 transmits the location information and data information of the call edge data to the remote synchronization module 120.

리모트 동기화 모듈(120)은 검출된 에지 데이터의 위치정보 및 데이터정보를 포함한 데이터제공응답을, 데이터제공요청에 대응한 로컬 단말(LT3)의 로컬 동기화 모듈(220)에 전달한다. (S144)The remote synchronization module 120 transmits a data provision response including location information and data information of the detected edge data to the local synchronization module 220 of the local terminal LT3 in response to the data provision request. (S144)

로컬 동기화 모듈(220)은 데이터제공응답을 로컬 데이터 캐시 모듈(210)에 전달한다. (S150)The local synchronization module 220 transmits the data provision response to the local data cache module 210. (S150)

로컬 데이터 캐시 모듈(210)은 데이터제공응답의 데이터정보에 기초하여 신규 로컬 데이터의 데이터정보를 변경한다. (S151) The local data cache module 210 changes data information of new local data based on the data information of the data provision response. (S151)

일 예로, 도 9에서 음영으로 표시된 바와 같이, 신규 로컬 데이터가 발생되는 단계(S130)에서, 제 3 로컬 단말(LT3)의 로컬 데이터 캐시 모듈(LT3_210)은 신규 로컬 데이터의 위치정보 및 데이터정보를 포함한 신규 레이블을 로컬 데이터의 데이터베이스에 부가하도록 업데이트된다. 이때, 신규 로컬 데이터의 데이터정보는 제 3 로컬 단말(LT3)에 설치된 적어도 하나의 적어도 하나의 프로그램의 실행에 대응한 초기값일 수 있다. For example, as shown in shading in FIG. 9, in step S130 in which new local data is generated, the local data cache module (LT3_210) of the third local terminal (LT3) provides location information and data information of the new local data. It is updated to add new labels, including new labels, to the database of local data. At this time, the data information of the new local data may be an initial value corresponding to the execution of at least one program installed in the third local terminal LT3.

도 10에서 음영으로 표시된 바와 같이, 데이터제공요청에 대응한 로컬 단말의 ID를 호출 에지 데이터의 공유목록정보에 부가하는 단계(S142)에서, 리모트 데이터 캐시 모듈(110b)의 데이터베이스에 보유되는 호출 에지 데이터(L01.SW01.D001)의 공유목록정보는 데이터제공요청에 대응한 로컬 단말(LT3)의 ID(L03)를 더 포함한다. As shown in shading in FIG. 10, in the step of adding the ID of the local terminal corresponding to the data provision request to the shared list information of the call edge data (S142), the call edge held in the database of the remote data cache module 110b The shared list information of the data (L01.SW01.D001) further includes the ID (L03) of the local terminal (LT3) corresponding to the data provision request.

그리고, 도 11에서 음영으로 표시된 바와 같이, 신규 로컬 데이터의 데이터정보를 변경하는 단계(S151)에서, 제 3 로컬 단말(LT3)의 로컬 데이터 캐시 모듈(LT3_210')의 데이터베이스에 보유된 신규 로컬 데이터의 데이터정보는 초기값이 아니라 데이터제공응답의 데이터정보(AFED00)로 변경된다. And, as indicated by shading in FIG. 11, in the step of changing the data information of the new local data (S151), the new local data held in the database of the local data cache module (LT3_210') of the third local terminal (LT3) The data information is not the initial value, but is changed to the data information (AFED00) of the data provision response.

다음, 도 12 내지 도 14를 참조하여, 에지서버(ES)에 보유된 에지 데이터의 데이터정보를 변경하는 방법에 대해 설명한다. Next, referring to FIGS. 12 to 14, a method of changing data information of edge data held in the edge server (ES) will be described.

도 12는 도 1의 데이터 공유 시스템에 있어서, 어느 하나의 로컬 단말에 의해 변경된 에지 데이터를 에지서버에 동기화하는 과정을 나타낸 순서도이다. 도 13은 도 3의 제 1 로컬 단말의 로컬 데이터 캐시 모듈에 있어서, 도 12의 변경된 로컬 데이터를 로컬 데이터 캐시 모듈에 전달하는 단계에 대한 일 예시이다. 도 14는 도 2의 리모트 데이터 캐시 모듈에 있어서, 도 12의 변경 에지 데이터를 리모트 데이터 캐시 모듈로 전달하는 단계에 대한 일 예시이다.FIG. 12 is a flowchart showing a process of synchronizing edge data changed by one local terminal to the edge server in the data sharing system of FIG. 1. FIG. 13 is an example of a step of transmitting the changed local data of FIG. 12 to the local data cache module of the first local terminal of FIG. 3. FIG. 14 is an example of a step of transmitting the changed edge data of FIG. 12 to the remote data cache module of FIG. 2.

도 12에 도시된 바와 같이, 복수의 로컬 단말(LT) 중 어느 하나인 제 1 로컬 단말(LT1)에 있어서, 적어도 하나의 소프트웨어의 실행 중에 적어도 하나의 로컬 데이터의 데이터정보가 변경될 수 있다. (S160)As shown in FIG. 12, in the first local terminal LT1, which is one of the plurality of local terminals LT, data information of at least one local data may be changed while executing at least one software. (S160)

이 경우, 로컬 데이터 캐시 모듈(210)은 변경된 로컬 데이터의 위치정보 및 변경된 데이터정보를 로컬 동기화 모듈(220)에 전달한다. (S161)In this case, the local data cache module 210 transmits the location information of the changed local data and the changed data information to the local synchronization module 220. (S161)

로컬 동기화 모듈(220)은 변경된 로컬 데이터의 위치정보 및 데이터정보를 포함한 데이터변경요청을 에지서버(ES)의 리모트 동기화 모듈(120)에 전달한다. (S162)The local synchronization module 220 transmits a data change request including location information and data information of the changed local data to the remote synchronization module 120 of the edge server (ES). (S162)

리모트 동기화 모듈(120)은 데이터변경요청을 리모트 데이터 캐시 모듈(110)에 전달한다. (S170)The remote synchronization module 120 transmits the data change request to the remote data cache module 110. (S170)

리모트 데이터 캐시 모듈(110)은 리모트 데이터 캐시 모듈(110)에 보유된 에지 데이터 중 데이터변경요청의 위치정보에 대응하는 변경 에지 데이터를 검출한다. (S171)The remote data cache module 110 detects change edge data corresponding to the location information of the data change request among the edge data held in the remote data cache module 110. (S171)

그리고, 리모트 데이터 캐시 모듈(110)은 데이터변경요청의 데이터정보에 기초하여 변경 에지 데이터의 데이터정보를 변경하고, 변경 에지 데이터의 더티플래그정보를 셋(set)상태로 변경한다. (S172)Then, the remote data cache module 110 changes the data information of the change edge data based on the data information of the data change request and changes the dirty flag information of the change edge data to the set state. (S172)

즉, 도 13에서 음영으로 표시된 바와 같이, 로컬 데이터의 데이터정보가 변경되는 단계(S160)에서, 제 1 로컬 단말(LT1)의 로컬 데이터 캐시 모듈(L1_210")의 데이터베이스에 보유된 로컬데이터 중 적어도 어느 하나의 데이터정보가 변경된다. 즉, 로컬 데이터 캐시 모듈(L1_210")의 데이터베이스에서, 변경된 로컬 데이터(L01.SW01.D001)의 데이터정보는 이전값(AFED00)에서 신규값(232323)으로 변경된다.That is, as indicated in shading in FIG. 13, in the step (S160) in which the data information of the local data is changed, at least one of the local data held in the database of the local data cache module (L1_210") of the first local terminal (LT1) Any one data information is changed. That is, in the database of the local data cache module (L1_210"), the data information of the changed local data (L01.SW01.D001) changes from the old value (AFED00) to the new value (232323). do.

도 14에서 음영으로 표시된 바와 같이, 변경 에지 데이터의 더티플래그정보 및 데이터정보를 변경하는 단계(S172)에서, 리모트 데이터 캐시 모듈(110c)은 변경 에지 데이터의 데이터정보가 데이터변경요청의 데이터정보로 변경되도록 업데이트된다. 즉, 업데이트된 리모트 데이터 캐시 모듈(110c)의 데이터베이스에서, 변경 에지 데이터(L01.SW01.D001)의 데이터정보는 데이터변경요청에 따른 데이터정보(AFED00 → 232323)로 변경되고, 변경 에지 데이터(L01.SW01.D001)의 더티플래그정보는 리셋상태에서 셋상태로(R → S) 변경된다.As shown in shading in FIG. 14, in the step of changing the dirty flag information and data information of the change edge data (S172), the remote data cache module 110c changes the data information of the change edge data to the data information of the data change request. Updated to change. That is, in the database of the updated remote data cache module 110c, the data information of the change edge data (L01.SW01.D001) is changed to data information (AFED00 → 232323) according to the data change request, and the change edge data (L01) The dirty flag information of .SW01.D001) changes from reset state to set state (R → S).

다음, 도 15 내지 도 17을 참조하여, 에지서버(ES)에 보유된 에지 데이터 중 변경된 에지 데이터를 로컬 단말(LT)에 제공하는 방법에 대해 설명한다.Next, with reference to FIGS. 15 to 17, a method of providing changed edge data among edge data held in the edge server (ES) to the local terminal (LT) will be described.

도 15는 도 1의 데이터 공유 시스템에 있어서, 에지서버의 에지 데이터를 복수의 로컬 단말에 동기화하는 과정을 나타낸 순서도이다. 도 16은 도 14의 리모트 데이터 캐시 모듈에 있어서, 도 15의 대상 에지 데이터를 검출하는 단계에 대한 일 예시이다. 도 17은 도 11의 제 3 로컬 단말의 로컬 데이터 캐시 모듈에 있어서, 도 15의 대상 로컬 데이터를 로컬 데이터 캐시 모듈에 전달하는 단계에 대한 일 예시이다.FIG. 15 is a flowchart showing a process of synchronizing edge data of an edge server to a plurality of local terminals in the data sharing system of FIG. 1. FIG. 16 is an example of a step of detecting target edge data of FIG. 15 in the remote data cache module of FIG. 14. FIG. 17 is an example of a step of transmitting the target local data of FIG. 15 to the local data cache module of the third local terminal of FIG. 11.

도 15에 도시된 바와 같이, 에지서버(ES)의 리모트 데이터 캐시 모듈(110)은 에지동기화주기가 도래하면 (S180), 에지 데이터 중 더티플래그정보(DF)가 셋상태(S)인 대상 에지 데이터를 검출한다. (S181)As shown in FIG. 15, when the edge synchronization period arrives (S180), the remote data cache module 110 of the edge server (ES) selects the target edge whose dirty flag information (DF) is in the set state (S) among the edge data. Detect data. (S181)

그리고, 리모트 데이터 캐시 모듈(110)은 대상 에지 데이터의 위치정보, 데이터정보 및 공유목록정보를 리모트 동기화 모듈(120)에 전달한다. (S182)And, the remote data cache module 110 transmits the location information, data information, and shared list information of the target edge data to the remote synchronization module 120. (S182)

리모트 동기화 모듈(120)은 대상 에지 데이터의 공유목록정보에 포함된 적어도 하나의 로컬 단말의 ID에 대응하는 적어도 하나의 로컬 단말의 로컬 동기화 모듈(220)에 대상 에지 데이터의 위치정보 및 데이터정보를 포함한 에지동기화요청을 전달한다. (S183)The remote synchronization module 120 provides location information and data information of the target edge data to the local synchronization module 220 of at least one local terminal corresponding to the ID of at least one local terminal included in the shared list information of the target edge data. Send edge synchronization request including. (S183)

로컬 동기화 모듈(220)은 에지동기화요청을 로컬 데이터 캐시 모듈(210)에 전달한다. (S190)The local synchronization module 220 transmits the edge synchronization request to the local data cache module 210. (S190)

로컬 데이터 캐시 모듈(210)은 로컬 데이터 중 에지동기화요청의 위치정보에 대응한 대상 로컬 데이터를 검출한다. (S191)The local data cache module 210 detects target local data corresponding to the location information of the edge synchronization request among local data. (S191)

그리고, 로컬 데이터 캐시 모듈(210)은 에지동기화요청의 데이터정보에 기초하여 대상 로컬 데이터의 데이터정보를 변경한다. (S192)And, the local data cache module 210 changes the data information of the target local data based on the data information of the edge synchronization request. (S192)

즉, 도 16에서 음영으로 표시된 바와 같이, 대상 에지 데이터를 검출하는 단계(S181)에서, 리모트 데이터 캐시 모듈(110d)는 에지 데이터 중 더티플래그정보(DF)가 셋상태(S)인 대상 에지 데이터(L01.SW01.D001)를 검출한다. That is, as indicated by shading in FIG. 16, in the step (S181) of detecting the target edge data, the remote data cache module 110d detects the target edge data whose dirty flag information (DF) is in the set state (S) among the edge data. Detect (L01.SW01.D001).

이 경우, 리모트 동기화 모듈(120)은 대상 에지 데이터의 공유목록정보에 포함된 적어도 하나의 로컬 단말의 ID(L02, L04, L05, L03)에 대응하는 제 2, 제 4, 제 5 및 제 3 로컬 단말(LT2, LT4, LT5, LT3)의 로컬 동기화 모듈(220)에 대상 에지 데이터(L01.SW01.D001)의 위치정보와 데이터정보를 포함하는 에지동기화요청을 전달한다. In this case, the remote synchronization module 120 uses the second, fourth, fifth, and third IDs (L02, L04, L05, L03) of at least one local terminal included in the shared list information of the target edge data. An edge synchronization request including location information and data information of the target edge data (L01.SW01.D001) is transmitted to the local synchronization module 220 of the local terminal (LT2, LT4, LT5, LT3).

도 17에서 음영으로 도시된 바와 같이, 대상 로컬 데이터의 데이터정보를 변경하는 단계(S192)에서, 제 3 로컬 단말(LT3)의 로컬 데이터 캐시 모듈(LT3_210")에 보유된 대상 로컬 데이터(L01.SW01.D001)의 데이터정보는 에지동기화요청의 데이터정보(AFED00 → 232323)로 변경된다. As shown in shading in FIG. 17, in the step of changing the data information of the target local data (S192), the target local data (L01. The data information of SW01.D001) is changed to the data information of the edge synchronization request (AFED00 → 232323).

더불어, 별도로 도시하고 있지 않으나, 에지서버(ES)의 리모트 데이터 캐시 모듈(110)은 소정의 메인동기화주기가 도래하면 메인 동기화 모듈(140)을 이용하여 메인 데이터 캐시 모듈(130)에 보유된 메인 데이터를 코어서버(CS)에 전달할 수 있다.In addition, although not separately shown, the remote data cache module 110 of the edge server (ES) uses the main synchronization module 140 to synchronize the main data cache module 130 when a predetermined main synchronization period arrives. Data can be delivered to the core server (CS).

이상과 같이, 본 발명의 일 실시예에 따른 데이터 공유 시스템은 클라우드 서비스를 제공하는 코어서버(CS)가 아니라, 코어서버(CS)와 복수의 로컬 단말(LT) 사이에 배치된 에지서버(ES)를 이용하여 복수의 로컬 단말(LT) 간의 데이터 공유를 처리한다. 이로써, 복수의 로컬 단말(LT) 간의 데이터 공유를 위해 각 로컬 단말(LT)이 코어서버(CS)에 접속될 필요가 없으므로, 통신자원의 소모가 경감될 수 있고, 처리속도가 향상될 수 있다. 그로 인해, 자동화 설비의 구현에 더욱 유리해질 수 있다.As described above, the data sharing system according to an embodiment of the present invention is not a core server (CS) that provides cloud services, but an edge server (ES) disposed between the core server (CS) and a plurality of local terminals (LT). ) is used to process data sharing between multiple local terminals (LT). As a result, each local terminal (LT) does not need to be connected to the core server (CS) to share data between a plurality of local terminals (LT), so the consumption of communication resources can be reduced and processing speed can be improved. . As a result, it can be more advantageous to implement automated equipment.

전술한 본 발명은, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다.The above-described present invention may be subject to various substitutions, modifications, and changes without departing from the technical spirit of the present invention to those skilled in the art to which the present invention pertains. It is not limited by .

CS: 코어서버
ES: 에지서버
LT: 로컬 단말
DF: 더티플래그정보
CS: Core Server
ES: Edge Server
LT: Local terminal
DF: Dirty flag information

Claims (8)

소정의 클라우드 서비스를 제공하는 코어서버;
상기 코어서버에 연결되는 에지서버; 및
상기 에지서버에 연결되는 복수의 로컬 단말을 포함하고,
상기 에지서버는
상기 복수의 로컬 단말 중 적어도 두 개의 로컬 단말에 공유되는 에지 데이터를 보유하는 리모트 데이터 캐시 모듈; 및
상기 각 로컬 단말과 연결되고 상기 에지 데이터를 송수신하는 리모트 동기화 모듈을 포함하며,
상기 리모트 데이터 캐시 모듈은 상기 에지 데이터에 대응하는 위치정보, 데이터정보, 더티플래그(dirty flag)정보 및 공유목록정보를 포함하고,
상기 각 로컬 단말은
상기 리모트 데이터 캐시 모듈의 상기 에지 데이터 중 상기 각 로컬 단말에 설치된 적어도 하나의 소프트웨어의 실행을 위한 로컬 데이터를 보유하는 로컬 데이터 캐시 모듈; 및
상기 에지서버의 상기 리모트 동기화 모듈에 상기 에지 데이터를 송수신하는 로컬 동기화 모듈을 포함하고,
상기 로컬 데이터 캐시 모듈은 상기 각 로컬 데이터에 대응하는 위치정보 및 데이터정보를 포함하며,
상기 위치정보는 상기 에지 데이터의 식별자에 대응하며,
상기 데이터정보는 상기 에지 데이터의 데이터값에 대응하고,
상기 더티플래그정보는 상기 에지 데이터의 변경 여부에 대응하며,
상기 공유목록정보는 상기 에지 데이터를 사용하는 소프트웨어를 포함한 적어도 하나의 로컬 단말의 ID를 포함하며,
상기 더티플래그정보가 리셋상태(Reset)이면 상기 에지 데이터는 변경되지 않은 상태를 나타내고, 상기 더티플래그정보가 셋상태(Set)이면 상기 에지 데이터는 변경된 상태를 나타내며,
상기 리모트 데이터 캐시 모듈은 데이터등록요청에 대응한 신규 에지 데이터의 더티플래그정보를 리셋(reset)상태로 설정하며, 상기 데이터등록요청에 대응한 신규 에지 데이터의 더티플래그정보, 위치정보 및 데이터정보를 더 보유하는 데이터 공유 시스템.
A core server that provides certain cloud services;
An edge server connected to the core server; and
Includes a plurality of local terminals connected to the edge server,
The edge server is
a remote data cache module that holds edge data shared by at least two local terminals among the plurality of local terminals; and
It includes a remote synchronization module that is connected to each local terminal and transmits and receives the edge data,
The remote data cache module includes location information, data information, dirty flag information, and shared list information corresponding to the edge data,
Each local terminal is
a local data cache module that holds local data for executing at least one software installed in each local terminal among the edge data of the remote data cache module; and
Comprising a local synchronization module that transmits and receives the edge data to the remote synchronization module of the edge server,
The local data cache module includes location information and data information corresponding to each local data,
The location information corresponds to the identifier of the edge data,
The data information corresponds to the data value of the edge data,
The dirty flag information corresponds to whether the edge data has been changed,
The shared list information includes the ID of at least one local terminal including software that uses the edge data,
If the dirty flag information is in a reset state, the edge data indicates an unchanged state, and if the dirty flag information is in a set state, the edge data indicates a changed state,
The remote data cache module sets the dirty flag information of the new edge data corresponding to the data registration request to a reset state, and sets the dirty flag information, location information, and data information of the new edge data corresponding to the data registration request. A data sharing system that holds more.
제 1 항에 있어서,
상기 위치정보는 상기 에지 데이터를 공급하는 로컬 단말의 ID, 상기 에지 데이터를 처리하는 소프트웨어의 ID 및 상기 소프트웨어 내에서의 데이터 식별을 위한 데이터의 ID를 포함하는 데이터 공유 시스템.
According to claim 1,
A data sharing system wherein the location information includes an ID of a local terminal that supplies the edge data, an ID of software that processes the edge data, and an ID of data for data identification within the software.
제 2 항에 있어서,
상기 에지서버는
상기 리모트 데이터 캐시 모듈의 상기 에지 데이터 중 상기 코어서버에 공유되는 메인 데이터를 보유한 메인 데이터 캐시 모듈; 및
상기 코어 서버와 연결되고 상기 메인 데이터를 송수신하는 메인 동기화 모듈을 더 포함하고,
상기 메인 데이터 캐시 모듈은 상기 각 메인 데이터에 대응하는 위치정보 및 데이터정보를 포함하는 데이터 공유 시스템.
According to claim 2,
The edge server is
a main data cache module that holds main data shared with the core server among the edge data of the remote data cache module; and
Further comprising a main synchronization module connected to the core server and transmitting and receiving the main data,
The main data cache module is a data sharing system that includes location information and data information corresponding to each main data.
삭제delete 제 1 항에 있어서,
상기 로컬 데이터 캐시 모듈은 상기 적어도 하나의 소프트웨어의 실행 중에 신규 에지 데이터가 발생된 경우, 상기 신규 에지 데이터의 위치정보 및 데이터정보를 상기 로컬 동기화 모듈에 전달하고,
상기 로컬 동기화 모듈은 상기 신규 에지 데이터의 위치정보 및 데이터정보를 포함한 데이터등록요청을 상기 리모트 동기화 모듈에 전달하며,
상기 리모트 동기화 모듈은 상기 데이터등록요청을 상기 리모트 데이터 캐시 모듈에 전달하는 데이터 공유 시스템.
According to claim 1,
When new edge data is generated while executing the at least one software, the local data cache module transmits location information and data information of the new edge data to the local synchronization module,
The local synchronization module transmits a data registration request including location information and data information of the new edge data to the remote synchronization module,
The remote synchronization module is a data sharing system that transmits the data registration request to the remote data cache module.
제 1 항에 있어서,
상기 복수의 로컬 단말 중 어느 하나의 상기 로컬 데이터 캐시 모듈은 상기 적어도 하나의 소프트웨어의 실행 중에 신규 로컬 데이터가 발생된 경우, 상기 신규 로컬 데이터의 위치정보를 상기 로컬 동기화 모듈에 전달하고,
상기 로컬 동기화 모듈은 상기 신규 로컬 데이터의 위치정보를 포함한 데이터제공요청을 상기 리모트 동기화 모듈에 전달하며,
상기 리모트 동기화 모듈은 상기 데이터제공요청을 상기 리모트 데이터 캐시 모듈에 전달하고,
상기 리모트 데이터 캐시 모듈은 상기 에지 데이터 중 상기 데이터제공요청의 위치정보에 대응하는 호출 에지 데이터를 검출하고, 상기 데이터제공요청에 대응한 로컬 단말의 ID를 상기 호출 에지 데이터의 공유목록정보에 부가하며, 상기 호출 에지 데이터의 위치정보 및 데이터정보를 상기 리모트 동기화 모듈에 전달하며,
상기 리모트 동기화 모듈은 상기 호출 에지 데이터의 위치정보 및 데이터정보를 포함하는 데이터제공응답을 상기 데이터제공요청에 대응한 로컬 단말의 상기 로컬 동기화 모듈에 전달하고,
상기 로컬 동기화 모듈은 상기 데이터제공응답을 상기 로컬 데이터 캐시 모듈에 전달하며,
상기 로컬 데이터 캐시 모듈은 상기 데이터제공응답의 데이터정보에 기초하여 상기 신규 로컬 데이터의 데이터정보를 변경하는 데이터 공유 시스템.
According to claim 1,
When new local data is generated during execution of the at least one software, the local data cache module of any one of the plurality of local terminals transmits location information of the new local data to the local synchronization module,
The local synchronization module transmits a data provision request including location information of the new local data to the remote synchronization module,
The remote synchronization module transmits the data provision request to the remote data cache module,
The remote data cache module detects call edge data corresponding to the location information of the data provision request among the edge data, and adds the ID of the local terminal corresponding to the data provision request to the shared list information of the call edge data. , transmitting the location information and data information of the call edge data to the remote synchronization module,
The remote synchronization module transmits a data provision response including location information and data information of the call edge data to the local synchronization module of the local terminal corresponding to the data provision request,
The local synchronization module transmits the data provision response to the local data cache module,
A data sharing system in which the local data cache module changes data information of the new local data based on data information of the data provision response.
제 1 항에 있어서,
상기 로컬 데이터 캐시 모듈은 상기 적어도 하나의 소프트웨어의 실행 중에 상기 로컬 데이터의 데이터정보가 변경된 경우, 상기 변경된 로컬 데이터의 위치정보 및 데이터정보를 상기 로컬 동기화 모듈에 전달하고,
상기 로컬 동기화 모듈은 상기 변경된 로컬 데이터의 위치정보 및 데이터정보를 포함한 데이터변경요청을 상기 리모트 동기화 모듈에 전달하며,
상기 리모트 동기화 모듈은 상기 데이터변경요청을 상기 리모트 데이터 캐시 모듈에 전달하고,
상기 리모트 데이터 캐시 모듈은 상기 에지 데이터 중 상기 데이터변경요청의 위치정보에 대응하는 변경 에지 데이터를 검출하고, 상기 변경 에지 데이터의 더티플래그정보를 셋(set)상태로 변경하며, 상기 데이터변경요청의 데이터정보에 기초하여 상기 변경 에지 데이터의 데이터정보를 변경하는 데이터 공유 시스템.
According to claim 1,
When data information of the local data is changed during execution of the at least one software, the local data cache module transmits location information and data information of the changed local data to the local synchronization module,
The local synchronization module transmits a data change request including location information and data information of the changed local data to the remote synchronization module,
The remote synchronization module transmits the data change request to the remote data cache module,
The remote data cache module detects change edge data corresponding to the location information of the data change request among the edge data, changes dirty flag information of the change edge data to a set state, and A data sharing system that changes data information of the changed edge data based on data information.
제 7 항에 있어서,
상기 리모트 데이터 캐시 모듈은 소정의 에지동기화주기가 도래하면 상기 에지 데이터 중 상기 더티플래그정보가 셋상태인 대상 에지 데이터를 검출하고, 상기 대상 에지 데이터의 위치정보, 데이터정보 및 공유목록정보를 상기 리모트 동기화 모듈에 전달하고,
상기 리모트 동기화 모듈은 상기 대상 에지 데이터의 공유목록정보에 포함된 적어도 하나의 로컬 단말의 ID에 대응한 적어도 하나의 로컬 단말의 로컬 동기화 모듈에 상기 대상 에지 데이터의 위치정보 및 데이터정보를 포함한 에지동기화요청을 전달하며,
상기 로컬 동기화 모듈은 상기 에지동기화요청을 상기 로컬 데이터 캐시 모듈에 전달하고,
상기 로컬 데이터 캐시 모듈은 상기 로컬 데이터 중 상기 에지동기화요청의 위치정보에 대응한 대상 로컬 데이터를 검출하며, 상기 에지동기화요청의 데이터정보에 기초하여 상기 대상 로컬 데이터의 데이터정보를 변경하는 데이터 공유 시스템.
According to claim 7,
When a predetermined edge synchronization period arrives, the remote data cache module detects target edge data with the dirty flag information set among the edge data, and sends the location information, data information, and shared list information of the target edge data to the remote device. Pass it to the synchronization module,
The remote synchronization module performs edge synchronization including location information and data information of the target edge data in a local synchronization module of at least one local terminal corresponding to the ID of at least one local terminal included in the shared list information of the target edge data. forwarding the request,
The local synchronization module transmits the edge synchronization request to the local data cache module,
The local data cache module detects target local data corresponding to the location information of the edge synchronization request among the local data, and changes data information of the target local data based on the data information of the edge synchronization request. A data sharing system .
KR1020190048524A 2019-04-25 2019-04-25 System for sharing data KR102655685B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190048524A KR102655685B1 (en) 2019-04-25 2019-04-25 System for sharing data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190048524A KR102655685B1 (en) 2019-04-25 2019-04-25 System for sharing data

Publications (2)

Publication Number Publication Date
KR20200124974A KR20200124974A (en) 2020-11-04
KR102655685B1 true KR102655685B1 (en) 2024-04-05

Family

ID=73571442

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190048524A KR102655685B1 (en) 2019-04-25 2019-04-25 System for sharing data

Country Status (1)

Country Link
KR (1) KR102655685B1 (en)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101638656B1 (en) * 2012-08-23 2016-07-11 엘에스산전 주식회사 System for Data Sharing and Apparatus for Industrial Device Management Based on Cloud Computing Environment
KR102435830B1 (en) * 2017-09-28 2022-08-24 한국전자통신연구원 Method and architecture of Network Infrastructure for Optimal Application Service Processing and Data Sharing among Application domains

Also Published As

Publication number Publication date
KR20200124974A (en) 2020-11-04

Similar Documents

Publication Publication Date Title
CN111091429A (en) Electronic bill identification distribution method and device and electronic bill generation system
CN106302383B (en) The processing method and processing unit of data access request
CN104954468A (en) Resource allocation method and resource allocation device
CN110677462B (en) Access processing method, system, device and storage medium for multi-block chain network
US11917027B2 (en) Method and system for providing time-critical services
US20170132256A1 (en) Cluster-Based Business Process Management Through Eager Displacement And On-Demand Recovery
KR20110071453A (en) Zigbee gateway and method for identifying message of the same
US9723062B2 (en) System for dynamic service collaboration through identification and context of plurality of heterogeneous devices
CN115516840A (en) Information processing method, device, system, medium, chip and program
AU2020203022A1 (en) Method and apparatus for sending express delivery information, storage medium, and express delivery locker
CN112630557A (en) Equipment state detection method, device, equipment and medium
CN109840815B (en) System and method for order processing
CN113315754A (en) Intelligent linkage method, device, equipment and medium for firewall of container visit
CN111314221A (en) Service processing method, device, equipment and computer readable storage medium
KR102655685B1 (en) System for sharing data
CN107277087B (en) Data processing method and device
CN112052091A (en) Processing method of service call request under multi-computer-room deployment and computing equipment
CN114900387B (en) Cross-platform fusion access method, system, gateway and storage medium of equipment
CN116320059A (en) Building protocol data processing method, device and system
CN116506434A (en) Multi-terminal offline-operation intelligent warehouse management method
CN116150273A (en) Data processing method, device, computer equipment and storage medium
CN114760360B (en) Request response method, request response device, electronic equipment and computer readable storage medium
CN104301423A (en) Heartbeat message sending method, device and system
CN113783826A (en) Micro-service exception handling method and device
US9436519B2 (en) Process cooperation method, process cooperation program, and process cooperation system

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
GRNT Written decision to grant
X701 Decision to grant (after re-examination)