KR102638529B1 - Ontology data management system and method for interfacing with power system applications - Google Patents
Ontology data management system and method for interfacing with power system applications Download PDFInfo
- Publication number
- KR102638529B1 KR102638529B1 KR1020230107375A KR20230107375A KR102638529B1 KR 102638529 B1 KR102638529 B1 KR 102638529B1 KR 1020230107375 A KR1020230107375 A KR 1020230107375A KR 20230107375 A KR20230107375 A KR 20230107375A KR 102638529 B1 KR102638529 B1 KR 102638529B1
- Authority
- KR
- South Korea
- Prior art keywords
- data
- information
- application
- profile
- ontology
- Prior art date
Links
- 238000013523 data management Methods 0.000 title claims abstract description 72
- 238000000034 method Methods 0.000 title claims abstract description 46
- 238000013507 mapping Methods 0.000 claims description 24
- 238000007726 management method Methods 0.000 claims description 23
- 230000008569 process Effects 0.000 claims description 23
- 239000000284 extract Substances 0.000 claims description 11
- 230000008859 change Effects 0.000 claims description 10
- 230000003068 static effect Effects 0.000 claims description 9
- 238000011068 loading method Methods 0.000 claims description 6
- 238000007792 addition Methods 0.000 claims description 5
- 238000001914 filtration Methods 0.000 claims description 5
- 238000012986 modification Methods 0.000 claims description 5
- 230000004048 modification Effects 0.000 claims description 5
- 238000011161 development Methods 0.000 claims description 3
- 230000007246 mechanism Effects 0.000 claims description 3
- 238000012360 testing method Methods 0.000 claims description 3
- 238000005516 engineering process Methods 0.000 abstract description 5
- 238000013528 artificial neural network Methods 0.000 description 31
- 238000010586 diagram Methods 0.000 description 19
- 230000015654 memory Effects 0.000 description 19
- 238000012545 processing Methods 0.000 description 14
- 238000000605 extraction Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 11
- 238000004422 calculation algorithm Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 9
- 238000013075 data extraction Methods 0.000 description 9
- 238000005259 measurement Methods 0.000 description 8
- 238000010276 construction Methods 0.000 description 5
- 238000013527 convolutional neural network Methods 0.000 description 4
- 239000013598 vector Substances 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 238000012550 audit Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- 230000000306 recurrent effect Effects 0.000 description 3
- 238000013475 authorization Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000013506 data mapping Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 238000013439 planning Methods 0.000 description 2
- 238000007790 scraping Methods 0.000 description 2
- 238000013526 transfer learning Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000003542 behavioural effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 238000013499 data model Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000005477 standard model Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/36—Creation of semantic tools, e.g. ontology or thesauri
- G06F16/367—Ontology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/31—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/151—Transformation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Animal Behavior & Ethology (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
실시예에 따른 전력 계통 어플리케이션과의 인터페이스를 위한 온톨로지 데이터 관리 시스템 및 방법은 전력정보를 생성하는 어플리케이션과의 효율적인 인터페이스를 위한 온톨로지 저장소를 포함한 시스템을 제공한다. 실시예를 통해, 어플리케이션과의 데이터 교환 관점에서 온톨로지 데이터베이스를 구축하고 어플리케이션에 대한 프로파일 정보를 기반으로 어플리케이션 구동에 필요한 정보만을 CIM-XML로 변환하여 변환된 데이터를 교환할 수 있다. 또한, 실시예를 통해 전체 온톨로지 데이터베이스를 구축하고, 어플리케이션에 필요한 정보를 추가하여, 어플리케이션에 필요한 데이터만을 추출할 수 있도록 함으로써, 온톨로지 데이터를 프로파일별로 저장하는 종래 기술과 차별화한다.An ontology data management system and method for interfacing with a power system application according to an embodiment provides a system including an ontology storage for efficient interfacing with an application that generates power information. Through an embodiment, an ontology database can be built from the perspective of data exchange with an application, and only the information needed to run the application can be converted to CIM-XML based on profile information for the application, and the converted data can be exchanged. In addition, by building an entire ontology database through the example, adding information needed for the application, and extracting only the data needed for the application, it is differentiated from the conventional technology that stores ontology data by profile.
Description
본 개시는 전력계통 어플리케이션의 실행을 위한 전력계통 온톨로지 데이터 관리 시스템 및 어플리케이션과의 인터페이스에 관한 것으로 구체적으로, 어플리케이션 실행에 특화된 CIM 기반 전력계통 데이터의 효율적인 관리와 어플리케이션과의 데이터 교환 인터페이스를 제공하는 시스템 및 방법에 관한 것이다. This disclosure relates to a power system ontology data management system for executing power system applications and an interface with applications. Specifically, a system that provides efficient management of CIM-based power system data specialized for application execution and a data exchange interface with applications. and methods.
본 명세서에서 달리 표시되지 않는 한, 이 섹션에 설명되는 내용들은 이 출원의 청구항들에 대한 종래 기술이 아니며, 이 섹션에 포함된다고 하여 종래 기술이라고 인정되는 것은 아니다.Unless otherwise indicated herein, the material described in this section is not prior art to the claims of this application, and is not admitted to be prior art by inclusion in this section.
온톨로지(ontology)는 인공지능과 지식 공학에서 지식을 구조화하고 표현하는 도구로서, 지식의 의미와 의미 간 연결성을 나타내는 데 사용된다. 온톨로지를 통해 컴퓨터 시스템은 복잡한 지식을 처리하고 추론할 수 있도록 한다. 온톨로지에 기반한 시스템간 정보 교환을 위해, 여러 통신 모델과 프로토콜을 이용한다.Ontology is a tool for structuring and expressing knowledge in artificial intelligence and knowledge engineering, and is used to indicate the meaning of knowledge and the connection between meanings. Ontologies allow computer systems to process and reason about complex knowledge. To exchange information between systems based on ontology, several communication models and protocols are used.
IEC61970은 IEC TC57 WG13에서 개발되는 전력 EMS 간의 전력정보의 데이터 교환 정보모델 표준이다. IEC61970(송변전 전력모델), IEC61968(배전 및 계량), IEC62325(전력거래) 3가지 표준을 CIM(Common Information Model)이라고 정의한다. 데이터 교환 정보 모델 표준은 CIM 기반 전력정보 데이터 교환을 위해 전력계통의 모든 논리적, 물리적, 행동정보를 UML기반으로 모델링(프로파일)하며 해당 데이터를 교환하는 데이터의 XML형태(CIM-XML) 및 정보의 표현 방법을 정의한다. 또한, 데이터 교환 정보 모델 표준은 데이터의 교환을 위한 하위 계층 프로토콜이나 통신 방법은 표준에서 제외한다.IEC61970 is a data exchange information model standard for power information between power EMS developed in IEC TC57 WG13. The three standards IEC61970 (transmission and substation power model), IEC61968 (distribution and metering), and IEC62325 (electricity trading) are defined as CIM (Common Information Model). The data exchange information model standard models (profiles) all logical, physical, and behavioral information of the power system based on UML for CIM-based power information data exchange, and the XML format (CIM-XML) of the data and information for exchanging the data. Define the expression method. Additionally, the data exchange information model standard excludes lower layer protocols or communication methods for data exchange.
도 1은 온톨로지 데이터베이스 구축 및 CIM-XML 데이터 교환을 위한 시스템 구성을 나타낸 도면이다. 도 1을 참조하면, 온톨로지 데이터베이스 구축 및 CIM-XML 데이터 교환을 위한 시스템은 CIM 객체 관리부(10), 정적 정보(static information)를 저장하는 온톨로지 데이터베이스(20), 실시간 정보를 저장하는 온톨로지 데이터베이스(30), 관계형 데이터베이스(40) 및 온톨로지 데이터베이스와 관계형 데이터 매핑 정보를 저장하는 데이터베이스(50)을 포함하여 구성될 수 있다. EMS(Energy Management System) 및 전력 어플리케이션은 CIM 형식에 맞게 전력 정보를 생성하며 CIM-XML을 통해 상호 데이터를 교환한다.Figure 1 is a diagram showing the system configuration for ontology database construction and CIM-XML data exchange. Referring to Figure 1, the system for constructing an ontology database and exchanging CIM-XML data includes a CIM object management unit 10, an ontology database 20 storing static information, and an ontology database 30 storing real-time information. ), a relational database 40, an ontology database, and a database 50 that stores relational data mapping information. EMS (Energy Management System) and power applications generate power information according to the CIM format and exchange data with each other through CIM-XML.
도 2는 종래 기술에 따른 CIM 표준 정보모델 사용 방법에 대한 프로세스를 나타낸 도면이다.Figure 2 is a diagram showing a process for how to use the CIM standard information model according to the prior art.
도 2를 참조하면, UML의 모델에서 필요한 부분만을 추출한 후 작성된 스키마를 사용해 RDFS와 같은 프로파일이 생성될 수 있다. 그리고 EMS는 스키마를 지키는 RDF(Resource Description Framework) 기반의 XML 문서를 사용해 외부 시스템과 데이터 교환을 할 수 있다. Referring to Figure 2, a profile such as RDFS can be created using the schema created after extracting only the necessary parts from the UML model. And EMS can exchange data with external systems using XML documents based on RDF (Resource Description Framework) that protects the schema.
CIM 표준에서 정의되는 프로파일은 IEC 61970-452에 근거를 갖는 Equipment Profile(설비 프로파일), IEC 61970-456 Analog Measurements Profile(아날로그 계측값 프로파일), Discrete Measurements Profile(이산 계측값 프로파일) 등이 있다. 종래 기술은 이러한 프로파일 기반의 다양한 프로파일별 저장소를 개별 구축하여, 계측 온톨로지 정보, 설비 온톨로지 정보, 연결구조 온톨로지 정보 등을 각각 저장하는 형태를 가진다.Profiles defined in the CIM standard include Equipment Profile based on IEC 61970-452, IEC 61970-456 Analog Measurements Profile, and Discrete Measurements Profile. The prior art has the form of individually constructing various profile-specific repositories based on these profiles and storing measurement ontology information, equipment ontology information, and connection structure ontology information, respectively.
도 3은 종래 기술을 기반으로 전력계통 운영 시스템 또는 EMS에서의 어플리케이션과 데이터 교환을 수행할 경우, 프로파일 추출부 및 각 온톨로지 저장소에 있는 정보를 통합하여 데이터 교환을 수행하는 예를 나타낸 도면이다.Figure 3 is a diagram showing an example of performing data exchange by integrating information in the profile extractor and each ontology repository when exchanging data with an application in a power system operating system or EMS based on the prior art.
도 3을 참조하면, 온톨로지 저장소에 대한 정보를 삭제 및 추가하기 용이한 형태로 구성하기 위해서는 EMS에 적용되는 어플리케이션 별 데이터 교환을 위한 프로파일 정보가 정의되어야 하며, 어플리케이션 별로 데이터 정보가 수정된다.Referring to Figure 3, in order to configure information about the ontology repository in a form that is easy to delete and add, profile information for data exchange for each application applied to EMS must be defined, and data information is modified for each application.
어플리케이션 별로 데이터를 수정하는 과정은 많은 양의 데이터 처리를 수행해야 하므로, 데이터의 일관성이 떨어지거나 모순이 생길 수 있다. 또한, 종래기술로는 대용량의 온톨로지 데이터를 효율적으로 저장하고 검색하는 것이 어렵고, 다양한 소스에서 온톨로지 데이터를 가져와 통합하는 과정이 어려운 문제가 있다.The process of modifying data for each application requires processing a large amount of data, which may result in data inconsistencies or contradictions. In addition, with conventional technology, it is difficult to efficiently store and search large amounts of ontology data, and the process of integrating ontology data from various sources is difficult.
실시예에 따른 전력 계통 어플리케이션과의 인터페이스를 위한 온톨로지 데이터 관리 시스템 및 방법은 전력정보를 생성하는 어플리케이션과의 효율적인 인터페이스를 위한 온톨로지 저장소를 포함한 시스템을 제공한다.An ontology data management system and method for interfacing with a power system application according to an embodiment provides a system including an ontology storage for efficient interfacing with an application that generates power information.
실시예를 통해, 어플리케이션과의 데이터 교환 관점에서 온톨로지 데이터베이스를 구축하고 어플리케이션에 대한 프로파일 정보를 기반으로 어플리케이션 구동에 필요한 정보만을 CIM-XML로 변환하여 변환된 데이터를 교환할 수 있다.Through an embodiment, an ontology database can be built from the perspective of data exchange with an application, and only the information needed to run the application can be converted to CIM-XML based on profile information for the application, and the converted data can be exchanged.
또한, 실시예를 통해 전체 온톨로지 데이터베이스를 구축하고, 어플리케이션에 필요한 정보를 추가하여, 어플리케이션에 필요한 데이터만을 추출할 수 있도록 함으로써, 온톨로지 데이터를 프로파일별로 저장하는 종래 기술과 차별화한다.In addition, by building an entire ontology database through the example, adding information needed for the application, and extracting only the data needed for the application, it is differentiated from the conventional technology that stores ontology data by profile.
또한, 실시예를 통해, 어플리케이션에 필요한 정보만을 담은 CIM-XML을 생성함으로써 데이터의 중복적인 적재 요소를 제거한다.In addition, through the example, redundant data loading elements are eliminated by generating CIM-XML containing only the information necessary for the application.
또한, 실시예에서는 어플리케이션 추가 또는 수정에 의한 프로파일 변동 시에도 변동과 관련된 특정 데이터만 변경할 수 있도록 한다.Additionally, in the embodiment, even when the profile changes due to adding or modifying an application, only specific data related to the change can be changed.
또한, 실시예에서는 어플리케이션과의 데이터 교환을 위한 CIM-XML 생성을 위해 데이터 조회하는 과정을 효율화 하기 위한 온톨로지 저장소의 구조를 제공한다.Additionally, the embodiment provides an ontology storage structure to streamline the data search process to generate CIM-XML for data exchange with applications.
실시예에서는 각 프로파일별 저장소의 정보를 추출하고, 병합하는 프로파일 추출부의 역할을 축소한다. 예컨대, 프로파일 추출부는 프로파일에 정의된 어플리케이션 인터페이스 데이터를 온톨로지 저장소에 적재하는 역할만을 수행한다.In the embodiment, the role of the profile extraction unit, which extracts and merges information from the storage for each profile, is reduced. For example, the profile extractor only performs the role of loading application interface data defined in the profile into the ontology repository.
또한, 실시예에서는 전력정보를 생성하는 어플리케이션 구동에 필요한 인터페이스인 프로파일을 생성한다. 각 어플리케이션에는 설비정보, 설비 상태, 계측 정보 등이 요구되므로, 실시예에서는 요구되는 프로파일 정보를 온톨로지 저장소에 구축한다. 이를 통해, 데이터 교환에 필요한 CIM-XML을 생성하기 위한 데이터 조회 시, 프로파일 정보를 활용하여 조회할 수 있도록 한다.Additionally, in the embodiment, a profile, which is an interface necessary for running an application that generates power information, is created. Since each application requires equipment information, equipment status, measurement information, etc., in the embodiment, the required profile information is built in the ontology repository. Through this, when querying data to create CIM-XML necessary for data exchange, profile information can be used to query.
실시예에 따른 전력 계통 어플리케이션과의 인터페이스를 위한 온톨로지 데이터 관리 시스템은 전력정보를 생성하는 어플리케이션과의 인터페이스를 위한 온톨로지 데이터베이스; 어플리케이션 동작에 필요한 입출력 데이터인 프로파일 정보를 기반으로 어플리케이션 구동에 필요한 정보만을 CIM-XML로 변환하고 변환된 CIM-XML를 어플리케이션과 교환하는 데이터 관리 서버; 를 포함한다.An ontology data management system for interfacing with a power system application according to an embodiment includes an ontology database for interfacing with an application that generates power information; A data management server that converts only the information necessary for application operation into CIM-XML based on profile information, which is input and output data required for application operation, and exchanges the converted CIM-XML with the application; Includes.
이상에서와 같은 전력 계통 어플리케이션과의 인터페이스를 위한 온톨로지 데이터 관리 시스템 및 방법은 온톨로지 저장소를 제공하여 데이터 조회 효율을 향상시킨다.The ontology data management system and method for interfacing with power system applications as described above improves data inquiry efficiency by providing an ontology storage.
실시예를 통해, 프로파일 추출부의 역할을 프로파일에 정의된 어플리케이션 인터페이스를 온톨로지 저장소에 해당 정보를 포함하여 적재하는 역할로 축소함으로써, 데이터 처리 효율을 향상시킬 수 있다. Through an embodiment, data processing efficiency can be improved by reducing the role of the profile extractor to loading the application interface defined in the profile into the ontology storage with the corresponding information.
또한, 실시예를 통해 전력 시스템과 관련된 데이터를 효율적으로 관리하고 처리함으로써, 전력 시스템의 효율성, 신뢰성, 안전성을 향상시킬 수 있도록 한다.In addition, through the embodiment, the efficiency, reliability, and safety of the power system can be improved by efficiently managing and processing data related to the power system.
본 발명의 효과는 상기한 효과로 한정되는 것은 아니며, 본 발명의 상세한 설명 또는 특허청구범위에 기재된 발명의 구성으로부터 추론 가능한 모든 효과를 포함하는 것으로 이해되어야 한다.The effects of the present invention are not limited to the effects described above, and should be understood to include all effects that can be inferred from the configuration of the invention described in the detailed description or claims of the present invention.
도 1은 온톨로지 데이터베이스 구축 및 CIM-XML 데이터 교환을 위한 시스템 구성을 나타낸 도면
도 2는 종래 기술에 따른 CIM 표준 정보모델 사용 방법에 대한 프로세스를 나타낸 도면
도 3은 종래 기술을 기반으로 전력계통 운영 시스템 또는 EMS에서의 어플리케이션과 데이터 교환을 수행할 경우, 프로파일 추출부 및 각 온톨로지 저장소에 있는 정보를 통합하여 데이터 교환을 수행하는 예를 나타낸 도면
도 4는 실시예에 따른 전력 계통 어플리케이션과의 인터페이스를 위한 온톨로지 데이터 관리 시스템을 나타낸 도면
도 5는 실시예에 따른 데이터 관리 서버의 구성을 나타낸 도면
도 6은 실시예에 따른 프로파일 정보의 개념을 설명하기 위한 도면
도 7은 실시예에 따른 온톨로지 저장소의 데이터 소스를 나타낸 도면
도 8은 실시예에 따른 데이터 관리 서버의 블록도
도 9는 실시예 따른 데이터 관리 서버에 저장된 모델 또는 모듈의 예를 나타낸 도면
도 10은 실시예에 따른 온톨로지 데이터 관리 서버의 데이터 처리 흐름을 나타낸 도면Figure 1 is a diagram showing the system configuration for ontology database construction and CIM-XML data exchange.
Figure 2 is a diagram showing a process for how to use the CIM standard information model according to the prior art.
Figure 3 is a diagram showing an example of performing data exchange by integrating information in the profile extractor and each ontology repository when exchanging data with an application in a power system operating system or EMS based on the prior art.
Figure 4 is a diagram showing an ontology data management system for interfacing with a power system application according to an embodiment.
Figure 5 is a diagram showing the configuration of a data management server according to an embodiment
6 is a diagram for explaining the concept of profile information according to an embodiment
Figure 7 is a diagram showing a data source of an ontology repository according to an embodiment
Figure 8 is a block diagram of a data management server according to an embodiment
Figure 9 is a diagram showing an example of a model or module stored in a data management server according to an embodiment
Figure 10 is a diagram showing the data processing flow of the ontology data management server according to an embodiment
이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. 또한, 본 명세서에 개시된 실시 예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시 예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시 예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.Hereinafter, embodiments disclosed in the present specification will be described in detail with reference to the attached drawings. However, identical or similar components will be assigned the same reference numbers regardless of reference numerals, and duplicate descriptions thereof will be omitted. The suffixes “module” and “part” for components used in the following description are given or used interchangeably only for the ease of preparing the specification, and do not have distinct meanings or roles in themselves. Additionally, in describing the embodiments disclosed in this specification, if it is determined that detailed descriptions of related known technologies may obscure the gist of the embodiments disclosed in this specification, the detailed descriptions will be omitted. In addition, the attached drawings are only for easy understanding of the embodiments disclosed in this specification, and the technical idea disclosed in this specification is not limited by the attached drawings, and all changes included in the spirit and technical scope of the present invention are not limited. , should be understood to include equivalents or substitutes.
제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.Terms containing ordinal numbers, such as first, second, etc., may be used to describe various components, but the components are not limited by the terms. The above terms are used only for the purpose of distinguishing one component from another.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.When a component is said to be "connected" or "connected" to another component, it is understood that it may be directly connected to or connected to the other component, but that other components may exist in between. It should be. On the other hand, when it is mentioned that a component is “directly connected” or “directly connected” to another component, it should be understood that there are no other components in between.
본 출원에서, "포함한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.In this application, terms such as “comprise” or “have” are intended to designate the presence of features, numbers, steps, operations, components, parts, or combinations thereof described in the specification, but are not intended to indicate the presence of one or more other features. It should be understood that this does not exclude in advance the possibility of the existence or addition of elements, numbers, steps, operations, components, parts, or combinations thereof.
본 명세서에 있어서 '부(部)'란, 하드웨어에 의해 실현되는 유닛(unit), 소프트웨어에 의해 실현되는 유닛, 양방을 이용하여 실현되는 유닛을 포함한다. 또한, 1개의 유닛이 2개 이상의 하드웨어를 이용하여 실현되어도 되고, 2개 이상의 유닛이 1개의 하드웨어에 의해 실현되어도 된다. In this specification, 'part' includes a unit realized by hardware, a unit realized by software, and a unit realized using both. Additionally, one unit may be realized using two or more pieces of hardware, and two or more units may be realized using one piece of hardware.
본 명세서에 있어서 단말, 장치 또는 디바이스가 수행하는 것으로 기술된 동작이나 기능 중 일부는 해당 단말, 장치 또는 디바이스와 연결된 서버에서 대신 수행될 수도 있다. 이와 마찬가지로, 서버가 수행하는 것으로 기술된 동작이나 기능 중 일부도 해당 서버와 연결된 단말, 장치 또는 디바이스에서 수행될 수도 있다.In this specification, some of the operations or functions described as being performed by a terminal, apparatus, or device may instead be performed on a server connected to the terminal, apparatus, or device. Likewise, some of the operations or functions described as being performed by the server may also be performed in a terminal, apparatus, or device connected to the server.
이하, 첨부된 도면을 참고하여 본 발명을 상세히 설명하기로 한다. Hereinafter, the present invention will be described in detail with reference to the attached drawings.
도 4는 실시예에 따른 전력 계통 어플리케이션과의 인터페이스를 위한 온톨로지 데이터 관리 시스템을 나타낸 도면이다.Figure 4 is a diagram showing an ontology data management system for interfacing with a power system application according to an embodiment.
도 4를 참조하면, 실시예에 따른 전력 계통 어플리케이션과의 인터페이스를 위한 온톨로지 데이터 관리 시스템은 온톨로지 데이터베이스(200) 및 데이터 관리 서버(100)를 포함하여 구성될 수 있다. Referring to FIG. 4, an ontology data management system for interfacing with a power system application according to an embodiment may be configured to include an ontology database 200 and a data management server 100.
실시예에서 전력 계통 어플리케이션은 전력 시스템을 모니터링, 제어, 분석하기 위해 사용되는 다양한 종류의 소프트웨어 응용프로그램이다. 이러한 어플리케이션들은 전력 시스템 운영자, 엔지니어 및 관리자들에게 전력 네트워크의 안정성, 효율성 및 신뢰성을 유지하고 향상시킬 수 있도록 한다.In embodiments, power system applications are various types of software applications used to monitor, control, and analyze power systems. These applications enable power system operators, engineers and managers to maintain and improve the stability, efficiency and reliability of power networks.
온톨로지 데이터베이스(200)는 전력정보를 생성하는 어플리케이션과의 인터페이스를 위한 일련의 데이터를 저장한다. 실시예에서 온톨로지 데이터베이스(200)는 프로파일 저장소(210), 관계형 데이터 저장소(220), 온톨로지 저장소(230) 및 매핑 정보 저장소(240)를 포함하여 구성될 수 있다. The ontology database 200 stores a series of data for interfacing with an application that generates power information. In an embodiment, the ontology database 200 may include a profile repository 210, a relational data repository 220, an ontology repository 230, and a mapping information repository 240.
실시예에서 프로파일 저장소(210)는 EMS(Energy Management System)에서 어플리케이션 동작에 필요한 입출력 데이터를 정의한 파일인 프로파일 정보를 저장한다. In an embodiment, the profile storage 210 stores profile information, which is a file defining input and output data required for application operation in an EMS (Energy Management System).
실시예에서 프로파일 정보는 도 6에 도시된 바와 같이, 어플리케이션 동작에 필요한 입출력 데이터를 정의한 하나의 파일이다. 실시예에서 프로파일 저장소(210)는 프로파일들을 정의하기 위한 저장소를 의미한다. 실시예에서 프로파일 저장소(210)는 상위 EMS에서 데이터 요청 시 어플리케이션 별로 필요한 정보를 온톨로지 저장소에서 추출하기 위한 목적으로 설계된 데이터베이스이다. 프로파일 저장소(210)에는 어플리케이션 각각에 대한 입력 프로파일, 출력 프로파일을 정의한 데이터가 저장된다. 실시예에서는 데이터 관리 서버(100)에서 EMS에 데이터를 전송할 때, 온톨로지 데이터베이스(200)의 프로파일 저장소(210)를 통해 필요한 정보만을 추출하여 전송할 수 있다. In the embodiment, profile information is a file that defines input and output data required for application operation, as shown in FIG. 6. In the embodiment, the profile storage 210 refers to a storage for defining profiles. In the embodiment, the profile storage 210 is a database designed for the purpose of extracting information required for each application from the ontology storage when data is requested from the upper EMS. The profile storage 210 stores data defining input profiles and output profiles for each application. In the embodiment, when data is transmitted from the data management server 100 to the EMS, only necessary information can be extracted and transmitted through the profile storage 210 of the ontology database 200.
관계형 데이터 저장소(220)는 실시간 계측값(real time information)을 포함하는 시계열 정보를 저장한다. 시계열 정보(Time Series Information)는 시간의 흐름에 따라 기록된 데이터의 패턴, 동향 및 변화를 나타내는 정보이다. 시계열 정보는 일련의 시간 순서대로 발생하는 데이터 포인트들을 포함한다. 실시예에서는 어플리케이션 구동에 필요한 시계열 정보를 관계형 데이터베이스에 누적한다. The relational data store 220 stores time series information including real time information. Time Series Information is information that represents patterns, trends, and changes in recorded data over time. Time series information includes data points that occur in a series of time sequences. In the embodiment, time series information required to run the application is accumulated in a relational database.
온톨로지 저장소(230)는 지식을 구조화하고 표현하는데 사용되는 시스템으로, 전력 시스템과 관련된 정보, 개념, 관계 등을 저장할 수 있다. 실시예에서 온톨로지 저장소(230)는 정적 계통 정보(static information)를 저장한다. 정적 계통 정보는 시간의 흐름과 무관하게 고정된 값을 가지며, 변하지 않는 정보를 의미한다. 예컨대, 어떤 물건의 고유한 식별 번호, 제조사 정보, 모델명, 크기, 색상 등은 정적 정보에 해당할 수 있다. 정적 정보는 개체의 특성을 설명하며, 시간이 지나도 변하지 않는다. 구체적으로, 실시예에서 정적 정보는 전력 설비 정보 및 속성 정보를 포함할 수 있다. 실시예에서 온톨로지 저장소(230)는 어플리케이션 구동에 필요한 정적 계통 정보를 그래프 형태로 저장할 수 있다. The ontology repository 230 is a system used to structure and express knowledge, and can store information, concepts, relationships, etc. related to the power system. In an embodiment, the ontology repository 230 stores static information. Static system information refers to information that has a fixed value regardless of the passage of time and does not change. For example, an object's unique identification number, manufacturer information, model name, size, color, etc. may be static information. Static information describes the characteristics of an entity and does not change over time. Specifically, in an embodiment, static information may include power facility information and attribute information. In an embodiment, the ontology storage 230 may store static system information required to run an application in a graph form.
매핑 정보 저장소(240)에는 시스템 구동에 필요한 일련의 데이터 매핑정보를 저장한다. 매핑정보는 매핑 관계를 정의한 데이터, 온톨로지 계측값 키, 관계형 데이터베이스 계측값 키, 계측관련 mRID 및 설비 타입 정보 등을 포함할 수 있다. 실시예에서 주된 매핑 관계는 온톨로지 설비 키 와 관계형 데이터베이스 계측값 키이며, 실시예에서는 데이터 관리 서버(100)에서 시스템 구동에 필요한 여러 매핑 관계를 정의한다.The mapping information storage 240 stores a series of data mapping information necessary for system operation. Mapping information may include data defining the mapping relationship, ontology measurement value key, relational database measurement value key, measurement-related mRID, and facility type information. In the embodiment, the main mapping relationships are ontology facility keys and relational database measurement value keys, and in the embodiment, the data management server 100 defines several mapping relationships necessary for system operation.
실시예에서 데이터 관리 서버(100)는 어플리케이션에 대한 프로파일 정보를 기반으로 어플리케이션 구동에 필요한 정보만을 CIM-XML로 변환하고 변환된 CIM-XML를 전력계통 어플리케이션과 교환하여 EMS 또는 어플리케이션으로 전송할 데이터를 추출한다. In an embodiment, the data management server 100 converts only the information required to run the application into CIM-XML based on profile information for the application and exchanges the converted CIM-XML with the power system application to extract data to be transmitted to the EMS or application. do.
이를 위해, 데이터 관리 서버(100)는 어플리케이션에 대한 프로파일 정보를 추출한다. 프로파일 정보는 어플리케이션이 필요로 하는 데이터 구조, 필드, 속성, 연결 등을 포함할 수 있다. 이후, 데이터 관리 서버(100)는 프로파일 정보 중에서 어플리케이션 구동에 직접적으로 필요한 정보만을 선택하거나 필터링한다. 필터링 과정에서 어플리케이션에 필요하지 않은 정보는 제외된다. 이후, 데이터 관리 서버(100)는 필터링 된 정보를 CIM의 표준 형식인 CIM-XML로 변환한다. CIM은 전력 및 에너지 시스템 정보 모델링을 위한 국제 표준이며, XML 형식을 사용하여 데이터를 표현한다. 이후, 데이터 관리 서버(100)는 변환된 CIM-XML 데이터를 어플리케이션에 전송하거나 저장한다. 실시예에서는 CIM-XML 데이터가 어플리케이션의 요구사항에 따라 적절하게 활용된다. For this purpose, the data management server 100 extracts profile information about the application. Profile information may include data structures, fields, properties, connections, etc. required by the application. Thereafter, the data management server 100 selects or filters only the information directly necessary for running the application from the profile information. During the filtering process, information that is not necessary for the application is excluded. Afterwards, the data management server 100 converts the filtered information into CIM-XML, a standard format of CIM. CIM is an international standard for power and energy system information modeling and uses the XML format to represent data. Afterwards, the data management server 100 transmits or stores the converted CIM-XML data to the application. In the embodiment, CIM-XML data is appropriately utilized according to the requirements of the application.
실시예에서 데이터 관리 서버(100)는 어플리케이션 구동에 필요한 정보 필터링을 위해, 모든 프로파일 정보를 분석하여 어떤 데이터가 있는지, 각 데이터 필드의 형식은 무엇인지, 어떤 데이터가 어플리케이션 구동에 영향을 미칠 수 있는지 등을 파악한다. 이후, 데이터 관리 서버(100)는 어플리케이션의 요구사항을 분석한다. 실시예에서 데이터 관리 서버(100)는 어떤 정보가 어플리케이션의 핵심 기능과 연관되는지, 어떤 정보가 필수적이며 어떤 정보는 선택적인지를 결정하기 위해 어플리케이션 요구사항을 분석할 수 있다. 이후, 데이터 관리 서버(100)는 어플리케이션 구동에 직접적으로 필요한 정보를 식별하여 추출하고, 불필요한 정보나 민감한 정보는 제외하거나 마스킹 한다. In an embodiment, the data management server 100 analyzes all profile information to determine what data is present, the format of each data field, and what data can affect application operation in order to filter information required to run the application. Find out, etc. Afterwards, the data management server 100 analyzes the requirements of the application. In embodiments, data management server 100 may analyze application requirements to determine what information is associated with the core functionality of the application, what information is essential, and what information is optional. Thereafter, the data management server 100 identifies and extracts information directly necessary for running the application, and excludes or masks unnecessary or sensitive information.
실시예에서 어플리케이션 구동에 직접적으로 필요한 정보는 사용자 인증 및 권한 정보, 핵심 설정 및 환경 변수 정보, 비즈니스 데이터, 실시간 데이터 및 알림, 로그 및 감사 정보, 캐시 및 성능 최적화 데이터, 설문 조사 및 분석 데이터를 포함할 수 있다. 실시예에서 사용자 인증 및 권한 정보는 어플리케이션의 사용자를 식별하고 인증하는 데 필요한 정보이다. 구체적으로, 사용자의 아이디, 비밀번호, 토큰 등을 포함하고, 어플리케이션의 접근 제어와 보안을 관리를 위한 사용자 및 관리자의 권한과 역할 정보를 포함한다. In the embodiment, information directly required to run the application includes user authentication and authorization information, core settings and environment variable information, business data, real-time data and notifications, logs and audit information, cache and performance optimization data, and survey and analysis data. can do. In an embodiment, user authentication and authorization information is information needed to identify and authenticate a user of an application. Specifically, it includes the user's ID, password, token, etc., and includes user and administrator authority and role information for managing access control and security of the application.
핵심 설정 및 환경 변수 정보는 어플리케이션의 핵심적인 설정 정보와 환경 변수들을 포함한다. 구체적으로, 데이터베이스 연결 정보, 외부 서비스의 API 키, 언어 설정 등을 포함할 수 있다. 실시예에서 비즈니스 데이터는 어플리케이션의 주요 기능과 관련된 데이터들을 포함한다. 실시간 데이터 및 알림 데이터는 어플리케이션의 실시간 기능과 관련된 데이터이다. 로그 및 감사 정보는 어플리케이션의 운영과 모니터링을 위해 필요한 로그 및 감사 정보로서, 어플리케이션의 동작을 추적하고 문제를 해결하는데 필요한 정보이다. 캐시 및 성능 최적화 데이터는 어플리케이션의 성능을 향상시키기 위한 캐시 데이터나 최적화 관련 정보이다. 설문 조사 및 분석 데이터는 어플리케이션의 사용자 경험을 개선하기 위한 설문 조사나 분석 데이터를 포함할 수 있다.Core configuration and environment variable information includes the core configuration information and environment variables of the application. Specifically, it may include database connection information, API keys of external services, language settings, etc. In an embodiment, business data includes data related to the main functions of the application. Real-time data and notification data are data related to the real-time functions of the application. Log and audit information is necessary for operating and monitoring the application, and is information needed to track the operation of the application and solve problems. Cache and performance optimization data is cache data or optimization-related information to improve application performance. Survey and analysis data may include survey or analysis data to improve the user experience of the application.
각 어플리케이션의 목적과 기능에 따라 필요한 정보의 종류가 달라질 수 있으며, 위에서 언급한 종류 외에도 다양한 유형의 정보가 어플리케이션 구동에 필요할 수 있다. The type of information required may vary depending on the purpose and function of each application, and various types of information in addition to the types mentioned above may be required to run the application.
이후, 데이터 관리 서버(100)는 선택된 정보를 정제하여 데이터 일관성과 품질을 유지한다. 실시예에서는 데이터 중복을 제거하거나 부정확한 데이터를 수정하는 등의 작업을 수행할 수 있다. 이후, 데이터 관리 서버(100)는 선택된 정보를 어플리케이션에서 쉽게 활용할 수 있는 형식으로 변환하거나 포맷팅(formatting) 한다. 데이터 관리 서버(100)는 데이터의 형식을 조정하거나 필요한 경우 데이터를 조합하여 새로운 형태로 생성할 수 있다. 이후, 데이터 관리 서버(100)는 필터링 된 정보를 어플리케이션에 제공하기 위한 데이터 액세스 메커니즘을 설정한다. 예컨대, 데이터베이스 쿼리, API 호출 등을 통해 어플리케이션과 데이터 관리 서버 간의 상호작용을 구현한다. Afterwards, the data management server 100 refines the selected information to maintain data consistency and quality. In embodiments, tasks such as removing data duplication or correcting inaccurate data may be performed. Afterwards, the data management server 100 converts or formats the selected information into a format that can be easily used in the application. The data management server 100 can adjust the format of data or, if necessary, combine data to create a new form. Afterwards, the data management server 100 sets up a data access mechanism to provide filtered information to the application. For example, interaction between the application and the data management server is implemented through database queries, API calls, etc.
또한, 실시예에서 데이터 관리 서버(100)는 필터링 과정에서 어플리케이션 구동에 필요하지 않은 불필요한 데이터를 삭제한다. 예컨대, 데이터 관리 서버(100)는 민감한 개인정보, 보안관련 정보, 불필요한 중복 데이터, 기간 만료된 데이터, 테스트 및 개발용 데이터, 불필요한 로그 데이터, 잘못된 또는 오래된 정보, 미사용 데이터를 삭제할 수 있다. 실시예에서 삭제되는 보안 관련 정보는 어플리케이션의 보안에 영향을 미칠 수 있는 정보서, 예를 들어, 비밀번호 해시 값이나 암호화 키 등을 포함할 수 있다. 불필요한 중복 데이터는 어플리케이션의 성능을 저하시키거나 데이터 일관성을 해칠 수 있는 중복된 데이터이다. 실시예에서는 중복된 정보를 제거함으로써 데이터베이스 크기를 줄이고 데이터 조작 작업을 최적화할 수 있다. 기간 만료된 데이터는 어플리케이션에서 더 이상 유효하지 않거나 사용되지 않는 데이터이다. 예를 들어, 기한이 만료된 세션 정보나 장기간 사용되지 않은 사용자 프로파일 등을 포함할 수 있다. 불필요한 로그 데이터는 로그 데이터 중에서 운영 또는 문제 해결에 필요하지 않은 데이터이다.Additionally, in the embodiment, the data management server 100 deletes unnecessary data that is not required to run the application during the filtering process. For example, the data management server 100 may delete sensitive personal information, security-related information, unnecessary duplicate data, expired data, data for testing and development, unnecessary log data, incorrect or old information, and unused data. Security-related information deleted in the embodiment may include information that may affect the security of the application, for example, a password hash value or an encryption key. Unnecessary duplicate data is duplicate data that can degrade application performance or damage data consistency. Embodiments may reduce database size and optimize data manipulation operations by removing redundant information. Expired data is data that is no longer valid or used in the application. For example, it may include expired session information or user profiles that have not been used for a long time. Unnecessary log data is data that is not necessary for operation or problem solving among log data.
CIM-XML(Common Information Model- Extensible Markup Language)은 전력 시스템의 정보를 교환하고 공유하기 위한 표준 데이터 형식 중 하나이다. CIM(Common Information Model)은 전력 시스템 및 에너지 관련 정보를 모델링하고 표현하는 표준화된 방법을 제공하는 모델이다. CIM은 국제 전기기술위원회(IEC)와 미국 전기기술 위원회(IEEE)에서 개발한 표준이며, 전력 시스템 운영, 모니터링, 계획, 상호 연결 등에 활용된다. 실시예에서 CIM-XML은 CIM 데이터를 교환하고 공유하기 위한 XML(Extensible Markup Language) 기반의 데이터 형식이다. XML은 데이터를 계층 구조로 표현하고 태그를 사용하여 의미론적으로 의미를 부여하는 형식으로, 데이터의 구조와 의미를 명확하게 표현할 수 있어 컴퓨터 간의 데이터 교환을 용이하게 한다.CIM-XML (Common Information Model-Extensible Markup Language) is one of the standard data formats for exchanging and sharing information in power systems. CIM (Common Information Model) is a model that provides a standardized way to model and express power system and energy-related information. CIM is a standard developed by the International Electrotechnical Commission (IEC) and the American Electrotechnical Commission (IEEE), and is used for power system operation, monitoring, planning, and interconnection. In an embodiment, CIM-XML is a data format based on XML (Extensible Markup Language) for exchanging and sharing CIM data. XML is a format that expresses data in a hierarchical structure and gives semantic meaning using tags. It facilitates data exchange between computers by clearly expressing the structure and meaning of data.
실시예에서 CIM-XML은 전력 시스템 관련 데이터를 CIM 모델에 따라 XML 형식으로 표현하여 다른 시스템 간에 정보를 교환할 때 사용된다. 이를 통해 전력 시스템의 다양한 컴포넌트나 시스템 간에 표준화된 데이터 교환을 가능하게 하고, 전력 시스템의 운영, 모니터링, 계획 등 다양한 분야에서 정보 공유와 효율적인 작업을 지원한다.In an embodiment, CIM-XML is used to exchange information between other systems by expressing power system-related data in XML format according to the CIM model. This enables standardized data exchange between various components or systems of the power system and supports information sharing and efficient work in various fields such as operation, monitoring, and planning of the power system.
또한, 데이터 관리 서버(100)는 어플리케이션 추가 또는 수정에 의한 프로파일 변동 시, 변동과 관련된 특정 데이터만 변경한다. 이를 위해, 데이터 관리 서버(100)는 먼저, 어플리케이션에 어떠한 추가사항, 수정 사항을 포함하는 변경 사항이 있는지 파악한다. 변경사항은 새로운 필드가 추가되었거나 기존 필드의 형식 변경 등을 포함할 수 있다. 이후, 데이터 관리 서버(100)는 변경된 내용이 어떻게 프로파일 데이터와 관련되는지 분석한다. 예컨대, 데이터 관리 서버(100)는 어떤 필드가 추가되었는지, 어떤 필드의 값이 변경되었는지 등을 확인한다. 이후, 데이터 관리 서버(100)는 변경된 부분과 관련된 데이터만을 추출한다. 예컨대, 추가 또는 수정된 필드에 해당하는 데이터만을 선택하여 추출한다. 실시예에서 데이터 관리 서버(100)는 추출한 데이터를 사용하여 프로파일 데이터를 업데이트한다. 예컨대, 추가된 필드는 새로운 값으로 업데이트 하고, 수정된 필드는 변경된 값으로 업데이트한다.Additionally, when the profile changes due to adding or modifying an application, the data management server 100 changes only specific data related to the change. To this end, the data management server 100 first determines whether there are any changes, including any additions or modifications, to the application. Changes may include adding new fields or changing the format of existing fields. Afterwards, the data management server 100 analyzes how the changed content is related to the profile data. For example, the data management server 100 checks which fields have been added and which field values have been changed. Afterwards, the data management server 100 extracts only data related to the changed part. For example, only data corresponding to added or modified fields is selected and extracted. In an embodiment, the data management server 100 updates profile data using the extracted data. For example, added fields are updated with new values, and modified fields are updated with changed values.
도 5는 실시예에 따른 데이터 관리 서버의 구성을 나타낸 도면이다.Figure 5 is a diagram showing the configuration of a data management server according to an embodiment.
도 5를 참조하면, 실시예에 따른 데이터 관리 서버(100)는 CIM 객체 관리부(110) 및 프로파일 추출부(120)를 포함하여 구성될 수 있다. 본 명세서에서 사용되는 '부' 라는 용어는 용어가 사용된 문맥에 따라서, 소프트웨어, 하드웨어 또는 그 조합을 포함할 수 있는 것으로 해석되어야 한다. 예를 들어, 소프트웨어는 기계어, 펌웨어(firmware), 임베디드코드(embedded code), 및 애플리케이션 소프트웨어일 수 있다. 또 다른 예로, 하드웨어는 회로, 프로세서, 컴퓨터, 집적 회로, 집적 회로 코어, 센서, 멤스(MEMS; Micro-Electro-Mechanical System), 수동 디바이스, 또는 그 조합일 수 있다.Referring to FIG. 5, the data management server 100 according to the embodiment may be configured to include a CIM object management unit 110 and a profile extraction unit 120. The term 'part' used in this specification should be interpreted to include software, hardware, or a combination thereof, depending on the context in which the term is used. For example, software may be machine language, firmware, embedded code, and application software. As another example, hardware may be a circuit, processor, computer, integrated circuit, integrated circuit core, sensor, Micro-Electro-Mechanical System (MEMS), passive device, or a combination thereof.
CIM 객체 관리부(110)는 CIM-XML 데이터 상의 설비에 대한 mRID 상태를 판단한다. 예컨대, CIM 객체 관리부(110)는 CIM-XML 데이터 상의 설비에 대한 mRID(master resource identifier) 부여 여부 및 mRID가 규칙대로 적용되어 있는지를 판단한다. 이때, CIM 객체 관리부(110)는 mRID가 부여되지 않은 설비가 있거나, mRID 부여 방식이 미리 설정된 규칙대로 적용되지 않는 것으로 판단된 경우, 해당 설비에 대한 mRID를 재 정의하고, 이를 매핑 정보 저장소(240)에 저장한다. The CIM object management unit 110 determines the mRID status of the facility in the CIM-XML data. For example, the CIM object management unit 110 determines whether an mRID (master resource identifier) is assigned to the facility in the CIM-XML data and whether the mRID is applied according to the rules. At this time, when the CIM object management unit 110 determines that there is a facility for which an mRID has not been assigned or that the mRID assignment method is not applied according to preset rules, the CIM object management unit 110 redefines the mRID for the facility and stores it in the mapping information storage (240). ) to save it.
mRID(master resource identifier)는 에너지 및 전력 시스템 분야에서 자원을 고유하게 식별하는 데 사용되는 식별자이다. 이 식별자는 CIM에 따라 정의되며, 전력 시스템의 다양한 요소나 자원에 대한 고유한 식별을 위해 사용된다. CIM은 전력 시스템의 정보를 모델링하고 표현하기 위한 표준화된 방법을 제공하는 모델이며, mRID는 이 모델 내에서 각 요소를 유일하게 식별하기 위해 사용된다. 이를 통해 전력 시스템의 다양한 컴포넌트나 자원 간의 연결성을 관리하고, 데이터 교환 및 통합을 용이하게 할 수 있도록 한다. 또한, mRID는 일종의 고유한 주소나 이름으로서, 다양한 시스템이나 응용 프로그램 간에 전력 시스템 정보를 정확하게 식별하고 공유하는 데 사용된다. 이를 통해 데이터의 일관성과 효율성을 유지할 수 있도록 한다. A master resource identifier (mRID) is an identifier used to uniquely identify resources in the energy and power systems field. This identifier is defined according to CIM and is used for unique identification of various elements or resources of the power system. CIM is a model that provides a standardized way to model and express information in power systems, and mRID is used to uniquely identify each element within this model. This manages connectivity between various components or resources of the power system and facilitates data exchange and integration. Additionally, mRID is a type of unique address or name that is used to accurately identify and share power system information between various systems or applications. This helps maintain data consistency and efficiency.
실시예에서 CIM 객체 관리부(110)는 CIM-XML 데이터 상의 설비에 대한 mRID 상태 판단을 위해 먼저 CIM-XML 데이터를 수집한다. CIM-XML 데이터는 전력 시스템에 관련된 정보를 포함하며, 각 설비에 대한 속성과 관계를 나타내는 정보를 포함한다. 이후, CIM 객체 관리부(110)는 각 설비에 대한 mRID가 존재하는지 확인한다. mRID는 각 설비를 고유하게 식별하는 식별자로서 중복되지 않아야 한다. 따라서 CIM 객체 관리부는 모든 설비에 대해 mRID가 있는지 확인한다.In the embodiment, the CIM object management unit 110 first collects CIM-XML data to determine the mRID status of the equipment in the CIM-XML data. CIM-XML data contains information related to the power system and includes information representing the attributes and relationships for each facility. Afterwards, the CIM object management unit 110 checks whether an mRID exists for each facility. mRID is an identifier that uniquely identifies each facility and must not be duplicated. Therefore, the CIM object management department checks whether there is an mRID for all equipment.
또한, CIM 객체 관리부(110)는 mRID 규칙 검사를 수행한다. 실시예에서 mRID는 특정한 규칙을 따라야 한다. 이 규칙은 CIM 표준 및 해당 시스템의 정책에 따라 다를 수 있다. CIM 객체 관리부는 각 mRID가 규칙에 맞게 생성되었는지 검사한다. 구체적으로, mRID의 형식, 길이, 문자 제한 등이 규칙에 따르는 지의 여부를 검사한다. 이후, CIM 객체 관리부(110)는 중복 mRID 검사한다. 모든 설비에 대한 mRID는 고유해야 하므로, CIM 객체 관리부(110)는 중복된 mRID가 있는지 검사하여 중복을 방지한다. 또한, 실시예에서 CIM 객체 관리부(110)는 mRID 부여 및 규칙 검사 과정에 대한 로그 및 감사 정보를 기록한다. Additionally, the CIM object management unit 110 performs mRID rule checking. In embodiments, mRID must follow certain rules. These rules may vary depending on the CIM standard and the policies of the system in question. The CIM object management unit checks whether each mRID is created according to the rules. Specifically, it checks whether the mRID format, length, character limit, etc. follow the rules. Afterwards, the CIM object management unit 110 checks for duplicate mRID. Since the mRID for all equipment must be unique, the CIM object management unit 110 checks whether there is a duplicate mRID to prevent duplication. Additionally, in the embodiment, the CIM object management unit 110 records logs and audit information about the mRID assignment and rule inspection process.
실시예에서 CIM 객체 관리부(110)는 매핑 정보 저장소(240)를 통해 정의되어 있는 여러 데이터들의 매핑 관계를 판단하고, 데이터를 처리한다. In the embodiment, the CIM object management unit 110 determines the mapping relationship between various data defined through the mapping information storage 240 and processes the data.
프로파일 추출부(120)는 어플리케이션에 필요한 인터페이스가 정의된 프로파일의 정보를 확인하고 온톨로지 저장소(230)에 해당 설비에 대한 데이터를 부여한다. 실시예에서 부여되는 데이터의 형태는 정형화되어 있지 않다. The profile extraction unit 120 checks information on the profile in which the interface required for the application is defined and provides data about the corresponding facility to the ontology storage 230. The form of data provided in the embodiment is not standardized.
이를 위해, 프로파일 추출부(120)는 어플리케이션이 필요한 기능이나 데이터 인터페이스를 정의한 프로파일을 요구하는 경우, 어플리케이션에 필요한 정보를 추출하고 해당 프로파일의 컨텐츠를 확인한다. 실시예에서 프로파일의 컨텐츠는 어떤 종류의 데이터가 필요한지, 어떤 형식으로 표현되어야 하는지 등을 포함한다.To this end, when an application requests a profile that defines necessary functions or data interfaces, the profile extraction unit 120 extracts information necessary for the application and checks the contents of the profile. In an embodiment, the content of the profile includes what type of data is needed and in what format it should be expressed.
실시예에서 프로파일 추출부(120)는 어플리케이션에 필요한 정보를 추출하고 확인한 후, 해당 설비에 대한 데이터를 생성하거나 부여하기 위해 온톨로지 저장소(230)와 상호 작용할 수 있다. 예컨대, 프로파일 추출부(120)는 추출된 프로파일 정보를 바탕으로, 온톨로지 저장소에 해당하는 데이터가 존재하는지 확인한다. 프로파일이 온톨로지 모델과 일치하지 않거나 부정확한 정보를 가지고 있다면 프로파일 추출부(120)는 오류로 감지할 수 있다. 이후, 프로파일 추출부(120)는 확인한 프로파일 정보를 기반으로, 온톨로지 저장소(230)에 해당 설비에 대한 데이터를 생성하거나 이미 존재하는 데이터를 부여한다. 이 과정에서 온톨로지 모델에 맞게 데이터가 생성되며, 해당 데이터는 설비에 대한 특성 및 속성을 정확하게 반영할 수 있도록 한다. 실시예에서 프로파일 추출부(120)는 해당 설비가 어떤 어플리케이션의 구동에 필요한 정보인지에 관한 데이터를 태그 또는 라벨링 하여 온톨로지 저장소(230)에 저장할 수 있다. 예컨대, 프로파일 추출부(120)는 어플리케이션에 필요한 정보를 정의한 프로파일을 추출한다. 실시예에서 프로파일은 설비가 어떤 기능이나 데이터 인터페이스를 필요로 하는지를 설명한다. 추출된 프로파일 정보에 따라 해당 설비에 관한 데이터를 태그 또는 라벨로 식별한다. 이 태그 또는 라벨은 해당 설비의 특성, 용도, 연결성 등을 나타내는 역할을 하며, 어떤 어플리케이션에 필요한 정보인지를 명시적으로 표현한다. 이후, 프로파일 추출부(120)는 태그 또는 라벨링된 데이터를 온톨로지 저장소(230)에 저장하거나 연결한다. 이때, 프로파일 추출부(120)는 온톨로지 저장소의 데이터 모델에 따라 설비와 관련된 정보를 구조화하고 저장한다. 실시예에서 온톨로지 저장소(230) 내에 저장된 데이터는 프로파일 추출부(120)에 의해, 해당 설비가 어떤 어플리케이션에 필요한 정보인지를 나타내는 태그 또는 라벨과 함께 관리된다. 이를 통해 어플리케이션 별로 필요한 정보를 추적하고, 필요한 경우 해당 정보에 빠르게 접근할 수 있도록 한다. 또한, 실시예에서는 온톨로지 저장소(230)에 저장된 데이터가 태그 또는 라벨링을 통해 어떤 어플리케이션에 필요한 정보인지를 나타내기 때문에, 다른 어플리케이션이나 시스템에서 필요한 정보를 검색하고 활용할 수 있다.In an embodiment, the profile extractor 120 extracts and verifies information required for an application and then interacts with the ontology repository 230 to create or provide data for the corresponding facility. For example, the profile extractor 120 checks whether data corresponding to the ontology repository exists based on the extracted profile information. If the profile does not match the ontology model or contains inaccurate information, the profile extractor 120 may detect an error. Thereafter, the profile extraction unit 120 creates data about the corresponding facility or provides already existing data to the ontology repository 230 based on the confirmed profile information. In this process, data is created according to the ontology model, and the data accurately reflects the characteristics and properties of the facility. In an embodiment, the profile extraction unit 120 may tag or label data regarding information necessary for the operation of an application for the corresponding equipment and store it in the ontology storage 230. For example, the profile extractor 120 extracts a profile defining information needed for an application. In an embodiment, the profile describes what functionality or data interfaces the facility requires. Depending on the extracted profile information, data about the facility is identified as a tag or label. This tag or label serves to indicate the characteristics, purpose, and connectivity of the equipment, and explicitly expresses the information needed for the application. Thereafter, the profile extraction unit 120 stores or connects the tagged or labeled data to the ontology storage 230. At this time, the profile extraction unit 120 structures and stores information related to the facility according to the data model of the ontology repository. In an embodiment, data stored in the ontology storage 230 is managed by the profile extraction unit 120 along with a tag or label indicating information for which application the corresponding facility requires information. This allows you to track the information needed for each application and quickly access the information when necessary. Additionally, in the embodiment, because the data stored in the ontology storage 230 indicates which application the information is needed for through tags or labeling, it is possible to search for and utilize the information needed in other applications or systems.
도 7은 실시예에 따른 온톨로지 저장소의 데이터 소스를 나타낸 도면이다. Figure 7 is a diagram showing a data source of an ontology repository according to an embodiment.
도 10을 참조하면, 실시예에 따른 온톨로지 저장소(230)는 CIM 객체 관리부(110)로부터 CIM-XML 형태의 설비 정보 중 계통 설비 정보 및 설비 상태 정보를 수집하여 저장한다. 또한, 온톨로지 저장소(230)는 프로파일 추출부(120)로부터 어플리케이션 프로파일 정보 중 구동되어야 하는 어플리케이션 정보를 수집하여 저장할 수 있다.Referring to FIG. 10, the ontology storage 230 according to the embodiment collects and stores system equipment information and equipment status information among equipment information in CIM-XML format from the CIM object management unit 110. Additionally, the ontology storage 230 may collect and store application information to be run among the application profile information from the profile extractor 120.
도 8은 실시예에 따른 데이터 관리 서버의 블록도이다.Figure 8 is a block diagram of a data management server according to an embodiment.
도 8을 참조하면, 실시예에 따른 데이터 관리 서버(100)는 통신부(150), 메모리(170) 및 프로세서(190)를 포함할 수 있다. Referring to FIG. 8, the data management server 100 according to an embodiment may include a communication unit 150, a memory 170, and a processor 190.
여기서, 도 8에 도시된 데이터 관리 서버(100)의 구성은 간략화하여 나타낸 예시일 뿐이다. 일 실시예에서, 데이터 관리 서버(100)는 데이터 관리 서버(100)의 컴퓨팅 환경을 수행하기 위한 다른 구성들이 포함될 수 있고, 개시된 구성들 중 일부만이 데이터 관리 서버(100)를 구성할 수도 있다. Here, the configuration of the data management server 100 shown in FIG. 8 is only a simplified example. In one embodiment, the data management server 100 may include different configurations for performing the computing environment of the data management server 100, and only some of the disclosed configurations may configure the data management server 100.
실시예에서 서버(Server)(100)는 컴퓨터 네트워크에서 다른 컴퓨터나 장치들에게 서비스를 제공하거나 데이터를 저장하고 관리하는 컴퓨팅 시스템이다. 실시예에서 데이터 관리 서버(100)는 EMS 및 어플리케이션을 포함하는 클라이언트(Client)라 불리는 다른 컴퓨터나 장치들로부터 요청을 받아들이고, 해당 요청에 대한 응답이나 데이터를 제공한다. In an embodiment, the server 100 is a computing system that provides services to other computers or devices in a computer network or stores and manages data. In an embodiment, the data management server 100 accepts requests from other computers or devices called clients, including EMS and applications, and provides responses or data to the requests.
통신부(150)는 유선 및 무선 등과 같은 그 통신 양태를 가리지 않고 구성될 수 있으며, 단거리 통신망(PAN: Personal Area Network), 근거리 통신망(WAN: Wide Area Network) 등 다양한 통신망으로 구성될 수 있다. 또한, 통신부(150)는 공지의 월드와이드웹(WWW: World Wide Web) 기반으로 동작할 수 있으며, 적외선(IrDA: Infrared Data Association) 또는 블루투스(Bluetooth)와 같이 단거리 통신에 이용되는 무선 전송 기술을 이용할 수도 있다. 일례로, 통신부(150)는 본 개시의 일 실시예에 따른 기법을 수행하는데 필요한 데이터에 대한 송수신을 담당할 수 있다.The communication unit 150 can be configured regardless of the communication mode, such as wired or wireless, and can be configured with various communication networks such as a personal area network (PAN) and a wide area network (WAN). In addition, the communication unit 150 can operate based on the known World Wide Web (WWW) and uses wireless transmission technology used for short-distance communication, such as Infrared Data Association (IrDA) or Bluetooth. You can also use it. For example, the communication unit 150 may be responsible for transmitting and receiving data necessary to perform a technique according to an embodiment of the present disclosure.
메모리(170)는 임의의 타입의 저장 매체를 의미할 수 있다 예를 들어, 메모리(170)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예: SD 또는 XD 메모리 등), RAM(Random Access Memory), SRAM(Static Random Access Memory), ROM(Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다. 이러한 메모리(170)는 도 1에 도시되어 있는 데이터베이스를 구성할 수도 있다.Memory 170 may refer to any type of storage medium. For example, memory 170 may be a flash memory type, hard disk type, or multimedia card type. micro type), card type memory (e.g. SD or XD memory, etc.), RAM (Random Access Memory), SRAM (Static Random Access Memory), ROM (Read-Only Memory), EEPROM (Electrically Erasable Programmable Read-Only Memory) ), PROM (Programmable Read-Only Memory), magnetic memory, magnetic disk, and optical disk. This memory 170 may form the database shown in FIG. 1.
메모리(170)는 프로세서(190)에 의해 실행될 수 있는 적어도 하나의 명령어를 저장할 수 있다. 또한, 메모리(170)는 프로세서(190)가 생성하거나 결정한 임의의 형태의 정보 및 서버(200)가 수신한 임의의 형태의 정보를 저장할 수 있다. 예컨대, 메모리(170)는 후술하겠지만 사용자에 따른 RM 데이터 및 RM 프로토콜을 저장한다. 또한, 메모리(170)는 다양한 종류의 모듈, 명령어 세트 내지 모델을 저장한다. Memory 170 may store at least one instruction that can be executed by processor 190. Additionally, the memory 170 may store any type of information generated or determined by the processor 190 and any type of information received by the server 200. For example, the memory 170 stores RM data and RM protocols according to users, as will be described later. Additionally, the memory 170 stores various types of modules, instruction sets, or models.
프로세서(190)는 메모리(170)에 저장된 적어도 하나의 명령어를 실행시킴으로써, 후술될 본 개시내용의 실시예들에 따른 기술적 특징들을 수행할 수 있다. 일 실시예에서, 프로세서(190)는 적어도 하나의 코어로 구성될 수 있으며, 컴퓨터 장치의 중앙 처리 장치(CPU: central processing unit), 범용 그래픽 처리 장치 (GPGPU: general purpose graphics processing unit), 텐서 처리 장치(TPU: tensor processing unit) 등의 데이터 분석 및/또는 처리를 위한 프로세서를 포함할 수 있다.The processor 190 may perform technical features according to embodiments of the present disclosure, which will be described later, by executing at least one instruction stored in the memory 170. In one embodiment, the processor 190 may be comprised of at least one core, and may include a central processing unit (CPU), a general purpose graphics processing unit (GPGPU), and tensor processing of a computer device. It may include a processor for data analysis and/or processing, such as a tensor processing unit (TPU).
실시예에서 메모리(170)에는 전력 계통 어플리케이션과의 인터페이스를 위한 온톨로지 데이터 관리를 수행하는 명령어 세트가 저장될 수 있다. 해당 명령어 세트는 도 5에 도시된 CIM 객체 관리부(110) 및 프로파일 추출부(120)를 포함할 수 있다. In an embodiment, the memory 170 may store a set of instructions for performing ontology data management for interfacing with a power system application. The corresponding command set may include the CIM object management unit 110 and profile extraction unit 120 shown in FIG. 5.
또한, 메모리(170)에는 다양한 종류의 모듈 내지 모델이 저장되어 있을 수 있다. 이는 도 8에 도시되어 있다.Additionally, various types of modules or models may be stored in the memory 170. This is shown in Figure 8.
도 9는 실시예 따른 데이터 관리 서버에 저장된 모델 또는 모듈의 예를 나타낸 도면이다. 도 9를 참조하면, 메모리(120)에는 데이터 베이스 구축 모델(1), 데이터 생성 모델(2) 및 데이터 추출 모델(3)이 저장될 수 있다. 각각의 모듈 내지 모델은 프로세서(190)에 의해 실행 가능한 어플리케이션의 형태일 수 있다. Figure 9 is a diagram showing an example of a model or module stored in a data management server according to an embodiment. Referring to FIG. 9, a database construction model (1), a data generation model (2), and a data extraction model (3) may be stored in the memory 120. Each module or model may be in the form of an application executable by the processor 190.
데이터 베이스 구축 모델(1)은 온톨로지 데이터베이스를 구축하는 모델로서, 전력 계통 어플리케이션과의 인터페이스를 위한 온톨로지 데이터 관리에 필요한 프로파일 저장소(210), 관계형 데이터 저장소(220), 온톨로지 저장소(230) 및 매핑 정보 저장소(240)를 구축하는 모델이다. 실시예에서 데이터베이스 구축 모델(1)은 관계형 데이터베이스 모델 (Relational Database Model), 객체지향 데이터베이스 모델 (Object-Oriented Database Model), 문서형 데이터베이스 모델 (Document Database Model), 키-값 데이터베이스 모델 (Key-Value Database Model) 및 그래프 데이터 베이스 모델 등을 포함하고 이에 한정하지 않는다. The database construction model (1) is a model for building an ontology database, which includes the profile storage (210), relational data storage (220), ontology storage (230), and mapping information required for ontology data management for interfacing with power system applications. This is a model for building a storage 240. In the embodiment, the database construction model (1) is a relational database model, an object-oriented database model, a document database model, and a key-value database model. Database Model) and graph database model, etc., but are not limited thereto.
데이터 생성 모델(2)은 온톨로지 데이터 관리에 요구되는 프로파일 정보를 생성하는 모델이다. 실시예에서 데이터 생성 모델(2)는 개체의 특성, 행동, 속성 등을 설명하고 표현하는 프로파일 정보를 생성하는 모델이다. 실시예에서 데이터 생성 모델(2)는 확률적 데이터 생성 모델, 통계적 데이터 생성 모델, 시뮬레이션 모델, 기계학습 모델, 시계열 데이터 생성 모델 등을 포함하고 이에 한정하지 않는다.The data generation model (2) is a model that generates profile information required for ontology data management. In the embodiment, the data generation model 2 is a model that generates profile information that describes and expresses the characteristics, behavior, and attributes of an entity. In the embodiment, the data generation model 2 includes, but is not limited to, a probabilistic data generation model, a statistical data generation model, a simulation model, a machine learning model, a time series data generation model, etc.
데이터 추출 모델(3)은 전력 계통 어플리케이션에서 필요로 하는 데이터만을 추출하는 모델로서, 다양한 데이터 소스로부터 필요한 정보를 추출하는 모델 및 필터링 모델을 포함할 수 있다. 데이터 추출 모델(3)은 데이터 소스로부터 원하는 데이터를 식별하고 추출하여 처리하거나 분석하는 과정을 수행한다. 실시예에서 데이터 추출 모델(3)은 주로 데이터 통합, 데이터 마이닝, 웹 스크래핑 등 다양한 데이터 수집 작업에서 활용된다. 실시예에서 데이터 추출 모델(3)은 웹 스크래핑 (Web Scraping), API 호출 및 데이터 추출, 데이터베이스 쿼리, 파일 시스템 탐색 및 데이터 추출, 이미지 및 비디오 데이터 추출, 데이터 변환 및 정제, 로그 데이터 추출 등의 기능을 수행할 수 있다.The data extraction model 3 is a model that extracts only data needed for power system applications, and may include a model that extracts necessary information from various data sources and a filtering model. The data extraction model (3) performs the process of identifying, extracting, and processing or analyzing desired data from a data source. In the embodiment, the data extraction model 3 is mainly used in various data collection tasks such as data integration, data mining, and web scraping. In the embodiment, the data extraction model 3 includes functions such as web scraping, API call and data extraction, database query, file system navigation and data extraction, image and video data extraction, data conversion and cleansing, and log data extraction. can be performed.
실시예에서는 데이터 관리 서버(100)에서 EMS에 데이터를 전송할 때, 추출 모델(3)을 통해 온톨로지 데이터베이스(200)의 프로파일 저장소(210)를 통해 필요한 정보만을 추출하여 전송할 수 있다.In the embodiment, when data is transmitted from the data management server 100 to the EMS, only necessary information can be extracted and transmitted through the profile storage 210 of the ontology database 200 through the extraction model 3.
본 명세서에서의 모델은 네트워크 함수, 인공신경망 및/또는 뉴럴 네트워크에 기반하여 동작하는 임의의 형태의 컴퓨터 프로그램을 의미할 수 있다. 본 명세서에 걸쳐, 모델, 신경망, 네트워크 함수, 뉴럴 네트워크(neural network)는 상호 교환 가능한 의미로 사용될 수 있다. 신경망은 하나 이상의 노드들이 하나 이상의 링크를 통해 상호 연결되어 신경망 내에서 입력 노드 및 출력 노드 관계를 형성한다. 신경망 내에서 노드들과 링크들의 개수 및 노드들과 링크들 사이의 연관관계, 링크들 각각에 부여된 가중치의 값에 따라, 신경망의 특성이 결정될 수 있다. 신경망은 하나 이상의 노드들의 집합으로 구성될 수 있다. 신경망을 구성하는 노드들의 부분 집합은 레이어(layer)를 구성할 수 있다.A model in this specification may refer to any type of computer program that operates based on a network function, artificial neural network, and/or neural network. Throughout this specification, model, neural network, network function, and neural network may be used interchangeably. In a neural network, one or more nodes are interconnected through one or more links to form an input node and output node relationship within the neural network. The characteristics of the neural network can be determined according to the number of nodes and links within the neural network, the correlation between the nodes and links, and the value of the weight assigned to each link. A neural network may consist of a set of one or more nodes. A subset of nodes that make up a neural network can form a layer.
딥 뉴럴 네트워크(DNN: deep neural network, 심층신경망)는 입력 레이어와 출력 레이어 외에 복수개의 히든 레이어를 포함하는 신경망을 의미할 수 있다. 딥 뉴럴 네트워크는 컨볼루션 뉴럴 네트워크(CNN: convolutional neural network), 리커런트 뉴럴 네트워크(RNN: recurrent neural network), 오토 인코더(auto encoder), GAN(Generative Adversarial Networks), 제한 볼츠만 머신(RBM: restricted boltzmann machine), 심층 신뢰 네트워크(DBN: deep belief network), Q 네트워크, U 네트워크, 샴 네트워크, 적대적 생성 네트워크(GAN: Generative Adversarial Network), 트랜스포머(transformer) 등을 포함할 수 있다. 전술한 딥 뉴럴 네트워크의 기재는 예시일 뿐이며 본 개시는 이에 제한되지 않는다.A deep neural network (DNN) may refer to a neural network that includes a plurality of hidden layers in addition to an input layer and an output layer. Deep neural networks include convolutional neural networks (CNN), recurrent neural networks (RNN), auto encoders, generative adversarial networks (GAN), and restricted Boltzmann machines (RBM). machine), deep belief network (DBN), Q network, U network, Siamese network, Generative Adversarial Network (GAN), transformer, etc. The description of the deep neural network described above is only an example and the present disclosure is not limited thereto.
뉴럴 네트워크는 지도학습(supervised learning), 비지도학습(unsupervised learning), 준지도학습(semi supervised learning), 자가학습(self-supervised learning) 또는 강화학습(reinforcement learning) 중 적어도 하나의 방식으로 학습될 수 있다. 뉴럴 네트워크의 학습은 뉴럴 네트워크가 특정한 동작을 수행하기 위한 지식을 뉴럴 네트워크에 적용하는 과정일 수 있다.A neural network can be learned in at least one of supervised learning, unsupervised learning, semi-supervised learning, self-supervised learning, or reinforcement learning. You can. Learning of a neural network may be a process of applying knowledge for the neural network to perform a specific operation to the neural network.
뉴럴 네트워크는 출력의 오류를 최소화하는 방향으로 학습될 수 있다. 뉴럴 네트워크의 학습에서 반복적으로 학습 데이터를 뉴럴 네트워크에 입력시키고 학습 데이터에 대한 뉴럴 네트워크의 출력과 타겟의 에러를 계산하고, 에러를 줄이기 위한 방향으로 뉴럴 네트워크의 에러를 뉴럴 네트워크의 출력 레이어에서부터 입력 레이어 방향으로 역전파(backpropagation)하여 뉴럴 네트워크의 각 노드의 가중치를 업데이트 하는 과정이다. 지도학습의 경우 각각의 학습 데이터에 정답이 라벨링 되어있는 데이터(labelled data)를 사용하며, 비지도학습의 경우는 각각의 학습 데이터에 정답이 라벨링되어 있지 않은 데이터(unlabeled data)를 사용할 수 있다. 업데이트 되는 각 노드의 연결 가중치는 학습률(learning rate)에 따라 변화량이 결정될 수 있다. 입력 데이터에 대한 뉴럴 네트워크의 계산과 에러의 역전파는 학습 사이클(epoch)을 구성할 수 있다. 학습률은 뉴럴 네트워크의 학습 사이클의 반복 횟수에 따라 상이하게 적용될 수 있다. 또한, 과적합(overfitting)을 막기 위해서 학습 데이터의 증가, 레귤러화(regularization), 노드 일부를 비활성화하는 드롭아웃(dropout), 배치 정규화 레이어(batch normalization layer) 등의 방법이 적용될 수 있다.Neural networks can be trained to minimize output errors. In neural network learning, learning data is repeatedly input into the neural network, the output of the neural network and the error of the target for the learning data are calculated, and the error of the neural network is transferred from the output layer of the neural network to the input layer in the direction of reducing the error. This is the process of updating the weight of each node in the neural network through backpropagation. In the case of supervised learning, data in which the correct answer is labeled (labeled data) can be used in each learning data, and in the case of unsupervised learning, data in which the correct answer is not labeled in each learning data (unlabeled data) can be used. The amount of change in the connection weight of each updated node may be determined according to the learning rate. The neural network's calculation of input data and backpropagation of errors can constitute a learning cycle (epoch). The learning rate may be applied differently depending on the number of repetitions of the learning cycle of the neural network. Additionally, to prevent overfitting, methods such as increasing learning data, regularization, dropout to disable some nodes, and batch normalization layer can be applied.
일 실시예에서, 모델은 트랜스포머의 적어도 일부분을 차용할 수 있다. 트랜스포머는 임베딩된 데이터들을 인코딩하는 인코더 및 인코딩된 데이터들을 디코딩하는 디코더로 구성될 수 있다. 트랜스포머는 일련의 데이터들을 수신하여, 인코딩 및 디코딩 단계를 거처 상이한 타입의 일련의 데이터들을 출력하는 구조를 지닐 수 있다. 일 실시예에서, 일련의 데이터들은 트랜스포머가 연산가능한 형태로 가공될 수 있다. 일련의 데이터들을 트랜스포머가 연산가능한 형태로 가공하는 과정은 임베딩 과정을 포함할 수 있다. 데이터 토큰, 임베딩 벡터, 임베딩 토큰 등과 같은 표현들은, 트랜스포머가 처리할 수 있는 형태로 임베딩된 데이터들을 지칭하는 것일 수 있다.In one embodiment, the model may borrow at least a portion of a transformer. The transformer may be composed of an encoder that encodes embedded data and a decoder that decodes the encoded data. A transformer may have a structure that receives a series of data, goes through encoding and decoding steps, and outputs a series of data of different types. In one embodiment, a series of data can be processed into a form that can be operated by a transformer. The process of processing a series of data into a form that can be operated by a transformer may include an embedding process. Expressions such as data token, embedding vector, embedding token, etc. may refer to data embedded in a form that a transformer can process.
트랜스포머가 일련의 데이터들을 인코딩 및 디코딩하기 위하여, 트랜스포머 내의 인코더 및 디코더들을 어텐션(attention) 알고리즘을 활용하여 처리할 수 있다. 어텐션 알고리즘이란 주어진 쿼리(Query)에 대해, 하나 이상의 키(Key)에 대한 유사도를 구하고, 이렇게 주어진 유사도를, 각각의 키(Key)와 대응하는 값(Value)에 반영한 후, 유사도가 반영된 값(Value)들을 가중합하여 어텐션 값을 계산하는 알고리즘을 의미할 수 있다.In order for the transformer to encode and decode a series of data, the encoders and decoders within the transformer can be processed using an attention algorithm. The attention algorithm calculates the similarity of one or more keys for a given query, reflects the given similarity to the value corresponding to each key, and returns the reflected similarity value ( It may refer to an algorithm that calculates the attention value by weighting the values.
쿼리, 키 및 값을 어떻게 설정하느냐에 따라, 다양한 종류의 어텐션 알고리즘이 분류될 수 있다. 예를 들어, 쿼리, 키 및 값을 모두 동일하게 설정하여 어텐션을 구하는 경우, 이는 셀프-어텐션 알고리즘을 의미할 수 있다. 입력된 일련의 데이터들을 병렬로 처리하기 위해, 임베딩 벡터를 차원을 축소하여, 각 분할된 임베딩 벡터에 대해 개별적인 어텐션 헤드를 구하여 어텐션을 구하는 경우, 이는 멀티-헤드(multi-head) 어텐션 알고리즘을 의미할 수 있다.Depending on how queries, keys, and values are set, various types of attention algorithms can be classified. For example, if attention is obtained by setting the query, key, and value all the same, this may mean a self-attention algorithm. In order to process a series of input data in parallel, when the dimension of the embedding vector is reduced and attention is obtained by obtaining individual attention heads for each divided embedding vector, this refers to a multi-head attention algorithm. can do.
일 실시예에서, 트랜스포머는 복수개의 멀티-헤드 셀프 어텐션 알고리즘 또는 멀티-헤드 인코더-디코더 알고리즘을 수행하는 모듈들로 구성될 수 있다. 일 실시예에서, 트랜스포머는 임베딩, 정규화, 소프트맥스(softmax) 등 어텐션 알고리즘이 아닌 부가적인 구성요소들 또한 포함할 수 있다. 어텐션 알고리즘을 이용하여 트랜스포머를 구성하는 방법은 Vaswani et al., Attention Is All You Need, 2017 NIPS에 개시된 방법을 포함할 수 있으며, 이는 본 명세서에 참조로 통합된다.In one embodiment, the transformer may be composed of modules that perform a plurality of multi-head self-attention algorithms or a multi-head encoder-decoder algorithm. In one embodiment, the transformer may also include additional components other than the attention algorithm, such as embedding, normalization, and softmax. A method of configuring a transformer using an attention algorithm may include the method disclosed in Vaswani et al., Attention Is All You Need, 2017 NIPS, which is incorporated herein by reference.
트랜스포머는 임베딩된 자연어, 분할된 이미지 데이터, 오디오 파형 등 다양한 데이터 도메인에 적용하여, 일련의 입력 데이터를 일련의 출력 데이터로 변환할 수 있다. 다양한 데이터 도메인을 가진 데이터들을 트랜스포머에 입력가능한 일련의 데이터들로 변환하기 위해, 트랜스포머는 데이터들을 임베딩할 수 있다. 트랜스포머는 일련의 입력 데이터 사이의 상대적 위치관계 또는 위상관계를 표현하는 추가적인 데이터를 처리할 수 있다. 또는 일련의 입력 데이터에 입력 데이터들 사이의 상대적인 위치관계 또는 위상관계를 표현하는 벡터들이 추가적으로 반영되어 일련의 입력 데이터가 임베딩될 수 있다. 일 예에서, 일련의 입력 데이터 사이의 상대적 위치관계는, 자연어 문장 내에서의 어순, 각각의 분할된 이미지의 상대적 위치 관계, 분할된 오디오 파형의 시간 순서 등을 포함할 수 있으나, 이에 제한되지 않는다. 일련의 입력 데이터들 사이의 상대적인 위치관계 또는 위상관계를 표현하는 정보를 추가하는 과정은 위치 인코딩(positional encoding)으로 지칭될 수 있다.Transformers can be applied to various data domains such as embedded natural language, segmented image data, and audio waveforms to convert a series of input data into a series of output data. In order to convert data with various data domains into a series of data that can be input to the transformer, the transformer can embed the data. Transformers can process additional data expressing relative positional or phase relationships between sets of input data. Alternatively, a series of input data may be embedded by additionally reflecting vectors expressing relative positional relationships or phase relationships between the input data. In one example, the relative positional relationship between a series of input data may include, but is not limited to, word order within a natural language sentence, relative positional relationship of each segmented image, temporal order of segmented audio waveforms, etc. . The process of adding information expressing relative positional or phase relationships between a series of input data may be referred to as positional encoding.
일 실시예에서, 모델은 RNN(Recurrent Neural Network), LSTM(Long Short Term Memory) 네트워크, DNN(Deep Neural Network), CNN(Convolutional Neural Network) 및 BRDNN(Bidirectional Recurrent Deep Neural Network) 중 적어도 하나를 포함할 수 있고 이에 한정하지 않는다. In one embodiment, the model includes at least one of a Recurrent Neural Network (RNN), a Long Short Term Memory (LSTM) network, a Deep Neural Network (DNN), a Convolutional Neural Network (CNN), and a Bidirectional Recurrent Deep Neural Network (BRDNN). It can be done and is not limited to this.
일 실시예에서, 모델은 전이학습(transfer learning) 방식으로 학습된 모델일 수 있다. 여기서, 전이학습은 대용량의 라벨링되어 있지 않은 학습용 데이터를 준지도학습 또는 자가학습 방식으로 사전 학습(pre-training)하여 제1 태스크를 갖는 사전 학습된(pre-trained) 모델을 얻고, 사전 학습된 모델을 제2 태스크에 적합하도록 fine-tuning하여 라벨링된 학습용 데이터를 지도학습 방식으로 학습해 타겟으로 하는 모델을 구현하는 학습 방식을 나타낸다.In one embodiment, the model may be a model learned using transfer learning. Here, transfer learning obtains a pre-trained model with the first task by pre-training a large amount of unlabeled learning data using a semi-supervised learning or self-learning method, and obtains a pre-trained model with a first task. It represents a learning method that implements a target model by fine-tuning the model to suit the second task and learning the labeled learning data using a supervised learning method.
이하에서는 전력 계통 어플리케이션과의 인터페이스를 위한 온톨로지 데이터 관리 방법에 대해서 차례로 설명한다. 실시예에 따른 전력 계통 어플리케이션과의 인터페이스를 위한 온톨로지 데이터 관리 방법의 작용(기능)은 시스템의 기능과 본질적으로 같은 것이므로 도 1 내지 도 8과 중복되는 설명은 생략하도록 한다.Below, we will sequentially explain the ontology data management method for interfacing with power system applications. Since the operation (function) of the ontology data management method for interfacing with the power system application according to the embodiment is essentially the same as the function of the system, descriptions overlapping with FIGS. 1 to 8 will be omitted.
도 10은 실시예에 따른 온톨로지 데이터 관리 서버의 데이터 처리 흐름을 나타낸 도면이다.Figure 10 is a diagram showing the data processing flow of the ontology data management server according to an embodiment.
도 10을 참조하면, S100 단계에서는 데이터 관리 서버에서 데이터베이스에 전력정보를 생성하는 어플리케이션과의 인터페이스를 위한 온톨로지 데이터를 구축한다. S100 단계에서는 온톨로지 데이터베이스를 구축하고, 구축된 데이터베이스에 어플리케이션에 필요한 정보를 추가한다. 실시예에서는 어플리케이션 추가 또는 수정에 의한 프로파일 변동 시, 변동과 관련된 특정 데이터만 변경한다. Referring to FIG. 10, in step S100, the data management server constructs ontology data for an interface with an application that generates power information in a database. In the S100 stage, an ontology database is built and the information needed for the application is added to the built database. In the embodiment, when the profile changes due to adding or modifying an application, only specific data related to the change is changed.
S200 단계에서는 데이터 관리 서버에서 어플리케이션 동작에 필요한 입출력 데이터인 프로파일 정보를 기반으로 상기 어플리케이션 구동에 필요한 정보만을 CIM-XML로 변환하고 변환된 CIM-XML를 어플리케이션과 교환한다. S200 단계는 프로파일에 정의된 어플리케이션 인터페이스 데이터를 온톨로지 저장소에 적재하는 과정을 포함한다. 이때, 어플리케이션에 필요한 인터페이스가 정의된 프로파일을 확인하고, 온톨로지 데이터베이스에 상기 프로파일에 해당하는 설비 데이터를 부여한다. 또한, S200 단계는 CIM-XML 데이터에 설비에 대한 mRID 부여 여부 및 mRID가 규칙대로 적용되어 있는지를 판단하는 단계; 를 포함한다. 실시예에서는 mRID가 부여되지 않은 설비가 있거나, mRID 부여 방식이 규칙대로 적용되지 않은 경우, 설비에 대한 mRID를 재 정의하고, 매핑 정보 저장소에 재 정의된 mRID를 저장하고, 매핑 정보 저장소에 저장된 매핑 관계 정의 데이터를 기반으로 데이터 간 매핑 관계를 판단한다. In step S200, the data management server converts only the information required to run the application into CIM-XML based on profile information, which is input and output data required for application operation, and exchanges the converted CIM-XML with the application. Step S200 includes the process of loading application interface data defined in the profile into the ontology repository. At this time, the profile in which the interface required for the application is defined is checked, and equipment data corresponding to the profile is provided to the ontology database. In addition, step S200 is a step of determining whether to grant an mRID to the facility in the CIM-XML data and whether the mRID is applied according to the rules; Includes. In the embodiment, if there is a facility that has not been assigned an mRID or the mRID assignment method is not applied according to the rules, the mRID for the facility is redefined, the redefined mRID is stored in the mapping information repository, and the mapping stored in the mapping information repository is performed. Determine the mapping relationship between data based on the relationship definition data.
이상에서와 같은 전력 계통 어플리케이션과의 인터페이스를 위한 온톨로지 데이터 관리 시스템 및 방법은 온톨로지 저장소를 제공하여 데이터 조회 효율을 향상시킨다.The ontology data management system and method for interfacing with power system applications as described above improves data inquiry efficiency by providing an ontology storage.
실시예를 통해, 프로파일 추출부의 역할을 프로파일에 정의된 어플리케이션 인터페이스를 온톨로지 저장소에 해당 정보를 포함하여 적재하는 역할로 축소함으로써, 데이터 처리 효율을 향상시킬 수 있다. Through an embodiment, data processing efficiency can be improved by reducing the role of the profile extractor to loading the application interface defined in the profile into the ontology storage with the corresponding information.
또한, 실시예를 통해 전력 시스템과 관련된 데이터를 효율적으로 관리하고 처리함으로써, 전력 시스템의 효율성, 신뢰성, 안전성을 향상시킬 수 있도록 한다.In addition, through the embodiment, the efficiency, reliability, and safety of the power system can be improved by efficiently managing and processing data related to the power system.
개시된 내용은 예시에 불과하며, 특허청구범위에서 청구하는 청구의 요지를 벗어나지 않고 당해 기술분야에서 통상의 지식을 가진 자에 의하여 다양하게 변경 실시될 수 있으므로, 개시된 내용의 보호범위는 상술한 특정의 실시예에 한정되지 않는다.The disclosed content is merely an example, and various modifications and implementations may be made by those skilled in the art without departing from the gist of the claims, so the scope of protection of the disclosed content is limited to the above-mentioned specific scope. It is not limited to the examples.
Claims (20)
전력정보를 생성하는 어플리케이션과의 인터페이스를 위한 온톨로지 데이터베이스;
어플리케이션 동작에 필요한 입출력 데이터인 프로파일 정보를 기반으로 상기 어플리케이션 구동에 필요한 정보만을 CIM-XML로 변환하고 변환된 CIM-XML를 상기 어플리케이션과 교환하는 데이터 관리 서버; 를 포함하고
상기 데이터 관리 서버; 는
어플리케이션 구동에 필요한 정보 필터링을 위해, 모든 프로파일 정보를 분석하여 상기 프로파일 정보에 존재하는 데이터의 종류, 데이터 필드의 형식 및 어플리케이션 구동에 영향을 주는 데이터를 파악하고, 어플리케이션의 요구사항을 분석하여, 분석결과에 따라 어플리케이션 구동에 직접적으로 필요한 정보를 추출하고, 불필요한 정보는 제외하고, 민감한 정보는 마스킹 하고,
상기 데이터 관리 서버; 는
어플리케이션 구동에 필요한 정보에서 데이터 중복을 제거하고 부정확한 데이터를 수정하고, 어플리케이션에서 활용가능한 형식으로 포맷팅(formatting) 하고, 필터링 된 어플리케이션 구동에 필요한 정보를 어플리케이션에 제공하기 위한 데이터 액세스 메커니즘을 설정하고,
상기 데이터 관리 서버; 는
필터링 과정에서 어플리케이션 구동에 필요하지 않은 민감한 개인정보, 보안관련 정보, 불필요한 중복 데이터, 기간 만료된 데이터, 테스트 및 개발용 데이터, 불필요한 로그 데이터, 잘못된 또는 오래된 정보, 미사용 데이터를 삭제하고. 상기 삭제되는 보안 관련 정보는 어플리케이션의 보안에 영향을 미칠 수 있는 정보로서, 비밀번호 해시 값 및 암호화 키를 포함하고,
상기 데이터 관리 서버; 는
어플리케이션 추가 또는 수정에 의한 프로파일 변동 시, 변동과 관련된 특정 데이터만 변경하기 위해, 어플리케이션에 추가사항, 수정 사항을 포함하는 변경 사항을 파악하고. 변경 사항과 프로파일 데이터의 관계를 분석하고, 추가 또는 수정된 필드를 포함하는 변경사항과 관련된 데이터만을 선택하여 추출하고, 추출한 데이터를 사용하여 프로파일 데이터를 업데이트하고,
상기 온톨로지 데이터베이스; 는
EMS(Energy Management System)에서 어플리케이션 동작에 필요한 프로파일 정보를 저장하는 프로파일 저장소;
정적 계통 정보(Static information)를 저장하는 온톨로지 저장소;
시계열 정보를 저장하는 관계형 데이터 저장소; 및
데이터 간 매핑 관계를 정의하는 매핑 정보 저장소; 를 포함하고
상기 데이터 관리 서버; 는
프로파일에 정의된 어플리케이션 인터페이스 데이터를 온톨로지 저장소에 적재하고, 어플리케이션에 필요한 인터페이스가 정의된 프로파일을 확인하고, 온톨로지 데이터베이스에 상기 프로파일에 해당하는 설비 데이터를 부여하는 프로파일 추출부;
CIM-XML 데이터에 설비에 대한 mRID 부여 여부 및 mRID가 규칙대로 적용되어 있는지를 판단하는 CIM 객체 관리부; 를 포함하고
상기 CIM 객체 관리부; 는
mRID가 부여되지 않은 설비가 있거나, mRID 부여 방식이 규칙대로 적용되지 않은 경우, 상기 설비에 대한 mRID를 재 정의하고, 매핑 정보 저장소에 재 정의된 mRID를 저장하고, 상기 매핑 정보 저장소에 저장된 매핑 관계 정의 데이터를 기반으로 데이터 간 매핑 관계를 판단하고
상기 데이터 관리 서버; 는
온톨로지 데이터베이스를 구축하고, 상기 구축된 데이터베이스에 어플리케이션에 필요한 정보를 추가하고, 어플리케이션에 필요한 정보가 저장된 CIM-XML을 생성하는 온톨로지 데이터 관리 시스템.
In the ontology data management system for interfacing with power system applications,
Ontology database for interfacing with applications that generate power information;
A data management server that converts only the information necessary for running the application into CIM-XML based on profile information, which is input and output data required for application operation, and exchanges the converted CIM-XML with the application; includes
the data management server; Is
In order to filter the information required to run the application, all profile information is analyzed to identify the type of data present in the profile information, the format of the data field, and data that affects the application run, and the requirements of the application are analyzed and analyzed. According to the results, the information directly needed to run the application is extracted, unnecessary information is excluded, sensitive information is masked,
the data management server; Is
Remove data duplication from the information needed to run the application, correct inaccurate data, format it into a format usable by the application, and set up a data access mechanism to provide the application with the information needed to run the filtered application.
the data management server; Is
During the filtering process, delete sensitive personal information, security-related information, unnecessary duplicate data, expired data, data for testing and development, unnecessary log data, incorrect or old information, and unused data that are not required to run the application. The security-related information to be deleted is information that may affect the security of the application and includes a password hash value and encryption key,
the data management server; Is
When the profile changes due to adding or modifying an application, identify changes including additions and modifications to the application in order to change only specific data related to the change. Analyze the relationship between changes and profile data, select and extract only the data related to changes, including added or modified fields, and use the extracted data to update profile data;
the ontology database; Is
Profile storage that stores profile information required for application operation in an EMS (Energy Management System);
Ontology repository that stores static information;
Relational data store that stores time series information; and
A mapping information repository that defines mapping relationships between data; includes
the data management server; Is
a profile extractor that loads application interface data defined in the profile into an ontology repository, checks a profile in which an interface required for the application is defined, and provides equipment data corresponding to the profile to the ontology database;
A CIM object management unit that determines whether mRID is assigned to equipment in CIM-XML data and whether mRID is applied according to the rules; includes
The CIM object management unit; Is
If there is a facility that has not been assigned an mRID, or the mRID assignment method is not applied according to the rules, redefine the mRID for the facility, store the redefined mRID in the mapping information repository, and store the mapping relationship stored in the mapping information repository. Determine mapping relationships between data based on definition data
the data management server; Is
An ontology data management system that builds an ontology database, adds information needed for the application to the constructed database, and generates CIM-XML in which the information needed for the application is stored.
(A) 데이터 관리 서버는 데이터베이스에 전력정보를 생성하는 어플리케이션과의 인터페이스를 위한 온톨로지 데이터를 구축하는 단계; 및
(B) 데이터 관리 서버는 어플리케이션 동작에 필요한 입출력 데이터인 프로파일 정보를 기반으로 상기 어플리케이션 구동에 필요한 정보만을 CIM-XML로 변환하고 변환된 CIM-XML를 상기 어플리케이션과 교환하는 단계; 를 포함하고
상기 (B)의 단계; 는
어플리케이션 구동에 필요한 정보 필터링을 위해, 모든 프로파일 정보를 분석하여 상기 프로파일 정보에 존재하는 데이터의 종류, 데이터 필드의 형식 및 어플리케이션 구동에 영향을 주는 데이터를 파악하고, 어플리케이션의 요구사항을 분석하여, 분석결과에 따라 어플리케이션 구동에 직접적으로 필요한 정보를 추출하고, 불필요한 정보는 제외하고, 민감한 정보는 마스킹 하고,
어플리케이션 구동에 필요한 정보에서 데이터 중복을 제거하고 부정확한 데이터를 수정하고, 어플리케이션에서 활용가능한 형식으로 포맷팅(formatting) 하고, 필터링 된 어플리케이션 구동에 필요한 정보를 어플리케이션에 제공하기 위한 데이터 액세스 메커니즘을 설정하고,
필터링 과정에서 어플리케이션 구동에 필요하지 않은 민감한 개인정보, 보안관련 정보, 불필요한 중복 데이터, 기간 만료된 데이터, 테스트 및 개발용 데이터, 불필요한 로그 데이터, 잘못된 또는 오래된 정보, 미사용 데이터를 삭제하고. 상기 삭제되는 보안 관련 정보는 어플리케이션의 보안에 영향을 미칠 수 있는 정보로서, 비밀번호 해시 값 및 암호화 키를 포함하고,
어플리케이션 추가 또는 수정에 의한 프로파일 변동 시, 변동과 관련된 특정 데이터만 변경하기 위해, 어플리케이션에 추가사항, 수정 사항을 포함하는 변경 사항을 파악하고. 변경 사항과 프로파일 데이터의 관계를 분석하고, 추가 또는 수정된 필드를 포함하는 변경사항과 관련된 데이터만을 선택하여 추출하고, 추출한 데이터를 사용하여 프로파일 데이터를 업데이트하고,
상기 (B)의 단계; 는
(B-1)프로파일에 정의된 어플리케이션 인터페이스 데이터를 온톨로지 저장소에 적재하는 단계; 및
(B-2)CIM-XML 데이터에 설비에 대한 mRID 부여 여부 및 mRID가 규칙대로 적용되어 있는지를 판단하는 단계; 를 포함하는 를 포함하고
상기 (B-1)의 단계; 는
어플리케이션에 필요한 인터페이스가 정의된 프로파일을 확인하고, 온톨로지 데이터베이스에 상기 프로파일에 해당하는 설비 데이터를 부여하고
상기 (B-2)의 단계; 는
mRID가 부여되지 않은 설비가 있거나, mRID 부여 방식이 규칙대로 적용되지 않은 경우, 상기 설비에 대한 mRID를 재 정의하고, 매핑 정보 저장소에 재 정의된 mRID를 저장하고, 상기 매핑 정보 저장소에 저장된 매핑 관계 정의 데이터를 기반으로 데이터 간 매핑 관계를 판단하는 온톨로지 데이터 관리 방법.
In the ontology data management method for interfacing with power system applications,
(A) The data management server constructs ontology data for interfacing with an application that generates power information in a database; and
(B) the data management server converting only the information necessary for running the application into CIM-XML based on profile information, which is input and output data required for application operation, and exchanging the converted CIM-XML with the application; includes
Step (B) above; Is
In order to filter the information required to run the application, all profile information is analyzed to identify the type of data present in the profile information, the format of the data field, and data that affects the application run, and the requirements of the application are analyzed and analyzed. According to the results, the information directly necessary to run the application is extracted, unnecessary information is excluded, sensitive information is masked,
Remove data duplication from the information needed to run the application, correct inaccurate data, format it into a format usable by the application, and set up a data access mechanism to provide the application with the information necessary to run the filtered application.
During the filtering process, delete sensitive personal information, security-related information, unnecessary duplicate data, expired data, data for testing and development purposes, unnecessary log data, incorrect or old information, and unused data that are not required to run the application. The security-related information to be deleted is information that may affect the security of the application and includes a password hash value and encryption key,
When the profile changes due to application addition or modification, changes including additions and modifications to the application are identified in order to change only specific data related to the change. Analyze the relationship between changes and profile data, select and extract only the data related to changes, including added or modified fields, and use the extracted data to update profile data;
Step (B) above; Is
(B-1) Loading application interface data defined in the profile into the ontology repository; and
(B-2) determining whether mRID is assigned to the facility in CIM-XML data and whether mRID is applied according to the rules; contains and includes
Step (B-1) above; Is
Check the profile in which the interface required for the application is defined, and provide equipment data corresponding to the profile to the ontology database.
Step (B-2) above; Is
If there is a facility that has not been assigned an mRID, or the mRID assignment method is not applied according to the rules, redefine the mRID for the facility, store the redefined mRID in the mapping information repository, and store the mapping relationship stored in the mapping information repository. An ontology data management method that determines mapping relationships between data based on definition data.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020230107375A KR102638529B1 (en) | 2023-08-17 | 2023-08-17 | Ontology data management system and method for interfacing with power system applications |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020230107375A KR102638529B1 (en) | 2023-08-17 | 2023-08-17 | Ontology data management system and method for interfacing with power system applications |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102638529B1 true KR102638529B1 (en) | 2024-02-20 |
Family
ID=90056602
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020230107375A KR102638529B1 (en) | 2023-08-17 | 2023-08-17 | Ontology data management system and method for interfacing with power system applications |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102638529B1 (en) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3451253B2 (en) | 1999-09-29 | 2003-09-29 | インフィネオン テクノロジーズ アクチェンゲゼルシャフト | Device and method for spectral shaping of a transmitted signal in a wireless transmitter |
JP2014229016A (en) * | 2013-05-21 | 2014-12-08 | 株式会社東芝 | Data processing apparatus, method and program |
KR102113050B1 (en) | 2019-12-27 | 2020-05-20 | 주식회사 파워이십일 | Energy management system and method |
KR20200082051A (en) * | 2018-12-28 | 2020-07-08 | 주식회사 파워이십일 | System for managing ontology data of power grid |
KR20220116879A (en) * | 2021-02-16 | 2022-08-23 | 명지대학교 산학협력단 | Data Intergration And Linkage Service Method For Linkage Between Power Systems |
US11663411B2 (en) | 2015-01-27 | 2023-05-30 | Verint Systems Ltd. | Ontology expansion using entity-association rules and abstract relations |
US20230206661A1 (en) | 2020-04-23 | 2023-06-29 | Korea Advanced Institute Of Science And Technology | Device and method for automatically generating domain-specific image caption by using semantic ontology |
US11714956B1 (en) | 2022-01-27 | 2023-08-01 | Rakuten Mobile, Inc. | Ontology-based semantic rendering |
US11714792B2 (en) | 2006-11-20 | 2023-08-01 | Palantir Technologies Inc. | Creating data in a data store using a dynamic ontology |
-
2023
- 2023-08-17 KR KR1020230107375A patent/KR102638529B1/en active IP Right Grant
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3451253B2 (en) | 1999-09-29 | 2003-09-29 | インフィネオン テクノロジーズ アクチェンゲゼルシャフト | Device and method for spectral shaping of a transmitted signal in a wireless transmitter |
US11714792B2 (en) | 2006-11-20 | 2023-08-01 | Palantir Technologies Inc. | Creating data in a data store using a dynamic ontology |
JP2014229016A (en) * | 2013-05-21 | 2014-12-08 | 株式会社東芝 | Data processing apparatus, method and program |
US11663411B2 (en) | 2015-01-27 | 2023-05-30 | Verint Systems Ltd. | Ontology expansion using entity-association rules and abstract relations |
KR20200082051A (en) * | 2018-12-28 | 2020-07-08 | 주식회사 파워이십일 | System for managing ontology data of power grid |
KR102141784B1 (en) | 2018-12-28 | 2020-08-06 | 주식회사 파워이십일 | System for managing ontology data of power grid |
KR102113050B1 (en) | 2019-12-27 | 2020-05-20 | 주식회사 파워이십일 | Energy management system and method |
US20230206661A1 (en) | 2020-04-23 | 2023-06-29 | Korea Advanced Institute Of Science And Technology | Device and method for automatically generating domain-specific image caption by using semantic ontology |
KR20220116879A (en) * | 2021-02-16 | 2022-08-23 | 명지대학교 산학협력단 | Data Intergration And Linkage Service Method For Linkage Between Power Systems |
US11714956B1 (en) | 2022-01-27 | 2023-08-01 | Rakuten Mobile, Inc. | Ontology-based semantic rendering |
Non-Patent Citations (1)
Title |
---|
"데이터센터 내 효율적인 전력 관리를 위한 온톨로지 기반 모니터링 기법", Journal of KIISE Vol. 42 No. 5(pp. 580-590), 2015.* * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20170109657A1 (en) | Machine Learning-Based Model for Identifying Executions of a Business Process | |
US20190244122A1 (en) | Explainable artificial intelligence | |
US20170109676A1 (en) | Generation of Candidate Sequences Using Links Between Nonconsecutively Performed Steps of a Business Process | |
US20190260831A1 (en) | Distributed integrated fabric | |
JP2023551029A (en) | Proactive anomaly detection | |
Kovalenko et al. | Modeling automationml: Semantic web technologies vs. model-driven engineering | |
US20170109638A1 (en) | Ensemble-Based Identification of Executions of a Business Process | |
Zeng et al. | EtherGIS: a vulnerability detection framework for Ethereum smart contracts based on graph learning features | |
Xie et al. | Logm: Log analysis for multiple components of hadoop platform | |
Paskevicius et al. | Change impact analysis of feature models | |
US20170109640A1 (en) | Generation of Candidate Sequences Using Crowd-Based Seeds of Commonly-Performed Steps of a Business Process | |
Dautov et al. | Addressing self-management in cloud platforms: a semantic sensor web approach | |
Aarnio et al. | Context modeling with situation rules for industrial maintenance | |
Li et al. | Breeze graph grammar: a graph grammar approach for modeling the software architecture of big data‐oriented software systems | |
Nguyen et al. | REInDetector: a framework for knowledge-based requirements engineering | |
KR102638529B1 (en) | Ontology data management system and method for interfacing with power system applications | |
US20170109637A1 (en) | Crowd-Based Model for Identifying Nonconsecutive Executions of a Business Process | |
US20170109670A1 (en) | Crowd-Based Patterns for Identifying Executions of Business Processes | |
Bretones Cassoli et al. | Knowledge Graphs for Data And Knowledge Management in Cyber-Physical Production Systems | |
US20240160811A1 (en) | Industrial data extraction | |
Liu et al. | TD-GAT: Graph neural network for fault diagnosis knowledge graph | |
Ullberg et al. | A tool for interoperability analysis of enterprise architecture models using Pi-OCL | |
CN115587007A (en) | Robertta-based weblog security detection method and system | |
Munir et al. | Towards symbolic representation-based modeling of Temporal Knowledge Graphs | |
CN111737319B (en) | User cluster prediction method, device, computer equipment and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
GRNT | Written decision to grant |