KR100303336B1 - System and method of database multi-tasking - Google Patents

System and method of database multi-tasking Download PDF

Info

Publication number
KR100303336B1
KR100303336B1 KR1019970081491A KR19970081491A KR100303336B1 KR 100303336 B1 KR100303336 B1 KR 100303336B1 KR 1019970081491 A KR1019970081491 A KR 1019970081491A KR 19970081491 A KR19970081491 A KR 19970081491A KR 100303336 B1 KR100303336 B1 KR 100303336B1
Authority
KR
South Korea
Prior art keywords
database
database access
interface server
access
multitasking
Prior art date
Application number
KR1019970081491A
Other languages
Korean (ko)
Other versions
KR19990061235A (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 KR1019970081491A priority Critical patent/KR100303336B1/en
Publication of KR19990061235A publication Critical patent/KR19990061235A/en
Application granted granted Critical
Publication of KR100303336B1 publication Critical patent/KR100303336B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]

Abstract

PURPOSE: A system and method for a multitasking using a database is provided to enable a plurality of clients to process a database promptly regardless of a contract condition using a client-server model based on a TCP/IP(transmission control protocol/Internet protocol) when a plurality of application programs access the database. CONSTITUTION: A database access requesting process(100) requests an access of a database. A connection with a database access interface server(202) is requested through a TCP/IP which is a data communication link. The database access interface server(202) copies itself and creates new database interface server(202). The database interface server is connected to new database interface server and waits a request from another database access process. New created database access interface server transmits a message received from the database access requesting process(100) to an internal IPC. The database access process receives contents with respect to a database access requested from the internal IPC. The database access process processes the corresponding message. The result with respect to the database access is transmitted in the reversed order.

Description

데이터베이스를 이용하는 멀티타스킹 시스템 및 방법{SYSTEM AND METHOD OF DATABASE MULTI-TASKING}Multitasking system and method using a database {SYSTEM AND METHOD OF DATABASE MULTI-TASKING}

본 발명은 데이터베이스를 이용하는 멀티타스킹(Multi-Tasking) 시스템 및 방법에 관한 것으로서, 특히 수정된 데이터베이스 자원을 사용하는 응용 프로그램에서 데이터베이스의 자원을 최대한 공유하여 네트워크 및 데이터베이스의 자원에 제한받지 않고, 동시에 데이터베이스를 많은 응용 프로그램이 액세스(Access) 가능하도록 하는 시스템 및 방법에 관한 것이다.The present invention relates to a multi-tasking system and method using a database. In particular, an application using a modified database resource shares the resources of a database as much as possible and is not limited to the resources of the network and the database. A system and method for making a database accessible to many applications.

도 1 은 클라이언트-서버 모델(Client-Server Model)의 데이터베이스 처리방법에 대한 블록도이다.1 is a block diagram of a database processing method of a client-server model.

일반적으로, 클라이언트는 크게 내부의(Internal) 클라이언트와 외부의(External) 클라이언트로 구성되어 있다.In general, a client is largely composed of an internal client and an external client.

내부의 클라이언트는 데이터베이스 서버 컴퓨터에서 동작하는 데이터베이스 액세스 응용 프로세스를 의미한다.Internal client refers to a database access application process running on a database server computer.

외부의 클라이언트는 데이터베이스 서버 컴퓨터와 다른 컴퓨터에서 동작하는 데이터베이스 액세스 응용 프로세서이며, 이때는 데이터베이스 서버 컴퓨터와 연결하기 위하여 SQL*NET이라는 클라이언트-서버 관리자(Client-Server Manager) 프로세스가 필요하다.The external client is a database access application processor running on a different computer than the database server computer. In this case, a client-server manager process called SQL * NET is required to connect to the database server computer.

이 SQL*NET에서는 데이터베이스를 액세스가 필요한 각 응용 프로그램에서 데이터베이스 엔진(Engine)에 요청하여, 데이터베이스를 액세스한 후, 해당 작업이 종료 후 데이터베이스 엔진과 연결을 끝는 절차를 수행한다.In SQL * NET, the database engine is requested from each application that needs to access the database. After accessing the database, the procedure terminates the connection with the database engine.

내부의 클라이언트는 클라이언트-서버 관리자용 SQL*NET 프로세스가 필요없으나, 역시 데이터베이스 엔진에 요청하여, 데이터베이스를 액세스한 후, 해당 작업이 종료 후 데이터베이스 엔진과 연결을 끝는 절차를 수행한다.The internal client does not need the SQL * NET process for client-server administrators, but it also makes a request to the database engine to access the database and then terminate the connection with the database engine.

이때 데이터베이스에서는 제한된 자원 즉, 사용자의 수만큼 만을 연결시켜 주며, 초과된 사용자에 대하여는 오류 메시지를 전달하게 된다.In this case, the database connects only limited resources, that is, the number of users, and delivers an error message to the excess users.

이 때문에 데이터베이스를 액세스하는 각 응용 프로그램에서는 다른 사용자 즉, 다른 응용 프로그램이 종료시까지 대기하여야 한다. 또한, 데이터베이스 서버 컴퓨터의 엔진과 연결(Connection) 및 분리(Disconnection)에 필요한 시간에 따른 지연을 감수해야 한다.For this reason, each application that accesses the database must wait for another user, that is, another application, to terminate. In addition, you must take the time-delay required to connect and disconnect from the engine of the database server computer.

만약 데이터베이스 엔진과 연결 후 분리를 하지 않을 경우에는 데이터베이스 응용 어플리케이션에 해당하는 하드웨어 자원(Resource) 즉, 사용자 수를 사용하여야 하므로, 하드웨어 자원 및 데이터베이스 자원의 낭비 및 데이터베이스 액세스 어플리케이션 프로세스의 처리속도 감소를 초래하고, 외부의 클라이언트의 경우 데이터베이스 클라이언트-서버 관리자용 SQL*NET 패키지(Package)가 항상 필요하다는 문제점이 발생한다.If it is not separated after connecting with the database engine, hardware resources (e.g., the number of users) corresponding to the database application should be used, which causes waste of hardware resources and database resources and decreases the processing speed of the database access application process. In the case of external clients, the SQL * NET package for the database client-server manager is always needed.

따라서, 본 발명은 상기된 바와 같은 문제점을 해결하기 위하여 창안된 것으로, 데이터베이스의 제한된 자원 즉, 사용자 수를 최소화하고 다수의 응용 프로그램이 데이터베이스를 액세스시, 데이터베이스의 자원에 관계없이 최대한 빨리 처리가능토록 하기위해 TCP/IP(Transmission Control Protocol/Internet Protocol)를 기본으로하는 클라이언트-서버 모델 기법을 이용하여 내부의 클라이언트와 외부의 클라이언트에 대한 계약조건을 주지않고 다수의 클라이언트가 데이터베이스 처리 요구시, 즉각 처리가능하도록 하는 데이터베이스를 사용하는 멀티타스킹 시스템 및 방법을 제공하는 것을 목적으로 한다.Accordingly, the present invention was devised to solve the above-described problems, which minimizes the limited resources of the database, that is, the number of users, and enables a large number of applications to process the database as soon as possible regardless of the resources of the database. By using the client-server model technique based on Transmission Control Protocol / Internet Protocol (TCP / IP), multiple clients immediately process the database without requesting contracts for internal and external clients. It is an object of the present invention to provide a multitasking system and method using a database that makes it possible.

도 1 은 본 발명에 적용되는 클라이언트-서버 모델의 데이터베이스 처리방법에 대한 블록도.1 is a block diagram of a database processing method of a client-server model according to the present invention.

도 2 는 본 발명에 따른 데이터베이스 멀티타스킹에 대한 구성도.2 is a block diagram of a database multitasking in accordance with the present invention.

도 3 은 데이터베이스 액세스 요구 프로세스에서 데이터베이스 인터페이스 프로세스로 전달하는 메시지 포맷(Format)을 나타낸 도면.3 illustrates a message format passed from a database access request process to a database interface process.

도 4 는 데이터 베이스 인터페이스 서버에서 IPC로 전달하는 메시지 포맷을 나타낸 도면.4 is a diagram illustrating a message format delivered from an database interface server to an IPC.

도 5 는 데이터베이스 액세스 프로세스에서 처리한 결과를 내부 IPC로 전달하는 메시지 포맷을 나타낸 도면.5 is a diagram illustrating a message format for delivering a result processed by a database access process to an internal IPC.

<도면의 주요부분에 대한 부호의 설명><Description of the symbols for the main parts of the drawings>

100 : 데이터베이스 액세스 요구 프로세스100: database access request process

102 : TCP/IP102: TCP / IP

202 : 데이터베이스 인터페이스 서버 프로세스202: Database Interface Server Process

204 : IPC204: IPC

206 : 데이터베이스 액세스 프로세스206: Database Access Process

208 : 데이터베이스 엔진208: Database Engine

상기와 같은 목적을 달성하기 위하여 창안된 본 발명에 따른 데이터베이스를 사용하는 멀티타스킹 시스템의 바람직한 일 실시예는,One preferred embodiment of a multi-tasking system using a database according to the present invention created to achieve the above object is,

데이터베이스 액세스 요구 프로세스;Database access request process;

데이터베이스 인터페이스 서버 프로세스; 및A database interface server process; And

데이터베이스 액세스 프로세스를 포함하여 이루어진다.This includes the database access process.

본 발명에 있어서, 상기 데이터베이스 액세스 요구 프로세스와 상기 데이터베이스 인터페이스 서버는 TCP/IP 102로 연결되는 것이 바람직하며,In the present invention, the database access request process and the database interface server is preferably connected to TCP / IP 102,

상기 데이터베이스 인터페이스 서버와 상기 데이터베이스 액세스 프로세스는 내부 IPC 204를 통하여 상호 데이터를 주고 받는 것이 바람직하다.Preferably, the database interface server and the database access process exchange data with each other through an internal IPC 204.

상기한 다른 목적을 달성하기 위한 본 발명에 따른 데이터베이스의 멀티타스킹 방법의 바람직한 일 실시예는, 같은 데이터베이스 자원을 이용하여 여러 응용 프로세서가 동시에 같은 일을 처리하는 멀티타스킹 시스템에서,One preferred embodiment of a multitasking method of a database according to the present invention for achieving the above object is, in a multitasking system in which several application processors simultaneously process the same work using the same database resources,

데이터베이스 액세스 요구 프로세스가 데이터베이스의 액세스 요구하는 과정;The database access request process requesting access to the database;

데이터 통신 링크인 TCP/IP를 통해 데이터베이스 액세스 인터페이스 서버와 연결을 요구하는 과정;Requesting a connection with a database access interface server via TCP / IP, which is a data communication link;

상기 데이터베이스 액세스 인터페이스 서버는 자기자신을 복제하여 새로운 데이터베이스 인터페이스 서버를 생성하는 과정;The database access interface server replicating itself to create a new database interface server;

상기 데이터베이스 인터페이스 서버는 새로 생성된 데이터베이스 인터페이스 서버와 연결시켜주고 자신은 또다른 데이터베이스 액세스 프로세스로부터 요구를 기다리는 과정;The database interface server connecting with the newly created database interface server and waiting for a request from another database access process;

상기 새로 생성된 데이터베이스 액세스 인터페이스 서버는 데이터베이스 액세스 요구 프로세스에서 전송되어온 메시지를 내부 IPC로 전달하는 과정;The newly created database access interface server transferring a message transmitted in a database access request process to an internal IPC;

데이터베이스 액세스 프로세스는 내부 IPC로부터 요청된 데이터베이스 액세스에 대한 내용을 전달받는 과정;The database access process may include receiving contents of a requested database access from an internal IPC;

상기 데이터베이스 액세스 프로세스가 해당 메시지에 대한 처리를 하는 과정; 및The database access process processing the message; And

데이터베이스 액세스에 대한 결과를 역순으로 전달하는 과정을 포함한다.This involves passing the results of database access in reverse order.

본 발명에 있어서, 상기 TCP/IP를 통해 데이터베이스 액세스 인터페이스 서버와 연결을 요구하는 과정에서 데이터베이스 액세스 인터페이스 서버는 시스템의 자원 즉, TCP/IP 연결 자원에 제한 받지 않는 범위이지를 검사하는 것이 바람직하며,In the present invention, the database access interface server in the process of requesting a connection with the database access interface server through the TCP / IP, it is preferable to check whether the range of the system, that is, not limited to the TCP / IP connection resources,

상기 데이터베이스 인터페이스 서버가 자기자신을 복제하여 새로운 데이터베이스 인터페이스 서버를 생성하는 과정에서 수백개 혹은 그 이상의 데이터베이스 액세스 요구 프로세스로부터 데이터베이스 처리요구를 동시에 처리할 수 있도록, 데이터베이스 인터페이스 서버가 수백개 혹은 그 이상(시스템 튜닝-에이블 파리미터)으로 생성이 가능한 것이 바람직하며,In the process of replicating itself to create a new database interface server, hundreds or more database interface servers may be used to simultaneously process database processing requests from hundreds or more database access request processes. Tuning-enabled parameters), preferably

상기 데이터베이스 액세스 프로세스는 데이터베이스 액세스 요구 프로세스에서 요구하는 모든 데이터베이스에 대한 모든 처리방법이 포함되는 것이 바람직하며,Preferably, the database access process includes all processing methods for all databases required by the database access request process.

상기 데이터베이스 액세스 프로세스는 2개 이상으로 구성되는 것이 바람직하며,Preferably, the database access process consists of two or more,

상기 데이터베이스 액세스 프로세스는 평상시 내부 IPC에 데이터베이스 요구에 대한 요구가 있는지를 항상 모니터링하여, 여러개의 데이터베이스 액세스 프로세스중 먼저 데이터베이스 액세스 요구 메시지를 받은 데이터베이스 액세스 프로세스가 해당 메시지에 대한 처리를 하도록 하는 것이 바람직하다.It is preferable that the database access process always monitors whether there is a request for a database request in the internal IPC, so that the database access process, which has received the database access request message first among several database access processes, processes the message.

상기한 목적을 달성하기 위한 본 발명에 따른 데이터베이스를 이용하는 멀티타스킹 방법을 위한 메시지 포맷 방법의 바람직한 일 실시예는, 같은 데이터베이스 자원을 이용하여 여러 응용 프로세서가 동시에 같은 일을 처리하는 멀티타스킹 시스템에서, 데이터베이스 액세스 요구 프로세스에서 데이터베이스 인터페이스 프로세스로 전달하는 메시지 포맷은,A preferred embodiment of the message format method for a multitasking method using a database according to the present invention for achieving the above object is a multitasking system in which several application processors simultaneously process the same work using the same database resources. In the message format passed from the database access request process to the database interface process,

블록의 크기에 대한 정보와 데이터베이스 액세스 프로세스에서 처리해야할 작업의 종류들에 대한 정보등을 포함하는 옵코드 바이트를 생성하는 과정; 및Generating an opcode byte including information about a block size and information about types of operations to be processed in a database access process; And

옵코드 다음은 데이터베이스 액세스 프로세스에서 처리하기 위한 데이터 바이트들을 생성하는 과정을 포함한다.Opcodes Next includes generating data bytes for processing in the database access process.

상기한 목적을 달성하기 위한 본 발명에 따른 데이터베이스를 이용하는 멀티타스킹 방법을 위한 메시지 포맷 방법의 바람직한 다른 실시예는, 같은 데이터베이스 자원을 이용하여 여러 응용 프로세서가 동시에 같은 일을 처리하는 멀티타스킹 시스템에서, 데이터 베이스 인터페이스 서버에서 IPC로 전달하는 메시지 포맷은,Another preferred embodiment of a message formatting method for a multitasking method using a database according to the present invention for achieving the above object is a multitasking system in which several application processors simultaneously perform the same work using the same database resources. In the message format delivered from the database interface server to the IPC,

다수의 데이터베이스 액세스 프로세스중 특정 프로세스를 선택할 필요가 없기 때문에 값 1로 고정되어 있는 목적지 바이트를 생성하는 과정;Generating a destination byte fixed to a value of 1 because there is no need to select a particular process among a plurality of database access processes;

데이터베이스 인터페이스 서버 프로세스에 대한 PID이며 데이터베이스 액세스 프로세스가 데이터베이스 액세스 후 그 결과를 전달해야 할 주소를 나타내는 소스 바이트를 생성하는 과정;Generating a source byte indicating a PID for the database interface server process and the address to which the database access process should deliver the result after database access;

데이터베이스 액세스 요구 프로세스에서 전달받은 옵코드를 그대로 우회하는 옵코드 바이트를 생성하는 과정; 및Generating an opcode byte that bypasses the opcode received from the database access request process; And

데이터베이스 액세스 요구 프로세스에서 전달받은 데이터 바이트를 생성하는 과정을 포함한다.Generating the data bytes received by the database access request process.

상기한 목적을 달성하기 위한 본 발명에 따른 데이터베이스를 이용하는 멀티타스킹 방법을 위한 메시지 포맷 방법의 바람직한 또 다른 실시예는,Another preferred embodiment of the message format method for a multitasking method using a database according to the present invention for achieving the above object,

같은 데이터베이스 자원을 이용하여 여러 응용 프로세서가 동시에 같은 일을 처리하는 멀티타스킹 시스템에서, 데이터베이스 액세스 프로세스에서 처리한 결과를 내부 IPC로 전달하는 메시지 포맷은,In a multitasking system where multiple application processors use the same database resources to do the same thing at the same time, the message format that delivers the results of the database access process to the internal IPC is

데이터베이스 액세스 요구한 데이터베이스 인터페이스 서버의 PID가 수록되는 목적지 바이트를 생성하는 과정;Generating a destination byte in which the PID of the database interface server requesting database access is recorded;

메시지의 길이, 데이터베이스 액세스에 대한 결과, 프레임 타입(연결, 끝) 등의 정보가 수록된 옵코드 바이트를 생성하는 과정; 및Generating an opcode byte containing information such as a length of a message, a result of a database access, and a frame type (connection, end); And

데이터 바이트들을 생성하는 과정을 포함한다.Generating the data bytes.

이하, 첨부한 도면을 참조하여 본 발명의 구성 및 동작원리에 대하여 상세히 설명하면 다음과 같다.Hereinafter, the configuration and operation principle of the present invention with reference to the accompanying drawings in detail as follows.

도 2 는 본 발명에 대한 데이터베이스 멀티타스킹에 대한 구성도이다.2 is a block diagram of database multitasking according to the present invention.

데이터베이스 멀티타스킹은 데이터베이스 액세스 요구 프로세스(Access Request Process) 100, 데이터베이스 인터페이스 서버 프로세스(Interface Server Process) 202 그리고, 데이터베이스 액세스 프로세스(Access Process) 206로 구성되어 있다.Database multitasking includes a database access request process 100, a database interface server process 202, and a database access process 206.

데이터베이스 액세스 요구 프로세스와 데이터베이스 인터페이스 서버는 데이터 통신 링크인 TCP/IP 102로 연결되어 있으며, 데이터베이스 인터페이스 서버와 데이터베이스 액세스 프로세스는 내부 IPC(Inter Process Communication) 204를 통하여 상호 데이터를 주고 받는다.The database access request process and the database interface server are connected by TCP / IP 102, which is a data communication link, and the database interface server and the database access process exchange data with each other through an internal inter process communication (IPC) 204.

데이터베이스 액세스 요구 프로세스가 데이터베이스의 액세스 요구를 하게 되면, 데이터 통신 링크(Communication Link)인 102를 통해 데이터베이스 액세스 인터페이스 서버와 연결을 요구한다. 이때 데이터베이스 액세스 인터페이스 서버는 시스템의 자원 즉, TCP/IP 연결 자원(Connection Resource)에 제한 받지 않는 범위이지를 검사한다.When the database access request process makes an access request for a database, it requests a connection with the database access interface server through 102, which is a data communication link. At this time, the database access interface server checks whether it is not limited to the system resources, that is, the TCP / IP connection resource.

그리고, 자기자신을 복제하여 새로운 데이터베이스 인터페이스 서버를 생성하게 되는데, 이 데이터베이스 인터페이스 서버는 본 발명의 주요 부분의 하나이며, 수백개 혹은 그 이상(시스템 튜닝-에이블 파리미터(System Tunning-Able Parameter)) 생성이 가능하다. 이것은 수백개 혹은 그 이상의 데이터베이스 액세스 요구 프로세스로부터 데이터베이스 처리요구를 동시에 처리할 수 있음을 의미한다.Then, he creates a new database interface server by duplicating himself, which is one of the main parts of the present invention, and generates hundreds or more (System Tunning-Able Parameter). This is possible. This means that database processing requests from hundreds or more database access request processes can be processed simultaneously.

이 데이터베이스 인터페이스 서버는 새로 생성된 데이터베이스 인터페이스 서버와 연결시켜주고 자신은 또다른 데이터베이스 액세스 프로세스로부터 요구를 기다리게 된다.This database interface server connects to the newly created database interface server and waits for requests from another database access process.

새로 생성된 데이터베이스 액세스 인터페이스 서버는 데이터베이스 액세스 요구에서 전송되어온 메시지를 내부 IPC로 전달하게 된다.The newly created database access interface server will forward the message sent in the database access request to the internal IPC.

데이터베이스 액세스 프로세스는 내부 IPC로부터 요청된 데이터베이스 액세스에 대한 내용을 전달받고, 데이터베이스 액세스에 대한 결과를 역순으로 전달하게 된다.The database access process receives the contents of the requested database access from the internal IPC and delivers the results of the database access in reverse order.

데이터베이스 액세스 프로세스는 본 발명에 대한 가장 주요한 부분으로, 데이터베이스 액세스 요구 프로세스에서 요구하는 모든 데이터베이스 처리방법이 포함되어 있으며, 이 데이터베이스 액세스 프로세스는 2개 이상으로 구성되어 있다.The database access process is the most important part of the present invention, and includes all the database processing methods required by the database access request process, and this database access process is composed of two or more.

상기 데이터베이스 액세스 프로세스는 평상시 내부 IPC에 데이터베이스 요구에 대한 요구가 있는지 항상 모니터링하며, 여러개의 데이터베이스 액세스 프로세스중 먼저 데이터베이스 액세스 요구 메시지를 받은 데이터베이스 액세스 프로세스가 해당 메시지에 대한 처리를 하게 된다.The database access process always monitors whether there is a request for a database request in an internal IPC, and a database access process that receives a database access request message among the plurality of database access processes processes the message.

다음은 본 발명에 대한 각 부분에 대한 상세한 설명이다.The following is a detailed description of each part of the present invention.

데이터베이스 액세스 요구 프로세스에서 데이터베이스의 내용을 조회시, 이 데이터베이스 액세스 요구 프로세스에서는 조회할 내용의 범위, 조건 등을 전송하고, 그 결과를 얻는다.When querying the contents of the database in the database access request process, the database access request process sends the range, condition, etc. of the contents to be queried, and obtains the result.

도 3 은 데이터베이스 액세스 요구 프로세스에서 데이터베이스 인터페이스 프로세스로 전달하는 메시지 포맷(Format)을 나타낸 것이다.3 illustrates a message format delivered from a database access request process to a database interface process.

블록 300에 정의된 첫 번재 바이트는 옵코드 바이트(Opcode Byte) 302이다.The first byte defined in block 300 is Opcode Byte 302.

이 옵코드는 블록의 크기(Size)에 대한 정보와 데이터베이스 액세스 프로세스에서 처리해야할 작업의 종류들에 대한 정보등을 포함하고 있다.This opcode contains information about the size of the block and the types of work to be done in the database access process.

옵코드 다음은 데이터베이스 액세스 프로세스에서 처리하기 위한 데이터 바이트(Data Byte)들이다.The following are the data bytes for processing in the database access process.

데이터베이스 액세스 요구 프로세스로부터 받은 메시지는 데이터베이스 인터페이스 서버 프로세스에서 데이터베이스 액세스 프로세스와 통신하기 위한 포맷으로 변환된다.The message received from the database access request process is converted into a format for communicating with the database access process in the database interface server process.

도 4 는 데이터 베이스 인터페이스 서버에서 IPC로 전달하는 메시지 포맷을 나타낸 것이다.4 shows a message format delivered from the database interface server to the IPC.

블록 400에 정의된 첫 번째 바이트는 목적지 바이트(Destination Byte) 402이다. 이 값은 1로 고정되어 있는데, 이것은 다수의 데이터베이스 액세스 프로세스중 특정 프로세스를 선택할 필요가 없기 때문이다.The first byte defined in block 400 is the destination byte 402. This value is fixed to 1 because you do not need to select a particular process among multiple database access processes.

다음은 소스 바이트(Source Byte)이다. 이것은 데이터베이스 인터페이스 서버 프로세스에 대한 PID(Process Identy)이며, 데이터베이스 액세스 프로세스가 데이터베이스 액세스 후 그 결과를 전달해야 할 주소(Address)를 나타낸다.The following is the source byte. This is the Process Identy (PID) for the database interface server process, and represents the address to which the database access process should deliver the result after accessing the database.

다음은 옵코드 바이트이다. 여기에는 데이터베이스 액세스 요구 프로세스에서 전달받은 옵 코드를 그대로 우회(Bypass)한다.The following is an opcode byte. This bypasses the opcode received from the database access request process.

다음은 데이터베이스 액세스 요구 프로세스에서 전달받은 데이터이다. 블록 400과 같이 정의된 메시지로 내부 IPC로 메시지를 전송하고 그 결과를 얻기위해 대기한다.The following data is received from the database access request process. Send the message to the internal IPC with the message defined as block 400 and wait to get the result.

데이터베이스 액세스 프로세스에서는 앞에서 설명한 바와 같이 다수의 데이터베이스 액세스 프로세스가 이 내부 IPC로부터 데이터베이스 액세스 요구가 있는지를 항상 데이터베이스 연결한 상태에서 대기하고, 데이터베이스 액세스 요구 메시지를 얻으면 먼저 해독(Read)한 데이터베이스 액세스 프로세스가 처리하게 된다.In the database access process, as previously described, many database access processes always wait for a database connection request from this internal IPC for database access requests, and when a database access request message is obtained, the first database access process reads it. Done.

도 5 는 데이터베이스 액세스 프로세스에서 처리한 결과를 내부 IPC로 전달하는 메시지 포맷을 나타낸 것이다.5 illustrates a message format for delivering a result processed by a database access process to an internal IPC.

블록 500에 정의된 첫 번째 바이트는 목적지 바이트 502이며, 데이터베이스액세스 요구한 데이터베이스 인터페이스 서버의 PID가 수록된다.The first byte defined in block 500 is the destination byte 502, which contains the PID of the database interface server that requested database access.

다음은 옵코드 바이트 504이며, 이 옵코드에는 메시지의 길이(Length), 데이터베이스 액세스에 대한 결과, 프레임 타입(Frame Type)의 연결(Continue), 끝(End) 등의 정보가 수록된다. 다음은 데이터 바이트들이다.Next is the opcode byte 504, which contains information such as the length of the message, the result of the database access, the continuation of the frame type, and the end. The following are the data bytes.

위와 같은 데이터 포맷으로 내부 IPC로 전달하게 되면, 해당 목적지 바이트를 가진 데이터베이스 인터페이스 서버가 이 메시지를 읽고 데이터베이스 액세스 요구 프로세스로 전달한다.When passed to the internal IPC in the above data format, the database interface server with the corresponding destination byte reads this message and passes it to the database access request process.

전달이 완료되면 해당 데이터베이스 인터페이스 서버 프로세스는 종료하게 된다.When the transfer is complete, the database interface server process terminates.

상기와 같이 동작하는 본 발명은, 외부의 클라이언트 경우 데이터베이스 서버와 연결역활을 수행하는 데이터베이스 SQL*NET이 필요가 없어지게 되며, 데이터베이스 자원에 관계없이 데이터베이스 인터페이스(Interface) 서버의 수량만큼 데이터베이스 액세스가 가능하게 된다.In the present invention operating as described above, the external client does not need a database SQL * NET that performs a connection role with the database server, the database can be accessed as much as the number of database interface server regardless of database resources Done.

또한, 다중 작업 처리가 가능하므로 데이터베이스 처리 속도가 향상되고 동시에 많은 데이터베이스 처리가 가능하다는 효과가 있다.In addition, multi-task processing allows for faster database processing and more database processing.

Claims (9)

같은 데이터베이스 자원을 이용하여 여러 응용 프로세서가 동시에 같은 일을 처리하는 멀티타스킹 시스템에서,In a multitasking system where multiple application processors use the same database resources to do the same thing at the same time, 데이터베이스 액세스 요구 프로세스가 데이터베이스의 액세스 요구하는 과정;The database access request process requesting access to the database; 데이터 통신 링크인 TCP/IP를 통해 데이터베이스 액세스 인터페이스 서버와 연결을 요구하는 과정;Requesting a connection with a database access interface server via TCP / IP, which is a data communication link; 상기 데이터베이스 액세스 인터페이스 서버는 자기자신을 복제하여 새로운 데이터베이스 인터페이스 서버를 생성하는 과정;The database access interface server replicating itself to create a new database interface server; 상기 데이터베이스 인터페이스 서버는 새로 생성된 데이터베이스 인터페이스 서버와 연결시켜주고 자신은 또다른 데이터베이스 액세스 프로세스로부터 요구를 기다리는 과정;The database interface server connecting with the newly created database interface server and waiting for a request from another database access process; 상기 새로 생성된 데이터베이스 액세스 인터페이스 서버는 데이터베이스 액세스 요구 프로세스에서 전송되어온 메시지를 내부 IPC로 전달하는 과정;The newly created database access interface server transferring a message transmitted in a database access request process to an internal IPC; 데이터베이스 액세스 프로세스는 내부 IPC로부터 요청된 데이터베이스 액세스에 대한 내용을 전달받는 과정;The database access process may include receiving contents of a requested database access from an internal IPC; 상기 데이터베이스 액세스 프로세스가 해당 메시지에 대한 처리를 하는 과정; 및The database access process processing the message; And 데이터베이스 액세스에 대한 결과를 역순으로 전달하는 과정을 포함하는, 데이터베이스를 이용하는 멀티타스킹 방법.A method of multitasking using a database, the method comprising passing the results of database access in reverse order. 제1항에 있어서, 상기 TCP/IP를 통해 데이터베이스 액세스 인터페이스 서버와 연결을 요구하는 과정에서 데이터베이스 액세스 인터페이스 서버는 시스템의 자원 즉, TCP/IP 연결 자원에 제한 받지 않는 범위이지를 검사하는, 데이터베이스를 이용하는 멀티타스킹 방법.The database access interface server of claim 1, wherein in the process of requesting a connection with the database access interface server through the TCP / IP, the database access interface server checks whether the database is not limited to resources of the system, that is, TCP / IP connection resources. Multitasking method used. 제1항에 있어서, 상기 데이터베이스 인터페이스 서버가 자기자신을 복제하여 새로운 데이터베이스 인터페이스 서버를 생성하는 과정에서 수백개 혹은 그 이상의 데이터베이스 액세스 요구 프로세스로부터 데이터베이스 처리요구를 동시에 처리할 수 있도록, 데이터베이스 인터페이스 서버가 수백개 혹은 그 이상(시스템 튜닝-에이블 파리미터)으로 생성이 가능한, 데이터베이스를 이용하는 멀티타스킹 방법.The database interface server of claim 1, wherein the database interface server is capable of simultaneously processing database processing requests from hundreds or more database access request processes in the process of replicating itself to create a new database interface server. A multitasking method using a database that can be created by two or more (system tuning-enabled parameters). 제1항에 있어서, 상기 데이터베이스 액세스 프로세스는 데이터베이스 액세스 요구 프로세스에서 요구하는 모든 데이터베이스에 대한 모든 처리방법이 포함되어 있는, 데이터베이스를 이용하는 멀티타스킹 방법.The multitasking method of claim 1, wherein the database access process includes all processing methods for all databases required by a database access request process. 제4항에 있어서, 상기 데이터베이스 액세스 프로세스는 2개 이상으로 구성되는, 데이터베이스를 이용하는 멀티타스킹 방법.5. The method of claim 4 wherein the database access process consists of two or more. 제4항에 있어서, 상기 데이터베이스 액세스 프로세스는 평상시 내부 IPC에 데이터베이스 요구에 대한 요구가 있는지를 항상 모니터링하여, 여러개의 데이터베이스 액세스 프로세스중 먼저 데이터베이스 액세스 요구 메시지를 받은 데이터베이스 액세스 프로세스가 해당 메시지에 대한 처리를 하도록 하는, 데이터베이스를 이용하는 멀티타스킹 방법.5. The database access process of claim 4, wherein the database access process always monitors whether there is a request for a database request in an internal IPC, so that a database access process, which has received a database access request message first among several database access processes, handles processing of the message. Multitasking method using a database. 같은 데이터베이스 자원을 이용하여 여러 응용 프로세서가 동시에 같은 일을 처리하는 멀티타스킹 시스템에서, 데이터베이스 액세스 요구 프로세스에서 데이터베이스 인터페이스 프로세스로 전달하는 메시지 포맷은,In a multitasking system where multiple application processors use the same database resources to do the same thing at the same time, the message format passed from the database access request process to the database interface process is: 블록의 크기에 대한 정보와 데이터베이스 액세스 프로세스에서 처리해야할 작업의 종류들에 대한 정보등을 포함하는 옵코드 바이트를 생성하는 과정; 및Generating an opcode byte including information about a block size and information about types of operations to be processed in a database access process; And 옵코드 다음은 데이터베이스 액세스 프로세스에서 처리하기 위한 데이터 바이트들을 생성하는 과정을 포함하는, 데이터베이스를 이용하는 멀티타스킹을 위한 메시지 포맷 방법.Opcodes Next, a method of formatting a message for multitasking with a database, comprising generating data bytes for processing in a database access process. 같은 데이터베이스 자원을 이용하여 여러 응용 프로세서가 동시에 같은 일을 처리하는 멀티타스킹 시스템에서, 데이터 베이스 인터페이스 서버에서 IPC로 전달하는 메시지 포맷은,In a multitasking system where multiple application processors use the same database resources to do the same thing at the same time, the message format delivered by the database interface server to the IPC is: 다수의 데이터베이스 액세스 프로세스중 특정 프로세스를 선택할 필요가 없기 때문에 값 1로 고정되어 있는 목적지 바이트를 생성하는 과정;Generating a destination byte fixed to a value of 1 because there is no need to select a particular process among a plurality of database access processes; 데이터베이스 인터페이스 서버 프로세스에 대한 PID이며 데이터베이스 액세스 프로세스가 데이터베이스 액세스 후 그 결과를 전달해야 할 주소를 나타내는 소스 바이트를 생성하는 과정;Generating a source byte indicating a PID for the database interface server process and the address to which the database access process should deliver the result after database access; 데이터베이스 액세스 요구 프로세스에서 전달받은 옵코드를 그대로 우회하는 옵코드 바이트를 생성하는 과정; 및Generating an opcode byte that bypasses the opcode received from the database access request process; And 데이터베이스 액세스 요구 프로세스에서 전달받은 데이터 바이트를 생성하는 과정을 포함하는, 데이터베이스의 멀티타스킹 방법.A method of multitasking a database, the method comprising generating data bytes received in a database access request process. 같은 데이터베이스 자원을 이용하여 여러 응용 프로세서가 동시에 같은 일을 처리하는 멀티타스킹 시스템에서, 데이터베이스 액세스 프로세스에서 처리한 결과를 내부 IPC로 전달하는 메시지 포맷은,In a multitasking system where multiple application processors use the same database resources to do the same thing at the same time, the message format that delivers the results of the database access process to the internal IPC is 데이터베이스 액세스 요구한 데이터베이스 인터페이스 서버의 PID가 수록되는 목적지 바이트를 생성하는 과정;Generating a destination byte in which the PID of the database interface server requesting database access is recorded; 메시지의 길이, 데이터베이스 액세스에 대한 결과, 프레임 타입(연결, 끝) 등의 정보가 수록된 옵코드 바이트를 생성하는 과정; 및Generating an opcode byte containing information such as a length of a message, a result of a database access, and a frame type (connection, end); And 데이터 바이트들을 생성하는 과정을 포함하는, 데이터베이스의 멀티타스킹 방법.A method of multitasking a database, the method comprising generating data bytes.
KR1019970081491A 1997-12-31 1997-12-31 System and method of database multi-tasking KR100303336B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019970081491A KR100303336B1 (en) 1997-12-31 1997-12-31 System and method of database multi-tasking

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019970081491A KR100303336B1 (en) 1997-12-31 1997-12-31 System and method of database multi-tasking

Publications (2)

Publication Number Publication Date
KR19990061235A KR19990061235A (en) 1999-07-26
KR100303336B1 true KR100303336B1 (en) 2001-09-24

Family

ID=37529744

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970081491A KR100303336B1 (en) 1997-12-31 1997-12-31 System and method of database multi-tasking

Country Status (1)

Country Link
KR (1) KR100303336B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180022059A (en) 2016-08-23 2018-03-06 최정환 Ceramic-metal tile

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5668987A (en) * 1995-08-31 1997-09-16 Sybase, Inc. Database system with subquery optimizer

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5668987A (en) * 1995-08-31 1997-09-16 Sybase, Inc. Database system with subquery optimizer

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180022059A (en) 2016-08-23 2018-03-06 최정환 Ceramic-metal tile

Also Published As

Publication number Publication date
KR19990061235A (en) 1999-07-26

Similar Documents

Publication Publication Date Title
CA2279382C (en) Web request broker controlling multiple processes
Hu et al. Measuring the impact of event dispatching and concurrency models on web server performance over high-speed networks
AU742797B2 (en) Method and apparatus for performing transactions in a stateless web environment which supports a declarative paradigm
JP3777302B2 (en) Communication distribution control device and storage medium storing communication distribution program
EP0412232B1 (en) Apparatus and method for providing high performance communication between software processes
EP1027796B1 (en) Distributed web application server
EP0600235B1 (en) Cooperative processing interface and communication broker for heterogeneous computing environments
US7028091B1 (en) Web server in-kernel interface to data transport system and cache manager
US6043898A (en) Method and system for concurrently executing multiple spooling systems in a networked computer system
US6487577B1 (en) Distributed compiling
US20110219107A1 (en) System and method for collaborative processing of distributed applications
WO2002057942A9 (en) Exchanging electronic messages between a host computer system and a distributed computer system
Ju et al. An efficient and lightweight embedded Web server for Web‐based network element management
US6233542B1 (en) Server and terminal emulator for persistent connection to a legacy host system with response time monitoring
CA2190910A1 (en) Network communications subsystem for networked digital computer system
US6205417B1 (en) Server and terminal emulator for persistent connection to a legacy host system with direct As/400 host interface
Chesson The network UNIX system
US6668279B1 (en) User level web server in-kernel network I/O accelerator
KR100303336B1 (en) System and method of database multi-tasking
US20030202522A1 (en) System for concurrent distributed processing in multiple finite state machines
Liu et al. A distributed web server and its performance analysis on multiple platforms
JPH08212180A (en) Inter-process communication processor
JP2001167059A (en) Service request device, data conversion method and computer having client object
KR100282616B1 (en) Structure and Processing Method of Multiprotocol Gateway for Web and Applications
JP2000099476A (en) Communication interchange system between distributed objects

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: 20080604

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee