KR20000041891A - Object-oriented program interface for relational dbms - Google Patents

Object-oriented program interface for relational dbms Download PDF

Info

Publication number
KR20000041891A
KR20000041891A KR1019980057908A KR19980057908A KR20000041891A KR 20000041891 A KR20000041891 A KR 20000041891A KR 1019980057908 A KR1019980057908 A KR 1019980057908A KR 19980057908 A KR19980057908 A KR 19980057908A KR 20000041891 A KR20000041891 A KR 20000041891A
Authority
KR
South Korea
Prior art keywords
database
dbms
tuple
relational
relational dbms
Prior art date
Application number
KR1019980057908A
Other languages
Korean (ko)
Other versions
KR100305912B1 (en
Inventor
이창재
Original Assignee
서평원
엘지정보통신 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 서평원, 엘지정보통신 주식회사 filed Critical 서평원
Priority to KR1019980057908A priority Critical patent/KR100305912B1/en
Publication of KR20000041891A publication Critical patent/KR20000041891A/en
Application granted granted Critical
Publication of KR100305912B1 publication Critical patent/KR100305912B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4488Object-oriented

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

PURPOSE: An object-oriented program interface for a relational database management system(DBMS), is provided to use the relational DBMS, while an application program activates characteristics of an object-oriented program language, by use of a wrapping method. CONSTITUTION: An object-oriented program interface for a relational database management system(DBMS), includes an operation & maintenance subsystem(OMS) and an advanced intelligent processor(AIP). The interface comprises a service switching point(SSP) module application program(23), an UNIX database engine(UDBE)(211), a relational DBMS library(22), a database manager(24), a database tuple(25), and a type conversion integrity check(26). The SSP module application program(23) executes a SSP function. The UDBE(211) searches a database according to a request of the SSP module application program(23). The relational DBMS library(22) executes the UDBE and an interface. The database manager(24) accesses the relational DBMS by use of the library(22), according to the request of the SSP application module program(23). The database tuple(25) is a tuple object shifted tuple contents accessed through the relational DBMS, into a type of an object-oriented concept, which is used in the SSP module application program(23). The type conversion integrity check(26) shifts an attribute type into the object-oriented concept type.

Description

관계형 디비엠에스를 위한 객체 지향 프로그램 인터페이스Object-Oriented Program Interface for Relational DMS

본 발명은 관계형 DBMS를 위한 객체 지향 프로그램 인터페이스(Object Oriented Program Language Interface)에 관한 것으로, 특히 해당 관계형 DBMS를 객체 지향 프로그래밍 언어(Object Oriented Program Language; 이하 "OOPL"라고 한다) 환경에서도 사용할 수 있도록 한 관계형 DBMS를 위한 객체 지향 프로그램 인터페이스에 관한 것이다.The present invention relates to an Object Oriented Program Language Interface for a relational DBMS, and in particular, to allow the relational DBMS to be used even in an Object Oriented Program Language (OOPL) environment. An object-oriented program interface for a relational DBMS.

일반적으로, 데이터베이스(Database)는 새로운 데이터의 삽입, 삭제, 갱신을 수행하여 가장 최근의 정확한 데이터로 유지하면서 진행하도록 하며, 목적을 달리하는 여러 사용자가 데이터를 공유할 수 있도록 한다. 또한, 해당 데이터베이스 내의 물리적인 주소나 위치를 알 필요없이 내용으로 데이터에 접근할 수 있다. 해당 데이터베이스는 DBMS라는 소프트웨어 시스템에 의해 관리된다.In general, a database performs insertion, deletion, and update of new data to keep it as the latest accurate data, and allows data to be shared by different users having different purposes. You can also access data by content without having to know the physical address or location within that database. The database is managed by a software system called DBMS.

해당 DBMS는 응용 프로그램과 데이터의 중재자로서 모든 응용 프로그램들이 데이터를 공유할 수 있도록 여러 응용 프로그램들이 사용하는 데이터를 하나의 장소에 모아 종합적으로 유지하고 관리해 주는 소프트웨어 시스템인데, 즉 응용 프로그램들이 원하는 데이터를 검색하거나 변경하여 언제나 일관성있는 결과를 응용 프로그램에게 정확하게 제공해 주는 종합적인 데이터 관리 시스템이다.The DBMS is a mediator of applications and data. It is a software system that collects and manages data used by multiple applications in one place so that all applications can share data. A comprehensive data management system that retrieves or modifies and always provides consistent results to applications.

그리고, 해당 DBMS의 형태에는 관계형(Relational Model), 망형(Network Model), 계층형(Hierarchic Model) 등이 있는데, 이 중 현재까지 개발되고 널리 상업적으로 사용되는 관계형 DBMS는 데이터 항목(Data Item) 또는 필드(Field)를 나타내는 애트리뷰트(Attribute) 및 레코드(Record)와 동일한 개념을 가지는 튜플들(Tuples)로 구성된 테이블(Table)로 표현되는데, 해당 테이블은 관계(Ralation)라고 하며 데이터와 데이터 간의 관계도 관계로 구성된다.In the DBMS, there are relational model, network model, and hierarchic model. Among them, the relational DBMS developed and widely used to date is a data item or a data item. It is expressed as a table consisting of tuples that have the same concept as an attribute and record representing a field. The table is called a relationship and the relationship between data and data Consists of relationships.

해당 관계형 DBMS에서의 관계 특징은 튜플이 중복될 수 없고 순서에 관계없이 나열될 수 있으며, 애트리뷰트도 순서에 관계없이 나열될 수 있고 하나의 애트리뷰트 값은 단하나의 값만을 가질 수 있다.Relational features in the relational DBMS can not be duplicated tuples can be listed in any order, attributes can be listed in any order, and one attribute value can have only one value.

한편, 객체 지향 개념을 가지는 OOPL 사용이 증대되고 있는데, 해당 OOP는 실세계의 현상을 컴퓨터 상에 객체로서 모델화함으로써 컴퓨터를 자연스러운 형태로 사용하여 다양한 문제를 해결하기 위한 프로그램 기법이다. 여기서, 해당 객체는 실체(예, 데이터)와 그 실체에 관련되는 동작(예, 절차, 방법, 기능)을 모두 포함한다.On the other hand, the use of OOPL with an object-oriented concept is increasing. The OOP is a program technique for solving various problems by using a computer in a natural form by modeling a phenomenon of the real world as an object on a computer. Here, the object includes both an entity (eg, data) and operations (eg, procedures, methods, and functions) related to the entity.

예를 들어, 기차역에서의 승차권 발매에 관해 살펴보면, 실체인 '손님'과 절차인 '승차권 주문'은 하나의 객체이고 실체인 '역무원'과 절차인 '승차권 발매'도 하나의 객체이다. 어떤 과제를 처리하기 위하여 객체 간에는 메시지를 주고 받게 되는데, 메시지를 수신한 객체는 동작을 실행하게 된다.For example, when looking at the ticket release at the train station, the entity 'guest' and the procedure 'ordering tickets' are one object, and the entity 'staff officer' and the procedure 'release ticket' are also one object. In order to handle a task, a message is exchanged between objects, and the object receiving the message executes an action.

상술한 바와 같이, 해당 OOP는 실체와 동작을 객체로서 정의하고 해당 객체 간의 메시지 교환에 주안점을 두고 정보 처리를 수행하는데, 즉 객체 지향은 절차 중심 설계가 아니고 실체(예, 데이터)를 중시하는 설계이다. 또한, 해당 OOP의 다른 특징으로 공통의 성질을 가지는 객체는 객체 클래스(Class)로 정의되는데 동일한 등급에 속하는 객체들은 해당 수신한 메시지에 대해 비슷한 동작을 수행한다.As mentioned above, the OOP defines entities and actions as objects and performs information processing with a focus on the exchange of messages between them, that is, object-oriented is not a procedure-oriented design, but a design that focuses on entities (eg data). to be. In addition, as another feature of the OOP, an object having a common property is defined as an object class, and objects belonging to the same class perform similar operations on the received message.

그리고, 해당 OOP는 스몰토크와 같은 객체 지향 언어로 작성된다.The OOP is written in an object-oriented language such as Smalltalk.

이와 같이, 상기 OOPL로 작성된 OOP의 사용이 증대함에 따라서, 상기 관계형 DBMS를 사용하여 개발된 시스템에 해당 OOPL을 이용하여 새로운 기능을 구현할 경우에, 상기 관계형 DBMS가 지원하는 인터페이스가 해당 OOPL이 가지고 있는 추상 데이터의 형태, 코드 재사용(Code Reuse)과 같은 개념을 지원할 수 없으므로, 해당 OOPL의 일반적인 장점을 살릴 수 없어 새로운 기능을 전통적인 프로그램 기법으로 해야 한다는 제약을 받는다.As such, as the use of the OOP written in the OOPL increases, when a new function is implemented using the OOPL in a system developed using the relational DBMS, the interface supported by the relational DBMS has the OOPL. Since it cannot support concepts such as abstract data types and code reuse, it is not possible to take advantage of the general advantages of the OOPL and is constrained to make new functions traditional.

전술한 바와 같은 문제점을 해결하기 위한 것으로, 본 발명은 관계형 DBMS를 효과적인 랩핑(Wrapping) 기법을 이용하여 OOPL 객체 지향 프로그래밍 언어를 사용하는 응용 프로그램이 객체 지향 프로그랭 언어의 특징을 살리면서 관계형 DBMS를 사용할 수 있도록 하는데, 그 목적이 있다.In order to solve the problems as described above, the present invention uses a relational DBMS using an effective wrapping technique, an application program using the OOPL object-oriented programming language while maintaining the characteristics of the object-oriented programming language, Its purpose is to enable it.

도 1은 본 발명의 실시예에 따른 관계형 디비엠에스를 위한 객체 지향 프로그램 인터페이스에 연관된 교환기를 나타낸 구성 블록도.1 is a block diagram illustrating an exchange associated with an object-oriented program interface for a relational DRAM in accordance with an embodiment of the present invention.

도 2는 본 발명의 DBMS 인터페이스 서비스 패키지 분석 모델을 설명하기 위한 도면.2 is a view for explaining a DBMS interface service package analysis model of the present invention.

도 3은 도 2에 있어 AIN의 SSP에서 수행되는 트리거 처리를 나타낸 예시도.FIG. 3 is an exemplary diagram showing trigger processing performed at SSP of AIN in FIG. 2; FIG.

도 4는 도 1에 있어 AIP의 DBMS 계층을 나타낸 도면.4 is a diagram illustrating a DBMS layer of AIP in FIG. 1; FIG.

* 도면의 주요 부분에 대한 부호의 설명 *Explanation of symbols on the main parts of the drawings

10 : OMS(Operation & Maintenance Subsystem)10: OMS (Operation & Maintenance Subsystem)

20 : AIP(Advanced Intelligent Processor)20: AIP (Advanced Intelligent Processor)

21 : UDBE(Unix Database Engine)21: Unix Database Engine (UDBE)

22 : 관계형 DBMS 라이브러리(Relational Database Management System Library)22: relational database management system library

23 : SSP 모듈 응용 프로그램(Service Switching Point Module Application Program)23: Service Switching Point Module Application Program

24 : 데이터베이스 매니저(Database Manager)24: Database Manager

25 : 데이터베이스 튜플(Database Tuple)25: Database Tuple

26 : 형태 변환 보전 검출부(Type Conversion Integrity Check)26: Type Conversion Integrity Check

본 발명은 관계형 DBMS와 OOPL을 사용하는 응용 프로그램 사이에 중간 계층(Middle Layer)을 두어 모든 응용 프로그램에 관계형 DBMS에 대한 OOPL의 인터페이스를 제공하도록 한다. 즉, 본 발명은 해당 관계형 DBMS의 데이터를 해당 중간 계층에서 OOPL 응용 프로그램이 사용할 수 있는 데이터 형태로 유지하도록 하는데, 해당 중간 계층에서는 응용 프로그램에게 중간 계층에 유지된 데이터의 변경 사항을 관계형 DBMS에 업데이트(Update)할 수 있는 기능을 제공함으로써, OOPL을 사용하는 응용 프로그램이 관계형 DBMS를 사용하면서도 객체 지향의 장점을 유지할 수 있도록 한다.The present invention provides a middle layer between a relational DBMS and an application using OOPL to provide an OOPL interface to a relational DBMS for all applications. That is, the present invention maintains the data of the relational DBMS in the form of data that can be used by the OOPL application in the middle layer. In the middle layer, the application updates the relational DBMS with the change of the data maintained in the middle layer. By providing the ability to update, applications that use OOPL can maintain object-oriented advantages while using relational DBMSs.

그리고, 본 발명의 실시예에 따른 관계형 DBMS를 위한 객체 지향 프로그램 인터페이스는 SSP(Service Switching Point)를 구성하는 여러 서비스 패키지(Package; 프로그램 구성 단위) 중 DBMS 인터페이스 서비스 패키지라고 하며, 해당 DBMS 인터페이스 서비스 패키지는 SSP 모듈, 즉 객체 지향된 응용 프로그램과 MSC(Mobile Switching Center) 교환기의 분산 관계형 데이터베이스 간 인터페이스를 제공한다. 이하, 본 발명의 실시예를 첨부한 도면을 참조하여 상세하게 설명하면 다음과 같다.In addition, the object-oriented program interface for a relational DBMS according to an embodiment of the present invention is called a DBMS interface service package among a plurality of service packages (program configuration units) constituting a service switching point (SSP), and the corresponding DBMS interface service package. Provides an interface between the SSP module, an object-oriented application, and the distributed relational database of the Mobile Switching Center (MSC) exchange. Hereinafter, an embodiment of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 실시예에 따른 관계형 디비엠에스를 위한 객체 지향 프로그램 인터페이스에 연관된 교환기를 나타낸 구성 블록도이며, 도 2는 본 발명의 DBMS 인터페이스 서비스 패키지 분석 모델을 설명하기 위한 도면이며, 도 3은 도 2에 있어 AIN의 SSP에서 수행되는 트리거 처리를 나타낸 예시도이며, 도 4는 도 1에 있어 AIP의 DBMS 계층을 나타낸 도면이다.1 is a block diagram illustrating an exchanger associated with an object-oriented program interface for a relational device according to an embodiment of the present invention, FIG. 2 is a view for explaining a DBMS interface service package analysis model of the present invention, and FIG. FIG. 2 is an exemplary diagram illustrating trigger processing performed in an SSP of an AIN, and FIG. 4 is a diagram illustrating a DBMS layer of an AIP in FIG. 1.

본 발명의 DBMS 동작에 연관된 교환기는 도 1에 도시한 바와 같이, 크게 교환기의 운용 및 유지 보수를 담당하는 서브 시스템인 OMS(Operation & Maintenance Subsystem; 10)와, 교환기의 AIN(Advanced Intelligent Network) 기능(SSP)을 수행하는 프로세서인 AIP(Advanced Intelligent Processor; 20)를 포함하여 이루어진다.As shown in FIG. 1, the exchange associated with the operation of the DBMS of the present invention has an OMS (Operation & Maintenance Subsystem) 10, which is a sub-system in charge of operation and maintenance of the exchange, and an AIN (Advanced Intelligent Network) function of the exchange. AIP (Advanced Intelligent Processor) 20, which is a processor that performs (SSP), is included.

해당 AIP(20)는 응용 프로그램의 요구를 수신하여 데이터베이스를 검색(Retrieval)하는 UDBE(Unix Database Engine; 21)와, 해당 UDBE(21)와 인터페이스를 위하여 제공되는 관계형 DBMS 라이브러리(Library)(22)와, SSP 기능을 수행하는 응용 프로그램으로 중간 계층에 실현된 데이터베이스 튜플(25)을 이용하는 SSP 모듈 응용 프로그램(23)과, 해당 SSP 모듈 응용 프로그램(23)의 요청에 따라 해당 관계형 DBMS 라이브러리(22)를 이용하여 관계형 DBMS를 억세스하는 데이터베이스 매니저(Database Manager; 24)와, 관계형 DBMS를 통해 억세스된 관계의 튜플 내용을 해당 SSP 모듈 응용 프로그램(23)이 직접 사용할 수 있도록 객체 지향 개념을 가지는 형태로 변경된 튜플 객체인 데이터베이스 튜플(Database Tuple; 25)과, 관계형 DBMS가 가지는 튜플의 애트리뷰트 형태를 객체 지향 개념의 형태로 변경하면서 해당 형태 변경에 따른 사이드 이펙트(Side Effect)를 SSP 모듈 인터페이스가 고려하지 않고 사용할 수 있도록 하는 형태 변환 보전 검출부(Type Conversion Integrity Check; 26)를 구비하여 이루어진다.The AIP 20 receives a request from an application and retrieves a database (Unix Database Engine; UDBE) 21, and a relational DBMS library 22 provided for interfacing with the UDBE 21. And the SSP module application 23 using the database tuple 25 realized in the middle layer as an application program that performs the SSP function, and the relational DBMS library 22 at the request of the corresponding SSP module application 23. Database manager (24) that accesses a relational DBMS using the database, and the tuple contents of relations accessed through the relational DBMS can be directly used by the corresponding SSP module application (23). If you change the attribute type of the tuple object Database Tuple (25) and the tuple of the relational DBMS into an object-oriented concept It is provided with a Type Conversion Integrity Check (26) to enable the Side Effect (Side Effect) according to the shape change without considering the SSP module interface.

여기서, 데이터베이스는 해당 데이터베이스로의 억세스를 제어하는 UDBE(21)와 함께 각 프로세서 상에 지역적으로 존재하며, 해당 지역 데이터베이스(Local Database)와 더불어 상기 OMS(10)에서는 각각의 프로세서에 중복으로 존재하는 중복형(Replication Type) 데이터에 대하여 통합적인 관리를 담당한다.Here, the database exists locally on each processor with the UDBE 21 that controls access to the database, and in the OMS 10 in addition to the local database, the database overlaps with each processor. Responsible for the integrated management of replication type data.

그리고, 상기 DBMS 인터페이스 서비스 패키지가 어떻게 SSP 모듈의 나머지 부분과 관련되는지에 대한 개략적인 구성은 도 2에 도시된 바와 같이 나타낼 수 있는데, DBMS 인터페이스 서비스 패키지 분석 모델을 설명하기 위한 것이다.In addition, a schematic configuration of how the DBMS interface service package is related to the rest of the SSP module may be represented as shown in FIG. 2 to explain the DBMS interface service package analysis model.

데이터베이스에 존재하는 각 관계는 데이터베이스 매니저 객체(24)가 가지고 있으며, 해당 데이터베이스 매니저 객체(24)는 관계형 데이터베이스를 업데이트하거나 억세스하는 메카니즘을 요약(Encapsulate)한다. 또한, 관계의 개별 튜플에 해당하는 객체의 클래스가 있으며, 응용 프로그램 계층의 실제 객체(23)는 응용 프로그램 클래스에 해당되는 튜플 클래스(즉, 데이터베이스 튜플 객체(25))를 사용한다.Each relationship present in a database is held by a database manager object 24, which encapsulates the mechanism for updating or accessing a relational database. In addition, there is a class of objects corresponding to individual tuples of the relationship, and the actual object 23 of the application layer uses a tuple class (ie, a database tuple object 25) corresponding to the application class.

도 2에서 설명한 바와 같이, 본 발명의 실시예에 따른 관계형 DBMS를 위한 객체 지향 프로그램 인터페이스는 크게 3 개의 객체, 즉 OOPL 응용 프로그램 내 응용 객체(23)와, 중간 계층 내의 데이터베이스 매니저 클래스(24)와, 중간 계층 내의 데이터베이스 듀플 클래스(25)로 구성된다.As described in FIG. 2, an object-oriented program interface for a relational DBMS according to an embodiment of the present invention includes three objects, namely, an application object 23 in an OOPL application, a database manager class 24 in an intermediate layer, and an object-oriented program interface. It consists of a database duple class 25 in the middle tier.

첫 번째로, 상기 응용 객체(23)는 DBMS 인터페이스 서비스 패키지 객체의 동작을 사용하여 자신의 튜플 값을 업데이트하는데, 즉 OOPL을 사용하는 응용 프로그램으로 중간 계층에 있는 데이터베이스 매니저(24)가 제공하는 오퍼레이션을 통해 자신의 데이터베이스 관련 데이터를 업데이트한다. 또한, 해당 응용 객체(23)는 DBMS 인터페이스 서비스 패키지를 이용하여 새로운 튜플을 자신의 튜플 값에 근거하여 데이터베이스에 삽입한다.First, the application object 23 updates its tuple value using the operation of the DBMS interface service package object, ie an operation provided by the database manager 24 in the middle tier as an application using OOPL. To update their database-related data. In addition, the application object 23 inserts a new tuple into the database based on its tuple value using the DBMS interface service package.

그리고, 실제 데이터베이스의 동작은 관계형 DBMS에 의해 제공되는 관련 라이브러리 기능들을 사용하여 데이터베이스 매니저 객체(24) 내에서 요약한다.The actual database operation is then summarized within the database manager object 24 using the associated library functions provided by the relational DBMS.

다시 말해서, 상기 응용 객체(23)는 자신의 데이터를 유지하고 시스템 작동 중에 해당 데이터를 재구성할 수 있으며, 해당 동작은 상기 응용 객체(23)가 하나 또는 그 이상의 관계로부터 튜플을 근거하여 스스로를 생성하고 업데이트할 수 있다. 즉, 상기 응용 객체(23)는 OOPL를 이용하여 작성된 응용 프로그램으로, 각 관계에 따라 생성되는 데이터베이스 매니저 클래스(24)에서 제공되는 관계형 DBMS 억세스 기능을 이용하여 자신의 데이터를 유지한다.In other words, the application object 23 may maintain its data and reconstruct the data during system operation, the operation of which is generated by the application object 23 based on tuples from one or more relationships. And update. That is, the application object 23 is an application program created using OOPL and maintains its own data using the relational DBMS access function provided by the database manager class 24 generated according to each relationship.

예를 들어, 도 3과 같이, AIN의 SSP에서 수행되는 트리거 처리(Trigger Processing)를 서비스 및 SCP 그룹(Service Control Point Groups)과의 관계에 근거한 것을 보여 주고 있다.For example, as shown in FIG. 3, trigger processing performed in the SSP of the AIN is shown based on a relationship between a service and SCP groups (Service Control Point Groups).

하나의 서비스 객체는 어떤 속성을 가지며 해당 속성은 서비스 관계에 저장된다. 또한, 해당 서비스 객체는 여러 SCP 그룹과 연관되어 있는데, 해당 관계는 분리된 서비스 SCP 그룹 관계(Service_SCPGroups Relation)에 저장된다.A service object has some attributes and those attributes are stored in service relationships. The service object is also associated with several SCP groups, which are stored in a separate Service SCP Group Relation.

그리고, 해당 서비스 객체를 응용 객체(23)로 로딩(Loading)하는 것은 서비스 관계에서 각 튜플에 대해 서비스 객체를 구성하는 프로세스이다.Loading the corresponding service object into the application object 23 is a process of constructing a service object for each tuple in a service relationship.

두 번째로, 상기 데이터베이스 매니저 클래스(24)는 베이스(Base) 데이터베이스 매니저 클래스로부터 각 관계에 대해 각각 생성되고 해당 관계에서 동작을 제어하도록 하는데, 즉 하나의 클래스로서 관계형 DBMS 상에 각 관계를 표현해 주고 각 관계에 대하여 선택(Select), 인입(Insert), 삭제(Delete), 업데이트 기능을 상기 응용 객체(23)에게 제공한다. 또한, 관계형 DBMS 라이브러리(22)를 이용하여 중간 계층에서 변경된 사항을 상기 응용 객체(23)의 요청에 따라 관계형 DBMS에 업데이트한다.Secondly, the database manager class 24 is generated for each relationship from the base database manager class and controls the operation in that relationship, that is, as a class, expressing each relationship on the relational DBMS. Select, Insert, Delete, and Update functions are provided to the application object 23 for each relationship. In addition, the relational DBMS library 22 is used to update the changes made in the middle layer to the relational DBMS according to the request of the application object 23.

여기서, 상기 선택 기능은 특정 기준(Criteria)에 맞는 튜플 객체를 조회하여 해당 결과를 리턴(Return)하고 해당 기준은 2개 관계의 연결을 요구할 수 있다. 상기 인입 기능은 하나의 튜플을 응용 객체(23)에 기초한 관계 내로 삽입한다. 상기 삭제 기능은 상기 특정 기준에 맞는 관계에서 튜플을 삭제한다. 상기 업데이트 기능은 튜플들의 특정 속성을 상기 특정 기준에 맞는 관계에서 업데이트한다.Here, the selection function may query a tuple object that meets a specific criterion and return a corresponding result, and the criterion may require the connection of two relationships. The pull function inserts a tuple into a relationship based on the application object 23. The delete function deletes tuples in a relationship that meets the specific criteria. The update function updates specific attributes of tuples in a relationship that meets the specific criteria.

세 번째로, 상기 데이터베이스 듀플 클래스(25)은 상기 응용 객체(23)와 데이터베이스 간의 중간 객체를 제공하고 튜플의 속성은 데이터베이스의 튜플을 따르는데, 즉 시스템 시작의 초기화(Initial) 시에 상기 데이터베이스 매니저 객체(24)가 관계형 DBMS로부터 상기 응용 객체(23)에 필요한 관계를 판독하여 응용 객체 메모리 영역에 복사된 객체 지향 형식의 듀플 객체를 제공하는 클래스이다.Third, the database duple class 25 provides an intermediate object between the application object 23 and the database and the attributes of the tuples follow the tuples of the database, i.e. the database manager upon initialization of system startup. The object 24 reads the relation necessary for the application object 23 from the relational DBMS and provides a duplex object in an object-oriented format copied to the application object memory area.

해당 튜플 객체의 각 도메인(Domain)을 판독하거나 설정하는 것은 해당 도메인의 실제 판독/설정 또한 기타 무결성 검사뿐만 아니라 상기 응용 객체(23)와 데이터베이스 간 형태 변환을 의미한다. 해당 형태 변환은 데이터베이스가 정해진 형태, 즉 정수나 문자 형태만을 지원하기 때문에 필요하게 된다.Reading or setting each domain of the corresponding tuple object means shape conversion between the application object 23 and the database as well as the actual reading / setting of the corresponding domain and other integrity checks. This type conversion is necessary because the database supports only fixed types, that is, integer or character types.

그리고, 상기 튜플 클래스(25)의 객체들은 관계에 대해 스스로 감사(Audit)하며, 해당 감사는 데이터를 업데이트하는 경우에 사용된다. OOPL를 사용하는 응용 프로그램은 자신의 데이터가 업데이트되었음을 알리는 신호를 수신받게 되며, 이를 기초로 상기 응용 객체(23)를 업데이트하게 된다. 해당 업데이트한 후에는 데이터베이스에 대해 업데이트한 객체를 감사하여 동일한 업데이트가 각각 응용 객체(23)와 관계형 DBMS에 적용되었는지를 확인하게 되며, 해당 감사에 실패하는 경우는 경보가 장애 관리 패키지에 발생하게 된다.The objects of the tuple class 25 audit themselves for the relationship, and the audit is used when updating data. The application program using OOPL receives a signal indicating that its data has been updated, and updates the application object 23 based on this. After the update, the updated object is audited against the database to confirm that the same update has been applied to the application object 23 and the relational DBMS, respectively. If the audit fails, an alert will be issued to the failure management package. .

도 4는 DBMS 서비스 패키지가 사용된 AIP에서 데이터베이스 계층을 보여 주는데, 해당 구성은 DBMS 인터페이스 서비스 패키지(31)와, 관계형 DBMS 라이브러리(32)와, 다수 개의 메시지 큐(33-1 ~ 33-3)와, UDBE 인터페이스(Unix DBMS Interface; 34)와, 데이터베이스 엔진(Database Engine; 35)와, 공유 메모리인 데이터베이스(36) 및 백업 로그(Backup Log; 37)와, 데이터베이스 백업(Database Backup; 38)과, AIP 하드디스크(39)와, IPC 서버(40)로 이루어져 있다.4 shows a database layer in an AIP in which a DBMS service package is used, the configuration of which is a DBMS interface service package 31, a relational DBMS library 32, and a number of message queues 33-1 to 33-3. And a UDBE interface (Unix DBMS Interface) 34, a database engine 35, a shared memory database 36 and a backup log 37, a database backup 38, And an AIP hard disk 39 and an IPC server 40.

해당 AIP의 DBMS 계층에서 정상 동작 시에 응용 객체는 AIP에서 지역적으로 존재하는 데이터베이스를 억세스하게 된다. 라이브러리 함수호출(Function Call)는 데이터베이스 동작을 데이터베이스 엔진(35)에 전달하기 위하여 유닉스(Unix) 메시지 큐(31-1)를 사용하며, 해당 데이터베이스 엔진(35)은 공유 메모리에 존재하는 데이터베이스(36)에서의 동작을 처리한다.In normal operation in the DBMS layer of the AIP, the application object accesses the database that exists locally in the AIP. The library function call uses the Unix message queue 31-1 to communicate database operations to the database engine 35, which in turn has a database 36 in shared memory. Handles the operation in.

그리고, 데이터베이스 백업(38)은 해당 업데이트가 데이터베이스 백업에 적용되는 것을 확인하며, 해당 백업 복사는 AIP와 OMS 하드 디스크 양측에 존재하게 된다.Then, the database backup 38 confirms that the update is applied to the database backup, and the backup copy exists on both the AIP and OMS hard disks.

또한, 해당 데이터베이스 엔진(35)은 다른 프로세서에서 요구하는 동작도 처리하는데, 이를 위한 데이터베이스 응용 프로토콜은 UDBI 인터페이스(34)에 의해 구현된다.The database engine 35 also handles operations required by other processors, for which database application protocols are implemented by the UDBI interface 34.

본 발명의 관계형 DBMS를 위한 객체 지향 프로그램 인터페이스의 동작을 간략하게 설명하면, 각각의 응용 객체는 초기화 과정에서 데이터베이스 매니저로부터 자신이 필요한 관계를 관계형 DMBS로부터 로드하여 필요한 형식의 듀플 객체로 저장하며, 이렇게 OOPL에서 사용할 수 있도록 저장된 데이터는 응용 수행 중 직접 다양한 형식으로 사용할 수 있게 된다. 또한, 응용 프로그램에서 튜플 객체에 업데이트한 내용은 데이터베이스 매니저에서 제공하는 설비(Facility)를 이용하여 변경된 내용을 관계형 DBMS에 반영해 준다.Briefly describing the operation of the object-oriented program interface for the relational DBMS of the present invention, each application object loads the necessary relationship from the relational DMBS from the database manager during initialization and stores it as a duple object in the required format. Data stored for use in OOPL can be used directly in various formats during application execution. In addition, the updated contents of the tuple object in the application program are reflected in the relational DBMS using the facilities provided by the database manager.

이상과 같이, 본 발명에 의해 관계형 DBMS를 효과적인 랩핑 기법을 이용하여 OOPL 객체 지향 프로그래밍 언어를 사용하는 응용 프로그램이 객체 지향 프로그랭 언어의 특징을 살리면서 관계형 DBMS를 사용하도록 하므로써, 관계형 DBMS를 OOPL 환경에서도 사용 가능케 해 준다.As described above, the relational DBMS is used in the OOPL environment by allowing an application program using an OOPL object-oriented programming language to use a relational DBMS while utilizing the characteristics of the object-oriented programming language. It also makes it available.

Claims (6)

교환기의 운용 및 유지 보수를 담당하는 OMS와;An OMS in charge of operation and maintenance of the exchange; 교환기 AIN 기능을 수행하는 AIP를 포함하여 이루어진 것을 특징으로 하는 관계형 DBMS를 위한 객체 지향 프로그램 인터페이스.An object-oriented program interface for a relational DBMS, comprising an AIP that performs an exchange AIN function. 제1항에 있어서,The method of claim 1, 상기 AIP는 SSP 기능을 수행하는 SSP 모듈 응용 프로그램과;The AIP is an SSP module application program that performs an SSP function; 상기 SSP 모듈 응용 프로그램의 요구에 따라 데이터베이스를 검색하는 UDBE와;A UDBE for searching a database according to a request of the SSP module application program; 상기 UDBE와 인터페이스를 수행하는 관계형 DBMS 라이브러리와;A relational DBMS library that interfaces with the UDBE; 상기 SSP 모듈 응용 프로그램의 요청에 따라 상기 관계형 DBMS 라이브러리를 이용해 관계형 DBMS를 억세스하는 데이터베이스 매니저와;A database manager for accessing a relational DBMS using the relational DBMS library at the request of the SSP module application program; 상기 관계형 DBMS를 통해 억세스된 관계의 튜플 내용을 상기 SSP 모듈 응용 프로그램에서 사용하는 객체 지향 개념의 형태로 변경된 튜플 객체인 데이터베이스 튜플과;A database tuple which is a tuple object changed from a tuple content of a relation accessed through the relational DBMS into an object-oriented concept used in the SSP module application program; 상기 관계형 DBMS가 가지는 튜플의 애트리뷰트 형태를 객체 지향 개념의 형태로 변경하는 형태 변환 보전 검출부를 포함하여 이루어진 것을 특징으로 하는 관계형 DBMS를 위한 객체 지향 프로그램 인터페이스.An object-oriented program interface for a relational DBMS, characterized in that it comprises a shape conversion integrity detection unit for changing the attribute form of the tuple of the relational DBMS to the object-oriented concept. DBMS 인터페이스 서비스 패키지 객체의 동작을 이용해 자신의 튜플 값을 업데이트하며, DBMS 인터페이스 서비스 패키지를 이용해 새로운 튜플을 해당 자신의 튜플 값에 근거로 데이터베이스에 삽입시키는 응용 객체와;An application object that updates its tuple value using an operation of the DBMS interface service package object and inserts a new tuple into the database based on its own tuple value using the DBMS interface service package; 관계형 DBMS 상에 각 관계를 표현해 주고 해당 관계에 대해 선택, 인입, 삭제 및 업데이트의 기능을 상기 응용 객체에게 제공하며, 관계형 DBMS 라이브러리를 이용해 중간 계층의 변경 사항을 상기 응용 객체의 요청에 따라 해당 관계형 DBMS에 업데이트하는 데이터베이스 매니저 클래스와;Represent each relationship on the relational DBMS and provide the application object with the functions of selecting, inserting, deleting, and updating the relation, and using the relational DBMS library to change the middle layer according to the request of the application object. A database manager class for updating the DBMS; 상기 응용 객체와 데이터베이스 간의 중간 객체인 객체 지향 형식의 듀플 객체를 제공하는 데이터베이스 듀플 클래스를 포함하여 이루어진 것을 특징으로 하는 관계형 DBMS를 위한 객체 지향 프로그램 인터페이스.And a database duple class for providing a duplex object of an object-oriented type that is an intermediate object between the application object and the database. 제3항에 있어서,The method of claim 3, 상기 데이터베이스의 동작은 관계형 DBMS에 의해 제공되는 관련 라이브러리 기능들을 사용해 상기 데이터베이스 매니저 객체 내에서 요약하는 것을 특징으로 하는 관계형 DBMS를 위한 객체 지향 프로그램 인터페이스.Operation of the database is summarized within the database manager object using the associated library functions provided by the relational DBMS. 제3항에 있어서,The method of claim 3, 상기 선택 기능은 특정 기준에 맞는 튜플 객체를 조회하여 해당 결과를 리턴하고 해당 기준은 2 개 관계의 연결을 요구하는 것이며, 상기 인입 기능은 하나의 튜플을 상기 응용 객체(23)에 기초한 관계 내로 삽입하는 것이며, 상기 삭제 기능은 상기 특정 기준에 맞는 관계에서 튜플을 삭제하는 것이며, 상기 업데이트 기능은 튜플들의 특정 속성을 상기 특정 기준에 맞는 관계에서 업데이트하는 것을 특징으로 하는 관계형 DBMS를 위한 객체 지향 프로그램 인터페이스.The selection function retrieves a tuple object meeting a specific criterion and returns a corresponding result, and the criterion requires the connection of two relationships, and the retrieval function inserts one tuple into a relationship based on the application object 23. Wherein the delete function deletes tuples in a relationship meeting the specific criteria, and the update function updates specific attributes of tuples in a relationship matching the specific criteria. . 제3항에 있어서,The method of claim 3, 상기 튜플 객체의 각 도메인을 판독하거나 설정하는 것은 해당 도메인의 실제 판독/설정 또한 기타 무결성 검사뿐만 아니라 상기 응용 객체와 데이터베이스 간 형태 변환을 나타내며, 상기 데이터베이스 튜플 클래스의 객체들은 관계에 대해 스스로 감사하고 해당 감사는 데이터를 업데이트하는 경우에 사용하는 것을 특징으로 하는 관계형 DBMS를 위한 객체 지향 프로그램 인터페이스.Reading or setting each domain of the tuple object represents the type conversion between the application object and the database, as well as the actual read / set of that domain and other integrity checks, and objects of the database tuple class self audit the relationship and Auditing is an object-oriented program interface for a relational DBMS, characterized in that for updating data.
KR1019980057908A 1998-12-24 1998-12-24 Object-Oriented Program Interface for Relational Devices KR100305912B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019980057908A KR100305912B1 (en) 1998-12-24 1998-12-24 Object-Oriented Program Interface for Relational Devices

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019980057908A KR100305912B1 (en) 1998-12-24 1998-12-24 Object-Oriented Program Interface for Relational Devices

Publications (2)

Publication Number Publication Date
KR20000041891A true KR20000041891A (en) 2000-07-15
KR100305912B1 KR100305912B1 (en) 2001-11-30

Family

ID=19565133

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980057908A KR100305912B1 (en) 1998-12-24 1998-12-24 Object-Oriented Program Interface for Relational Devices

Country Status (1)

Country Link
KR (1) KR100305912B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100331470B1 (en) * 1999-11-05 2002-04-09 서평원 Apparatus and Method for Guaranteeing Integrity of Database in the Switching System
KR100426620B1 (en) * 2000-12-26 2004-04-13 한국전자통신연구원 Method of an class instance updating with OID in the main memory resident, object-relational DBMS
KR100520301B1 (en) * 2001-10-13 2005-10-13 한국전자통신연구원 Object-relational database management system and method for deleting class instance for the same

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100331470B1 (en) * 1999-11-05 2002-04-09 서평원 Apparatus and Method for Guaranteeing Integrity of Database in the Switching System
KR100426620B1 (en) * 2000-12-26 2004-04-13 한국전자통신연구원 Method of an class instance updating with OID in the main memory resident, object-relational DBMS
KR100520301B1 (en) * 2001-10-13 2005-10-13 한국전자통신연구원 Object-relational database management system and method for deleting class instance for the same

Also Published As

Publication number Publication date
KR100305912B1 (en) 2001-11-30

Similar Documents

Publication Publication Date Title
US5519855A (en) Summary catalogs
CN105786955B (en) Data duplication in data base management system
JP3848085B2 (en) High-speed storage resident processing method and processing system for transaction data
US7467163B1 (en) System and method to manipulate large objects on enterprise server data management system
CN100445998C (en) Transactional file system
CA1238983A (en) Method for refreshing multicolumn tables in a relational data base using minimal information
JP5833406B2 (en) Data management architecture related to generic data items using references
Turner et al. A DBMS for large statistical databases
US20020073069A1 (en) Database processing method and apparatus using handle
US20040015486A1 (en) System and method for storing and retrieving data
US7617206B1 (en) Method for analyzing status of specialized tank files which store and handle large objects
CN108595664A (en) A kind of agricultural data monitoring method under hadoop environment
US7506000B2 (en) Method and system for programming disconnected data
Stocker et al. Self-organising data management systems
KR20000041891A (en) Object-oriented program interface for relational dbms
CN105989049A (en) Data middle layer realizing method and system
US20130006921A1 (en) Method For Transferring Data into Database Systems
McHugh et al. Integrating dynamically-fetched external information into a DBMS for semistructured data
JP3769775B2 (en) Distributed link information maintenance method
Eze et al. Database system concepts, implementations and organizations-a detailed survey
CN111913973A (en) Data synchronization method, device and storage medium
Biliris et al. Object storage management architectures
JP2644535B2 (en) Network file search processing system
JP4825504B2 (en) Data registration / retrieval system and data registration / retrieval method
Domdouzis et al. Physical Storage and Distribution

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20050628

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee