KR20000037515A - Method for composing b+ tree to manage history - Google Patents
Method for composing b+ tree to manage history Download PDFInfo
- Publication number
- KR20000037515A KR20000037515A KR1019980033553A KR19980033553A KR20000037515A KR 20000037515 A KR20000037515 A KR 20000037515A KR 1019980033553 A KR1019980033553 A KR 1019980033553A KR 19980033553 A KR19980033553 A KR 19980033553A KR 20000037515 A KR20000037515 A KR 20000037515A
- Authority
- KR
- South Korea
- Prior art keywords
- record
- information
- history
- tree
- existing
- Prior art date
Links
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/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2358—Change logging, detection, and notification
-
- 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/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2246—Trees, e.g. B+trees
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
본 발명은 히스토리 관리용 B+ 트리 구성 방법에 관한 것으로서, 특히 현재 많은 데이터 베이스 시스템이 자료의 보관 및 검색구조로 널리 쓰이고 있는 B+ 트리라는 자료구조를 이용하여 데이터 베이스를 구축하는데 있어서, 이 데이터 베이스의 종류 중 그 데이터 베이스가 가지는 각각의 레코드에 관한 일반적인 정보와, 수시로 변하는 정보에 대하여도 내역을 저장하고 검색할 필요가 있는 데이터 베이스의 경우에 적용하기 용이하도록 B+ 트리를 변형하여 논리적인 자료구조를 제시하는 방법에 관한 것이다.The present invention relates to a method of constructing a B + tree for history management. In particular, the present invention relates to a method of constructing a database using a data structure called a B + tree, which is widely used as a data storage and retrieval structure. The logical data structure is modified by modifying the B + tree so that it is easy to apply to the general information about each record of the type of the database and the database that needs to store and retrieve the details about the information that changes frequently. It is about how to present.
도 1 은 종래 기술에 의한 내역 관리를 위한 변경 자료구조 제시 방법 블럭도이다. 도시된 바와 같이, 현존하는 B+ 트리 자료구조는 트리 구조의 논리적인 데이터 저장형태이다. 트리 구조는 하나의 단위 자료, 즉 하나의 레코드가 잎이 되고, 그 레코드에는 여러 개의 자식(Child leaf)을 거느려서, 하나 혹은 여러 개의 키 값에 따라 각각의 레코드를 트리 구조에 저장, 검색, 삽입, 삭제하는 기능을 비교적 용이하고 빠르게 할 수 있는 구조이다. B+ 트리 자료구조는 현존하는 트리 구조를 좀더 발전시킨 구조이다. 그래서, 하나의 잎(100)이 여러 개의 레코드(110)(120)를 포함하고, 하나의 잎(100)에는 자신이 포함한 레코드(110)(120)수보다 ‘1’많은 포인터를 갖고 있게 된다. 따라서, 그 포인터는 자신이 거느리는 자식을 지시하는 발전된 트리 구조이다. 이러한 변형은 트리의 깊이, 즉 세대의 단계를 훨씬 줄여서 검색을 훨씬 빠르게 하는 장점을 지닌다. 이런 장점은 데이터 베이스가 지닌 레코드(110)(120)(210)(220)(310)(320)(410)(420)의 수가 방대할수록 훨씬 두드러진다. 고로, 오늘날 여러 가지 데이터 베이스 시스템의 자료구조로 널리 쓰이고 있다. 하지만, 일반적으로 이 구조는 데이터 베이스내의 레코드(110) (120)(210)(220)(310)(320)(410)(420)사이즈가 동적(Dynamic)일 때보다는 정적(Static)일 때 적합한 구조다. 많은 데이터 베이스에서 B+ 트리의 각각의 레코드(110)(120)(210)(220)(310)(320)(410)(420)는 고정된 사이즈로 사용된다. 그 이유는 자식을 검색하는 데 있어서 포인터를 쓰기도 하지만, 이 고정된 레코드(110)(120)(210)(220)(310)(320)(410)(420)사이즈가 계산을 통해 검색 할 때도 있기 때문이다. 이렇게 하면 포인터에 쓰이는 메모리 공간을 줄이기도 한다. 하지만, 이러한 정적인 성질은 특정한 종류의 데이터 베이스에는 적합하지 않을 수도 있다.1 is a block diagram of a method for presenting a change data structure for managing history according to the prior art. As shown, the existing B + tree data structure is a logical data storage form of the tree structure. The tree structure consists of one unit of data, one record, which contains several child leaves, and each record is stored in a tree structure according to one or several key values. It is a structure that can insert and delete functions relatively easily and quickly. The B + tree data structure is a further development of the existing tree structure. Thus, one leaf 100 includes several records 110 and 120, and one leaf 100 has more '1' pointers than the number of records 110 and 120 that it contains. . Thus, the pointer is an advanced tree structure that points to its children. This variant has the advantage of making the search much faster by significantly reducing the depth of the tree, that is, the stage of generation. This advantage is even more pronounced as the number of records 110, 120, 210, 220, 310, 320, 410 and 420 of the database is huge. Therefore, it is widely used as the data structure of various database systems today. In general, however, this structure is generally used when the size of the records 110, 120, 210, 220, 310, 320, 410, and 420 in the database is static rather than dynamic. It is a suitable structure. In many databases, each record 110, 120, 210, 220, 310, 320, 410, 420 of the B + tree is used in a fixed size. The reason for this is that a pointer may be used to retrieve the child, but this fixed record 110, 120, 210, 220, 310, 320, 410, 420 can be retrieved by calculation. Because sometimes. This also reduces the memory space used for pointers. However, this static nature may not be appropriate for certain kinds of databases.
현존하는 B+ 트리 자료구조는 방대한 데이터 베이스내의 레코드(110)(120) (210)(220)(310)(320)(410)(420)라 할지라도, 다른 자료구조에 비해 비교적 빨리 검색할 수 있다. 그리고, 저장과 새로운 레코드(110)(120)(210)(220)(310)(320) (410)(420)의 삽입 및 현재 레코드(110)(120)(210)(220)(310)(320)(410)(420)의 삭제 등이 많이 복잡하지는 않기 때문에 많은 데이터 베이스에서 사용되고 있다. 하지만, 현존하는 B+ 트리 자료구조는 데이터 베이스 내에 각각의 레코드(110)(120) (210)(220)(310)(320)(410)(420)에 관한 정보가 수시로 변한다. 그런데, 이 변하는 정보를 현재 레코드(110)(120)(210)(220)(310)(320)(410)(420)에 덮어쓰기를 하지 않는다. 대신 이전의 정보도 내역하여 보관할 필요가 있으면, 그 레코드(110) (120)(210)(220)(310)(320)(410)(420)의 사이즈가 계속 자라게 된다. 그리고, 각각의 레코드(110)(120)(210)(220)(310)(320)(410)(420)가 모두 다른 사이즈를 지닌다. 고로, B+ 트리의 정적인 구조가 된다. 따라서, 이유로 인해 적합하지가 않다. 적합하지 않은 이유는 다음과 같다. 많은 B+ 트리의 레코드(110)(120) (210)(220)(310)(320)(410)(420)는 고정되어 있다. 그런데, 만일 동적으로 메모리를 할당하여 현재의 레코드(110)(120)(210)(220)(310)(320)(410)(420)를 늘려가는 방법을 사용한다고 할 때, 하나의 레코드(110)(120)(210)(220)(310)(320)(410) (420)가 너무 커질 수 가 있는 문제점이 있다.Existing B + tree data structures can be searched relatively quickly compared to other data structures, even if they are records 110, 120, 210, 220, 310, 320, 410 and 420 in large databases. have. And storing and inserting new records 110, 120, 210, 220, 310, 320, 410, 420 and current records 110, 120, 210, 220, 310 Deletion of (320) (410) 420 is not used in many databases because it is not very complicated. However, in the existing B + tree data structure, the information about each record 110, 120, 210, 220, 310, 320, 410, and 420 changes from time to time in the database. However, the changing information is not overwritten by the current records 110, 120, 210, 220, 310, 320, 410 and 420. If the previous information needs to be stored instead, the records 110, 120, 210, 220, 310, 320, 410 and 420 will continue to grow in size. Each record 110, 120, 210, 220, 310, 320, 410, 420 has a different size. This results in a static structure of the B + tree. Therefore, it is not suitable for a reason. Reasons for not being suitable are as follows. The records 110, 120, 210, 220, 310, 320, 410 and 420 of many B + trees are fixed. However, if one uses a method of dynamically allocating memory to increase the current records 110, 120, 210, 220, 310, 320, 410 and 420, one record ( There is a problem that the 110, 120, 210, 220, 310, 320, 410 and 420 may be too large.
본 발명은 상기한 바와 같이 동작되는 종래 기술의 문제점을 해결하기 위하여 창안된 것으로서, 내역을 관리하는 레코드를 저장하는 데이터 베이스의 자료 저장과 검색을 위한 논리적 자료구조를 제시하는, 히스토리 관리용 B+ 트리 구성 방법을 제공하는 것을 목적으로 한다.The present invention has been devised to solve the problems of the prior art operating as described above, and suggests a logical data structure for data storage and retrieval of a database storing a record managing history, and a B + tree for history management. It is an object to provide a configuration method.
본 발명의 다른 목적과 장점은 하기된 발명의 상세한 설명을 읽고 첨부된 도면을 참조하면 보다 명백해질 것이다.Other objects and advantages of the present invention will become more apparent from the following detailed description of the invention and the accompanying drawings.
도 1 은 종래 기술에 의한 내역 관리를 위한 변경 자료구조 제시 방법 블럭도.1 is a block diagram showing a method of presenting a change data structure for history management according to the prior art;
도 2 는 본 발명에 의한 내역 관리를 위한 변경 자료구조 제시 방법 블럭도.2 is a block diagram of a method of presenting a changed data structure for managing details according to the present invention;
도 3 은 본 발명에 따른 내역 관리를 위한 변경 자료구조 제시 방법에 대한 흐름도.3 is a flowchart illustrating a method of presenting a change data structure for managing history according to the present invention.
〈도면의 주요 부분에 대한 부호의 설명〉<Explanation of symbols for main parts of drawing>
100, 200, 300, 400, 500, 600, 700, 800 : 잎Leaves: 100, 200, 300, 400, 500, 600, 700, 800
110, 120, 210, 220, 310, 320, 410, 420, 510, 520, 610, 620, 710, 720, 810, 820 : 레코드Records: 110, 120, 210, 220, 310, 320, 410, 420, 510, 520, 610, 620, 710, 720, 810, 820
515, 525, 615, 625, 715, 725, 815, 825 : 레코드 내역 정보515, 525, 615, 625, 715, 725, 815, 825: record history information
상기한 바와 같은 목적을 달성하기 위하여 창안된 본 발명에 따른 히스토리 관리용 B+ 트리 구성 방법은, 자료저장용 논리구조인 B+ Tree의 구조 개선방법에 있어서,The method for constructing a history management B + tree according to the present invention, which is designed to achieve the above object, in the method for improving the structure of a B + tree, which is a logical structure for data storage,
각 레코드의 히스토리 정보의 관리부분에 관한 추가 구조와 그에 따른 히스토리 정보를 검색하는 단계;Retrieving additional structures relating to the management portion of the history information of each record and corresponding history information;
현재 정보를 수정하는 단계;Modifying current information;
하나의 레코드에 관한 일반적인 정보를 검색, 삽입 또는 삭제하는 단계; 및Retrieving, inserting, or deleting general information about one record; And
하나의 현존하는 레코드에 관한 정보를 변경하는 경우 변경되는 새로운 정보 이외에 기존의 정보를 보관 및 검색하는 단계를 구비하여 이루어진다.In the case of changing the information about one existing record, a step of storing and retrieving the existing information is made in addition to the new information to be changed.
본 발명의 바람직한 실시예에서는, 상기 기존의 레코드 정보를 수정하는 단계는,In a preferred embodiment of the present invention, the step of modifying the existing record information,
기존의 B+ 트리의 레코드 검색절차를 이용하여 프라이머리 키로 현재의 레코드를 검색하는 단계와;Retrieving the current record with the primary key using a record retrieval procedure of an existing B + tree;
상기 레코드 검색에 의해, 수정할 레코드를 찾는 단계를 구비하여 이루어지고,Searching for the record to be modified by the record search,
상기 레코드 검색에 의해, 수정할 레코드를 찾는 단계는, 현재의 레코드를 내역 키를 이용하여 내역 자료구조에 새롭게 삽입하는 단계와;The retrieving of the record to be modified by the record retrieval includes: newly inserting a current record into a history data structure using a history key;
상기 레코드를 삽입한 후 현재의 레코드에 새로운 정보를 덮어쓰는 단계를 포함하며,Inserting the record and overwriting new information in the current record,
상기 기존의 레코드 내역 정보를 검색하는 단계는, 레코드의 내역 정보를 지시하는 포인터를 통해 내역 데이터 베이스를 검색하는 단계와;The step of retrieving the existing record history information includes: retrieving a history database through a pointer indicating the record information of the record;
상기 데이터 베이스를 검색한 후, 해당 내역 데이터 베이스의 종류에 따라, 필요한 정보를 내역 키를 이용하여 검색하는 단계를 구비하여 이루어지고,And after searching the database, searching for necessary information using a history key according to the type of the history database.
상기 기존의 레코드를 삭제하는 단계는, 상기 검색한 레코드만이 아닌, 레코드가 지시하는 내역 정보를 삭제한 후에 해당 레코드를 삭제하는 단계를 구비하여 이루어진다.The deleting of the existing record comprises deleting not only the searched record but the corresponding record after deleting the history information indicated by the record.
하기에서 본 발명을 설명함에 있어, 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략할 것이다. 그리고 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.In the following description of the present invention, if it is determined that a detailed description of a related known function or configuration may unnecessarily obscure the subject matter of the present invention, the detailed description thereof will be omitted. Terms to be described later are terms defined in consideration of functions in the present invention, and may be changed according to intentions or customs of users or operators. Therefore, the definition should be made based on the contents throughout the specification.
도 2 는 본 발명에 의한 내역 관리를 위한 변경 자료구조 제시 방법 블럭도이다. 도시된 바와 같이, 변형된 B+ 트리 자료구조에 있어서, 각 레코드(510)(520)(610)(620)(710)(720)(810)(820)의 내역 정보의 관리부분에 관한 추가 구조와 그에 따른 내역 정보의 검색절차, 그리고 현재 정보의 수정절차를 포함한다. 나머지 B+ 트리의 고유한 구조는 널리 알려진 구조이다. 그리고, 하나의 레코드(510)(520)(610)(620)(710)(720)(810)(820)에 관한 일반적인 정보를 검색하는 과정이나, 삽입 또는 삭제하는 과정도 이미 알려진 데로 동일하다. 다만, 하나의 현존하는 레코드에 관한 정보를 변경할 때, 변경되는 새로운 정보 이외에 기존의 정보를 보관하는 구조와 절차, 그리고 그러한 정보를 검색하는 절차가 발명을 구성하는 요소가 된다.2 is a block diagram of a method for presenting a change data structure for managing details according to the present invention. As shown, in the modified B + tree data structure, an additional structure relating to the management portion of the historical information of each record 510, 520, 610, 620, 710, 720, 810, 820 And the retrieval procedure of the historical information and the correction procedure of the current information. The unique structure of the rest of the B + tree is a well known structure. In addition, the process of searching for, inserting, or deleting general information about one record 510, 520, 610, 620, 710, 720, 810, 820 is identical. . However, when changing information on one existing record, the structure and procedure of storing the existing information in addition to the new information to be changed, and the procedure of retrieving such information become elements of the invention.
본 발명의 변형된 B+ 트리 자료구조는 앞의 포인터 외에 각각의 레코드(510)(520)(610)(620)(710)(720)(810)(820)도 하나씩의 포인터(이하 B 포인터)를 더 가지고 있다. 각각의 레코드(510)(520)(610)(620)(710)(720)(810)(820)는 기존의 B+ 트리 구조처럼 ‘키’라는 일정한 필드 값을 기준으로 차례차례 저장되어 있다. A 포인터(기존의 포인터)는 기존의 포인터와 같은 역할을 한다. 즉, 자식 잎을 지시하는 포인터이다. B 포인터는 그 특정 레코드의 과거 정보, 즉 내역 정보(515)(525)(615)(625)(715)(725)(815)(825)를 저장한 또 다른 자료구조를 지시하는 포인터이다. 이때 또 다른 자료구조는 자료를 용이하게 저장할 수 있는 두 번째 키를 기준으로 구성된다. 그리고, 내역 정보(515)(525)(615)(625)(715)(725)(815) (825)의 사이즈에 따라 연결된 리스트가 될 수 있다. 아니면, 또 다른 하나의 B+ 트리 구조가 될 수도 있다. 하지만, 정적인 구조가 아닌 그 정보의 수가 자랄 수 있는 동적인 자료구조여야 한다.In the modified B + tree data structure of the present invention, each record 510, 520, 610, 620, 710, 720, 810, and 820 also has one pointer (hereinafter referred to as B pointer). Have more Each record 510, 520, 610, 620, 710, 720, 810, 820 is sequentially stored based on a certain field value of 'key' like the existing B + tree structure. The A pointer (an existing pointer) acts like an existing pointer. That is, a pointer to a child leaf. The B pointer is a pointer to another data structure that stores historical information of the particular record, that is, history information 515, 525, 615, 625, 715, 725, 815, and 825. Another data structure is based on a second key that can easily store data. The list information may be a linked list according to the size of the details information 515, 525, 615, 625, 715, 725, 815, and 825. Or it could be another B + tree structure. However, it must be a dynamic data structure in which the number of information can grow, not a static structure.
이하 첨부된 도면을 참조하여 본 발명의 바람직한 실시예에 대한 동작 원리를 상세히 설명한다.Hereinafter, with reference to the accompanying drawings will be described in detail the operating principle of the preferred embodiment of the present invention.
동작은, 레코드(510)(520)(610)(620)(710)(720)(810)(820)의 최신 정보를 검색한다. 그리고, 새로운 레코드(510)(520)(610)(620)(710)(720)(810)(820)의 삽입과 삭제는 기존의 B+ 트리와 같은 절차로 수행된다. 기존의 레코드 정보를 수정할 때와 기존의 레코드 내역(History) 정보(515)(525)(615)(625)(715)(725)(815)(825)를 검색할 때, 그리고 기존의 레코드(510)(520)(610)(620)(710)(720)(810)(820)를 삭제하는 단계로 구분하여 설명한다. 기존의 레코드 정보를 수정할 때는, 기존의 B+ 트리의 레코드(510)(520)(610)(620)(710)(720)(810)(820) 검색절차를 이용하여 프라이머리 키(Primary Key)로 현재의 레코드(510)(520)(610)(620)(710)(720)(810) (820)를 검색한다. 그리고, 수정할 레코드(510)(520)(610)(620)(710)(720)(810) (820)를 찾으면 현재의 레코드를 내역 키를 이용하여서, 내역 자료구조에 새롭게 레코드를 저장한다. 그런 후에 현재의 레코드에 새로운 정보를 덮어쓴다. 기존의 레코드의 내역 정보(515)(525)(615)(625)(715)(725)(815)(825)를 검색할 때는, 기존의 B+ 트리와 같은 절차로 레코드(510)(520)(610)(620)(710)(720)(810)(820)를 검색한다. 그리고, 레코드의 내역 정보(515)(525)(615)(625)(715)(725)(815)(825)를 지시하는 포인터를 통해 내역 데이터 베이스를 검색한다. 검색 한 후에 해당 내역 데이터 베이스의 종류에 따라서 내역 키로 필요한 정보(515)(525)(615) (625)(715)(725)(815)(825)를 검색해 낸다. 마지막으로 기존의 레코드(510)(520) (610)(620)(710)(720)(810)(820)를 삭제하는 경우는, 마찬가지로 기존의 B+ 트리와 같은 레코드(510)(520)(610)(620)(710)(720)(810)(820)를 검색한다. 그리고, 검색한 레코드(510)(520)(610)(620)(710)(720)(810)(820)뿐만 아니라 검색한 레코드(510)(520)(610)(620)(710)(720)(810)(820)가 지시하는 내역 정보(515)(525)(615) (625)(715)(725)(815)(825)를 삭제한다. 이 단계가 끝나면 해당 레코드를 삭제한다.The operation retrieves the latest information of the records 510, 520, 610, 620, 710, 720, 810, 820. In addition, insertion and deletion of new records 510, 520, 610, 620, 710, 720, 810 and 820 are performed by the same procedure as the existing B + tree. When modifying existing record information and when retrieving existing record history information 515, 525, 615, 625, 715, 725, 815, 825, and existing records ( 510, 520, 610, 620, 710, 720, 810, and 820 will be described by dividing them into steps of deleting. When modifying existing record information, the primary key can be retrieved using the records 510, 520, 610, 620, 710, 720, 810, and 820 retrieval procedures of the existing B + tree. It searches for the current record 510, 520, 610, 620, 710, 720, 810, 820. When the record 510, 520, 610, 620, 710, 720, 810, and 820 to be modified is found, the record is newly stored in the history data structure using the history key. Then overwrite the current record with the new information. When retrieving historical information of an existing record (515) (525) (615) (625) (715) (725) (815) (825), the records (510) (520) are processed in the same manner as the existing B + tree. Search for (610) 620, 710, 720, 810, and 820. Then, the history database is searched through a pointer indicating the history information 515 (525) 615 (625) 715 (725) 815 (825) 825 of the record. After retrieving, the information 515, 525, 615, 625, 715, 725, 815, and 825 are retrieved using the history key according to the type of the history database. Finally, when deleting existing records 510, 520, 610, 620, 710, 720, 810 and 820, records 510 and 520 like the existing B + tree are likewise deleted. Search for 610, 620, 710, 720, 810, and 820. Then, the searched records 510, 520, 610, 620, 710, 720, 810, 820, as well as the searched records 510, 520, 610, 620, 710 ( The history information 515, 525, 615, 625, 715, 725, 815, 825 indicated by 720, 810, and 820 is deleted. After this step, delete the record.
이런 절차로 현재의 레코드(510)(520)(610)(620)(710)(720)(810)(820)의 내역 정보(515)(525)(615)(625)(715)(725)(815)(825)를 저장할 때는, 일반적으로 지나간 정보인 내역 정보(515)(525)(615)(625)(715)(725)(815)(825)가 불변하다. 고로, 내역 데이터 베이스는 하드디스크가 아닌, 읽기 전용의 광 파일 시스템 등 좀더 저렴하고 접근 시간이 느린, 대용량 저장장치에 저장할 수도 있다. 이는 일단 해당 레코드(510)(520)(610)(620)(710)(720)(810)(820)를 찾는 것이 많은 시간적 비용이 소요되는 작업이며, 일반적으로 내역 정보(515)(525)(615)(625)(715) (725)(815)(825)가 데이터 베이스내의 레코드(510)(520)(610)(620)(710)(720)(810) (820)수에 비해 미미하여 검색하는데 있어, 비용이 적게든다는 가정을 한다. 도 3 은 본 발명에 따른 내역 관리를 위한 변경 자료구조 제시 방법에 대한 흐름도이다. 본 방법은 기존의 레코드 정보를 수정한다(S1). 그리고, 기존의 레코드 내역 정보를 검색한다(S2). 또한, 기존의 레코드를 삭제한다(S3).This procedure results in historical information 515, 525, 615, 625, 715, 725 of the current record 510, 520, 610, 620, 710, 720, 810, 820. 815, 825, the historical information 515, 525, 615, 625, 715, 725, 815, 825, which is generally passed by, is invariant. Thus, historical databases can be stored on less expensive, slower access mass storage devices, such as read-only optical file systems, rather than hard disks. This is a time consuming task of finding the corresponding records 510, 520, 610, 620, 710, 720, 810, and 820, and in general, historical information 515, 525. 615, 625, 715, 725, 815, 825 compared to the number of records 510, 520, 610, 620, 710, 720, 810, 820 in the database. It is assumed that the search cost is insignificant. 3 is a flowchart illustrating a method of presenting a change data structure for managing details according to the present invention. The method modifies existing record information (S1). The existing record detail information is retrieved (S2). In addition, the existing record is deleted (S3).
본 발명은 다양하게 변형될 수 있고 여러 가지 형태를 취할 수 있으며 상기 발명의 상세한 설명에서는 그에 따른 특별한 실시예에 대해서만 기술하였다. 하지만 본 발명은 상기 발명의 상세한 설명에서 언급된 특별한 형태로 한정되는 것이 아닌 것으로 이해되어야 하며, 오히려 첨부된 청구범위에 의해 정의되는 본 발명의 정신과 범위 내에 있는 모든 변형물과 균등물 및 대체물을 포함하는 것으로 이해되어야 한다.The present invention can be variously modified and can take various forms and only the specific embodiments thereof are described in the detailed description of the invention. It is to be understood, however, that the present invention is not limited to the specific forms mentioned in the detailed description of the invention, but rather includes all modifications, equivalents, and substitutions within the spirit and scope of the invention as defined by the appended claims. It should be understood to do.
상기한 바와 같이 동작하는 본 발명에 있어서, 개시되는 발명중 대표적인 것에 의하여 얻어지는 효과를 간단히 설명하면 다음과 같다.In the present invention operating as described above, the effects obtained by the representative ones of the disclosed inventions will be briefly described as follows.
본 발명의 자료구조를 이용하면 레코드의 내역 정보를 함께 보존해야 하는 데이터 베이스일 경우, 기존의 B+ 트리를 사용할 수도 있지만, 이 발명이 제시하는 변형된 B+ 트리는 구조적으로 내역 정보의 저장을 지원하므로써 데이터 베이스를 훨씬 용이하게 구축할 수 있다.If the data structure of the present invention is used to store the record information together, the existing B + tree can be used. However, the modified B + tree proposed by the present invention can be used to structurally store the information. The base is much easier to build.
Claims (5)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019980033553A KR20000037515A (en) | 1998-08-19 | 1998-08-19 | Method for composing b+ tree to manage history |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019980033553A KR20000037515A (en) | 1998-08-19 | 1998-08-19 | Method for composing b+ tree to manage history |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20000037515A true KR20000037515A (en) | 2000-07-05 |
Family
ID=19547602
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019980033553A KR20000037515A (en) | 1998-08-19 | 1998-08-19 | Method for composing b+ tree to manage history |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20000037515A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009031833A1 (en) * | 2007-09-05 | 2009-03-12 | Korea Institute Of Science And Technology Information | System and method for instances registering based on history |
WO2014025097A1 (en) * | 2012-08-10 | 2014-02-13 | 영남대학교 산학협력단 | Method for databasing non-volatile ram-based b+ tree |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS59146339A (en) * | 1983-02-09 | 1984-08-22 | Hitachi Ltd | Information retrieving system |
JPH0283640A (en) * | 1988-09-20 | 1990-03-23 | Sony Corp | Data base updating method |
JPH0581101A (en) * | 1991-09-18 | 1993-04-02 | Hitachi Software Eng Co Ltd | Method for assigning storage of key |
KR19990050579A (en) * | 1997-12-17 | 1999-07-05 | 이계철 | How to add multiple key values to a non-plus tree |
-
1998
- 1998-08-19 KR KR1019980033553A patent/KR20000037515A/en not_active Application Discontinuation
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS59146339A (en) * | 1983-02-09 | 1984-08-22 | Hitachi Ltd | Information retrieving system |
JPH0283640A (en) * | 1988-09-20 | 1990-03-23 | Sony Corp | Data base updating method |
JPH0581101A (en) * | 1991-09-18 | 1993-04-02 | Hitachi Software Eng Co Ltd | Method for assigning storage of key |
KR19990050579A (en) * | 1997-12-17 | 1999-07-05 | 이계철 | How to add multiple key values to a non-plus tree |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009031833A1 (en) * | 2007-09-05 | 2009-03-12 | Korea Institute Of Science And Technology Information | System and method for instances registering based on history |
KR100899038B1 (en) * | 2007-09-05 | 2009-05-21 | 한국과학기술정보연구원 | System and method for nistance registering based on history |
WO2014025097A1 (en) * | 2012-08-10 | 2014-02-13 | 영남대학교 산학협력단 | Method for databasing non-volatile ram-based b+ tree |
KR101438667B1 (en) * | 2012-08-10 | 2014-09-12 | 영남대학교 산학협력단 | Database method for b+ tree based on PRAM |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5590320A (en) | Computer file directory system | |
US5579516A (en) | Method for storing data files on a multiple volume media set | |
US5790848A (en) | Method and apparatus for data access and update in a shared file environment | |
US6516320B1 (en) | Tiered hashing for data access | |
US6061678A (en) | Approach for managing access to large objects in database systems using large object indexes | |
US5999943A (en) | Lob locators | |
US5628007A (en) | Methods for storing a database in extended attributes of a file system | |
US5454101A (en) | Data storage system with set lists which contain elements associated with parents for defining a logical hierarchy and general record pointers identifying specific data sets | |
US7730097B2 (en) | Smart database | |
US6658437B1 (en) | System and method for data space allocation using optimized bit representation | |
US7337199B2 (en) | Space management of an IMS database | |
KR100398753B1 (en) | Transaction processing system using efficient file update processing and recovery processing | |
US6714935B1 (en) | Management of non-persistent data in a persistent database | |
CN101278289A (en) | System and method for providing an ojbect to support data structures in WORM storage | |
KR20040043115A (en) | File management method | |
US6829616B2 (en) | Method, system, and program for implementing a database trigger | |
JP4101410B2 (en) | Time version data storage device | |
US6453324B1 (en) | Method for maintaining a version history of objects in a repository | |
US20030182292A1 (en) | Method, system, data structures, and article of manufacture for implementing a persistent object | |
US7228309B1 (en) | Facilitating maintenance of indexes during a reorganization of data in a database | |
KR20000037515A (en) | Method for composing b+ tree to manage history | |
US8818953B2 (en) | Method and apparatus for loading data into multi-table tablespace | |
US6760713B2 (en) | Method, computer program product, and system for file and record selection utilizing a fuzzy data record pointer | |
US7444338B1 (en) | Ensuring that a database and its description are synchronized | |
JPH096653A (en) | Data base checking information processor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |