KR102062139B1 - 지능형 자료구조 기반의 데이터 처리 방법 및 그를 위한 장치 - Google Patents

지능형 자료구조 기반의 데이터 처리 방법 및 그를 위한 장치 Download PDF

Info

Publication number
KR102062139B1
KR102062139B1 KR1020180061813A KR20180061813A KR102062139B1 KR 102062139 B1 KR102062139 B1 KR 102062139B1 KR 1020180061813 A KR1020180061813 A KR 1020180061813A KR 20180061813 A KR20180061813 A KR 20180061813A KR 102062139 B1 KR102062139 B1 KR 102062139B1
Authority
KR
South Korea
Prior art keywords
data
node
search
nodes
result
Prior art date
Application number
KR1020180061813A
Other languages
English (en)
Other versions
KR20190136292A (ko
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 KR1020180061813A priority Critical patent/KR102062139B1/ko
Publication of KR20190136292A publication Critical patent/KR20190136292A/ko
Application granted granted Critical
Publication of KR102062139B1 publication Critical patent/KR102062139B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases

Landscapes

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

Abstract

본 발명의 실시예에 따른 지능형 자료구조 기반의 데이터 처리 방법은, 입력 데이터를 최소 단위의 노드로 분할하고, 각 노드의 참조 경로 순서에 따라 배열 구조도를 생성하여 저장하는 단계; 결과 출력을 위한 검색 데이터가 입력된 경우, 상기 검색 데이터에 포함된 노드를 기반으로 상기 배열 구조도에서 특정 노드를 검색하는 단계; 및 상기 참조 경로 순서를 기반으로 상기 특정 노드와 참조 관계를 갖는 검색결과 노드를 도출하여 출력하는 단계를 포함할 수 있다.

Description

지능형 자료구조 기반의 데이터 처리 방법 및 그를 위한 장치{Method and Apparatus for Processing Data Based on Intelligent Data Structure}
본 발명은 지능형 자료구조 방식을 기반으로 데이터를 저장, 검색 및 출력 처리하는 방법 및 장치에 관한 것이다.
이 부분에 기술된 내용은 단순히 본 발명의 실시예에 대한 배경 정보를 제공할 뿐 종래기술을 구성하는 것은 아니다.
자료구조를 기반으로 데이터를 처리하는 연구분야에서는 인공지능 연구 분야 및 전산을 이용한 자료처리 분야에 대한 연구가 활발히 진행되고 있다. 인공지능 연구분야는 현재 대용량 데이터를 확률적으로 처리한 방식으로 지능적 의사 결정을 전산적으로 구현하고 있으며, 자료처리 분야는 오래전부터 데이터베이스 기반의 관리 시스템(DBMS)을 이용하여 자료를 처리해 오고 있다.
대용량 데이터를 바탕으로 한 확률적 인공지능은 대용량 데이터를 처리하는 데 막대한 시간적, 전기적 자원이 소모되는 데 반해, 그 성능은 데이터 편향적이고, 비결정적이며, 변화에 유연하지 못하다. 인공지능은 무엇보다도 인간의 지능처럼 결정적인 사고를 하지 못함에 따라 그 쓰임이 매우 제한적이다. 또한, 도 1에 도시된 바와 같이, 전통적인 데이터 처리 방식인 데이터베이스관리시스템은 모든 자료의 구성을 2 차원 테이블로 고정시켜 놓음으로써 다차원의 자료들(예를 들어 파일 시스템)의 저장과 처리에 있어 오버헤드를 증가시킬 수 밖에 없는 단점이 있다. 이에, 확률적 인공지능의 자원 소모적이고 비결정적 사고를 대체하면서, 전통적인 데이터 처리의 비효율성을 극복하기 위한 데이터 처리 방식이 필요하다.
본 발명은 지능형 자료구조 방식을 기반으로 복수의 노드를 참조 경로 순서에 따라 저장하고, 검색 데이터가 입력되면 검색 데이터에 대한 특정노드가 참조하는 노드를 검색결과 노드로 도출하여 출력하는 지능형 자료구조 기반의 데이터 처리 방법 및 그를 위한 장치를 제공하는 데 주된 목적이 있다.
본 발명의 일 측면에 의하면, 지능형 자료구조 기반의 데이터 처리 방법은 입력 데이터를 최소 단위의 노드로 분할하고, 각 노드의 참조 경로 순서에 따라 배열 구조도를 생성하여 저장하는 단계; 결과 출력을 위한 검색 데이터가 입력된 경우, 상기 검색 데이터에 포함된 노드를 기반으로 상기 배열 구조도에서 특정 노드를 검색하는 단계; 및 상기 참조 경로 순서를 기반으로 상기 특정 노드와 참조 관계를 갖는 검색결과 노드를 도출하여 출력하는 단계를 포함할 수 있다.
또한, 본 발명의 다른 측면에 의하면, 데이터 처리장치는 입력 데이터를 최소 단위의 노드로 분할하고, 각 노드의 참조 경로 순서에 따라 배열 구조도를 생성하여 저장하는 데이터 저장부; 결과 출력을 위한 검색 데이터가 입력된 경우, 상기 검색 데이터에 포함된 노드를 기반으로 상기 배열 구조도에서 특정 노드를 검색하는 검색 처리부; 및 상기 참조 경로 순서를 기반으로 상기 특정 노드와 참조 관계를 갖는 검색결과 노드를 도출하여 출력하는 결과 출력부를 포함할 수 있다.
이상에서 설명한 바와 같이, 본 발명은 지능형 자료구조를 이용하여 입력 데이터를 기초 단위로 분할하여 순서있게 배열함으로써, 데이터의 반복성과 재사용성을 최대한으로 증가시킬 수 있으며, 자료 저장의 효율성을 극대화할 수 있는 효과가 있다.
또한, 본 발명은 데이터의 순서(즉, 지나온 경로)를 저장함으로써 노드 중복의 불명확성을 완전히 제거할 수 있으며, 자료의 검색과 출력에 대한 효율성을 증대시킬 수 있는 효과가 있다.
또한, 본 발명은 개념 연상을 통해 판단과 결정을 해 나가는 인간 지능의 모습을 모방할 수 있고, 확률적이거나 대용량 자료에 대한 사전처리 없이 결과를 도출할 수 있는 효과가 있다.
도 1은 종래의 데이터 처리 방법을 설명하기 위한 도면이다.
도 2는 본 발명의 실시예에 따른 데이터 처리장치를 개략적으로 나타낸 블록 구성도이다.
도 3은 본 발명의 실시예에 따른 데이터 처리 방법을 설명하기 위한 순서도이다.
도 4는 본 발명의 실시예에 따른 데이터 처리장치의 검색엔진의 동작을 설명하기 위한 예시도이다.
도 5는 본 발명의 실시예에 따른 데이터 처리 방법 기반의 노드 배열 구조를 나타낸 도면이다.
도 6은 본 발명의 실시예에 따른 데이터 처리 방법 기반의 검색결과를 도출하는 동작을 설명하기 위한 도면이다.
도 7a 및 도 7b는 본 발명의 실시예에 따른 입력 데이터 및 배열 구조도를 나타낸 도면이다.
도 8은 종래 기술의 데이터 처리 방식과 본 발명의 데이터 처리 방식을 나타낸 도면이다.
도 9는 본 발명의 실시예에 따른 검색 데이터를 기반으로 검색결과를 도출하는 동작을 나타낸 예시도이다.
이하, 본 발명의 바람직한 실시예를 첨부된 도면들을 참조하여 상세히 설명한다. 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다. 또한, 이하에서 본 발명의 바람직한 실시예를 설명할 것이나, 본 발명의 기술적 사상은 이에 한정하거나 제한되지 않고 당업자에 의해 변형되어 다양하게 실시될 수 있음은 물론이다. 이하에서는 도면들을 참조하여 본 발명에서 제안하는 지능형 자료구조 기반의 데이터 처리 방법 및 장치에 대해 자세하게 설명하기로 한다. 본 발명은 인간의 뇌에서 자료를 입력, 저장, 검색, 출력하는 과정에 근거하여 데이터를 처리하는 방법 및 장치를 구현하는 것을 목적으로 한다.
도 1은 종래의 데이터 처리 방법을 설명하기 위한 도면이다.
도 1의 (a)는 종래의 데이터 처리방식을 기반으로 영단어를 추천하는 방식을 나타낸 도면이고, 도 1의 (b)는 종래의 데이터 처리방식을 개선하여 영단어를 추천하는 방식을 나타낸 도면이다.
종래의 데이터 처리방식을 기반으로 한 추천 방식(즉, 기존의 모든 방식)은 보통 그 추천 방식을 사용하려는 사람의 의도를 포함한 자료를 제시하여 사용자의 선택을 도모하는 방식이다. 영어사전을 예를 들면, 영어 사전의 표제어를 올림차순으로 배열한 사전의 일부 목록을 도 1의 (a)와 같다고 가정하면, 사용자가 ab까지의 검색어를 입력했을 때, 자료 기반의 솔루션은 데이터 베이스에서 유사 검색을 통해 “ab”를 포함하는 단어 넷(혹은 그 이상)을 추천하게 된다. 이러한 경우 사용자는 도 1의 (a)의 표에 포함된 단어를 추천어로 제안받게 되며, 그 중의 하나를 선택함으로써 나머지 문자를 입력해야 하는 수고를 덜 수 있거나, 혹은 잊었던 생각을 상기할 수 있다.
다만, 이 방식의 문제점은 유사어들이 근본적으로 무차별하여 사용자가 생각하고 있는 맥락과 무관한 단어들이 제시됨으로써, 오히려 사용자를 혼란스럽게 하거나 원래 의도와는 다르게 기계적인 솔루션이 제공될 수 있다.
종래의 데이터 처리방식의 알고리즘적 단점은 유사 검색을 하기 위해 사전의 전체 표제어를 모두 검색한 뒤, 유사어를 도출해 내야 한다는 것이다. 이런 방식은 사전의 크기가 클수록 검색 속도가 느려지는 단점이 있으며, 이러한 단점은 하드웨어적 성능의 발전에 따라 개선될 뿐, 알고리즘 적인 단점은 개선되지 않고 있다.
종래의 데이터 처리방식을 개선하기 위하여 제안된 방식은 대용량의 데이터의 통계를 기반으로 사용자 행동 패턴을 추정하여 데이터를 처리하는 방식이다. “ab”로 시작하는 단어들을 유사 검색해서 찾은 단어들이 도 1의 (b)와 같은 사용량 통계를 가질 경우, 이 방식을 기반으로 한 솔루션은 응당 가장 많은 사용량을 보인 “abdicate”란 단어를 가장 먼저 추천하고, 이 추천이 유효하지 않다는 사용자의 명시적 의사를 확인한 뒤에 “abate”, “aberration”, ”abash”의 순으로 단어들을 추천할 수 있다.
이러한 방식이 종래의 데이터 처리방식에 비해 검색 능력이 개선되긴 하였으나, 사용자가 일반적이지 않은 상황에 있을 경우 추천 검색어의 효용이 무색하고, 비슷한 상황에 있는 모든 사용자에게 비슷한 결과를 추천하게 된다는 단점이 존재한다. 또한, 이러한 방식은 데이터가 클수록 퍼포먼스가 느려지게 되며, 데이터가 유동적으로 변하거나 데이터가 부족 또는 불량한 경우 검색 정확도가 매우 낮아지게 되는 단점이 존재한다.
도 2는 본 발명의 실시예에 따른 데이터 처리장치를 개략적으로 나타낸 블록 구성도이다.
본 발명의 실시예에 따른 데이터 처리장치(200)는 입력 데이터 획득부(210), 데이터 저장 처리부(220) 및 출력 데이터 처리부(230)를 포함한다. 여기서, 출력 데이터 처리부(230)는 검색 데이터 획득부(240), 검색 처리부(250) 및 결과 출력부(260)를 포함한다. 도 2에 도시된 데이터 처리장치(200)는 일 실시예에 따른 것으로서, 도 2에 도시된 모든 블록이 필수 구성요소는 아니며, 다른 실시예에서 데이터 처리장치(200)에 포함된 일부 블록이 추가, 변경 또는 삭제될 수 있다.
입력 데이터 획득부(210)는 데이터 저장 및 출력 처리를 위해 입력된 데이터를 획득한다. 여기서, 입력 데이터는 외부 장치 또는 서버로부터 획득한 데이터일 수 있으나 반드시 이에 한정되는 것은 아니며, 데이터 처리장치(200)와 연결된 입력장치(미도시)로부터 입력된 데이터일 수 있다.
입력 데이터는 일반적인 데이터베이스에서 사용되는 데이터일 수 있으며, 복수의 데이터를 포함하는 데이터일 수 있다. 예를 들어, 입력 데이터는 사전 자료, 금융자료, 문헌자료, 병원자료, 미디어자료 등 다양한 분야에 대한 자료일 수 있으며, 엑셀 데이터(.csv), 룩업 테이블 등과 같은 다양한 형태로 구현된 데이터일 수 있다.
데이터 저장 처리부(220)는 입력 데이터를 소정의 단위를 갖는 노드로 분할하고, 분할된 각 노드의 참조 경로 순서에 따라 배열 구조도를 생성하여 저장한다.
데이터 저장 처리부(220)는 복수의 데이터를 포함하는 입력 데이터를 분할 가능한 최소 단위의 노드로 분할한다. 여기서, 데이터 저장 처리부(220)는 문자열을 기반으로 분할하는 것이 바람직하나 반드시 이에 한정되는 것은 아니며, 구분 가능한 소정의 분류기준 또는 기 설정된 식별기준(특정 비트, 특정 문자, 특정 레코드 등)에 따라 분할될 수 있다.
데이터 저장 처리부(220)는 문자열을 기반으로 최소 단위를 갖는 노드로 입력 데이터를 분할하는 것으로 기재하고 있으나 반드시 이에 한정되는 것은 아니며, 사용자의 설정에 따라 분할을 위한 단위는 변경될 수 있다.
데이터 저장 처리부(220)는 분할된 적어도 하나의 노드를 참조 경로 순서에 따라 배열하여 데이터를 저장하기 위한 배열 구조도를 생성한다. 여기서, 참조 경로 순서는 노드 간 참조 가능한 방향에 따른 순서를 의미하며, 이러한 참조 경로는 단방향으로 이루어지는 것이 바람직하다.
데이터 저장 처리부(220)는 분할된 노드 중 동일한 문자열을 갖는 복수의 노드 즉 중복되는 복수의 노드가 존재하는 경우, 동일한 복수의 노드를 하나의 노드로 표현하여 배열 구조도를 생성한다.
출력 데이터 처리부(230)는 결과 출력을 위한 검색 데이터를 획득하고, 검색 데이터에 근거하여 참조 경로 순서를 기반으로 검색결과를 도출하여 출력한다.
검색 데이터 획득부(240)는 결과 출력을 위해 입력된 데이터를 획득한다. 여기서, 검색 데이터는 사용자가 소정의 결과를 요청하기 위해 입력한 데이터를 의미하며, 사용자가 원하는 전체 결과 데이터의 일부 데이터를 포함할 수 있다.
검색 데이터 획득부(240)는 데이터 처리장치(200)와 연결된 입력 장치로부터 검색 데이터를 획득할 수 있으나 반드시 이에 한정되는 것은 아니며, 원격으로 연결된 외부 입력장치로부터 검색 데이터를 획득할 수 있다.
검색 처리부(250)는 검색 데이터에 포함된 노드를 기반으로 배열 구조도에서 특정 노드를 검색하는 동작을 수행한다. 구체적으로, 검색 처리부(250)는 검색 데이터 중 마지막 경로 순서를 갖는 마지막 노드를 추출하고, 마지막 노드와 매칭되는 특정 노드를 배열 구조도에서 검색한다. 여기서, 마지막 노드는 검색 데이터에 포함된 복수의 자료 중 마지막 참조 경로 순서를 갖는 자료를 의미한다.
결과 출력부(260)는 배열 구조도에서 검색된 특정 노드와 참조 관계를 갖는 검색결과 노드를 도출하여 출력한다. 구체적으로 결과 출력부(260)는 특정 노드가 단방향으로 참조하고 있는 노드를 검색결과 노드로 도출하여 출력한다. 결과 출력부(260)는 특정 노드를 기준으로 검색 데이터에 포함된 복수의 노드와 동일한 참조 경로 순서를 갖는 검색결과 노드를 도출할 수 있다.
결과 출력부(260)는 특정 노드가 참조하는 검색결과 노드가 한 개 존재하는 경우, 검색결과 노드를 검색 데이터에 대응하는 검색결과로 출력한다.
한편, 결과 출력부(260)는 특정 노드가 참조하는 검색결과 노드가 복수 개 존재하는 경우, 복수의 검색결과 노드 중 하나의 노드를 선택하여 검색 데이터에 대한 검색결과로 출력한다.
결과 출력부(260)는 검색 데이터에 포함된 마지막 노드의 참조 경로 순서 즉, 마지막 노드를 참조하는 나머지 노드들의 참조 경로 순서를 이용하여 복수의 검색결과 노드 중 하나의 노드를 선택한다. 결과 출력부(260)는 복수의 검색결과 노드 중 검색 데이터에 포함된 마지막 노드의 참조 경로 순서와 동일한 참조 경로 순서를 갖는 노드를 검색결과 노드로 선택할 수 있다.
결과 출력부(260)는 검색 데이터에 포함된 마지막 노드의 참조 경로 순서를 이용한 경우에도 복수의 검색결과 노드가 도출되는 경우, 추가 검색 데이터의 입력을 대기한다. 여기서, 결과 출력부(260)는 추가 검색 데이터가 입력되면 추가 검색 데이터에 포함된 마지막 노드 또는 마지막 노드를 참조하는 나머지 노드들의 참조 경로 순서를 이용하여 검색결과 노드를 도출할 수 있다.
도 3은 본 발명의 실시예에 따른 데이터 처리 방법을 설명하기 위한 순서도이다.
데이터 처리장치(200)는 데이터 저장 및 출력 처리를 위해 입력 데이터를 획득한다(S310). 여기서, 입력 데이터는 외부 장치 또는 서버로부터 획득한 데이터일 수 있으나 반드시 이에 한정되는 것은 아니다.
데이터 처리장치(200)는 입력 데이터를 최소 단위의 노드로 분할하고(S320), 분할된 노드 각각의 참조 경로 순서에 따라 배열 구조도를 생성하여 저장한다(S330, S340).
데이터 처리장치(200)는 문자열을 기반으로 분할하는 것이 바람직하나 반드시 이에 한정되는 것은 아니며, 구분 가능한 소정의 분류기준 또는 기 설정된 식별기준(특정 비트, 특정 문자, 특정 레코드 등)에 따라 분할될 수 있다. 데이터 처리장치(200)는 단방향으로 참조 가능한 참조 경로 순서에 따라 배열 구조도를 생성한다. 또한, 데이터 처리장치(200)는 중복되는 복수의 노드가 존재하는 경우 해당 노드를 하나의 노드로 표현하여 배열 구조도를 생성할 수 있다.
데이터 처리장치(200)는 소정의 결과를 요청하기 위한 검색 데이터를 입력받은 경우(S350), 검색 데이터에 포함된 노드를 기반으로 배열 구조도에서 특정 노드를 검색한다(S360). 구체적으로, 데이터 처리장치(200)는 검색 데이터 중 마지막 경로 순서를 갖는 마지막 노드를 추출하고, 마지막 노드와 매칭되는 특정 노드를 배열 구조도에서 검색한다.
한편, 단계 S350에서 검색 데이터가 입력되지 않는 경우, 데이터 처리장치(200)는 입력 데이터를 획득하여 배열 구조도를 생성하는 동작을 반복하여 수행한다.
데이터 처리장치(200)는 검색된 특정 노드와 참조 관계를 갖는 검색결과 노드를 도출한다(S370). 데이터 처리장치(200)는 특정 노드가 단방향으로 참조하고 있는 노드를 검색결과 노드로 도출한다.
데이터 처리장치(200)는 단계 S370에서 도출된 검색결과 노드가 복수 개 존재하는지 여부를 확인한다(S380).
데이터 처리장치(200)는 특정 노드가 참조하는 검색결과 노드가 한 개 존재하는 경우, 검색결과 노드를 검색 데이터에 대응하는 검색결과로 출력한다(S390).
한편, 데이터 처리장치(200)는 특정 노드가 참조하는 검색결과 노드가 복수 개 존재하는 경우, 검색 데이터에 포함된 마지막 노드의 참조 경로 순서 즉, 마지막 노드를 참조하는 나머지 노드들의 참조 경로 순서를 이용하여 복수의 검색결과 노드 중 하나의 노드를 선택하고(S382), 선택된 검색결과 노드를 출력한다(S390).
도 3에서는 각 단계를 순차적으로 실행하는 것으로 기재하고 있으나, 반드시 이에 한정되는 것은 아니다. 다시 말해, 도 3에 기재된 단계를 변경하여 실행하거나 하나 이상의 단계를 병렬적으로 실행하는 것으로 적용 가능할 것이므로, 도 3은 시계열적인 순서로 한정되는 것은 아니다.
도 3에 기재된 본 실시예에 따른 데이터 처리 방법은 애플리케이션(또는 프로그램)으로 구현되고 단말장치(또는 컴퓨터)로 읽을 수 있는 기록매체에 기록될 수 있다. 본 실시예에 따른 데이터 처리 방법을 구현하기 위한 애플리케이션(또는 프로그램)이 기록되고 단말장치(또는 컴퓨터)가 읽을 수 있는 기록매체는 컴퓨팅 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치 또는 매체를 포함한다.
도 4는 본 발명의 실시예에 따른 데이터 처리장치의 검색엔진의 동작을 설명하기 위한 예시도이다.
도 4를 참조하면, 데이터 처리장치의 검색엔진은 좌측에서 입력 데이터 또는 검색 데이터를 입력받고, 우측에서 검색결과를 출력한다. 데이터 처리장치의 검색엔진은 기존의 데이터 처리 방식에서 사용되는 데이터를 지능형 자료구조 기반의 데이터로 변경하여 저장한다. 예를 들어, 데이터 처리장치의 검색엔진은 기존의 데이터 처리 방식에서 사용되는 사전 자료, 금융자료, 문헌자료, 병원자료, 미디어자료 등 다양한 분야에 대한 자료를 엑셀 데이터(.csv), 룩업 테이블 등과 같은 형태로 입력받고, 입력받은 입력 데이터를 문자열을 기반으로 최소 단위의 노드로 분할하여 생성된 배열 구조도를 저장한다.
기존의 데이터 처리장치는 결과 출력을 위한 검색 데이터가 입력되면, 검색 데이터와 동일하거나 유사한 결과만을 도출하여 출력한다. 이에 비해, 지능형 자료구조 기반의 검색엔진은 결과 출력을 위한 검색 데이터에 포함된 마지막 노드와 동일한 특정 노드를 배열 구조도에서 검색하고, 마지막 노드의 참조 경로 순서를 기반으로 특정 노드와 참조 관계를 갖는 검색결과 노드를 도출하여 출력한다.
데이터 처리장치의 검색엔진은 데이터베이스의 API(Application Program Interface)로 구현될 수 있으나 반드시 이에 한정되는 것은 아니다. 도 4에 도시된 검색엔진은 소프트웨어 형태로 구현될 수 있으나 반드시 이에 한정되는 것은 아니며, 검색엔진을 탑재하고 있는 하드웨어의 형태로 구현될 수 있다.
도 5는 본 발명의 실시예에 따른 데이터 처리 방법 기반의 노드 배열 구조를 나타낸 도면이다.
도 5의 (a)는 입력 데이터에 포함된 복수의 자료를 저장하는 방식을 도식화한 도면이고, 도 5의 (b)는 입력 데이터를 기반으로 생성된 배열 구조도를 나타낸 도면이다.
도 5의 (a)에 도시된 바와 같이, 데이터 처리장치(200)는 ABCF를 포함하는 입력 데이터를 최소 단위인 A 노드(510), B 노드(520), C 노드(530) 및 F 노드(540)로 분할하고, 각각의 노드의 참조 경로 순서에 따라 A 노드(510), A를 참조 경로로 갖는 B 노드(520), AB를 참조 경로로 갖는 C 노드(530) 및 ABC를 참조 경로로 갖는 F 노드(540)의 순서로 노드들을 배열한다.
데이터 처리장치(200)는 도 5의 (a)와 같은 방식으로 DCE를 포함하는 입력 데이터, CG를 포함하는 입력 데이터를 계속 저장하면 도 5의 (b)와 같은 배열 구조도를 생성하여 저장할 수 있다. 도 5의 (b)에 도시된 바와 같이, 데이터 처리장치(200)는 중복되는 C 노드(530)를 재사용하여 배열 구조도를 생성한다.
도 6은 본 발명의 실시예에 따른 데이터 처리 방법 기반의 검색결과를 도출하는 동작을 설명하기 위한 도면이다.
데이터 처리장치(200)는 ABCF를 포함하는 입력 데이터, DCE를 포함하는 입력 데이터, CG를 포함하는 입력 데이터를 지능형 자료구조 방식으로 입력하여 도 5의 (b)와 같은 배열 구조도를 저장한다.
도 6에서는 데이터 처리장치(200)에서 검색 데이터에 따라 저장된 배열 구조도에서 검색결과를 도출하는 동작을 설명하도록 한다.
데이터 처리장치(200)는 ABC에 대한 검색결과 출력을 위해 ABC를 포함하는 검색 데이터가 입력된 경우 다음과 같은 과정으로 검색결과를 도출할 수 있다.
데이터 처리장치(200)는 ABC를 포함하는 검색 데이터 중 마지막 노드인 C 노드를 검색한다. 이후, 데이터 처리장치(200)는 배열 구조도에서 마지막 노드(C 노드)와 매칭되는 특정 노드인 C 노드(530)를 검색한다.
데이터 처리장치(200)는 C 노드(530)가 참조하고 있는 F 노드(540), E 노드(560), G 노드(570)를 검색결과 노드의 후보목록에 포함시킨다. 데이터 처리장치(200)는 복수의 검색결과 노드(540, 560, 570) 중 검색 데이터의 참조 경로 순서인 ABC를 갖는 F 노드(540)를 검색결과 노드로 도출하여 출력할 수 있다.
도 7a 및 도 7b는 본 발명의 실시예에 따른 입력 데이터 및 배열 구조도를 나타낸 도면이다.
도 7a는 우편번호 테이블에 대한 입력 데이터를 나타낸 도면이고, 도 7b는 우편번호 테이블에 대한 입력 데이터를 지능형 자료구조 방식에 적용하여 생성된 배열 구조도를 나타낸 도면이다.
데이터 처리장치(200)는 우편번호 테이블(700)의 가로열 각각을 노드로 분할하고, 분할된 각각의 노드(710 내지 790)에 대해 기 설정된 참조 경로 순서에 따라 도 7b에 도시된 배열 구조도를 생성할 수 있다. 배열 구조도를 생성하는 구체적인 방식은 도 5에 기재된 방식과 동일하여 자세한 설명은 생략하도록 한다.
도 8은 종래 기술의 데이터 처리 방식과 본 발명의 데이터 처리 방식을 나타낸 도면이다.
도 8의 (a)는 종래의 데이터 처리 방식에 대한 도면으로써, 종래의 데이터 처리장치는 제1 검색결과(810)를 도출하기 위하여 검색어에 따라 기 설정된 순서대로 데이터를 검색해야만 한다. 예를 들어, 종래의 데이터 처리장치는 제1 검색결과(810)를 도출하기 위하여 ABBDAAF의 검색어를 입력받고, 검색어에 포함된 데이터를 순차적으로 검색하여야만 제1 검색결과(810)인 F 노드를 검색결과로 도출할 수 있다.
도 8의 (b)는 본 발명의 실시예에 따른 데이터 처리 방식에 대한 도면으로써, 데이터 처리장치(200)는 제2 검색결과(820)를 도출하기 위하여 AC 또는 BC만을 포함하는 검색어를 입력받더라도 AC 또는 BC의 참조 경로 순서를 갖는 E 노드를 제2 검색결과(820)로 도출할 수 있다.
도 9는 본 발명의 실시예에 따른 검색 데이터를 기반으로 검색결과를 도출하는 동작을 나타낸 예시도이다.
도 9의 (a)는 영어단어를 검색하는 데이터 처리장치의 검색결과를 나타내고, 도 9의 (b)는 특정 단어에 대한 연상단어를 제안하는 데이터 처리장치의 검색결과를 나타낸다.
도 9의 (a)를 참조하면, 데이터 처리장치(200)는 단어뜻 노드(910), 품사 노드(920), 영단어 노드(930) 등을 포함하는 배열 구조도를 저장하고, ab, 포기 등의 검색어의 입력에 따라 'abdicate' 노드(940)를 사용자가 검색하고자 하는 영단어 검색결과로 도출하여 출력할 수 있다.
도 9의 (a)를 참조하면, 데이터 처리장치(200)는 '미술관' 노드(950), '동물원' 노드(960), '편의점' 노드(970) 등을 포함하는 배열 구조도를 저장한다. 데이터 처리장치(200)는 '미술관' 단어를 포함하고, 'b' 상황 관련 정보를 포함하는 검색어가 입력되는 경우, '미술관' 노드(950)가 참조하고 있는 '동물원' 노드(960) 및 '편의점' 노드(970) 중 'b' 상황을 참조 경로 순서로 갖는 '동물원' 노드(960)를 '미술관'에 대한 연상단어의 검색결과로 도출하여 출력할 수 있다.
이상의 설명은 본 발명의 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명의 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명의 실시예들은 본 발명의 실시예의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 실시예의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 실시예의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 실시예의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
200: 데이터 처리장치 210: 입력 데이터 획득부
220: 데이터 저장 처리부 230: 출력 데이터 처리부
240: 검색 데이터 획득부 250: 검색 처리부
260: 결과 출력부

Claims (15)

  1. 데이터를 처리하는 방법에 있어서,
    데이터 처리장치에서 입력 데이터에 포함된 복수의 데이터를 기 설정된 식별기준 단위의 노드로 분할하고, 상기 복수의 데이터에서 중복되는 복수의 노드를 하나의 노드로 표현하고, 각 노드들의 연결관계를 기반으로 각 노드들이 참조 가능한 방향에 대한 참조 경로의 순서에 따라 배열 구조도를 생성하여 저장하는 단계;
    상기 데이터 처리장치에서 결과 출력을 위한 검색 데이터가 입력된 경우, 상기 검색 데이터에 포함된 검색 노드를 기반으로 상기 배열 구조도에서 특정 노드를 검색하는 단계; 및
    상기 데이터 처리장치에서 상기 참조 경로 순서를 기반으로 상기 특정 노드와 참조 관계를 갖는 검색결과 노드를 도출하여 출력하는 단계를 포함하되,
    상기 검색하는 단계는, 상기 검색 데이터 중 마지막 경로 순서를 갖는 마지막 검색 노드를 추출하고, 상기 배열 구조도에서 상기 마지막 검색 노드와 매칭되는 노드를 상기 특정 노드로 검색하고,
    상기 출력하는 단계는, 상기 특정 노드와 참조 관계를 갖는 상기 검색결과 노드의 후보 목록을 생성하고, 상기 후보 목록 중 상기 검색 데이터에 포함된 복수의 노드와 동일한 참조 경로 순서를 갖는 상기 검색결과 노드를 도출하는 것을 특징으로 하는 데이터 처리 방법.
  2. 제1항에 있어서,
    상기 저장하는 단계는,
    복수의 데이터를 포함하는 입력 데이터 획득하고, 상기 복수의 데이터를 문자열 기반의 최소 단위의 상기 노드로 분할하여 저장하는 것을 특징으로 하는 데이터 처리 방법.
  3. 제2항에 있어서,
    상기 저장하는 단계는,
    상기 복수의 데이터에서 상기 노드 간의 참조 관계에 근거하여 결정된 상기 참조 경로 순서를 이용하여 상기 배열 구조도를 생성하는 것을 특징으로 하는 데이터 처리 방법.
  4. 삭제
  5. 제1항에 있어서,
    상기 저장하는 단계는,
    단방향의 상기 참조 경로 순서를 이용하여 복수의 상기 노드를 배열하여 상기 배열 구조도를 생성하는 것을 특징으로 하는 데이터 처리 방법.
  6. 제1항에 있어서,
    상기 저장하는 단계는,
    상기 입력 데이터 중 중복되는 노드는 하나의 노드로 표현하는 것을 특징으로 하는 데이터 처리 방법.
  7. 삭제
  8. 제1항에 있어서,
    상기 출력하는 단계는,
    상기 특정 노드와 참조 관계를 갖는 상기 검색결과 노드가 한 개 존재하는 경우, 상기 검색결과 노드를 상기 검색 데이터에 대한 결과로 출력하는 것을 특징으로 하는 데이터 처리 방법.
  9. 제1항에 있어서,
    상기 출력하는 단계는,
    상기 특정 노드와 참조 관계를 갖는 상기 검색결과 노드가 복수 개 존재하는 경우, 복수의 검색결과 노드 중 하나의 노드를 선택하여 상기 검색 데이터에 대한 결과로 출력하는 것을 특징으로 하는 데이터 처리 방법.
  10. 제9항에 있어서,
    상기 출력하는 단계는,
    상기 검색 데이터에 포함된 상기 마지막 검색 노드의 참조 경로 순서를 이용하여 상기 하나의 노드를 선택하는 것을 특징으로 하는 데이터 처리 방법.
  11. 제10항에 있어서,
    상기 출력하는 단계는,
    상기 마지막 검색 노드의 참조 경로 순서를 이용한 경우에도 복수의 검색결과 노드가 존재하는 경우, 추가 검색 데이터의 입력을 대기하는 것을 특징으로 하는 데이터 처리 방법.
  12. 제11항에 있어서,
    상기 출력하는 단계는,
    상기 추가 검색 데이터가 입력되면, 상기 추가 검색 데이터에 포함된 마지막 검색 노드 또는 상기 추가 검색 데이터의 마지막 검색 노드를 참조하는 나머지 노드들의 참조 경로 순서를 이용하여 상기 검색결과 노드를 도출하는 것을 특징으로 하는 데이터 처리 방법.
  13. 삭제
  14. 데이터를 처리하는 장치에 있어서,
    입력 데이터에 포함된 복수의 데이터를 기 설정된 식별기준 단위의 노드로 분할하고, 상기 복수의 데이터에서 중복되는 복수의 노드를 하나의 노드로 표현하고, 각 노드들의 연결관계를 기반으로 각 노드들이 참조 가능한 방향에 대한 참조 경로의 순서에 따라 배열 구조도를 생성하여 저장하는 데이터 저장부;
    결과 출력을 위한 검색 데이터가 입력된 경우, 상기 검색 데이터에 포함된 검색 노드를 기반으로 상기 배열 구조도에서 특정 노드를 검색하는 검색 처리부; 및
    상기 참조 경로 순서를 기반으로 상기 특정 노드와 참조 관계를 갖는 검색결과 노드를 도출하여 출력하는 결과 출력부를 포함하되,
    상기 검색 처리부는, 상기 검색 데이터 중 마지막 경로 순서를 갖는 마지막 검색 노드를 추출하고, 상기 배열 구조도에서 상기 마지막 검색 노드와 매칭되는 노드를 상기 특정 노드로 검색하고,
    상기 결과 출력부는, 상기 특정 노드와 참조 관계를 갖는 상기 검색결과 노드의 후보 목록을 생성하고, 상기 후보 목록 중 상기 검색 데이터에 포함된 복수의 노드와 동일한 참조 경로 순서를 갖는 상기 검색결과 노드를 도출하는 것을 특징으로 하는 데이터 처리장치.
  15. 컴퓨터에 제1항 내지 제3항, 제5항 내지 제6항, 제8항 내지 제12항 중 어느 한 항에 따른 데이터 처리 방법을 실행시키기 위하여 기록매체에 저장된 컴퓨터프로그램.
KR1020180061813A 2018-05-30 2018-05-30 지능형 자료구조 기반의 데이터 처리 방법 및 그를 위한 장치 KR102062139B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180061813A KR102062139B1 (ko) 2018-05-30 2018-05-30 지능형 자료구조 기반의 데이터 처리 방법 및 그를 위한 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180061813A KR102062139B1 (ko) 2018-05-30 2018-05-30 지능형 자료구조 기반의 데이터 처리 방법 및 그를 위한 장치

Publications (2)

Publication Number Publication Date
KR20190136292A KR20190136292A (ko) 2019-12-10
KR102062139B1 true KR102062139B1 (ko) 2020-02-11

Family

ID=69002934

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180061813A KR102062139B1 (ko) 2018-05-30 2018-05-30 지능형 자료구조 기반의 데이터 처리 방법 및 그를 위한 장치

Country Status (1)

Country Link
KR (1) KR102062139B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102571783B1 (ko) * 2022-12-16 2023-08-29 스트라토 주식회사 대용량 검색 처리를 수행하는 검색 처리 시스템 및 그 제어방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006139663A (ja) 2004-11-15 2006-06-01 Ritsumeikan 密度が高い部分行列データをコンピュータによって抽出する方法、そのコンピュータシステム及びコンピュータプログラム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100484138B1 (ko) * 2002-05-08 2005-04-18 삼성전자주식회사 관계형 데이터베이스에서 정규 경로식 질의를 처리하는xml 인덱싱 방법과 자료구조
KR101045481B1 (ko) * 2009-03-20 2011-06-30 경북대학교 산학협력단 부분 매칭을 이용한 웹 페이지의 데이터 추출 방법 및 그 기록매체
KR20140145018A (ko) * 2013-06-12 2014-12-22 한국전자통신연구원 지식 인덱스 시스템 및 그 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006139663A (ja) 2004-11-15 2006-06-01 Ritsumeikan 密度が高い部分行列データをコンピュータによって抽出する方法、そのコンピュータシステム及びコンピュータプログラム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
https://steemit.com/kr/@jaehyunlee/3gvymc
https://steemit.com/kr/@jaehyunlee/55ju99-2

Also Published As

Publication number Publication date
KR20190136292A (ko) 2019-12-10

Similar Documents

Publication Publication Date Title
WO2022142027A1 (zh) 基于知识图谱的模糊匹配方法、装置、计算机设备和存储介质
US9454599B2 (en) Automatic definition of entity collections
US10002182B2 (en) System and method for computerized identification and effective presentation of semantic themes occurring in a set of electronic documents
US10482146B2 (en) Systems and methods for automatic customization of content filtering
US8171029B2 (en) Automatic generation of ontologies using word affinities
WO2020177743A1 (en) System and method for intelligent guided shopping
US11775541B2 (en) System and method for subset searching and associated search operators
Lian et al. Discrete matrix factorization and extension for fast item recommendation
US20150100605A1 (en) Determining collection membership in a data graph
JP6434162B2 (ja) データ管理システム、データ管理方法およびプログラム
CN108875065B (zh) 一种基于内容的印尼新闻网页推荐方法
Sisodia et al. Fast prediction of web user browsing behaviours using most interesting patterns
Adamu et al. A survey on big data indexing strategies
Lian et al. Product quantized collaborative filtering
Sunuwar et al. Comparative analysis of relational and graph databases for data provenance: Performance, queries, and security considerations
Nguyen et al. Tag-based paper retrieval: minimizing user effort with diversity awareness
Xie et al. Active zero-shot learning: a novel approach to extreme multi-labeled classification
CN113918807A (zh) 数据推荐方法、装置、计算设备及计算机可读存储介质
KR102062139B1 (ko) 지능형 자료구조 기반의 데이터 처리 방법 및 그를 위한 장치
JP5224537B2 (ja) 局所性検知可能ハッシュの構築装置、類似近傍検索処理装置及びプログラム
Kang et al. Interactive hierarchical tag clouds for summarizing spatiotemporal social contents
JP7418781B2 (ja) 企業類似度算出サーバ及び企業類似度算出方法
CN114911826A (zh) 一种关联数据检索方法和系统
CN111753199B (zh) 用户画像构建方法及设备、电子设备和介质
Navarro et al. A Node Linkage Approach for Sequential Pattern Mining

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right