KR102247885B1 - Apparatus and method for sorting item using multiple sorting index - Google Patents

Apparatus and method for sorting item using multiple sorting index Download PDF

Info

Publication number
KR102247885B1
KR102247885B1 KR1020140063586A KR20140063586A KR102247885B1 KR 102247885 B1 KR102247885 B1 KR 102247885B1 KR 1020140063586 A KR1020140063586 A KR 1020140063586A KR 20140063586 A KR20140063586 A KR 20140063586A KR 102247885 B1 KR102247885 B1 KR 102247885B1
Authority
KR
South Korea
Prior art keywords
items
item
update
sorting
index
Prior art date
Application number
KR1020140063586A
Other languages
Korean (ko)
Other versions
KR20150136299A (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 KR1020140063586A priority Critical patent/KR102247885B1/en
Priority to PCT/KR2014/010406 priority patent/WO2015182833A1/en
Priority to US14/898,441 priority patent/US10664235B2/en
Publication of KR20150136299A publication Critical patent/KR20150136299A/en
Application granted granted Critical
Publication of KR102247885B1 publication Critical patent/KR102247885B1/en

Links

Images

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

다중 정렬 색인을 이용한 아이템 정렬 장치 및 방법이 개시된다. 아이템 목록에 포함된 아이템들 중 업데이트 아이템들을 선별하고, 업데이트 아이템들에 상응하는 다중 정렬 색인들을 이용하여 업데이트 아이템들을 업데이트하고, 다중 정렬 색인들을 이용하여 아이템들에 대한 아이템 정렬을 수행할 수 있다. 아이템 목록의 다양한 아이템들 중 업데이트할 아이템만 선별하여 업데이트를 수행함으로써 업데이트에 따른 시스템 작업량을 감소시켜 시스템을 보다 효율적으로 사용하는 것이 가능하다.An apparatus and method for sorting items using multiple sorting indexes are disclosed. Update items may be selected from among items included in the item list, updated items may be updated using multiple sort indexes corresponding to the updated items, and item sort may be performed on items using multiple sort indexes. It is possible to use the system more efficiently by reducing the amount of system work according to the update by selecting only the item to be updated from among various items in the item list and performing the update.

Description

다중 정렬 색인을 이용한 아이템 정렬 장치 및 방법 {APPARATUS AND METHOD FOR SORTING ITEM USING MULTIPLE SORTING INDEX}Item sorting device and method using multiple sorting index {APPARATUS AND METHOD FOR SORTING ITEM USING MULTIPLE SORTING INDEX}

본 발명은 데이터베이스에서 효율적으로 아이템 정보를 업데이트하고, 아이템 목록을 정렬할 수 있는 다중 정렬 색인을 이용한 아이템 정렬 장치 및 방법에 관한 것이다.The present invention relates to an item sorting apparatus and method using a multiple sorting index that can efficiently update item information in a database and sort an item list.

스마트 폰과 태플릿 PC 분야의 빠른 성장으로 다양한 모바일 컨텐츠와 서비스를 제공하는 모바일 앱스토어도 급속하게 성장하고 있다. 이와 같은 모바일 앱스토어에서는 다양하고 많은 양의 모바일 아이템들을 제공하고 있다. 따라서, 사용자들에게 보다 편리하게 아이템들을 제공하기 위해서 아이템의 내용이나 사용자 단말기의 종류 또는 모바일 아이템을 이용하기 위한 추가 이용 요금 여부 등에 따라서 항목을 분류하여 제공하고 있다. 또한, 이와 같은 항목 분류에서도 아이템들의 인기도나 최신성에 따라 아이템 목록에서의 노출 순위가 결정되고, 수시로 노출 순위를 갱신하면서 제공되고 있다. With the rapid growth of smart phones and tablet PCs, mobile app stores that provide various mobile contents and services are also growing rapidly. Such mobile app stores provide a wide variety of mobile items. Accordingly, in order to provide items more conveniently to users, the items are classified and provided according to the content of the item, the type of the user terminal, or whether there is an additional fee for using the mobile item. In addition, even in such item classification, the exposure ranking in the item list is determined according to the popularity or freshness of the items, and the exposure ranking is frequently updated and provided.

이에 따라 많은 양의 모바일 아이템을 제공하는 앱스토어 서버는 수시로 변동되는 아이템들의 노출 순위를 업데이트하여 데이터베이스에 저장하고 관리해야 하는데, 이러한 작업은 경우에 따라 커다란 부하를 줄 수 있어 시스템에 있어서는 마이너스 적인 요소가 되고 있다. 그럼에도 불구하고 시스템 부하를 걱정하여 제공하는 모바일 아이템의 수를 줄이거나, 성능향상을 위해 시스템을 증축에 막대한 비용을 지출하는 방법은 사업자에게 있어 큰 부담이 될 수 있다.Accordingly, the App Store server that provides a large amount of mobile items must update the exposure rankings of items that change from time to time and store and manage them in a database. Such work can put a great load on the system, which is a negative factor in the system. Is becoming. Nevertheless, the method of reducing the number of mobile items provided by worrying about the system load, or spending enormous costs on expanding the system to improve performance can be a huge burden for the operator.

한국 공개 특허 제10-2009-0094866호, 2009년 9월 8일 공개 (명칭: 우선 순위화 시스템, 및 우선 순위 생성 및 관리를 제공하는 방법 및 시스템)Korean Patent Publication No. 10-2009-0094866, published on September 8, 2009 (Name: Prioritization system, and method and system for providing priority generation and management)

본 발명의 목적은, 아이템 목록에 포함된 다양한 아이템들 중 업데이트 할 아이템만 선별하여 업데이트를 수행함으로써, 업데이트에 따른 시스템 작업량을 현저하게 감소시켜 아이템들을 제공하는 시스템을 보다 효율적으로 사용할 수 있도록 하는 것이다.It is an object of the present invention to select and update only the item to be updated among various items included in the item list, thereby significantly reducing the amount of system work according to the update so that a system providing items can be used more efficiently. .

또한, 본 발명의 목적은 한번에 여러 개의 아이템들에 대해서 업데이트를 수행하는 경우에 업데이트 수행량을 최소한으로 줄이는 경우의 값을 찾아 제공함으로써 아이템의 업데이트에 따른 시스템 작업량을 감소시키는 것이다.In addition, an object of the present invention is to reduce the amount of system work according to item update by finding and providing a value for reducing the amount of update performed to a minimum when updating a plurality of items at once.

상기한 목적을 달성하기 위한 본 발명에 따른 아이템 정렬 방법은, 아이템 목록에 포함된 아이템들 중 업데이트 아이템들을 선별하는 단계; 상기 업데이트 아이템들에 상응하는 다중 정렬 색인들을 이용하여 상기 업데이트 아이템들을 업데이트하는 단계; 및 상기 다중 정렬 색인들을 이용하여 상기 아이템들에 대한 아이템 정렬을 수행하는 단계를 포함한다.An item sorting method according to the present invention for achieving the above object includes: selecting update items from among items included in an item list; Updating the update items using multiple sorting indices corresponding to the update items; And performing item sorting on the items by using the multiple sorting indices.

이 때, 아이템 정렬을 수행하는 단계는 상기 아이템들 중 상기 다중 정렬 색인들 중 주요 색인(primary index)이 동일한 아이템들에 대하여 상기 다중 정렬 색인들 중 보조 색인(auxiliary index)을 이용하여 상기 아이템 정렬을 수행할 수 있다.In this case, the step of performing item sorting includes sorting the items using an auxiliary index among the multiple sorting indices for items having the same primary index among the multiple sorting indices among the items. You can do it.

이 때, 업데이트 아이템들을 업데이트하는 단계는 상기 아이템들 중 상기 업데이트 아이템들과 갱신 순서가 한 단계씩 차이 나는 아이템들의 상기 다중 정렬 색인들을 고려하여 상기 업데이트 아이템들을 업데이트할 수 있다.In this case, in the updating of the update items, the update items may be updated in consideration of the multiple sorting indices of items in which the update items and the update order differ by one step among the items.

이 때, 업데이트 아이템들을 업데이트하는 단계는 상기 업데이트 아이템들과 갱신 순서가 한 단계씩 차이 나는 아이템들의 상기 주요 색인이 동일한 경우에, 상기 업데이트 아이템들과 갱신 순서가 한 단계씩 차이 나는 아이템들 중 어느 하나의 상기 보조 색인을 변경하여 상기 업데이트 아이템들을 업데이트할 수 있다.In this case, in the step of updating the update items, if the main indexes of the update items and the items whose update order is different by one step are the same, any of the update items and the items whose update order is different by one step. The update items may be updated by changing one of the auxiliary indexes.

이 때, 업데이트 아이템들을 업데이트하는 단계는 상기 업데이트 아이템들과 갱신 순서가 한 단계씩 차이 나는 아이템들과 상기 주요 색인이 동일한 아이템들의 개수를 고려하여 상기 업데이트 아이템들을 업데이트할 수 있다.In this case, in the step of updating the update items, the update items may be updated in consideration of the number of items having the same main index and items having the same main index by one step from the update items.

이 때, 업데이트 아이템들을 업데이트하는 단계는 상기 다중 정렬 색인들에 포함되는 적어도 하나의 상기 보조 색인을 이용하여 상기 업데이트 아이템들을 업데이트할 수 있다.In this case, updating the update items may update the update items using at least one auxiliary index included in the multiple sorting indexes.

이 때, 업데이트 아이템들을 선별하는 단계는 상기 아이템 목록에 포함된 아이템들 중 최장 증가 부분수열(longest increasing subsequence)에 해당하는 제외 아이템을 선별하고, 상기 아이템들에서 상기 제외 아이템들을 제외하여 상기 업데이트 아이템들을 선별할 수 있다.In this case, the step of selecting update items includes selecting an exclusion item corresponding to a longest increasing subsequence among items included in the item list, and excluding the exclusion items from the items. Can be selected.

이 때, 업데이트 아이템들을 업데이트하는 단계는 상기 제외 아이템들은 업데이트하지 아니할 수 있다.In this case, in the step of updating the update items, the excluded items may not be updated.

또한, 본 발명에 따른 아이템 정렬 장치는, 서버로부터 아이템 목록을 수신하는 아이템 목록 수신부; 상기 아이템 목록에 포함된 아이템들 중 업데이트 아이템들을 선별하고, 상기 업데이트 아이템들에 상응하는 다중 정렬 색인들을 이용하여 상기 업데이트 아이템들을 업데이트하는 아이템 업데이트부; 및 상기 다중 정렬 색인들을 이용하여 상기 아이템들에 대한 아이템 정렬을 수행하는 아이템 정렬부를 포함한다.In addition, the item sorting apparatus according to the present invention includes: an item list receiving unit for receiving an item list from a server; An item update unit that selects update items from among items included in the item list, and updates the update items by using multiple sorting indexes corresponding to the update items; And an item sorting unit that sorts items on the items by using the multiple sorting indices.

이 때, 아이템 정렬부는 상기 아이템들 중 상기 다중 정렬 색인들 중 주요 색인(primary index)이 동일한 아이템들에 대하여 상기 다중 정렬 색인들 중 보조 색인(auxiliary index)을 이용하여 상기 아이템 정렬을 수행할 수 있다.In this case, the item sorting unit may perform the item sorting for items having the same primary index among the multiple sorting indices using an auxiliary index among the multiple sorting indices. have.

이 때, 아이템 업데이트부는 상기 아이템들 중 상기 업데이트 아이템들과 갱신 순서가 한 단계씩 차이 나는 아이템들의 상기 다중 정렬 색인들을 고려하여 상기 업데이트 아이템들을 업데이트할 수 있다.In this case, the item update unit may update the updated items in consideration of the multiple sorting indexes of items in which the update items and the update order differ by one step among the items.

이 때, 아이템 업데이트부는 상기 업데이트 아이템들과 갱신 순서가 한 단계씩 차이 나는 아이템들의 상기 주요 색인이 동일한 경우에, 상기 업데이트 아이템들과 갱신 순서가 한 단계씩 차이 나는 아이템들 중 어느 하나의 상기 보조 색인을 변경하여 상기 업데이트 아이템들을 업데이트할 수 있다.At this time, the item update unit, when the main index of the update items and the items whose update order is different by one step, is the same, the auxiliary of any one of the items whose update order is different from the update items by one step. The update items can be updated by changing the index.

이 때, 아이템 업데이트부는 상기 업데이트 아이템들과 갱신 순서가 한 단계씩 차이 나는 아이템들과 상기 주요 색인이 동일한 아이템들의 개수를 고려하여 상기 업데이트 아이템들을 업데이트할 수 있다.In this case, the item update unit may update the updated items in consideration of the number of items having the same main index and items having a difference between the update items and the update order by one step.

이 때, 아이템 업데이트부는 상기 업데이트 아이템들과 갱신 순서가 한 단계씩 차이 나는 아이템들과 상기 주요 색인이 동일한 아이템들의 개수를 고려하여 상기 업데이트 아이템들을 업데이트할 수 있다.In this case, the item update unit may update the updated items in consideration of the number of items having the same main index and items having a difference between the update items and the update order by one step.

이 때, 아이템 업데이트부는 상기 아이템 목록에 포함된 아이템들 중 최장 증가 부분수열에 해당하는 제외 아이템을 선별하고, 상기 아이템들에서 상기 제외 아이템들을 제외하여 상기 업데이트 아이템들을 선별할 수 있다.In this case, the item update unit may select an excluded item corresponding to the longest increasing partial sequence among items included in the item list, and select the updated items by excluding the excluded items from the items.

이 때, 아이템 업데이트부는 상기 제외 아이템들은 업데이트하지 아니할 수 있다.In this case, the item update unit may not update the excluded items.

본 발명에 따르면, 컨텐츠들 및 아이템들을 제공하는 스토어의 서버 시스템에 대해서, 한번에 여러 개의 아이템들에 대해서 업데이트를 수행하는 경우 업데이트의 수행량을 최소한으로 감소시킬 수 있는 경우의 값을 찾아 제공함으로써 아이템의 업데이트에 따른 서버 시스템의 작업량을 감소시킬 수 있다.According to the present invention, for a server system of a store that provides contents and items, when an update is performed on several items at a time, an item by finding and providing a value that can reduce the amount of update performed to a minimum. It is possible to reduce the workload of the server system according to the update of.

또한, 본 발명은 아이템 업데이트에 따른 시스템의 부하를 절감시켜 아이템을 제공하는 서버 시스템을 보다 효과적으로 관리할 수 있다.In addition, according to the present invention, it is possible to more effectively manage a server system that provides an item by reducing a system load according to an item update.

도 1은 본 발명의 일실시예에 따른 아이템 정렬 방법을 나타낸 동작 흐름도이다.
도 2는 아이템 정렬 과정을 나타낸 도면이다.
도 3은 카테고리에 따른 아이템 목록을 나타낸 도면이다.
도 4는 아이템 노출 순위 변경을 나타낸 도면이다.
도 5는 최장 증가 부분수열의 일 예를 나타낸 도면이다.
도 6은 본 발명의 일실시예에 따른 다중 정렬 색인을 이용한 아이템 정렬 과정을 나타낸 도면이다.
도 7은 본 발명의 다른 실시예에 따른 다중 정렬 색인을 이용한 아이템 정렬 과정을 나타낸 도면이다.
도 8은 본 발명의 일실시예에 따른 아이템 정렬 장치를 나타낸 블록도이다.
1 is a flowchart illustrating an item arrangement method according to an embodiment of the present invention.
2 is a diagram illustrating an item arrangement process.
3 is a diagram showing a list of items according to categories.
4 is a diagram showing a change in item exposure order.
5 is a diagram showing an example of the longest increasing partial sequence.
6 is a diagram illustrating an item sorting process using a multiple sorting index according to an embodiment of the present invention.
7 is a diagram illustrating an item sorting process using a multiple sorting index according to another embodiment of the present invention.
8 is a block diagram showing an item sorting apparatus according to an embodiment of the present invention.

이하 본 발명의 바람직한 실시예를 첨부한 도면을 참조하여 상세히 설명한다. 다만, 하기의 설명 및 첨부된 도면에서 본 발명의 요지를 흐릴 수 있는 공지 기능 또는 구성에 대한 상세한 설명은 생략한다. 또한, 도면 전체에 걸쳐 동일한 구성 요소들은 가능한 한 동일한 도면 부호로 나타내고 있음에 유의하여야 한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. However, in the following description and the accompanying drawings, detailed descriptions of known functions or configurations that may obscure the subject matter of the present invention will be omitted. In addition, it should be noted that the same components are denoted by the same reference numerals as much as possible throughout the drawings.

이하에서 설명되는 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위한 용어의 개념으로 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시예에 불과할 뿐이고, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다. 또한 제 1, 제 2 등의 용어는 다양한 구성요소들을 설명하기 위해 사용하는 것으로, 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용될 뿐, 상기 구성요소들을 한정하기 위해 사용되지 않는다.The terms or words used in the present specification and claims described below should not be construed as being limited to their usual or dictionary meanings, and the inventors are appropriate as the concept of terms for describing their own invention in the best way. It should be interpreted as a meaning and concept consistent with the technical idea of the present invention on the basis of the principle that it can be defined. Therefore, the embodiments described in the present specification and the configurations shown in the drawings are only the most preferred embodiments of the present invention, and do not represent all of the technical spirit of the present invention. It should be understood that there may be equivalents and variations. In addition, terms such as first and second are used to describe various elements, and are only used for the purpose of distinguishing one element from other elements, and are not used to limit the elements.

도 1은 본 발명의 일실시예에 따른 아이템 정렬 방법을 나타낸 동작 흐름도이다.1 is a flowchart illustrating an item arrangement method according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 일실시예에 따른 아이템 정렬 방법은 아이템 목록에 포함된 아이템들 중 업데이트 아이템들을 선별할 수 있다(S110). Referring to FIG. 1, the item sorting method according to an embodiment of the present invention may select update items from among items included in an item list (S110).

이 때, 아이템들은 각각 상품, 컨텐츠 또는 서비스 등에 상응하는 것일 수 있다. 스마트 폰이나 태블릿 PC를 통해서 이용할 수 있는 상품, 컨텐츠 및 서비스는 그 종류에 따라 어플리케이션 스토어, 북 스토어 및 뮤직 스토어 등 다양한 종류의 스토어를 통해 제공될 수 있다. 이러한 아이템들은 아이템 목록을 통해 사용자들에게 노출시킬 수 있다. 또한, 아이템 목록을 전시할 때 아이템 목록에 포함된 아이템들 각각의 인기도나 최신성 등을 반영하여 아이템 목록에서의 노출 순위를 결정할 수 있다. 이와 같은 노출 순위는 인기도나 최신성을 반영하기 때문에 시간이 지남에 따라 수시로 변동될 수 있다. 따라서, 아이템을 제공하는 서버 시스템에서는 사용자들에게 업데이트 된 최신 정보를 제공하기 위해서 아이템들의 노출 순위 변동에 따라 시스템에 저장된 정보들을 실시간으로 업데이트하여 제공할 수 있다.In this case, each of the items may correspond to a product, content, or service. Products, contents, and services that can be used through a smart phone or tablet PC may be provided through various types of stores such as an application store, a book store, and a music store, depending on the type. These items can be exposed to users through an item list. In addition, when displaying the item list, the ranking of exposure in the item list may be determined by reflecting the popularity or freshness of each of the items included in the item list. Since such exposure ranking reflects popularity or up-to-dateness, it may change from time to time over time. Accordingly, in a server system providing an item, in order to provide updated information to users, information stored in the system may be updated in real time according to a change in the exposure order of items.

그러나, 이와 같이 시스템에 저장된 정보들을 업데이트하기 위해 매번 수많은 아이템들을 모두 업데이트하는 행위는 시스템에 커다란 부하를 가져올 수 있다. 따라서 아이템들을 업데이트할 때 시스템이 처리할 업데이트 작업량을 최소한으로 감소시킬 수 있는 값들을 찾아 업데이트를 수행할 수 있다. However, updating all of the numerous items each time to update the information stored in the system as described above can place a great load on the system. Therefore, when updating items, it is possible to perform the update by finding values that can reduce the amount of update work to be processed by the system to a minimum.

이 때, 아이템 목록에 포함된 아이템들 중 최장 증가 부분수열(longest increasing subsequence)에 해당하는 제외 아이템들을 선별하고, 아이템들에서 제외 아이템들을 제외하여 업데이트 아이템들을 선별할 수 있다. 시스템에서 처리할 업데이트 작업량을 최소한으로 감소시킬 수 있는 경우의 값들을 찾기 위해 최장 증가 부분수열을 이용할 수 있다. 최장 증가 부분수열(longest increasing subsequence)은 값이 증가하는 부분수열 중 가장 긴 수열로, 앞에서부터 뒤로 증가하는 숫자를 선택해 나갈 때 최대 길이를 갖는 수열이다. 예를 들어, 5개의 아이템들이 1-4-2-3-5 의 갱신 순서를 갖는다면, 갱신 순서에서 최장 증가 부분수열은 4개의 갱신 순서를 수열로 갖는 1-2-3-5 일 수 있다. 또한, 최장 증가 부분수열인 1-2-3-5 에 해당하는 갱신 순서에 상응하는 아이템들은 제외 아이템들로 선별할 수 있다.In this case, the exclusion items corresponding to the longest increasing subsequence among the items included in the item list may be selected, and the update items may be selected by excluding the exclusion items from the items. The longest incremental subsequence can be used to find values in cases where the amount of update work to be processed by the system can be reduced to a minimum. The longest increasing subsequence is the longest sequence of subsequences in which the value increases, and is a sequence having the maximum length when selecting a number that increases from front to back. For example, if 5 items have an update order of 1-4-2-3-5, the longest increasing subsequence in the update order may be 1-2-3-5 having 4 update orders as a sequence. . In addition, items corresponding to an update order corresponding to 1-2-3-5, which is the longest incremental partial sequence, may be selected as excluded items.

이 때, 갱신 순서는 노출 순위 변동과 같은 변화에 따라 아이템 목록에 포함된 아이템들을 배열한 순서일 수 있다. 예를 들어, 아이템 목록의 1위부터 5위까지의 아이템들 중 5위의 아이템 순위가 1위로 변경되었다면 갱신 순서는 5-1-2-3-4 일 수 있다. 즉, 갱신 순서는 단위 갱신이 이루어지기 전과 이루어진 후의 순위 변동 관계에 상응하는 것일 수 있다. 따라서, 아이템들의 갱신 순서에 대한 최장 증가 부분수열을 찾고, 갱신 순서가 최장 증가 부분수열에 해당하는 아이템들은 업데이트에서 제외할 제외 아이템으로 선별할 수 있다. In this case, the update order may be an order in which items included in the item list are arranged according to a change such as a change in exposure order. For example, if the rank of the item of the fifth place among items from the first to the fifth of the item list is changed to the first place, the update order may be 5-1-2-3-4. That is, the update order may correspond to a change in the ranking before and after the unit update is performed. Accordingly, the longest incremental subsequence of the update order of items is found, and items corresponding to the longest incremental subsequence of the update order may be selected as excluded items to be excluded from the update.

이와 같은 최장 증가 부분수열을 이용함으로써, 다양한 카테고리에 대한 아이템이 혼재된 아이템 목록에서의 노출 순위 변동에 상응하게 특정 카테고리의 아이템들로만 구성된 아이템 목록을 업데이트하는 것이 가능하다. 예를 들어, 게임, 생활, 어학 등의 카테고리에 대한 아이템이 혼재된 아이템 목록 A가 있다고 가정할 수 있다. 만약 아이템 목록 A에 포함된 게임 아이템 a의 노출 순위가 변경되었다면, 게임 카테고리에 상응하는 아이템들만으로 구성된 아이템 목록 B에서도 게임 아이템 a의 노출 순위를 업데이트할 수 있다.By using the longest increasing subsequence, it is possible to update an item list consisting only of items of a specific category according to a change in exposure order in an item list in which items for various categories are mixed. For example, it may be assumed that there is an item list A in which items for categories such as games, life, and language are mixed. If the exposure ranking of the game item a included in the item list A is changed, the exposure ranking of the game item a may be updated in the item list B consisting only of items corresponding to the game category.

또한, 현재 알려진 최장 증가 부분수열의 계산 복잡도를 구하는 가장 효율적인 알고리즘은 O(nlog(n))이고, 여기서 n은 입력수열의 개수, 즉 아이템의 개수일 수 있다. 예를 들어, 아이템 목록에 1024개의 아이템들이 포함되어 있다면 해당 아이템 목록에서 최장 증가 부분수열을 통해 업데이트할 아이템을 선별하기 위한 계산 복잡도는 O(10000) 정도일 수 있다.In addition, the most efficient algorithm for obtaining the computational complexity of the currently known longest increasing subsequence is O(nlog(n)), where n may be the number of input sequences, that is, the number of items. For example, if 1024 items are included in the item list, the computational complexity for selecting an item to be updated through the longest incremental subsequence in the item list may be about O(10000).

또한, 본 발명의 일실시예에 따른 아이템 정렬 방법은 업데이트 아이템들에 상응하는 다중 정렬 색인들을 이용하여 업데이트 아이템들을 업데이트할 수 있다(S120). 본 발명에서와 같은 아이템 목록이나 다양한 컨텐츠를 제공하는 스토어 등에서 사용자들에게 제공하는 컨텐츠의 아이템 목록을 업데이트하거나 정렬하기 위해서는 일반적으로 단일 정렬 색인을 이용할 수 있다. 하지만, 단일 정렬 색인을 이용하여 노출 순위가 수시로 변경되는 아이템들 및 컨텐츠들을 업데이트하고 아이템 목록을 정렬하기에는 매우 복잡한 연산과정이 필요할 수 있다. 따라서, 본 발명에서는 두 개 이상의 색인을 통한 다중 정렬 색인을 이용하여 노출 순위가 수시로 변경되는 환경에서 아이템이나 컨텐츠를 보다 효과적으로 업데이트 할 수 있다. 예를 들어, C1부터 Cn까지의 n개의 정렬 색인을 이용하여 아이템들을 업데이트 할 수 있다. 첫 번째 정렬 색인 C1을 이용하여 업데이트를 수행하고 단계적으로 C2, C3 Cn까지의 정렬 색인들을 이용하여 업데이트를 수행할 수 있다. 또한, 두 번째 정렬 색인인 C2는 첫 번째 정렬 색인인 C1들의 값을 업데이트하지 않고 C2의 값을 통해서만 업데이트를 수행할 수 있다.In addition, the item sorting method according to an embodiment of the present invention may update updated items by using multiple sorting indexes corresponding to the updated items (S120). In general, a single sorting index can be used to update or sort an item list of contents provided to users in an item list or a store providing various contents as in the present invention. However, a very complicated calculation process may be required to update items and contents whose exposure ranking is frequently changed using a single sorting index and to sort the item list. Accordingly, in the present invention, items or contents can be updated more effectively in an environment in which the exposure order is frequently changed by using a multiple sorting index through two or more indexes. For example, items can be updated using n sorting indices from C1 to Cn. The update may be performed using the first alignment index C1, and the update may be performed step by step using the alignment indexes C2 and C3 Cn. In addition, the second sorting index C2 can perform the update only through the values of C2 without updating the values of the first sorting index C1s.

이 때, 아이템들 중 업데이트 아이템들과 갱신 순서가 한 단계씩 차이나는 아이템들의 다중 정렬 색인들을 고려하여 업데이트 아이템들을 업데이트할 수 있다. 다중 정렬 색인들 중 주요 색인(primary index)은 다중 중렬 색인들 중 첫 번째 정렬 색인일 수 있고, 다중 정렬 색인들 중 보조 색인(auxiliary index)은 두 번째 정렬 색인일 수 있다. 예를 들어, 각 아이템의 주요 색인과 보조 색인을 순서대로 (x, y)의 형태로 나타내었을 때, 5개의 아이템 A(1,0), B(2,0), C(3,0), D(4,0), E(5,0)가 있다고 가정할 수 있다. 이 때, 아이템 E가 갱신 순서 상 아이템 A의 다음 순서에 위치하도록 변경되는 경우에는 E(2,-1) 및 E(1,1) 중 어느 하나의 형태로 아이템 E의 다중 정렬 색인들을 업데이트 할 수 있다. E(2,-1)는 갱신 순서 상 아이템 E의 다음 단계에 위치하는 아이템 B를 고려한 경우에 상응하는 다중 정렬 색인들의 업데이트 형태일 수 있다. 또한, E(1,1)은 갱신 순서 상 아이템 E의 전 단계에 위치하는 아이템 A를 고려한 경우에 상응하는 다중 정렬 색인들의 업데이트 형태일 수 있다.In this case, the updated items may be updated in consideration of multiple sorting indexes of items in which the update items and the update order differ by one step among the items. Among the multiple sort indexes, a primary index may be a first sort index among multiple sort indexes, and an auxiliary index among multiple sort indexes may be a second sort index. For example, when the primary and secondary indexes of each item are expressed in the form (x, y) in order, five items A(1,0), B(2,0), C(3,0) , D(4,0), E(5,0) can be assumed. At this time, if item E is changed to be located in the next order of item A in the update order, the multiple sorting indexes of item E will be updated in any one of E(2,-1) and E(1,1). I can. E(2,-1) may be an update form of multiple sorting indices corresponding to the case of considering item B, which is located in the next step of item E in the update order. In addition, E(1,1) may be an update form of multiple sorting indices corresponding to the case of considering the item A located in the previous stage of the item E in the update order.

이 때, 업데이트 아이템들과 갱신 순서가 한 단계씩 차이 나는 아이템들의 주요 색인이 동일한 경우에, 업데이트 아이템들과 갱신 순서가 한 단계씩 차이 나는 아이템들 중 어느 하나의 보조 색인을 변경하여 업데이트 아이템들을 업데이트할 수 있다. 예를 들어, 3개의 아이템 A(1,0), B(1,1), C(2,0)이 있다고 가정하였을 때, 아이템 C가 갱신 순서 상 아이템 A의 다음 순서에 위치하도록 변경되는 경우에는 아이템 C의 다중 정렬 색인만을 업데이트하여 아이템들을 정렬하기 어려울 수 있다. 왜냐하면, 아이템 A와 아이템 B의 주요 색인이 동일하면서, 보조 색인이 각각 '0'과 '1'이기 때문에 아이템 C의 보조 색인을 '0'과 '1'사이의 정수 값으로 설정할 수 없다. 따라서, A(1,0), C(1,1), B(1,2)의 형태와 같이 아이템 B의 보조 색인을 함께 업데이트할 수 있다. 또는 A(1,-1), C(1,0), B(1,1)의 형태와 같이 아이템 A의 보조 색인을 함께 업데이트함으로써 아이템 정렬을 수행할 수 있다.In this case, if the main indexes of the update items and the items whose update order is different by one step are the same, the secondary index of any one of the update items and the items whose update order is different by one step is changed to change the update items. Can be updated. For example, assuming that there are three items A(1,0), B(1,1), and C(2,0), item C is changed to be located in the next order of item A in the update order. It may be difficult to sort items by updating only the multiple sorting indexes of item C. Because the primary indexes of item A and item B are the same, and the secondary indexes are '0' and '1', respectively, the secondary index of item C cannot be set to an integer value between '0' and '1'. Therefore, it is possible to update the auxiliary index of item B together in the form of A(1,0), C(1,1), and B(1,2). Alternatively, item sorting can be performed by updating the auxiliary index of item A together in the form of A(1,-1), C(1,0), and B(1,1).

이 때, 업데이트 아이템들과 갱신 순서가 한 단계씩 차이 나는 아이템들과 주요 색인이 동일한 아이템들의 개수를 고려하여 업데이트 아이템들을 업데이트할 수 있다. 예를 들어, 5개의 아이템 A(1,-1), B(1,0), C(1,1), D(2,0), E(3,0)가 있다고 가정하였을 때, 아이템 E가 갱신 순서 상 아이템 C의 다음 순서에 위치하도록 변경되는 경우에는 E(1,2) 및 D(2,-1) 중 어느 하나의 형태로 다중 정렬 색인들을 업데이트 할 수 있다. 만약 E(1,2)의 형태로 다중 정렬 색인이 업데이트 된다면, 아이템을 정렬할 때 주요 색인이 동일한 4개의 아이템 A, B, C 및 E의 보조 색인을 이용하여 아이템 정렬을 수행할 수 있다. 그러나 E(2, -1)의 형태로 다중 정렬 색인이 업데이트 된다면 아이템을 정렬할 때 주요 색인이 동일한 2개의 아이템 E와 D의 보조 색인을 이용하여 아이템 정렬을 수행하게 되므로 업데이트를 위한 시스템의 작업량이 보다 감소할 수 있다. 따라서, 주요 색인이 동일한 아이템들의 개수를 고려하였을 때, 상대적으로 주요 색인이 동일한 아이템 개수가 적은 쪽으로 다중 정렬 색인들을 업데이트하여 시스템의 작업량을 감소시킬 수 있다.In this case, the updated items may be updated in consideration of the number of items having the same main index and items having a difference between the update items and the update order by one step. For example, assuming that there are 5 items A(1,-1), B(1,0), C(1,1), D(2,0), E(3,0), item E When is changed to be located in the next order of item C in the update order, multiple sorting indexes may be updated in any one of E(1,2) and D(2,-1). If multiple sorting indexes are updated in the form of E(1,2), when sorting items, item sorting can be performed using auxiliary indexes of four items A, B, C, and E with the same primary index. However, if multiple sorting indexes are updated in the form of E(2, -1), when sorting items, the system's workload for updating is performed by using the secondary indexes of two items E and D with the same primary index. It can be reduced more than this. Accordingly, when the number of items having the same main index is considered, the amount of work of the system can be reduced by updating the multiple sorting indexes toward a relatively small number of items having the same main index.

이 때, 다중 정렬 색인들에 포함되는 적어도 하나의 보조 색인을 이용하여 업데이트 아이템들을 업데이트할 수 있다. 예를 들어, 다중 정렬 색인들에 포함되는 주요 색인에 대해서 두 개의 보조 색인이 존재한다면, 각각의 보조 색인들을 단계적으로 이용하여 업데이트 아이템들을 업데이트할 수 있다. 만약 주요 색인에 대한 두 개의 보조 색인을 각각 제1 보조 색인 및 제2 보조 색인이라고 가정하고 (x, y, z)로 표현한다면, 3개의 아이템에 대해 A(1,0,0), B(1,1,0), C(2,0,0)으로 나타낼 수 있다. 이 때, 아이템 C가 갱신 순서상 아이템 A의 다음 순서에 위치하도록 변경되는 경우에는 C(1,1,-1)의 형태로 아이템 C의 다중 정렬 색인들을 업데이트할 수 있다.In this case, update items may be updated using at least one auxiliary index included in the multiple sorting indexes. For example, if there are two secondary indexes for a primary index included in the multiple sorting indexes, update items may be updated using each secondary index step by step. If the two secondary indexes for the primary index are assumed to be the first secondary index and the second secondary index, respectively, and expressed as (x, y, z), A(1,0,0), B( It can be represented by 1,1,0) and C(2,0,0). In this case, when item C is changed to be positioned next to item A in the update order, multiple sorting indexes of item C may be updated in the form of C(1,1,-1).

이 때, 제외 아이템들은 업데이트하지 아니할 수 있다. 예를 들어, 1위부터 5위까지의 노출 순위를 갖는 5개의 아이템이 있다고 가정하였을 때, 노출 순위 변동에 따라 5위의 아이템 순위를 1위로 변경할 수 있다. 만약 기존의 업데이트 방법을 이용한다면 5위의 아이템 순위를 1위로 업데이트하고 1위부터 4위에 해당하는 아이템들의 순위는 하나씩 더해지도록 업데이트함으로써 총 5번의 업데이트 작업이 필요할 수 있다. 그러나 이러한 업데이트 방법은 아이템의 개수가 많을 경우에 시스템에 부하를 줄 수 있기 때문에, 많은 개수의 컨텐츠를 제공하는 스토어 등에서 사용하기에 적절한 방법이 아닐 수 있다. 따라서, 최장 증가 부분수열을 통해 1위부터 4위에 해당하는 아이템들은 업데이트 작업에서 제외될 제외 아이템들로 선별할 수 있다. 또한, 아이템들 중 제외 아이템들을 제외한 5위의 아이템만을 업데이트 아이템으로 선별하여 업데이트를 수행함으로써 시스템의 작업량을 현저하게 감소시킬 수 있다.In this case, the excluded items may not be updated. For example, assuming that there are 5 items having an exposure ranking from 1st to 5th, the ranking of the 5th item may be changed to 1st according to the change in the exposure ranking. If the existing update method is used, a total of 5 update operations may be required by updating the ranking of the items in the 5th place to the 1st place, and updating the rankings of the items corresponding to the 1st to 4th places one by one. However, since such an update method may place a load on the system when the number of items is large, it may not be an appropriate method to be used in a store that provides a large number of contents. Accordingly, items corresponding to the first to fourth places through the longest increasing partial sequence can be selected as excluded items to be excluded from the update operation. In addition, it is possible to significantly reduce the amount of work of the system by selecting only the fifth item excluding the excluded items among the items as update items and performing the update.

또한, 본 발명의 일실시예에 따른 아이템 정렬 방법은 다중 정렬 색인들을 이용하여 아이템들에 대한 아이템 정렬을 수행할 수 있다(S130). 본 발명에서와 같은 아이템 목록이나 다양한 컨텐츠를 제공하는 스토어 등에서 사용자들에게 제공하는 컨텐츠의 아이템 목록을 정렬을 위해서는 일반적으로 단일 정렬 색인을 이용할 수 있다. 하지만, 단일 정렬 색인을 이용하여 노출 순위가 수시로 변경되는 아이템들 및 컨텐츠들을 업데이트하고 아이템 목록을 정렬하기에는 매우 복잡한 연산과정이 필요할 수 있다. 따라서, 본 발명에서는 두 개 이상의 색인을 통한 다중 정렬 색인을 이용하여 노출 순위가 수시로 변경되는 환경에서 아이템이나 컨텐츠를 보다 효과적으로 업데이트하고 아이템들의 아이템 정렬을 수행할 수 있다. 예를 들어, C1부터 Cn까지의 n개의 정렬 색인을 이용하여 SQL select에서 "order by C1, C2, ... , Cn"으로 정렬할 수 있다. 첫 번째 정렬 색인 C1을 이용하여 정렬을 수행하고 단계적으로 C2, C3, ... , Cn까지의 정렬 색인들을 이용하여 아이템 정렬을 수행할 수 있다. 또한, 두 번째 정렬 색인인 C2는 첫 번째 정렬 색인인 C1들의 값을 업데이트하지 않고 C2의 값을 통해서만 아이템 정렬을 수행할 수 있다.In addition, the item sorting method according to an embodiment of the present invention may perform item sorting of items using multiple sorting indexes (S130). In general, a single sorting index can be used to sort an item list of contents provided to users in an item list or a store providing various contents as in the present invention. However, a very complicated calculation process may be required to update items and contents whose exposure ranking is frequently changed using a single sorting index and to sort the item list. Accordingly, in the present invention, items or contents can be more effectively updated and item sorting of items can be performed in an environment in which the exposure order is frequently changed by using a multiple sorting index through two or more indexes. For example, you can sort by "order by C1, C2, ..., Cn" in SQL select using n sorting indexes from C1 to Cn. Sorting can be performed using the first sorting index C1, and item sorting can be performed using sorting indices up to C2, C3, ..., Cn step by step. Also, the second sorting index C2 can perform item sorting only through the value of C2 without updating the values of the first sorting index C1s.

이 때, 아이템들 중 다중 정렬 색인들 중 주요 색인(primary index)이 동일한 아이템들에 대하여 다중 정렬 색인들 중 보조 색인(auxiliary index)을 이용하여 업데이트 아이템들을 업데이트 할 수 있다. 예를 들어, A(1,0), B(2,0), C(3,0), D(4,0), E(5,0)의 5개의 아이템이 있다고 가정할 수 있다. 만약 아이템 E가 갱신 순서 상 아이템 A의 다음 단계에 위치한다면, 아이템 E는 아이템 A의 주요 색인을 고려하여 E(2,0)의 형태로 다중 정렬 색인들을 업데이트 할 수 있다. 그러나, 이와 같이 업데이트할 경우 업데이트된 아이템 E의 정렬 색인이 아이템 B(2,0)와 동일하기 때문에 시스템에서 아이템 정렬 시 오류가 발생할 수 있다. 따라서, E(2,-1)의 형태와 같이 보조 색인을 사용함으로써 시스템에서 원활하게 아이템 정렬을 수행할 수 있다.In this case, for items having the same primary index among the multiple sorting indices, the updated items may be updated using an auxiliary index among the multiple sorting indices. For example, it can be assumed that there are five items: A(1,0), B(2,0), C(3,0), D(4,0), and E(5,0). If item E is positioned at the next level of item A in the update order, item E can update multiple sorting indices in the form of E(2,0), taking into account the main index of item A. However, when updating in this way, an error may occur when sorting items in the system because the sorting index of the updated item E is the same as that of item B(2,0). Therefore, by using an auxiliary index, such as in the form of E(2,-1), it is possible to smoothly sort items in the system.

이와 같은 아이템 정렬 방법을 이용하여 아이템 목록의 다양한 아이템들 중 업데이트 할 아이템만 선별하여 업데이트를 수행함으로써, 아이템 업데이트에 따른 시스템 작업량을 현저하게 감소시킬 수 있어 시스템을 보다 효율적으로 사용할 수 있도록 도울 수 있다.By selecting and updating only the item to be updated from among various items in the item list using such an item sorting method, the system workload according to item update can be significantly reduced, so that the system can be used more efficiently. .

도 2는 아이템 정렬 과정을 나타낸 도면이다.2 is a diagram illustrating an item arrangement process.

도 2를 참조하면, 아이템 정렬 과정은 아이템 목록의 10위에 위치하던 '퍼스트 어벤져' 아이템이 1위로 업데이트됨으로써, 기존의 1위에서 9위까지의 9개의 아이템들도 하나의 순위씩 밀려나도록 업데이트 된 것을 알 수 있다. 이 과정에서 시스템은 아이템 목록을 정렬하기 위해 총 10번의 업데이트 작업을 수행할 수 있다.Referring to FIG. 2, in the item sorting process, the'First Avenger' item, which was located at the 10th place in the item list, is updated to the first place, so that the existing 9 items from the 1st place to the 9th place are also updated to be pushed one by one. Able to know. In this process, the system can perform a total of 10 update operations to sort the item list.

이 때, 도 2에서는 10개의 아이템만을 포함한 아이템 목록을 아이템 정렬 과정을 통해 업데이트 및 정렬했지만, 실제로 다양한 카테고리에 해당하는 컨텐츠들이나 아이템들을 제공하는 스토어에서는 컨텐츠나 아이템의 개수가 많은 아이템 목록에 대해서 도 2와 같은 아이템 정렬을 수행할 수 있다. 또한, 카테고리에 따라 다양한 종류의 아이템 목록이 존재할 수 있기 때문에 각각의 아이템 목록에 대해서도 아이템 정렬을 수시로 수행할 수 있다. 예를 들어, 10000개의 아이템으로 구성된 아이템 목록에서 도 2의 경우와 같이 최하위에 위치하던 아이템이 최상위로 업데이트 된다면, 시스템에서는 총 10000번의 업데이트 작업을 수행하여야 하며, 이는 시스템에 커다란 부하를 제공하는 원인이 될 수 있다. 또한, 예를 들어, 10종류의 카테고리에 상응하는 아이템들이 혼재되어 있는 아이템 목록이 있다면, 각각의 카테고리에 따른 아이템 목록까지 총 11개의 아이템 목록에 대해서 이와 같은 아이템 정렬을 수행해야 할 수 있다. 이러한 업데이트 및 아이템 정렬의 과정 또한 시스템에게 대량의 연산을 요구하므로, 사용자들에게 최신 정보를 반영한 서비스를 제공해야 하는 시스템의 아이템 정렬 방법으로는 적절하지 않을 수 있다.In this case, in FIG. 2, an item list including only 10 items was updated and sorted through an item sorting process, but in a store that actually provides contents or items corresponding to various categories, an item list with a large number of contents or items is also shown. Item sorting as shown in 2 can be performed. In addition, since various types of item lists may exist according to categories, item sorting can be performed at any time for each item list. For example, in an item list consisting of 10000 items, if the item located at the lowest position is updated to the highest level as in the case of FIG. 2, the system must perform a total of 10000 update operations, which causes a large load on the system. Can be In addition, for example, if there is an item list in which items corresponding to 10 types of categories are mixed, such item sorting may be performed for a total of 11 item lists up to the item list according to each category. Since such a process of updating and sorting items also requires a large amount of computation from the system, it may not be appropriate as an item sorting method of a system that must provide a service reflecting the latest information to users.

도 3은 카테고리에 따른 아이템 목록을 나타낸 도면이다.3 is a diagram showing a list of items according to categories.

도 3을 참조하면, 카테고리에 따른 아이템 목록은 다양한 카테고리에 상응하는 아이템들이 혼재되어 있는 전체 아이템 목록(310)과 특정 카테고리에 상응하는 아이템들로만 구성된 카테고리 아이템 목록(320)을 확인할 수 있다.Referring to FIG. 3, in the item list according to categories, an entire item list 310 in which items corresponding to various categories are mixed and a category item list 320 composed only of items corresponding to a specific category can be checked.

전체 아이템 목록(310)은 모든 카테고리에 대한 아이템들을 이용하여 구성한 아이템 목록일 수 있다. 전체 아이템 목록(310)에 포함된 아이템들은 각각의 카테고리에 상관없이 해당 아이템의 인기도나 최신성에 따라 전체 아이템 목록(310)에서의 노출 순위가 변경될 수 있다. The entire item list 310 may be an item list constructed using items for all categories. Items included in the all-item list 310 may have an exposure ranking in the all-item list 310 changed according to the popularity or freshness of the corresponding item regardless of each category.

이 때, 전체 아이템 목록(310)에서 특정 아이템의 노출 순위가 변경됨에 따라, 해당 아이템의 카테고리에 상응하는 아이템들로만 구성된 카테고리 아이템 목록(320)에서도 노출 순위가 변경될 수 있다. 이와 같이 전체 아이템 목록(310)에서 노출 순위가 변경됨에 따라 업데이트된 아이템을, 해당 카테고리 아이템 목록(320)에서도 동일하게 적용시키기 위해서 본 발명에서는 갱신 순서에 대한 최장 증가 부분수열을 이용할 수 있다. In this case, as the exposure order of a specific item in the entire item list 310 is changed, the exposure order may also be changed in the category item list 320 consisting only of items corresponding to the category of the corresponding item. In this way, in order to apply the updated item to the corresponding category item list 320 as the exposure order is changed in the entire item list 310, in the present invention, the longest incremental partial sequence for the update order may be used.

갱신 순서는 아이템 노출 순위 변동과 같은 변화에 따라 아이템 목록에 포함된 아이템들을 배열한 순서일 수 있다. 예를 들어, 전체 아이템 목록(310)에서 16위에 위치하는 게임 카테고리에 상응하는 아이템을 아이템 A라고 가정하였을 때, 아이템 A가 노출 순위 변동으로 인하여 10위가 된다고 가정할 수 있다. 이 때, 갱신 순서는 1-2-3-4-5-6-7-8-9-16-10-11-12-13-14-15 일 수 있다. 따라서 이와 같은 갱신 순서에 대한 최장 증가 부분수열을 찾고, 최장 증가 부분수열에 해당하지 않는 16에 상응하는 아이템 A만 업데이트 할 수 있다. The update order may be an order in which items included in the item list are arranged according to a change such as a change in item exposure order. For example, when an item corresponding to the game category at the 16th place in the total item list 310 is assumed to be item A, it may be assumed that item A is at 10th place due to a change in exposure ranking. At this time, the update order may be 1-2-3-4-5-6-7-8-9-16-10-11-12-13-14-15. Therefore, it is possible to find the longest incremental subsequence for such an update order, and update only item A corresponding to 16 that does not correspond to the longest incremental subsequence.

또한, 게임 카테고리에 대한 카테고리 아이템 목록(320)에서도 아이템 A의 노출 순위 변동으로 인해서 1-2-6-8-16-11-12-13 과 같은 갱신 순서가 생성될 수 있다. 이 경우에도 마찬가지로 최장 증가 부부수열을 찾고, 최장 증가 부분수열에 해당하지 않는 16에 상응하는 아이템 A만 업데이트 할 수 있다. Also, in the category item list 320 for the game category, an update order such as 1-2-6-8-16-11-12-13 may be generated due to a change in the exposure order of item A. In this case as well, it is possible to find the longest increasing couple sequence and update only item A corresponding to 16 that does not correspond to the longest incremental subsequence.

이와 같이 아이템들의 노출 순위 변동에 대해서 갱신 순서에 대한 최장 증가 부분수열을 이용하여 아이템들의 업데이트 및 아이템 정렬을 수행함으로써, 다양한 아이템 목록들에 대해서도 효과적으로 업데이트가 가능할 수 있다.As described above, updates of items and item sorting are performed using the longest increasing partial sequence for the update order with respect to the change in the exposure order of items, so that it is possible to effectively update various item lists.

도 4는 아이템 노출 순위 변경을 나타낸 도면이다.4 is a diagram showing a change in item exposure order.

도 4를 참조하면, 노출 순위 변경 전 아이템 목록(410)과 많은 아이템들의 노출 순위가 변경된 노출 순위 변경 후 아이템 목록(420)을 확인할 수 있다.Referring to FIG. 4, an item list 410 before the exposure order is changed and an item list 420 after the exposure order in which the exposure order of many items is changed may be checked.

노출 순위 변경 전 아이템 목록(410)에 포함된 아이템들의 인기도나 최신성에 따라 아이템들의 노출 순위가 변경될 수 있다. 이 때, 소수의 아이템들에 대해서만 노출 순위가 변경될 수 있지만, 노출 순위 변경 후 아이템 목록(420)과 같이 많은 수의 아이템에 대해서 노출 순위가 변경되는 경우가 많을 수 있다. 이처럼 아이템들의 노출 순위가 복잡하게 변경되는 경우에 전체 아이템들에 대해서 모두 업데이트를 수행하여 아이템 정렬을 수행할 수 있다. Prior to changing the exposure order, the exposure order of the items may be changed according to the popularity or freshness of the items included in the item list 410. In this case, the exposure order may be changed for only a small number of items, but there may be many cases where the exposure order is changed for a large number of items such as the item list 420 after the exposure order is changed. In this case, when the exposure order of items is complicatedly changed, item sorting may be performed by performing updates for all items.

하지만 복잡하게 변경된 경우에도 갱신 순서에 대한 최장 증가 부분수열을 이용하면 모든 아이템들을 업데이트하지 않고 업데이트할 아이템만 찾아서 업데이트할 수 있다. 예를 들어, 노출 순위 변경 후 아이템 목록(420)에 나열된 숫자들을 갱신 순서로 하여 최장 증가 부분수열을 찾을 수 있다. 예를 들어, 3-4-5-6-7-8, 2-4-5-6-7-8 및 1-4-5-6-7-8 등의 최장 증가 부분수열들을 찾을 수 있다. 따라서, 최장 증가 부분수열들 중 어느 하나를 선택하고, 선택한 최장 증가 부분수열에 해당하는 아이템을 제외 아이템으로 선별함으로써 업데이트할 업데이트 아이템은 10개로 선별될 수 있다. 이와 같이 복잡한 노출 순위에 변경의 경우에도 최장 증가 부분수열을 이용하여 아이템 목록에 포함된 모든 아이템을 업데이트하지 않고 업데이트할 최소한의 아이템을 결정하여 업데이트함으로써, 시스템의 업데이트 작업량을 감소시킬 수 있다.However, even in the case of complicated changes, by using the longest incremental subsequence for the update order, it is possible to find and update only the item to be updated without updating all the items. For example, after changing the exposure order, the number listed in the item list 420 is updated in order to find the longest increasing partial sequence. For example, you can find the longest increasing subsequences of 3-4-5-6-7-8, 2-4-5-6-7-8, and 1-4-5-6-7-8. Accordingly, by selecting any one of the longest increasing subsequences and selecting an item corresponding to the selected longest increasing subsequence as an exclusion item, 10 update items to be updated may be selected. Even in the case of a change in such a complicated exposure ranking, the amount of update work of the system can be reduced by determining and updating the minimum item to be updated without updating all items included in the item list using the longest increasing partial sequence.

도 5는 최장 증가 부분수열의 일 예를 나타낸 도면이다.5 is a diagram showing an example of the longest increasing partial sequence.

도 5를 참조하면, 일반 수열(510)에 포함된 숫자들을 각각 하나의 아이템으로 가정할 수 있다. 만약 일반 수열(510)에 포함된 숫자들의 배열을 아이템 목록에서의 노출 순위라고 가정한다면, 노출 순위의 변동으로 인하여 변동 수열(520)과 같은 배열로 아이템들의 노출 순위가 변경될 수 있다. Referring to FIG. 5, each number included in the general sequence 510 may be assumed to be one item. If the arrangement of numbers included in the general sequence 510 is assumed to be the exposure ranking in the item list, the exposure ranking of the items may be changed in the same arrangement as the variable sequence 520 due to a change in the exposure ranking.

이 때, 아이템들의 노출 순위 변동과 같은 변화에 따라 아이템 목록에 포함된 아이템들을 배열한 순서를 갱신 순서라 할 수 있다. 도 5에서는 변동 수열(520)에 상응하는 배열을 갱신 순서라 할 수 있다. In this case, the order in which items included in the item list are arranged according to a change such as a change in the exposure order of items may be referred to as an update order. In FIG. 5, an arrangement corresponding to the variable sequence 520 may be referred to as an update order.

이 때, 갱신 순서의 최장 증가 부분수열을 통해 아이템 목록에 포함된 아이템들 중 업데이트에서 제외할 제외 아이템들을 선별할 수 있다. 최장 증가 부분수열은 값이 증가하는 부분수열 중 가장 긴 수열로, 앞에서부터 뒤로 증가하는 숫자를 선택해 나갈 때 최대 길이를 갖는 수열이다. 예를 들어, 변동 수열(520)에서 최장 증가 부분수열을 찾으면 1-2-3-5-6 일 수 있다. 따라서, 갱신 순서가 최장 증가 부분수열에 해당하는 아이템들을 제외 아이템(530)으로 선별할 수 있다.In this case, it is possible to select excluded items to be excluded from the update among items included in the item list through the longest increasing partial sequence of the update order. The longest increasing subsequence is the longest among subsequences of increasing value, and is a sequence having the maximum length when selecting a number that increases from front to back. For example, if the longest increasing partial sequence is found in the variable sequence 520, it may be 1-2-3-5-6. Accordingly, items corresponding to the longest increasing partial sequence in the update order may be selected as the exclude items 530.

이 때, 변동 수열(520)의 갱신 순서에 상응하는 아이템들 중 제외 아이템(530)을 제외한 아이템을 업데이트 아이템으로 선별할 수 있다. 따라서, 아이템 목록에 포함된 아이템들 중에서 업데이트 아이템들만 업데이트를 수행할 수 있다. 예를 들어, 도 5에서는 변동 수열(520)의 갱신 순서가 4와 7에 상응하는 아이템을 업데이트할 수 있다. 이와 같이 최장 증가 부분수열을 이용하여 아이템 목록에 포함된 아이템들 중 업데이트할 업데이트 아이템들만 선별하여 업데이트함으로써, 시스템이 처리할 업데이트 작업량을 최소한으로 감소시킬 수 있다.In this case, among items corresponding to the update order of the variable sequence 520, items other than the excluded item 530 may be selected as the update item. Accordingly, only update items among items included in the item list can be updated. For example, in FIG. 5, items corresponding to 4 and 7 in the update order of the variable sequence 520 may be updated. As described above, by selecting and updating only the update items to be updated among the items included in the item list using the longest increasing partial sequence, the amount of update work to be processed by the system can be reduced to a minimum.

도 6은 본 발명의 일실시예에 따른 다중 정렬 색인을 이용한 아이템 정렬 과정을 나타낸 도면이다.6 is a diagram illustrating an item sorting process using a multiple sorting index according to an embodiment of the present invention.

도 6를 참조하면, 본 발명의 일실시예에 따른 다중 정렬 색인을 이용한 아이템 정렬 과정은 순위 변경 전 아이템 목록(610)에 포함된 아이템 E가 갱신 순서 상 아이템 A의 다음에 위치하도록 노출 순위가 변경된 것을 알 수 있다.Referring to FIG. 6, in the item sorting process using a multiple sorting index according to an embodiment of the present invention, the exposure priority is so that the item E included in the item list 610 before the order change is positioned after the item A in the update order. You can see that it has changed.

순위 변경 후 아이템 목록(620)을 확인하면 아이템 E는 갱신 순서 상 아이템 A의 다음으로 이동하면서 주요 색인과 보조 색인이 각각 (2, -1)로 업데이트 된 것을 확인할 수 있다. 이와 같이 다중 정렬 색인들을 이용하여 업데이트함으로써 아이템 정렬 시, 순위 변경 후 아이템 목록(620)의 아이템 E와 주요 색인이 동일한 아이템 B는 보조 색인을 이용하여 정렬될 수 있다. 예를 들어, 도 6과 같이 보조 색인이 '-1'인 아이템 E가 아이템 B보다 아이템 목록에서 이전 순서에 위치할 수 있다.If the item list 620 is checked after the ranking is changed, it can be seen that the main index and the secondary index are updated to (2, -1), respectively, while item E moves to the next item A in the update order. When the items are sorted by using multiple sorting indices as described above, item B in the item list 620 having the same main index as item E in the item list 620 after ranking change may be sorted using the auxiliary index. For example, as shown in FIG. 6, item E with an auxiliary index of'-1' may be located in a previous order in the item list than item B.

또한, 아이템 E의 주요 색인과 보조 색인을 각각 (1,1)로 업데이트함으로써 아이템 정렬을 수행할 수 있다. 이와 같은 경우, 순위 변경 후 아이템 목록(620)의 아이템 E와 주요 색인이 동일한 아이템 A는 보조 색인을 이용하여 정렬될 수 있다. 예를 들어, 보조 색인이 '1'인 아이템 E가 아이템 목록에서 아이템 A의 다음 순서에 위치할 수 있다.Also, item sorting can be performed by updating the primary and secondary indexes of item E to (1,1), respectively. In this case, the item A in the item list 620 having the same main index as the item E after the ranking change may be sorted using the auxiliary index. For example, item E with an auxiliary index of '1' may be located in the next order of item A in the item list.

이 때, 업데이트 아이템들과 갱신 순서가 한 단계씩 차이 나는 아이템들의 주요 색인이 동일한 경우에, 업데이트 아이템들과 갱신 순서가 한 단계씩 차이 나는 아이템들 중 어느 하나의 보조 색인을 변경하여 업데이트 아이템들을 업데이트할 수 있다. 예를 들어, 순위 변경 후 아이템 목록(620)의 아이템 D가 갱신 순서 상 아이템 E의 다음으로 이동한다고 가정한다면, 아이템 E와 아이템 B 중 어느 하나의 보조 색인을 함께 업데이트하면서 아이템 D를 업데이트할 수 있다. 만약 아이템 E의 보조 색인을 함께 업데이트한다면, E(2,-2), D(2,-1), B(2,0)의 형태로 다중 정렬 색인들을 업데이트할 수 있다. 또한, 아이템 B의 보조 색인을 함께 업데이트 한다면, E(2,-1), D(2,0), B(2,1)의 형태로 다중 정렬 색인들을 업데이트할 수 있다.In this case, if the main indexes of the update items and the items whose update order is different by one step are the same, the secondary index of any one of the update items and the items whose update order is different by one step is changed to change the update items. Can be updated. For example, if it is assumed that item D in the item list 620 moves to the next item E in the update order after the ranking is changed, item D can be updated while updating the secondary index of either item E or item B together. have. If we update the secondary index of item E together, we can update multiple sorting indices in the form of E(2,-2), D(2,-1), and B(2,0). Also, if the auxiliary indexes of item B are updated together, multiple sorting indexes can be updated in the form of E(2,-1), D(2,0), and B(2,1).

도 7은 본 발명의 다른 실시예에 따른 다중 정렬 색인을 이용한 아이템 정렬 과정을 나타낸 도면이다.7 is a diagram illustrating an item sorting process using a multiple sorting index according to another embodiment of the present invention.

도 7을 참조하면, 본 발명의 다른 실시예에 따른 다중 정렬 색인을 이용한 아이템 정렬 과정은 2개의 정렬 색인을 이용한 아이템 목록(710)에 포함된 아이템 C를 갱신 순서 상 아이템 E의 다음 순서에 위치하도록 업데이트를 수행하는 것을 알 수 있다. Referring to FIG. 7, in the item sorting process using a multiple sorting index according to another embodiment of the present invention, item C included in the item list 710 using two sorting indexes is located in the next order of item E in the update order. You can see that you are performing the update to do so.

3개의 정렬 색인을 이용한 아이템 목록(720)을 확인하면 아이템 C는 갱신 순서 상 아이템 E의 다음 순서로 이동하면서 제2 보조 색인을 이용하여 (2,-1,-1)로 업데이트 된 것을 확인할 수 있다. 이와 같이 주요 색인과 제1 보조 색인이 동일하더라도 제2 보조 색인을 이용하여 간단하게 업데이트를 수행할 수 있다. If you check the item list 720 using three sorting indices, you can see that item C has been updated to (2,-1,-1) using the second auxiliary index while moving to the next order of item E in the update order. have. As described above, even if the primary index and the first secondary index are the same, an update can be performed simply by using the second secondary index.

이 때, 제2 보조 색인을 사용하지 않고, C(2,-1), D(2,-2)의 형태로 업데이트할 수도 있다. 하지만 만약 주요 색인이 '2'로 동일한 아이템의 개수가 많은 경우에는 경우에 따라 많은 아이템들의 제1 보조 색인을 업데이트하는 경우가 발생할 수 있기 때문에, 도 7와 같이 제2 보조 색인을 이용하여 아이템을 업데이트할 수 있다.In this case, it is possible to update in the form of C(2,-1) and D(2,-2) without using the second auxiliary index. However, if the main index is '2' and the number of the same items is large, the first auxiliary index of many items may be updated in some cases. Can be updated.

도 8은 본 발명의 일실시예에 따른 아이템 정렬 장치를 나타낸 블록도이다.8 is a block diagram showing an item sorting apparatus according to an embodiment of the present invention.

도 8을 참조하면, 본 발명의 일실시예에 따른 아이템 정렬 장치(800)는 아이템 목록 수신부(810), 아이템 업데이트부(820), 아이템 정렬부(830) 및 아이템 데이터베이스(840)를 포함할 수 있다.Referring to FIG. 8, the item sorting apparatus 800 according to an embodiment of the present invention includes an item list receiving unit 810, an item updating unit 820, an item sorting unit 830, and an item database 840. I can.

아이템 목록 수신부(810)는 서버로부터 아이템 목록을 수신할 수 있다. The item list receiving unit 810 may receive an item list from a server.

이 때, 아이템들은 각각 상품, 컨텐츠 또는 서비스 등에 상응하는 것일 수 있다. 예를 들어, 모바일 어플리케이션을 제공하는 앱스토어나 스마트폰, 태블릿PC 등을 이용하여 실행할 수 있는 컨텐츠 및 아이템 등을 제공하는 스토어 등을 관리하는 서버 시스템으로부터 아이템 목록을 수신할 수 있다. 이와 같은 아이템 목록은 전체 카테고리에 대한 아이템들이 혼재되어 있는 아이템 목록부터 카테고리별 아이템의 아이템 목록까지 다양한 아이템 목록일 수 있다.In this case, each of the items may correspond to a product, content, or service. For example, an item list may be received from a server system that manages an app store that provides mobile applications or a store that provides content and items that can be executed using a smartphone or a tablet PC. Such an item list may be a list of various items from an item list in which items for all categories are mixed to an item list of items for each category.

아이템 업데이트부(820)는 아이템 목록에 포함된 아이템들 중 업데이트 아이템들을 선별하고, 업데이트 아이템들에 상응하는 다중 정렬 색인들을 이용하여 업데이트 아이템들을 업데이트할 수 있다.The item update unit 820 may select update items from among items included in the item list, and update the update items using multiple sorting indexes corresponding to the update items.

스마트 폰이나 태블릿 PC를 통해서 이용할 수 있는 상품, 컨텐츠 및 서비스는 그 종류에 따라 어플리케이션 스토어, 북 스토어 및 뮤직 스토어 등 다양한 종류의 스토어를 통해 제공될 수 있다. 이러한 아이템들은 아이템 목록을 통해 사용자들에게 노출시킬 수 있다. 또한, 아이템 목록을 전시할 때 아이템 목록에 포함된 아이템들 각각의 인기도나 최신성 등을 반영하여 아이템 목록에서의 노출 순위를 결정할 수 있다. 이와 같은 노출 순위는 인기도나 최신성을 반영하기 때문에 시간이 지남에 따라 수시로 변동될 수 있다. 따라서, 아이템을 제공하는 서버 시스템에서는 사용자들에게 업데이트 된 최신 정보를 제공하기 위해서 아이템들의 노출 순위 변동에 따라 시스템에 저장된 정보들을 실시간으로 업데이트하여 제공할 수 있다.Products, contents, and services that can be used through a smart phone or tablet PC may be provided through various types of stores such as an application store, a book store, and a music store, depending on the type. These items can be exposed to users through an item list. In addition, when displaying the item list, the ranking of exposure in the item list may be determined by reflecting the popularity or freshness of each of the items included in the item list. Since such exposure ranking reflects popularity or up-to-dateness, it may change from time to time over time. Accordingly, in a server system providing an item, in order to provide updated information to users, information stored in the system may be updated in real time according to a change in the exposure order of items.

그러나, 이와 같이 시스템에 저장된 정보들을 업데이트하기 위해 매번 수많은 아이템들을 모두 업데이트하는 행위는 시스템에 커다란 부하를 가져올 수 있다. 따라서 아이템들을 업데이트할 때 시스템이 처리할 업데이트 작업량을 최소한으로 감소시킬 수 있는 값들을 찾아 업데이트를 수행할 수 있다.However, updating all of the numerous items each time to update the information stored in the system as described above can place a great load on the system. Therefore, when updating items, it is possible to perform the update by finding values that can reduce the amount of update work to be processed by the system to a minimum.

이 때, 아이템 목록에 포함된 아이템들 중 최장 증가 부분수열에 해당하는 제외 아이템을 선별하고, 아이템들에서 제외 아이템들을 제외하여 업데이트 아이템들을 선별할 수 있다.In this case, an excluded item corresponding to the longest increasing partial sequence among items included in the item list may be selected, and the updated items may be selected by excluding the excluded items from the items.

시스템에서 처리할 업데이트 작업량을 최소한으로 감소시킬 수 있는 경우의 값들을 찾기 위해 최장 증가 부분수열을 이용할 수 있다. 최장 증가 부분수열은 값이 증가하는 부분수열 중 가장 긴 수열로, 앞에서부터 뒤로 증가하는 숫자를 선택해 나갈 때 최대 길이를 갖는 수열이다. 예를 들어, 5개의 아이템들이 1-4-2-3-5 의 갱신 순서를 갖는다면, 갱신 순서에서 최장 증가 부분수열은 4개의 갱신 순서를 수열로 갖는 1-2-3-5 일 수 있다. 또한, 최장 증가 부분수열인 1-2-3-5 에 해당하는 갱신 순서에 상응하는 아이템들은 제외 아이템들로 선별할 수 있다.The longest incremental subsequence can be used to find values in cases where the amount of update work to be processed by the system can be reduced to a minimum. The longest increasing subsequence is the longest among subsequences of increasing value, and is a sequence having the maximum length when selecting a number that increases from front to back. For example, if 5 items have an update order of 1-4-2-3-5, the longest increasing subsequence in the update order may be 1-2-3-5 having 4 update orders as a sequence. . In addition, items corresponding to an update order corresponding to 1-2-3-5, which is the longest incremental partial sequence, may be selected as excluded items.

이 때, 갱신 순서는 노출 순위 변동과 같은 변화에 따라 아이템 목록에 포함된 아이템들을 배열한 순서일 수 있다. 예를 들어, 아이템 목록의 1위부터 5위까지의 아이템들 중 5위의 아이템 순위가 1위로 변경되었다면 갱신 순서는 5-1-2-3-4 일 수 있다. 즉, 갱신 순서는 단위 갱신이 이루어지기 전과 이루어진 후의 순위 변동 관계에 상응하는 것일 수 있다. 따라서, 아이템들의 갱신 순서에 대한 최장 증가 부분수열을 찾고, 갱신 순서가 최장 증가 부분수열에 해당하는 아이템들은 업데이트에서 제외할 제외 아이템으로 선별할 수 있다. In this case, the update order may be an order in which items included in the item list are arranged according to a change such as a change in exposure order. For example, if the rank of the item of the fifth place among items from the first to the fifth of the item list is changed to the first place, the update order may be 5-1-2-3-4. That is, the update order may correspond to a change in the ranking before and after the unit update is performed. Accordingly, the longest incremental subsequence of the update order of items is found, and items corresponding to the longest incremental subsequence of the update order may be selected as excluded items to be excluded from the update.

이와 같은 최장 증가 부분수열을 이용함으로써, 다양한 카테고리에 대한 아이템이 혼재된 아이템 목록에서의 노출 순위 변동에 상응하게 특정 카테고리의 아이템들로만 구성된 아이템 목록을 업데이트하는 것이 가능하다. 예를 들어, 게임, 생활, 어학 등의 카테고리에 대한 아이템이 혼재된 아이템 목록 A가 있다고 가정할 수 있다. 만약 아이템 목록 A에 포함된 게임 아이템 a의 노출 순위가 변경되었다면, 게임 카테고리에 상응하는 아이템들만으로 구성된 아이템 목록 B에서도 게임 아이템 a의 노출 순위를 업데이트할 수 있다.By using the longest increasing subsequence, it is possible to update an item list consisting only of items of a specific category according to a change in exposure order in an item list in which items for various categories are mixed. For example, it may be assumed that there is an item list A in which items for categories such as games, life, and language are mixed. If the exposure ranking of the game item a included in the item list A is changed, the exposure ranking of the game item a may be updated in the item list B consisting only of items corresponding to the game category.

또한, 현재 알려진 최장 증가 부분수열의 계산 복잡도를 구하는 가장 효율적인 알고리즘은 O(nlog(n))이고, 여기서 n은 입력수열의 개수, 즉 아이템의 개수일 수 있다. 예를 들어, 아이템 목록에 1024개의 아이템들이 포함되어 있다면 해당 아이템 목록에서 최장 증가 부분수열을 통해 업데이트할 아이템을 선별하기 위한 계산 복잡도는 O(10000) 정도일 수 있다.In addition, the most efficient algorithm for obtaining the computational complexity of the currently known longest increasing subsequence is O(nlog(n)), where n may be the number of input sequences, that is, the number of items. For example, if 1024 items are included in the item list, the computational complexity for selecting an item to be updated through the longest incremental subsequence in the item list may be about O(10000).

이 때, 제외 아이템들은 업데이트하지 아니할 수 있다. 예를 들어, 1위부터 5위까지의 노출 순위를 갖는 5개의 아이템이 있다고 가정하였을 때, 노출 순위 변동에 따라 5위의 아이템 순위를 1위로 변경할 수 있다. 만약 기존의 업데이트 방법을 이용한다면 5위의 아이템 순위를 1위로 업데이트하고 1위부터 4위에 해당하는 아이템들의 순위는 하나씩 더해지도록 업데이트함으로써 총 5번의 업데이트 작업이 필요할 수 있다. 그러나 이러한 업데이트 방법은 아이템의 개수가 많을 경우에 시스템에 부하를 줄 수 있기 때문에, 많은 개수의 컨텐츠를 제공하는 스토어 등에서 사용하기에 적절한 방법이 아닐 수 있다. 따라서, 최장 증가 부분수열을 통해 1위부터 4위에 해당하는 아이템들은 업데이트 작업에서 제외될 제외 아이템들로 선별할 수 있다. 또한, 아이템들 중 제외 아이템들을 제외한 5위의 아이템만을 업데이트 아이템으로 선별하여 업데이트를 수행함으로써 시스템의 작업량을 현저하게 감소시킬 수 있다.In this case, the excluded items may not be updated. For example, assuming that there are 5 items having an exposure ranking from 1st to 5th, the ranking of the 5th item may be changed to 1st according to the change in the exposure ranking. If the existing update method is used, a total of 5 update operations may be required by updating the ranking of the items in the 5th place to the 1st place, and updating the rankings of the items corresponding to the 1st to 4th places one by one. However, since such an update method may place a load on the system when the number of items is large, it may not be an appropriate method to be used in a store that provides a large number of contents. Accordingly, items corresponding to the first to fourth places through the longest increasing partial sequence can be selected as excluded items to be excluded from the update operation. In addition, it is possible to significantly reduce the amount of work of the system by selecting only the fifth item excluding the excluded items among the items as update items and performing the update.

이 때, 아이템들 중 업데이트 아이템들과 갱신 순서가 한 단계씩 차이나는 아이템들의 다중 정렬 색인들을 고려하여 업데이트 아이템들을 업데이트할 수 있다. 다중 정렬 색인들 중 주요 색인(primary index)은 다중 중렬 색인들 중 첫 번째 정렬 색인일 수 있고, 다중 정렬 색인들 중 보조 색인(auxiliary index)은 두 번째 정렬 색인일 수 있다. 예를 들어, 각 아이템의 주요 색인과 보조 색인을 순서대로 (x, y)의 형태로 나타내었을 때, 5개의 아이템 A(1,0), B(2,0), C(3,0), D(4,0), E(5,0)가 있다고 가정할 수 있다. 이 때, 아이템 E가 갱신 순서 상 아이템 A의 다음 순서에 위치하도록 변경되는 경우에는 E(2,-1) 및 E(1,1) 중 어느 하나의 형태로 아이템 E의 다중 정렬 색인들을 업데이트 할 수 있다. E(2,-1)는 갱신 순서 상 아이템 E의 다음 단계에 위치하는 아이템 B를 고려한 경우에 상응하는 다중 정렬 색인들의 업데이트 형태일 수 있다. 또한, E(1,1)은 갱신 순서 상 아이템 E의 전 단계에 위치하는 아이템 A를 고려한 경우에 상응하는 다중 정렬 색인들의 업데이트 형태일 수 있다.In this case, the updated items may be updated in consideration of multiple sorting indexes of items in which the update items and the update order differ by one step among the items. Among the multiple sort indexes, a primary index may be a first sort index among multiple sort indexes, and an auxiliary index among multiple sort indexes may be a second sort index. For example, when the primary and secondary indexes of each item are expressed in the form (x, y) in order, five items A(1,0), B(2,0), C(3,0) , D(4,0), E(5,0) can be assumed. At this time, if item E is changed to be located in the next order of item A in the update order, the multiple sorting indexes of item E will be updated in any one of E(2,-1) and E(1,1). I can. E(2,-1) may be an update form of multiple sorting indices corresponding to the case of considering item B, which is located in the next step of item E in the update order. In addition, E(1,1) may be an update form of multiple sorting indices corresponding to the case of considering the item A located in the previous stage of the item E in the update order.

이 때, 업데이트 아이템들과 갱신 순서가 한 단계씩 차이 나는 아이템들의 주요 색인이 동일한 경우에, 업데이트 아이템들과 갱신 순서가 한 단계씩 차이 나는 아이템들 중 어느 하나의 보조 색인을 변경하여 업데이트 아이템들을 업데이트할 수 있다. 예를 들어, 3개의 아이템 A(1,0), B(1,1), C(2,0)이 있다고 가정하였을 때, 아이템 C가 갱신 순서 상 아이템 A의 다음 순서에 위치하도록 변경되는 경우에는 아이템 C의 다중 정렬 색인만을 업데이트하여 아이템들을 정렬하기 어려울 수 있다. 왜냐하면, 아이템 A와 아이템 B의 주요 색인이 동일하면서, 보조 색인이 각각 '0'과 '1'이기 때문에 아이템 C의 보조 색인을 '0'과 '1'사이의 정수 값으로 설정할 수 없다. 따라서, A(1,0), C(1,1), B(1,2)의 형태와 같이 아이템 B의 보조 색인을 함께 업데이트할 수 있다. 또는 A(1,-1), C(1,0), B(1,1)의 형태와 같이 아이템 A의 보조 색인을 함께 업데이트함으로써 아이템 정렬을 수행할 수 있다.In this case, if the main indexes of the update items and the items whose update order is different by one step are the same, the secondary index of any one of the update items and the items whose update order is different by one step is changed to change the update items. Can be updated. For example, assuming that there are three items A(1,0), B(1,1), and C(2,0), item C is changed to be located in the next order of item A in the update order. It may be difficult to sort items by updating only the multiple sorting indexes of item C. Because the primary indexes of item A and item B are the same, and the secondary indexes are '0' and '1', respectively, the secondary index of item C cannot be set to an integer value between '0' and '1'. Therefore, it is possible to update the auxiliary index of item B together in the form of A(1,0), C(1,1), and B(1,2). Alternatively, item sorting can be performed by updating the auxiliary index of item A together in the form of A(1,-1), C(1,0), and B(1,1).

이 때, 업데이트 아이템들과 갱신 순서가 한 단계씩 차이 나는 아이템들과 주요 색인이 동일한 아이템들의 개수를 고려하여 업데이트 아이템들을 업데이트할 수 있다. 예를 들어, 5개의 아이템 A(1,-1), B(1,0), C(1,1), D(2,0), E(3,0)가 있다고 가정하였을 때, 아이템 E가 갱신 순서 상 아이템 C의 다음 순서에 위치하도록 변경되는 경우에는 E(1,2) 및 D(2,-1) 중 어느 하나의 형태로 다중 정렬 색인들을 업데이트 할 수 있다. 만약 E(1,2)의 형태로 다중 정렬 색인이 업데이트 된다면, 아이템을 정렬할 때 주요 색인이 동일한 4개의 아이템 A, B, C 및 E의 보조 색인을 이용하여 아이템 정렬을 수행할 수 있다. 그러나 E(2, -1)의 형태로 다중 정렬 색인이 업데이트 된다면 아이템을 정렬할 때 주요 색인이 동일한 2개의 아이템 E와 D의 보조 색인을 이용하여 아이템 정렬을 수행하게 되므로 업데이트를 위한 시스템의 작업량이 보다 감소할 수 있다. 따라서, 주요 색인이 동일한 아이템들의 개수를 고려하였을 때, 상대적으로 주요 색인이 동일한 아이템 개수가 적은 쪽으로 다중 정렬 색인들을 업데이트하여 시스템의 작업량을 감소시킬 수 있다.In this case, the updated items may be updated in consideration of the number of items having the same main index and items having a difference between the update items and the update order by one step. For example, assuming that there are 5 items A(1,-1), B(1,0), C(1,1), D(2,0), E(3,0), item E When is changed to be located in the next order of item C in the update order, multiple sorting indexes may be updated in any one of E(1,2) and D(2,-1). If multiple sorting indexes are updated in the form of E(1,2), when sorting items, item sorting can be performed using auxiliary indexes of four items A, B, C, and E with the same primary index. However, if multiple sorting indexes are updated in the form of E(2, -1), when sorting items, the system's workload for updating is performed by using the secondary indexes of two items E and D with the same primary index. It can be reduced more than this. Accordingly, when the number of items having the same main index is considered, the amount of work of the system can be reduced by updating the multiple sorting indexes toward a relatively small number of items having the same main index.

이 때, 다중 정렬 색인들에 포함되는 적어도 하나의 보조 색인을 이용하여 업데이트 아이템들을 업데이트할 수 있다. 예를 들어, 다중 정렬 색인들에 포함되는 주요 색인에 대해서 두 개의 보조 색인이 존재한다면, 각각의 보조 색인들을 단계적으로 이용하여 업데이트 아이템들을 업데이트할 수 있다. 만약 주요 색인에 대한 두 개의 보조 색인을 각각 제1 보조 색인 및 제2 보조 색인이라고 가정하고 (x, y, z)로 표현한다면, 3개의 아이템에 대해 A(1,0,0), B(1,1,0), C(2,0,0)으로 나타낼 수 있다. 이 때, 아이템 C가 갱신 순서상 아이템 A의 다음 순서에 위치하도록 변경되는 경우에는 C(1,1,-1)의 형태로 아이템 C의 다중 정렬 색인들을 업데이트할 수 있다.In this case, update items may be updated using at least one auxiliary index included in the multiple sorting indexes. For example, if there are two secondary indexes for a primary index included in the multiple sorting indexes, update items may be updated using each secondary index step by step. If the two secondary indexes for the primary index are assumed to be the first secondary index and the second secondary index, respectively, and expressed as (x, y, z), A(1,0,0), B( It can be represented by 1,1,0) and C(2,0,0). In this case, when item C is changed to be positioned next to item A in the update order, multiple sorting indexes of item C may be updated in the form of C(1,1,-1).

아이템 정렬부(830)는 다중 정렬 색인들을 이용하여 아이템들에 대한 아이템 정렬을 수행할 수 있다. 본 발명에서와 같은 아이템 목록이나 다양한 컨텐츠를 제공하는 스토어 등에서 사용자들에게 제공하는 컨텐츠의 아이템 목록을 정렬을 위해서는 일반적으로 단일 정렬 색인을 이용할 수 있다. 하지만, 단일 정렬 색인을 이용하여 노출 순위가 수시로 변경되는 아이템들 및 컨텐츠들을 업데이트하고 아이템 목록을 정렬하기에는 매우 복잡한 연산과정이 필요할 수 있다. 따라서, 본 발명에서는 두 개 이상의 색인을 통한 다중 정렬 색인을 이용하여 노출 순위가 수시로 변경되는 환경에서 아이템이나 컨텐츠를 보다 효과적으로 업데이트하고 아이템들의 아이템 정렬을 수행할 수 있다. 예를 들어, C1부터 Cn까지의 n개의 정렬 색인을 이용하여 SQL select에서 "order by C1, C2, ... , Cn"으로 정렬할 수 있다. 첫 번째 정렬 색인 C1을 이용하여 정렬을 수행하고 단계적으로 C2, C3, ... , Cn까지의 정렬 색인들을 이용하여 아이템 정렬을 수행할 수 있다. 또한, 두 번째 정렬 색인인 C2는 첫 번째 정렬 색인인 C1들의 값을 업데이트하지 않고 C2의 값을 통해서만 아이템 정렬을 수행할 수 있다.The item sorting unit 830 may sort items for items using multiple sorting indexes. In general, a single sorting index can be used to sort an item list of contents provided to users in an item list or a store providing various contents as in the present invention. However, a very complicated calculation process may be required to update items and contents whose exposure ranking is frequently changed using a single sorting index and to sort the item list. Accordingly, in the present invention, items or contents can be more effectively updated and item sorting of items can be performed in an environment in which the exposure order is frequently changed by using a multiple sorting index through two or more indexes. For example, you can sort by "order by C1, C2, ..., Cn" in SQL select using n sorting indexes from C1 to Cn. Sorting can be performed using the first sorting index C1, and item sorting can be performed using sorting indices up to C2, C3, ..., Cn step by step. Also, the second sorting index C2 can perform item sorting only through the value of C2 without updating the values of the first sorting index C1s.

이 때, 아이템들 중 다중 정렬 색인들 중 주요 색인(primary index)이 동일한 아이템들에 대하여 다중 정렬 색인들 중 보조 색인(auxiliary index)을 이용하여 업데이트 아이템들을 업데이트 할 수 있다. 예를 들어, A(1,0), B(2,0), C(3,0), D(4,0), E(5,0)의 5개의 아이템이 있다고 가정할 수 있다. 만약 아이템 E가 갱신 순서 상 아이템 A의 다음 단계에 위치한다면, 아이템 E는 아이템 A의 주요 색인을 고려하여 E(2,0)의 형태로 다중 정렬 색인들을 업데이트 할 수 있다. 그러나, 이와 같이 업데이트할 경우 업데이트된 아이템 E의 정렬 색인이 아이템 B(2,0)와 동일하기 때문에 시스템에서 아이템 정렬 시 오류가 발생할 수 있다. 따라서, E(2,-1)의 형태와 같이 보조 색인을 사용함으로써 시스템에서 원활하게 아이템 정렬을 수행할 수 있다.In this case, for items having the same primary index among the multiple sorting indices, the updated items may be updated using an auxiliary index among the multiple sorting indices. For example, it can be assumed that there are five items: A(1,0), B(2,0), C(3,0), D(4,0), and E(5,0). If item E is positioned at the next level of item A in the update order, item E can update multiple sorting indices in the form of E(2,0), taking into account the main index of item A. However, when updating in this way, an error may occur when sorting items in the system because the sorting index of the updated item E is the same as that of item B(2,0). Therefore, by using an auxiliary index, such as in the form of E(2,-1), it is possible to smoothly sort items in the system.

아이템 데이터베이스(840)는 아이템 목록에 포함된 아이템들의 정보를 저장할 수 있다. 또한, 아이템 업데이트부(720)에 의해서 업데이트된 아이템들의 정보 및 아이템 정렬부(730)에 의해서 아이템 정렬된 아이템 목록의 정보를 저장할 수 있다.The item database 840 may store information on items included in an item list. In addition, information of items updated by the item update unit 720 and information of an item list arranged by the item sorting unit 730 may be stored.

이와 같은 아이템 정렬 장치(800)를 이용하여 아이템 정보를 효율적으로 업데이트함으로써 업데이트에 따른 시스템 작업량을 현저하게 감소시킬 수 있다.By using the item sorting apparatus 800 as described above, item information is efficiently updated, thereby significantly reducing the amount of system work according to the update.

본 발명에 따른 아이템 정렬 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 모든 형태의 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 이러한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The item arrangement method according to the present invention may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like alone or in combination. The program instructions recorded on the medium may be specially designed and configured for the present invention, or may be known and usable to those skilled in computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic media such as floptical disks. -Includes magneto-optical media, and any type of hardware device specially configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of the program instructions may include not only machine language codes such as those produced by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like. Such a hardware device may be configured to operate as one or more software modules to perform the operation of the present invention, and vice versa.

이상에서와 같이 본 발명에 따른 다중 정렬 색인을 이용한 아이템 정렬 장치 및 방법은 상기한 바와 같이 설명된 실시예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 상기 실시예들은 다양한 변형이 이루어질 수 있도록 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.As described above, the item sorting apparatus and method using a multiple sorting index according to the present invention is not limited to the configuration and method of the embodiments described as described above, but the above embodiments can be variously modified. All or part of each of the embodiments may be selectively combined and configured.

본 발명에 의하면 아이템 목록에 포함된 아이템들 중 업데이트 아이템들을 선별하고, 업데이트 아이템들에 상응하는 다중 정렬 색인들을 이용하여 업데이트 아이템들을 업데이트하고, 다중 정렬 색인들을 이용하여 아이템들에 대한 아이템 정렬을 수행할 수 있다. 나아가, 하드웨어적인 업그레이드 없이 시스템의 작업량 감소를 통해 시스템 부하를 감소시킬 수 있어 시스템 관리를 위한 비용을 절감할 수 있을 뿐만 아니라 별도의 시스템 작업을 수행할 때 보다 원활한 환경에서 작업을 처리할 수 있다.According to the present invention, update items are selected from among items included in the item list, updated items are updated using multiple sort indexes corresponding to the updated items, and item sort is performed on items using multiple sort indexes. can do. Furthermore, it is possible to reduce the system load by reducing the system workload without upgrading hardware, thereby reducing the cost for system management as well as enabling the work to be processed in a more seamless environment when performing separate system work.

310: 전체 아이템 목록 320: 카테고리 아이템 목록
410: 노출 순위 변경 전 아이템 목록
420: 노출 순위 변경 후 아이템 목록
510: 일반 수열 520: 변동 수열
530: 제외 아이템 610: 순위 변경 전 아이템 목록
620: 순위 변경 후 아이템 목록
710: 2개의 정렬 색인을 이용한 아이템 목록
720: 3개의 정렬 색인을 이용한 아이템 목록
800: 아이템 정렬 장치 810: 아이템 목록 수신부
820: 아이템 업데이트부 830: 아이템 정렬부
840: 아이템 데이터베이스
310: All item list 320: Category item list
410: list of items before change of exposure ranking
420: List of items after changing the exposure ranking
510: general sequence 520: variable sequence
530: Excluded items 610: List of items before ranking change
620: Item list after ranking change
710: list of items using two sorting indexes
720: List of items using 3 sorting indexes
800: item sorting device 810: item list receiving unit
820: item update unit 830: item sorting unit
840: Item database

Claims (17)

아이템 목록에 포함된 아이템들 중 업데이트 아이템들을 선별하는 단계;
상기 업데이트 아이템들에 상응하는 다중 정렬 색인들을 이용하여 상기 업데이트 아이템들을 업데이트하는 단계; 및
상기 다중 정렬 색인들을 이용하여 상기 아이템들에 대한 아이템 정렬을 수행하는 단계
를 포함하고,
상기 아이템 정렬을 수행하는 단계는
상기 아이템들 중 상기 다중 정렬 색인들 중 주요 색인(primary index)이 동일한 아이템들에 대하여 상기 다중 정렬 색인들 중 보조 색인(auxiliary index)을 이용하여 상기 아이템 정렬을 수행하는 것을 특징으로 하는 아이템 정렬 방법.
Selecting update items from among items included in the item list;
Updating the update items using multiple sorting indices corresponding to the update items; And
Performing item sorting for the items using the multiple sorting indexes
Including,
The step of performing the item sorting comprises:
An item sorting method, characterized in that, among the items, the items having the same primary index among the multiple sorting indices are sorted by using an auxiliary index among the multiple sorting indices. .
삭제delete 청구항 1에 있어서,
상기 업데이트 아이템들을 업데이트하는 단계는
상기 아이템들 중 상기 업데이트 아이템들과 갱신 순서가 한 단계씩 차이 나는 아이템들의 상기 다중 정렬 색인들을 고려하여 상기 업데이트 아이템들을 업데이트하는 것을 특징으로 하는 아이템 정렬 방법.
The method according to claim 1,
Updating the update items comprises:
And updating the updated items in consideration of the multiple sorting indices of items in which the update items and the update order differ by one step among the items.
청구항 3에 있어서,
상기 업데이트 아이템들을 업데이트하는 단계는
상기 업데이트 아이템들과 갱신 순서가 한 단계씩 차이 나는 아이템들의 상기 주요 색인이 동일한 경우에, 상기 업데이트 아이템들과 갱신 순서가 한 단계씩 차이 나는 아이템들 중 어느 하나의 상기 보조 색인을 변경하여 상기 업데이트 아이템들을 업데이트하는 것을 특징으로 하는 아이템 정렬 방법.
The method of claim 3,
Updating the update items comprises:
When the main index of the update items and the items whose update order differs by one step are the same, the update by changing the secondary index of any one of the update items and the items whose update order is different by one step Item sorting method, characterized in that updating the items.
삭제delete 삭제delete 삭제delete 삭제delete 서버로부터 아이템 목록을 수신하는 아이템 목록 수신부;
상기 아이템 목록에 포함된 아이템들 중 업데이트 아이템들을 선별하고, 상기 업데이트 아이템들에 상응하는 다중 정렬 색인들을 이용하여 상기 업데이트 아이템들을 업데이트하는 아이템 업데이트부; 및
상기 다중 정렬 색인들을 이용하여 상기 아이템들에 대한 아이템 정렬을 수행하는 아이템 정렬부
를 포함하고,
상기 아이템 정렬부는
상기 아이템들 중 상기 다중 정렬 색인들 중 주요 색인(primary index)이 동일한 아이템들에 대하여 상기 다중 정렬 색인들 중 보조 색인(auxiliary index)을 이용하여 상기 아이템 정렬을 수행하는 것을 특징으로 하는 아이템 정렬 장치.
An item list receiving unit receiving an item list from a server;
An item update unit that selects update items from among items included in the item list, and updates the update items by using multiple sorting indexes corresponding to the update items; And
An item sorting unit that sorts items on the items using the multiple sorting indices
Including,
The item alignment unit
Item sorting apparatus, characterized in that, among the items, the items having the same primary index among the multiple sorting indices are sorted by using an auxiliary index among the multiple sorting indices. .
삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete
KR1020140063586A 2014-05-27 2014-05-27 Apparatus and method for sorting item using multiple sorting index KR102247885B1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020140063586A KR102247885B1 (en) 2014-05-27 2014-05-27 Apparatus and method for sorting item using multiple sorting index
PCT/KR2014/010406 WO2015182833A1 (en) 2014-05-27 2014-11-03 Apparatus and method for sorting items using longest increasing subsequence
US14/898,441 US10664235B2 (en) 2014-05-27 2014-11-03 Apparatus and method for sorting items using longest increasing subsequence

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140063586A KR102247885B1 (en) 2014-05-27 2014-05-27 Apparatus and method for sorting item using multiple sorting index

Publications (2)

Publication Number Publication Date
KR20150136299A KR20150136299A (en) 2015-12-07
KR102247885B1 true KR102247885B1 (en) 2021-05-04

Family

ID=54872290

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140063586A KR102247885B1 (en) 2014-05-27 2014-05-27 Apparatus and method for sorting item using multiple sorting index

Country Status (1)

Country Link
KR (1) KR102247885B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040167927A1 (en) 2001-06-28 2004-08-26 Mikael Ronstrom Method for concurrency control for a secondary index
WO2009082235A1 (en) 2007-12-20 2009-07-02 Fast Search Transfer As A method for dynamic updating of an index, and a search engine implementing the same
JP4848128B2 (en) 2004-12-24 2011-12-28 インターナショナル・ビジネス・マシーンズ・コーポレーション Database system, computer-executable method for database system, program and method for updating index table in database system

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ATE367611T1 (en) 2000-03-16 2007-08-15 Microsoft Corp GENERATION AND MANAGEMENT OF PRIORITIES
CN100495398C (en) * 2006-03-30 2009-06-03 国际商业机器公司 Method for searching order in file system and correlation search engine
KR20140023644A (en) * 2012-08-16 2014-02-27 (주)네오위즈게임즈 Method of providing item, server performing the same and storage media storing the same

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040167927A1 (en) 2001-06-28 2004-08-26 Mikael Ronstrom Method for concurrency control for a secondary index
JP4848128B2 (en) 2004-12-24 2011-12-28 インターナショナル・ビジネス・マシーンズ・コーポレーション Database system, computer-executable method for database system, program and method for updating index table in database system
WO2009082235A1 (en) 2007-12-20 2009-07-02 Fast Search Transfer As A method for dynamic updating of an index, and a search engine implementing the same

Also Published As

Publication number Publication date
KR20150136299A (en) 2015-12-07

Similar Documents

Publication Publication Date Title
US11288267B2 (en) Pluggable storage system for distributed file systems
US11068439B2 (en) Unsupervised method for enriching RDF data sources from denormalized data
US9336184B2 (en) Representation of an interactive document as a graph of entities
CN104331411B (en) The method and apparatus of recommended project
US8898186B2 (en) Methods and systems for latency-free contacts search
US8108360B2 (en) Database object update order determination
US8676817B2 (en) Rendering selected and unselected lists of an item set
JP6779231B2 (en) Data processing method and system
US10303793B2 (en) Similarity and ranking of databases based on database metadata
US11853279B2 (en) Data storage using vectors of vectors
US10896291B2 (en) Method and device for providing notes by using artificial intelligence-based correlation calculation
US20170300461A1 (en) Representation of an Interactive Document as a Graph of Entities
US10936611B2 (en) Search promotion systems and method
US20170091244A1 (en) Searching a Data Structure
US20160267182A1 (en) Mail service system and method for effective mail search
US11526522B2 (en) Collaborative search of databases
KR102247885B1 (en) Apparatus and method for sorting item using multiple sorting index
US20150248685A1 (en) Automated identification of sales opportunities based on stored market data
KR102247890B1 (en) Apparatus and method for sorting item using longest increasing subsequence
CN115982100A (en) Project engineering file data management method and system and electronic equipment
KR102247032B1 (en) Apparatus and method for sorting item using longest increasing subsequence of item group
US10324991B2 (en) Search promotion systems and method
US20130339372A1 (en) System and method for contexual ranking of information facets
US11853325B2 (en) Data storage using vectors of vectors
CN110019034A (en) Formfile loading method and device

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant