KR101855479B1 - Method for recommending konwledge contents based on big data and system at the same - Google Patents

Method for recommending konwledge contents based on big data and system at the same Download PDF

Info

Publication number
KR101855479B1
KR101855479B1 KR1020160068339A KR20160068339A KR101855479B1 KR 101855479 B1 KR101855479 B1 KR 101855479B1 KR 1020160068339 A KR1020160068339 A KR 1020160068339A KR 20160068339 A KR20160068339 A KR 20160068339A KR 101855479 B1 KR101855479 B1 KR 101855479B1
Authority
KR
South Korea
Prior art keywords
knowledge
data
key
document file
user
Prior art date
Application number
KR1020160068339A
Other languages
Korean (ko)
Other versions
KR20170136679A (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 KR1020160068339A priority Critical patent/KR101855479B1/en
Publication of KR20170136679A publication Critical patent/KR20170136679A/en
Application granted granted Critical
Publication of KR101855479B1 publication Critical patent/KR101855479B1/en

Links

Images

Classifications

    • G06F17/3053
    • 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/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/335Filtering based on additional data, e.g. user or group profiles
    • G06F17/2705
    • G06F17/30699
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0207Discounts or incentives, e.g. coupons or rebates
    • G06Q30/0224Discounts or incentives, e.g. coupons or rebates based on user history
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services

Abstract

본 발명은 빅 데이터 기반 지식 콘텐츠 추천 방법 및 시스템에 관한 것으로, 다수의 사용자 단말과 서버가 네트워크로 연결된 시스템에 있어서, 상기 서버는, 상기 사용자 단말로부터의 문서 파일 등을 수신받아 사용자별 지식 데이터를 저장하고, 상기 사용자 단말로부터의 지식 콘텐츠 추천 정보를 요청받으면, 상기 지식 콘텐츠를 요청한 사용자의 지식 데이터 추출 이력 정보가 있는지 여부를 확인하고, 상기 지식 데이터 추출 이력 정보가 있는 경우에는 저장된 사용자별 지식 데이터를 바탕으로 지식 콘텐츠를 검색하되, 설정 값 기준으로 상위 및 하위 순위에 포함된 지식 콘텐츠들을 지식 콘텐츠 추천 정보로 생성하고, 상기 지식 데이터 추출 이력이 없는 경우에는 저장된 사용자별 지식 데이터를 반영하지 않고 지식 콘텐츠 추천 정보를 생성하는 것을 특징으로 한다.The present invention relates to a method and system for recommending knowledge data based on large data. In a system in which a plurality of user terminals and a server are connected via a network, the server receives document files from the user terminal, And if the knowledge data extraction history information is present, the control unit checks whether or not there is knowledge data extraction history information of a user requesting the knowledge content, Based on the set value, generates knowledge contents included in the upper and lower ranks based on the set value, as the knowledge content recommendation information, and when there is no knowledge data extraction history, To generate content recommendation information .

Description

빅 데이터 기반 지식 콘텐츠 추천 방법 및 시스템{Method for recommending konwledge contents based on big data and system at the same}BACKGROUND OF THE INVENTION 1. Field of the Invention [0001] The present invention relates to a method and system for recommending knowledge contents,

본 발명은 빅 데이터 기반 서비스에 관한 것으로, 보다 상세하게는, 사용자들의 지식 데이터를 추출하여 빅 데이터 클러스터에 저장하고, 상기 지식 데이터 추출 이력을 바탕으로 사용자 맞춤형 지식 콘텐츠를 제공하는 지식 콘텐츠 추천 방법 및 시스템에 관한 것이다.More particularly, the present invention relates to a knowledge content recommendation method for extracting knowledge data of users, storing the knowledge data in a big data cluster, and providing a user-customized knowledge content based on the knowledge data extraction history, ≪ / RTI >

본 발명은 미래창조과학부의 2014년 특구기술사업화 사업의 일환으로 수행한 연구로부터 도출된 것이다[과제고유번호 : 1711019812(세부번호 : 14DDI089), 과제명 : 웹 리얼 타임 커뮤니케이션을 위한 협업 시스템의 개발 및 사업화].The present invention is derived from research conducted as a part of the 2014 Special Technology Commercialization Project of the Creation Science Department of the Future [Task No .: 1711019812 (detail number: 14DDI089), Project title: Development of a collaborative system for web real- Commercialization].

일반적으로 '스마트 워크'란 시간과 장소에 얽매이지 않고 언제 어디서나 일할 수 있는 체계를 의미하고, '빅 데이터(big data)'란 기존 데이터베이스 관리도구로 데이터를 수집, 저장, 관리, 분석할 수 있는 역량을 넘어서는 대량의 정형 또는 비정형 데이터 집합 및 이러한 데이터로부터 가치를 추출하고 결과를 분석하는 기술을 의미한다.Generally speaking, 'smart work' means a system that can work anywhere and anytime without being bound to time and place. Big data means collecting, storing, managing and analyzing data with existing database management tools. A large set of formal or unstructured data sets beyond competence, and techniques for extracting value from these data and analyzing the results.

이러한 빅 데이터 환경을 통해 다양한 지식이 기술된 여러 종류의 문서 정보가 데이터로 축적되고 있으며, 최근 웹 서버를 중심으로 빅 데이터 환경을 이용해 보다 빠르게 스마트 워크 환경이 현실화되고 있다.Various kinds of document information which various knowledge is described through the big data environment are accumulated as data. Recently, a smart work environment has been realized more rapidly by using a big data environment centering on a web server.

이처럼 스마트 워크의 지속적 확대에 따라 사무환경에서 흩어져 있는 '자료의 지식化'에 대한 관심이 높아지고 있으며, 수많은 개발 업체들이 다양한 형태의 서비스를 개발하여 공급하고 있다.As smart work continues to expand, interest in 'knowledge of data' scattered in the office environment is increasing, and many developers are developing and supplying various types of services.

이러한 '자료의 지식化'를 위한 다양한 형태의 서비스 중 하나로서 웹 기반 문서 공유 서비스가 있다.Web - based document sharing service is one of various types of services for 'knowledge of data'.

선행기술로서 특허공개번호 10-2015-0000225(웹 기반 회의 보조 시스템의 문서 공유 방법 및 그 시스템)에서, 웹 기반 문서 공유 서비스는, 공유하고자 하는 공유 문서 파일을 공유 문서 이미지 파일로 변환한 후 이에 대한 URL 주소를 회의 보조 시스템 서버에 등록하고, 등록된 공유 문서 이미지 파일에 대한 URL 주소를 웹 기반 회의에 참가한 회의 개설자 및 회의 참가자와 공유함으써 공유 문서 이미지 파일을 통해 회의에 대한 내용을 용이하게 파악할 수 있다. 따라서, 회의를 통해 의사 결정을 수행하는 많은 기업들은 상기 웹 기반 문서 공유 서비스를 필요로 할 수 있으며 이를 통해 회의의 효율적인 진행을 수행할 수 있다. As a prior art, Patent Publication No. 10-2015-0000225 (document sharing method and system of Web-based conference assistant system), a web-based document sharing service converts a shared document file to be shared into a shared document image file, And the URL address of the registered shared document image file is shared with the conference establishment participant and the conference participant participating in the Web-based conference, thereby facilitating the contents of the conference through the shared document image file . Accordingly, many companies that make a decision through a meeting may require the web-based document sharing service, thereby enabling efficient progress of the conference.

그러나, 공유하고자 하는 공유 문서 파일을 단순히 이미지로 변환한 후 이에 대한 URL 주소를 공유하는 것은, 공유 문서 파일의 내용을 파악할 수 없음에 따라 기업 내에서 생산된 아이디어와 같은 지식을 효율적으로 수집, 저장, 분석 및 관리할 수 없다는 단점이 있다.However, since the shared document file to be shared is merely converted into an image and then the URL address is shared, it is difficult to grasp the contents of the shared document file, thereby efficiently collecting and storing knowledge such as ideas produced in the enterprise , And can not be analyzed and managed.

또한, 스마트 워크는 빅 데이터 환경으로 인해 정작 너무 많은 정보를 제공함으로 인해 자신이 원하는 특정 지식 콘텐츠를 검색하는 것은 어려운 일이 되었다. In addition, it is difficult for SmartWalk to search for specific knowledge contents that it wants by providing too much information due to the big data environment.

한국공개특허 10-2015-0000225호(2015.01.02. 공개)Korean Patent Laid-Open No. 10-2015-0000225 (published on February 21, 2015)

본 발명은 전술한 문제점을 해결하기 위하여 안출한 것으로, 시스템에서 수집되는 문서 등을 분석하여 맵리듀스를 통해 정형화된 형태로 변형하고 빅 데이터化하여 사용자의 지식과 높은 유사도를 가지는 지식 콘텐츠를 추천할 수 있는 빅 데이터 기반 지식 콘텐츠 추천 방법 및 시스템을 제공하는 것을 목적으로 한다.DISCLOSURE OF THE INVENTION The present invention has been made in order to solve the above problems, and it is an object of the present invention to provide a system and method for analyzing documents collected in a system, transforming the documents into stereotypes through MapReduce, And to provide a method and system for recommending knowledge contents based on large data.

상기의 목적을 달성하기 위하여, 본 발명의 일 태양에 따르면, 네트워크 상에서 적어도 하나의 사용자 단말을 이용하여 적어도 하나의 지식 콘텐츠를 추천하기 위해, 접속한 사용자의 지식 데이터 추출 이력이 있는지 확인하는 단계와, 지식 데이터 추출 이력이 있는 경우 상기 사용자로부터 추출된 지식 데이터에 기반한 지식 콘텐츠를 추천해 주는 단계와, 상기 사용자의 지식 데이터 추출 이력이 없는 경우 상기 사용자로부터 추출된 지식 데이터가 아닌 지식 콘텐츠 추천 시스템에 로그인한 다수의 다른 사용자에 의해 추출된 지식 데이터에 기반한 지식 콘텐츠를 추천해 주는 단계를 포함하는 빅 데이터 기반 지식 콘텐츠 추천 방법을 제공한다.According to an aspect of the present invention, there is provided a method for acquiring at least one knowledge content using at least one user terminal on a network, comprising the steps of: A step of recommending a knowledge content based on knowledge data extracted from the user when there is a knowledge data extraction history, and a step of recommending a knowledge content recommendation system that is not knowledge data extracted from the user when the user has no knowledge data extraction history And recommending knowledge content based on knowledge data extracted by a plurality of logged-in other users.

여기서, 적어도 하나의 사용자 단말기를 이용하여 적어도 하나의 지식 콘텐츠를 추천하기 위해, 상기 사용자로부터 전송된 문서 파일을 수신하고 저장하는 단계와, 상기 수신된 문서 파일을 분석하고 지식 데이터를 추출(분석)하는 단계와, 상기 추출(분석)된 지식 데이터를 맵리듀스(Map/Reduce)하여 빅 데이터 클러스터에 지식 데이터를 저장하는 단계를 더 포함할 수 있다.Receiving and storing a document file transmitted from the user to recommend at least one knowledge content using at least one user terminal; analyzing the received document file and extracting (analyzing) the knowledge data; And storing the knowledge data in the big data cluster by Map / Reduce the extracted (analyzed) knowledge data.

본 발명의 다른 태양에 따르면, 빅 데이터 기반 지식 콘텐츠 추천 시스템은, 네트워크 상에서 적어도 하나의 사용자 단말기를 이용하여 적어도 하나의 지식 콘텐츠를 추천하기 위해, 접속한 사용자의 지식 데이터 추출 이력이 있는지 확인하고, 지식 데이터 추출 이력이 있는 경우 상기 사용자로부터 추출된 지식 데이터에 기반한 지식 콘텐츠를 추천해 주며, 상기 사용자의 지식 데이터 추출 이력이 없는 경우 상기 사용자로부터 추출된 지식 데이터가 아닌 지식 콘텐츠 추천 시스템에 로그인한 다수의 다른 사용자에 의해 추출된 지식 데이터에 기반한 지식 콘텐츠를 추천해 주는 지식 콘텐츠 추천부를 포함할 수 있다.According to another aspect of the present invention, a big data-based knowledge content recommendation system includes a knowledge data extracting unit for checking whether there is a knowledge data extraction history of a connected user to recommend at least one knowledge content using at least one user terminal on a network, If there is a knowledge data extraction history, recommends knowledge contents based on the knowledge data extracted from the user, and if there is no knowledge data extraction history of the user, And a knowledge content recommending unit for recommending the knowledge content based on the knowledge data extracted by the other users of the user.

또한, 적어도 하나의 사용자 단말기를 이용하여 적어도 하나의 지식 콘텐츠를 추천하기 위해, 상기 사용자로부터 전송된 문서 파일을 수신하고 저장하는 서버 통신부와, 상기 수신된 문서 파일을 분석하고 지식 데이터를 추출(분석)하는 파일 분석부와, 상기 추출(분석)된 지식 데이터를 정형화된 형태로 변형하는 맵리듀스(Map/Reduce)부와, 정형화된 지식 데이터를 빅 데이터 클러스터에 저장하는 지식 데이터 저장부를 더 포함할 수 있다.A server communication unit for receiving and storing a document file transmitted from the user to recommend at least one knowledge content using at least one user terminal; a server communication unit for analyzing the received document file and extracting A map analyzing unit for analyzing the extracted knowledge data, a map analyzing unit for analyzing the extracted knowledge data, and a knowledge data storing unit for storing the formal knowledge data in a big data cluster .

여기서, 지식 데이터 저장부는 인터넷에 연결된 사용자 단말의 로그인을 통해 문서 파일을 수신하는 지식 콘텐츠 추천 시스템으로 전송된 문서 파일을 분석하여 소정 단위로 지식 데이터를 추출(parsing)하고 추출된 데이터를 맵리듀스하여 소정 순서로 배열하여 빅 데이터 클러스터에 저장할 수 있다. 또한, 상기 지식 데이터 저장의 출력 데이터와 지식 데이터 추출에 사용된 문서 파일을 빅 데이터 클러스터의 다수의 저장소에 분산 저장할 수 있다.Here, the knowledge data storage unit analyzes the document file transmitted to the knowledge content recommendation system receiving the document file through the login of the user terminal connected to the Internet, parses the knowledge data in a predetermined unit, They can be arranged in a predetermined order and stored in a big data cluster. Also, output data of the knowledge data storage and document files used for knowledge data extraction may be distributed and stored in a plurality of repositories of the big data cluster.

더하여, 본 발명에 따른 빅 데이터 기반 지식 콘텐츠 추천 방법 및 시스템은 웹 기반 문서 공유 회의 시스템에 적용될 수 있다. 즉, 웹 기반 문서공유 회의에 참가하는 다수의 참가자에게 적어도 하나의 지식 콘텐츠를 추천하기 위해, 접속한 사용자의 지식 데이터 추출 이력이 있는지 확인하고, 지식 데이터 추출 이력이 있는 경우 상기 사용자로부터 추출된 지식 데이터에 기반한 지식 콘텐츠를 추천해 주며, 상기 사용자의 지식 데이터 추출 이력이 없는 경우 상기 사용자로부터 추출된 지식 데이터가 아닌 지식 콘텐츠 추천 시스템에 로그인한 다수의 다른 사용자에 의해 추출된 지식 데이터에 기반한 지식 콘텐츠를 추천할 수 있다.In addition, the method and system for recommending big data-based knowledge contents according to the present invention can be applied to a web-based document sharing conference system. That is, in order to recommend at least one knowledge content to a plurality of participants participating in a web-based document sharing conference, it is checked whether there is a knowledge data extraction history of the connected user. If there is a knowledge data extraction history, Based on the knowledge data extracted by the plurality of other users who are logged into the knowledge content recommendation system rather than the knowledge data extracted from the user when the user does not have the knowledge data extraction history, Can be recommended.

본 발명은, 지식 콘텐츠 추천 시스템으로 수집되는 문서 등을 분석하여 맵리듀스를 통해 정형화된 형태로 변형하고 빅 데이터化하여 사용자의 지식과 높은 유사도를 가지는 지식 콘텐츠를 추천할 수 있다.The present invention analyzes document collected by the knowledge content recommendation system, transforms it into a stereotyped form through MapReduce, and converts it into big data, thereby recommending knowledge contents having high similarity with the user's knowledge.

즉, 웹 서버로 집중되는 문서에 포함된 비정형 데이터를 정형화된 형태로 변형하여 분석할 수 있는 빅 데이터 분석 시스템에 광범위하게 적용할 수 있다.That is, the present invention can be widely applied to a big data analysis system that can transform and analyze unstructured data included in a document concentrated on a web server into a regular form.

예를 들어, 사용자가 발표자료, 제안자료, 논문, 특허, 회의자료, 제안서와 같은 지식 문서를 작성하기 위해 네이버나 구글과 같은 검색 엔진을 통해 검색된 결과를 활용하는 것보다, 본 발명에 따른 지식 콘텐츠 추천 서비스를 이용하면, 조직 내에서 발생한 지식 문서가 빅 데이터 클러스터에 축적되고 이를 통해 빅 데이터 기반 지식 콘텐츠를 활용할 수 있다. 이는, 사용자의 검색 의도와 가장 높은 유사도를 가지는 지식 콘텐츠를 검색할 수 있게 되므로, 사용자가 쉽고 간단하게 빅 데이터 기반 서비스를 활용할 수 있다.For example, rather than utilizing results retrieved through search engines such as Naver or Google to create knowledge articles such as presentations, proposals, papers, patents, conference materials, proposals, Using the content recommendation service, the knowledge documents generated in the organization are accumulated in the big data cluster, and the big data based knowledge contents can be utilized. This makes it possible to retrieve knowledge contents having the highest degree of similarity with the user's search intention, so that the user can easily and simply utilize the big data based service.

또한, 웹 기반 문서 공유 회의와 같이, 사용자 단말로부터 전송되는 공유 문서와 사용자 로그인 정보를 빅 데이터로 활용함으로써 사용자별로 최적화된 지식 콘텐츠를 추천할 수 있게 된다.In addition, by using the shared document and the user login information transmitted from the user terminal as the big data, it is possible to recommend the optimized knowledge contents for each user like the web based document sharing conference.

도 1은 본 발명의 바람직한 실시 예에 따른 빅 데이터 기반 지식 콘텐츠 추천 시스템의 구성을 나타낸 도면,
도 2는 도 1에 도시된 빅 데이터 기반 지식 콘텐츠 추천 시스템의 웹 서버 기능 블록도,
도 3은 본 발명의 바람직한 실시 예에 따른 빅 데이터 기반 지식 콘텐츠 추천 방법의 개략적인 흐름도,
도 4는 도 3에서 사용자별 지식 데이터 저장 과정을 나타낸 흐름도,
도 5는 본 발명의 바람직한 실시 예에 따른 빅 데이터 기반 지식 콘텐츠 추천 과정에 적용된 맵리듀스(MapReduce)의 일 예를 설명하기 위한 도면이다.
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a block diagram of a system for recommending knowledge contents based on a big data according to a preferred embodiment of the present invention;
FIG. 2 is a functional block diagram of a web server of the big data-based knowledge content recommendation system shown in FIG. 1;
FIG. 3 is a schematic flowchart of a method of recommending knowledge data based on knowledge data according to a preferred embodiment of the present invention;
FIG. 4 is a flowchart illustrating a process of storing knowledge data for each user in FIG. 3;
FIG. 5 is a diagram for explaining an example of MapReduce applied to a knowledge-based knowledge content recommendation process according to a preferred embodiment of the present invention.

본 발명의 이점 및 특징, 그리고 그것을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 통해 설명될 것이다. 그러나 본 발명은 여기에서 설명되는 실시예들에 한정되지 않고 다른 형태로 구체화될 수도 있다. 단지, 본 실시예들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 본 발명의 기술적 사상을 용이하게 실시할 수 있을 정도로 상세히 설명하기 위하여 제공되는 것이다.BRIEF DESCRIPTION OF THE DRAWINGS The advantages and features of the present invention, and how to accomplish it, will be described with reference to the embodiments described in detail below with reference to the accompanying drawings. However, the present invention is not limited to the embodiments described herein but may be embodied in other forms. The embodiments are provided so that those skilled in the art can easily carry out the technical idea of the present invention to those skilled in the art.

도면들에 있어서, 본 발명의 실시예들은 도시된 특정 형태로 제한되는 것이 아니며 명확성을 기하기 위하여 과장된 것이다. 또한, 명세서 전체에 걸쳐서 동일한 참조번호로 표시된 부분들은 동일한 구성요소를 나타낸다.In the drawings, embodiments of the present invention are not limited to the specific forms shown and are exaggerated for clarity. In addition, like reference numerals designate like elements throughout the specification.

본 명세서에서 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 또한, 명세서에서 사용되는 "포함한다" 또는 "포함하는"으로 언급된 구성요소, 단계, 동작 및 소자는 하나 이상의 다른 구성요소, 단계, 동작, 소자 및 장치의 존재 또는 추가를 의미한다.The singular forms herein include plural forms unless the context clearly dictates otherwise. Also, components, steps, operations and elements referred to in the specification as " comprises "or" comprising " refer to the presence or addition of one or more other components, steps, operations, elements, and / or devices.

이하에서 첨부된 도면을 참조하여 본 발명의 바람직한 실시 예에 따른 빅 데이터 기반 지식 콘텐츠 추천 시스템 및 서비스 과정을 상세히 설명하면 다음과 같다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, a system and method for recommending a knowledge-based knowledge content according to a preferred embodiment of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 바람직한 실시 예에 따른 빅 데이터 기반 지식 콘텐츠 추천 시스템의 구성을 나타낸 도면이다.FIG. 1 is a block diagram of a system for recommending knowledge contents based on a big data according to a preferred embodiment of the present invention.

도 1을 참조하면, 본 발명에 따른 지식 콘텐츠 추천 시스템은 적어도 하나 이상의 사용자 단말(110 내지 130) 및 서버(200)를 포함한다.Referring to FIG. 1, the knowledge content recommendation system according to the present invention includes at least one or more user terminals 110 to 130 and a server 200.

여기서, 사용자 단말(110 내지 130)은 컴퓨터, 노트북, 개인 휴대 단말기뿐만 아니라 모바일 단말기, 스마트 폰 등 온라인 상태에서 웹 브라우징이 가능한 모든 기기를 포함한다.Here, the user terminals 110 to 130 include all devices capable of web browsing, such as a mobile terminal, a smart phone, and the like, as well as a computer, a notebook, and a personal portable terminal.

상기 사용자 단말(110 내지 130) 중 어느 하나에서 문서 파일 등을 사용자 입력을 통해 서버(200)로 제공할 수 있으며, 사용자 단말(110 내지 130)은 지식 콘텐츠 추천 서비스 제공을 위한 문서 파일 등을 제공하거나 제공된 지식 콘텐츠 추천에 따라 지식 콘텐츠를 디스플레이 또는 오디오 등으로 출력하는 도구 또는 기기로서의 역할을 수행한다.The user terminals 110 to 130 may provide a document file or the like to the server 200 through a user input and the user terminals 110 to 130 may provide a document file or the like for providing a knowledge content recommendation service Or serves as a tool or a device for outputting knowledge contents on display, audio, or the like in accordance with a recommended knowledge content recommendation.

또한, 본 발명에 따른 지식 콘텐츠 추천 서비스를 제공하는 서버는 웹 서버 형태로 제공될 수 있는데, 일반적으로 웹 서버는 인터넷 등의 네트워크를 이용한 통신 환경에서 사용자 단말(110 내지 130)이 웹페이지를 통해 용이하게 지식 콘텐츠 추천 서비스를 제공받기 위해 마련된 인터페이스 역할의 서버로서, 그 동작 및 작용은 통상적인 웹서버와 크게 다르지 않으므로, 웹 서버에 대한 상세한 설명은 생략하기로 한다. 이때, 사용자 단말(110 내지 130)을 통해 웹 페이지에 로그인하는 사용자 계정 정보로는 사용자 ID, 패스워드, 공인 인증서 등이 해당될 수 있다.The server for providing the knowledge content recommendation service according to the present invention may be provided in the form of a web server. Generally, the web server is a system in which, in a communication environment using a network such as the Internet, A detailed description of the web server will be omitted because the operation and operation of the server are not so different from those of a typical web server. At this time, a user ID, a password, a public certificate, and the like may correspond to the user account information for logging into the web page through the user terminals 110 to 130.

따라서, 사용자 단말기(110 내지 130)를 통해 사용자는, 문서 파일, 예를 들어 워드 파일(doc, docx), 한글 파일(hwp), 텍스트 파일(txt) 형식 등의 문서 등을 서버(200)로 제공하고, 이후 서버(200)로부터 제공하는 문서 파일에 대응하는 지식 콘텐츠 추천 정보를 수신받아 이를 확인할 수 있다. 이때, 지식 콘텐츠 추천 서비스를 위해 수신받는 파일로는 문서 파일이 바람직하나, 이에 한정되는 것은 아니며 동영상 등 멀티미디어 데이터에도 텍스트 등이 포함되어 있는 경우에 지식 데이터로서 추출하여 추천 정보를 제공할 수 있으므로 적용가능할 것으로 판단된다.Accordingly, the user can send a document such as a document file, for example, a word file doc, a docx, a hwp file, a text file (txt), etc., to the server 200 through the user terminals 110 to 130 And can receive the knowledge content recommendation information corresponding to the document file provided from the server 200, and confirm the information. In this case, the document file is preferably a file received for the knowledge content recommendation service. However, the present invention is not limited to this, and if multimedia data such as a moving picture includes text, the recommendation information may be extracted as knowledge data. .

또한, 서버(200)는 제공된 문서 파일을 저장하는 데이터베이스(DB)를 더 포함할 수 있다. 예를 들어, 서버(200)와 연동되는 DB는 각 사용자와 연관된 조직으로, 각 회사 네트워크와 연결된 회사 자료 DB, 조직내에서 각종 자료가 저장되어 있는 DB, 네이버, 다음 등의 웹 서버와 연동되는 지식 DB로서 빅 데이터 클러스터등이 해당될 수 있다.In addition, the server 200 may further include a database (DB) storing the provided document file. For example, the DB linked to the server 200 is an organization associated with each user. The DB is linked with a company data DB connected to each company network, a DB storing various data in the organization, a web server such as Naver, And a big data cluster as a knowledge DB.

이와 같이, 본 발명에 따른 지식 콘텐츠 추천 시스템은 사용자 단말(110 내지 130) 중 어느 하나가 서버(200)에 접속하는 경우, 서버(200)는 사용자 단말의 지식 데이터를 추출하고 추출된 사용자별 지식 데이터를 기반으로 지식 콘텐츠 추천 정보를 제공할 수 있다. 이때, 서버(200)는 추출 이력으로 사용자 단말(110)의 사용자별 지식 데이터를 기준으로 지식 콘텐츠 추천 정보를 제공하거나, 추출 이력이 없을 경우 다수의 다른 사용자 단말기(120 내지 130)에 의해 축적된 지식 데이터에 기반한 지식 콘텐츠 정보를 제공할 수 있다. 이에 따라, 사용자는 지식 콘텐츠 추천 요청에 대해 적어도 하나의 지식 콘텐츠를 포함하는 지식 콘텐츠 추천 정보를 디스플레이 등으로 출력하여 제공받을 수 있다.As described above, in the case where any one of the user terminals 110 to 130 accesses the server 200, the server 200 extracts the knowledge data of the user terminal, It is possible to provide knowledge content recommendation information based on data. At this time, the server 200 may provide the knowledge content recommendation information on the basis of the user-specific knowledge data of the user terminal 110 as the extraction history, or may provide the knowledge content recommendation information to the user terminals 110, Knowledge content information based on knowledge data can be provided. Accordingly, the user can output the knowledge content recommendation information including at least one knowledge content for the knowledge content recommendation request on the display or the like.

예를 들어, 사용자가 발표자료, 제안자료, 논문, 특허, 회의자료, 제안서와 같은 지식 문서를 작성하기 위해 네이버나 구글과 같은 검색 엔진을 통해 검색된 결과를 활용하여 제공받을 수 있으나, 본 발명에 따른 지식 콘텐츠 추천 서비스에 따를 경우에는 기존 사용자가 작성한 지식 문서 또는 사용자와 연관된 조직 내에서 발생한 지식 문서가 빅 데이터 클러스터에 축적되어 있는 경우에는 이를 활용하는 것이 사용자의 검색 의도에 적합하고, 가장 높은 유사도를 가지는 지식 콘텐츠를 검색할 수 있으므로, 사용자가 쉽고 간단하게 빅 데이터 기반 지식 콘텐츠 추천 시스템을 활용할 수 있는 장점이 있다.For example, a user may be provided with a search result through a search engine such as Naver or Google in order to create a knowledge document such as an announcement document, a proposal document, a patent, a conference document, or a proposal, In the case of the knowledge content recommendation service according to the present invention, if the knowledge document created by the existing user or the knowledge document generated in the organization related to the user is accumulated in the big data cluster, it is suitable to the user's search intention, The user can easily and easily utilize the knowledge data recommendation system based on the big data.

도 2는 도 1의 지식 콘텐츠 추천 시스템에서 서버에 대한 기능 블록도이다.2 is a functional block diagram of a server in the knowledge content recommendation system of FIG.

도 1의 상기 지식 콘텐츠 추천 시스템에서, 서버(200)는 복수의 사용자 단말기(110 내지 130) 중 어느 하나로부터 문서 파일이 수신되면, 수신된 문서 파일에서 단어 데이터로 파싱하고 맵리듀스하여 추출된 지식 데이터와 상기 문서 파일을 저장한 후 빅 데이터 기반 지식 콘텐츠 추천 정보를 사용자 단말기(110 내지 130)로 제공한다. 이때, 서버(200)는 웹서버로서 사용자 단말(110 내지 130)들이 접속 가능하도록 대기(Listen)하고, 사용자 단말(110 내지 130)들의 접속에 따른 사용자 인증 절차 및 서비스 페이지 제공하며, 사용자 단말(110 내지 130)들의 계정 등록을 위한 절차 수행을 지원할 수 있다.1, when a document file is received from one of the plurality of user terminals 110 to 130, the server 200 parses the received document file into word data, Data and the document file, and then provides the big data-based knowledge content recommendation information to the user terminals 110 to 130. At this time, the server 200 listens as a web server to allow the user terminals 110 to 130 to be connected, provides a user authentication procedure and a service page according to the connection of the user terminals 110 to 130, 110 to 130) to perform account registration.

또한, 서버(200)는 아파치(Apache, Node.JS, PHP) 서버를 활용할 수 있으며, 서버(200)는 사용자 단말(110 내지 130)과 HTTP Request/Response 방식으로 통신한다. In addition, the server 200 may utilize an Apache server (Apache, Node.JS, PHP), and the server 200 communicates with the user terminals 110 to 130 through an HTTP request / response method.

도 2를 참조하면, 서버(200)는, 사용자 단말과 문서 파일 등의 데이터를 송수신하는 서버 통신부(210), 수신된 문서 파일 등을 분석하는 파일 분석부(220), 맵리듀스부(230), 지식 데이터 저장부(240), 지식 콘텐츠 추천부(250)를 포함한다. 2, the server 200 includes a server communication unit 210 for transmitting and receiving data, such as a document file, to a user terminal, a file analysis unit 220 for analyzing the received document file, a mapper de- A knowledge data storage unit 240, and a knowledge content recommendation unit 250.

먼저, 서버 통신부(210)는 지식 콘텐츠 추천 시스템에서 사용자 단말(110 내지 130) 또는 외부기기와 서버와의 데이터를 송수신하는 역할을 수행하며, 상기 사용자 단말로부터 문서 파일 등을 수신하고, 저장할 수 있다. 이때, 수신된 문서 파일 등을 파일 분석부(220)로 전송할 때, 문서 파일 등을 제공한 사용자 계정 정보를 포함하여 문서 파일 등과 함께 전송할 수 있다.First, the server communication unit 210 transmits and receives data between the user terminals 110 to 130 or the external device and the server in the knowledge content recommendation system, and can receive and store document files and the like from the user terminal . At this time, when the received document file or the like is transmitted to the file analysis unit 220, it may be transmitted together with the document file including the user account information providing the document file or the like.

파일 분석부(220)는 상기 서버 통신부(210)로부터 전송된 문서 파일 등의 파일 형식의 데이터에 포함된 문장을 공백 단위로 추출하고, 상기 추출된 문장을 워드(word) 단위 데이터로 파싱(Parsing)하고, 파싱된 단어 데이터들을 후술하는 맵리듀스(230) 과정에 최적화되도록 순서대로 배열한다.The file analysis unit 220 extracts a sentence included in data of a file format such as a document file transmitted from the server communication unit 210 in a blank unit and parses the extracted sentence as word unit data ), And arranges the parsed word data in order so as to be optimized for the MapReduce 230 process described later.

맵리듀스부(Map/Reduce)(230)는 맵(Map) 동작과 리듀스(Reduce) 동작을 수행한다. 이때, 맵 동작은 대용량 데이터 처리를 위한 모델로서 흩어져 있는 비정형 입력(input) 데이터를 관련 있는 데이터끼리 묶어 정형화된 형태의 key-value list 쌍으로 변형한다. 또한, 리듀스 동작은 상기 맵 작업으로부터 생성된 정형화된 형태의 key-value 리스트 쌍을 대상으로 실제 병렬처리를 수행하여 중복 데이터를 제거한 후 원하는 데이터를 추출한다.The map / reduce unit 230 performs a map operation and a reduction operation. At this time, the map operation transforms unstructured input data scattered as a model for processing large data into related key-value list pairs by grouping related data. Further, in the redesing operation, the actual parallel processing is performed on the key-value list pair of the regular form generated from the map operation to remove the redundant data, and then the desired data is extracted.

가령, 상기 파일 분석부(220)에서 파싱된 각 단어 데이터마다 맵 동작이 수행된다. 이때, 파싱된 단어 데이터는 레코드 단위로 읽어 처리하고, 그 결과를 key-value 리스트 쌍으로 만들어 저장한다. 저장할 때는 같은 key 끼리 정렬해서 저장하며, 같은 key 끼리 모은 데이터는 다시 같은 리듀스 동작에서 처리할 데이터끼리 모아서 정렬한다. 이어, 리듀스 동작은 이렇게 생성된 맵 동작의 출력들을 결합한다. 즉, 각 파싱 데이터들로부터 가져온 데이터를 key 별로 병합하고 정렬하고, 정렬이 끝난 데이터는 key-value 리스트 쌍으로 묶는다. 여기서, 키(key)는 문서 속에서 표현된 단어가 해당될 수 있으며, 밸류(Value)는 문서 속에서 표현된 단어의 횟수가 해당될 수 있다.For example, a map operation is performed for each word data parsed by the file analyzer 220. At this time, the parsed word data is read and processed in record units, and the result is stored in a key-value list pair. When storing, the same keys are sorted and stored, and the data collected by the same keys are collected and sorted by the data to be processed in the same redox operation. Then, the reduction operation combines the outputs of the generated map operation. That is, the data obtained from each parsing data is merged and sorted by key, and the sorted data is grouped into a key-value list pair. Here, the key may correspond to a word expressed in a document, and the value may correspond to the number of words represented in the document.

또한, 지식 데이터 저장부(240)는 상기 맵리듀스부(230)에 의해 추출된 key-value 리스트 쌍에 문서 파일을 제공한 사용자 계정 정보 및 문서 파일이 저장된 경로 정보를 포함하여 저장할 수 있다. 여기서, 지식 데이터 저장부(240)는 문서 파일 또는 지식 데이터 등의 정보를 데이터베이스(DB)에 저장하거나 빅 데이터 클러스터에 저장할 수 있다.Also, the knowledge data storage unit 240 may store the user account information providing the document file in the key-value list pair extracted by the mapping de-esser 230 and the path information storing the document file. Here, the knowledge data storage unit 240 may store information such as a document file or knowledge data in a database (DB) or in a big data cluster.

또한, 지식 콘텐츠 추천부(250)는, 상지 지식 데이터 저장부(240)에 저장된 상기 사용자 계정 정보 및 문서 파일이 저장된 경로 정보를 포함한 상기 key-value 리스트 쌍을 바탕으로 로그인한 사용자의 지식 데이터 추출 이력 정보 확인에 이용할 수 있다. 이어, 확인된 지식 데이터 추출 이력을 바탕으로 지식 콘텐츠를 검색하되, 설정 값 기준으로 상위 및 하위 순위에 포함된 지식 콘텐츠들을 지식 콘텐츠 추천 정보로 생성할 수 있다. 여기서, 설정 값 기준은 맵리듀스부(230)에서 변형된 정형화된 지식 데이터로서 도출된 key-value 리스트 쌍의 개수(count)가 해당될 수 있다. 가령, key는 문서 속에서 표현된 단어가 해당되며, 상기 Value는 문서 속에서 표현된 단어의 횟수가 해당될 수 있다.In addition, the knowledge content recommendation unit 250 extracts knowledge data of the logged-in user based on the key-value list pair including the user account information stored in the upper-level knowledge data storage unit 240 and the path information in which the document file is stored Can be used to check history information. Then, based on the confirmed knowledge data extraction history, the knowledge contents may be searched, and the knowledge contents included in the upper and lower ranks based on the set value may be generated as the knowledge content recommendation information. Here, the set value reference may correspond to the number of key-value list pairs derived as modified knowledge data in the map de-miss unit 230. For example, the key corresponds to a word expressed in a document, and the Value may correspond to the number of words represented in the document.

또한, 지식 콘텐츠 추천부(250)는 사용자 단말(110)이 서버(200)에 접속하는 경우, 사용자 단말(110)의 지식 데이터 추출 이력을 기반으로 생성된 지식 콘텐츠 추천 정보를 제공한다. 이때 지식 콘텐츠 추천부(250)는 사용자 단말(110)의 지식 데이터 추출 이력을 기준으로 지식 콘텐츠 추천 정보를 제공하거나, 이력이 없을 경우에는, 다수의 다른 사용자 단말기(120 내지 130)에 의해 축적된 지식 데이터에 기반한 지식 콘텐츠를 추천한다. 이에 따라 지식 콘텐츠 추천부(250)는 상기 지식 데이터 저장부(240)에서 빅 데이터 클러스터에 축적된 지식 콘텐츠들을 확인하고 상기 사용자 단말(110)로 지식 콘텐츠 추천 정보를 제공하여 출력한다.The knowledge content recommendation unit 250 provides the generated knowledge content recommendation information based on the knowledge data extraction history of the user terminal 110 when the user terminal 110 accesses the server 200. [ At this time, the knowledge content recommending unit 250 may provide the knowledge content recommendation information based on the knowledge data extraction history of the user terminal 110, or, if there is no history, Recommend knowledge content based knowledge data. Accordingly, the knowledge content recommendation unit 250 identifies the knowledge contents stored in the big data cluster in the knowledge data storage unit 240, and provides the knowledge content recommendation information to the user terminal 110 and outputs the information.

상술한 본 발명은 맵리듀스(MapReduce) 분산 프레임 워크 상에서 구현될 수 있으나, 이에 제한되는 것은 아니며 분산 환경이 아니더라도 동일한 데이터가 있는 경우 동일한 기술을 적용하여 동일한 결과를 얻을 수 있을 것이다. 한편, 하둡(Hadoop)은 대량의 자료를 처리할 수 있는 대량의 컴퓨터 클러스터 내에서 동작하는 분산 응용 프로그램을 지원하는 오픈 소스이며, 본 발명의 빅 데이터 기반 지식 콘텐츠 추천 시스템은 하둡 분산 파일 시스템(HDFS : Hadoop Distributed File System)과 맵리듀스(Map/Reduce)를 이용하여 구현할 수 있다. Although the present invention can be implemented on a MapReduce distributed framework, the present invention is not limited thereto, and the same result can be obtained by applying the same technology when there is the same data even if it is not a distributed environment. Meanwhile, Hadoop is an open source that supports distributed applications operating in a large number of computer clusters capable of processing a large amount of data, and the Big Data-based knowledge content recommendation system of the present invention is a Hadoop distributed file system (HDFS : Hadoop Distributed File System) and MapReduce (Map / Reduce).

이하에서, 도 1 및 도 2의 지식 콘텐츠 시스템을 이용하여 본 발명에 따른 빅 데이터 기반 지식 콘텐츠 추천 서비스 과정을 도 3 내지 도 5를 참조하여 자세히 설명한다.Hereinafter, a procedure of recommending a knowledge-based knowledge content based on a big data according to the present invention will be described in detail with reference to FIGS. 3 to 5 using the knowledge content system of FIG. 1 and FIG.

도 3은 본 발명의 바람직한 실시 예에 따른, 빅 데이터 기반 지식 콘텐츠 추천 방법의 개략적인 흐름도이고, 도 4는 도 3에서 적용된 지식 데이터 저장 과정을 나타낸 흐름도이고, 도 5는 도 3에서 적용된 맵리듀스(MapReduce)의 일 예를 설명하기 위한 도면이다.FIG. 3 is a schematic flowchart of a method of recommending knowledge data based on knowledge data according to a preferred embodiment of the present invention, FIG. 4 is a flowchart illustrating a knowledge data storing process applied in FIG. 3, (MapReduce) according to an embodiment of the present invention.

먼저, 사용자는 사용자 단말을 통해 웹 서버에 접속하여 본 발명에 따른 지식 콘텐츠 추천 서비스 회원으로 가입할 수 있고, 지식 콘텐츠 프로그램을 다운로드 받아 설치하고 실행할 수 있다. 이때, 웹 서버는 본 발명에 따른 지식 콘텐츠 추천 서비스 회원 가입과 사용자 인증을 위해 다수의 사용자 단말(110 내지 130)들의 계정 등록을 위한 절차 수행을 지원할 수 있다. First, a user accesses a web server through a user terminal, joins as a member of a knowledge content recommendation service according to the present invention, downloads a knowledge content program, and installs and executes the knowledge content program. At this time, the web server can support a procedure for registering accounts of a plurality of user terminals 110 to 130 for membership of a knowledge content recommendation service and user authentication according to the present invention.

또한, 웹 서버는 각 사용자 단말(110 내지 130)의 접속 여부를 확인하고, 서비스 회원으로 가입한 다수의 사용자 중에서 어느 하나의 사용자 단말(110)이 접속하면 입력된 사용자 계정 정보를 통해 해당 사용자에 대한 사용자 인증을 수행한다(S310). 이때, 사용자 계정정보는 시스템 로그인을 위한 아이디(ID), 패스워드(Pass word), 공인인증서 등의 로그인을 위한 정보가 해당될 수 있다.In addition, the web server confirms whether or not each of the user terminals 110 to 130 is connected, and when a user terminal 110 of a plurality of users joining as a service member accesses the web server, The user authentication is performed (S310). At this time, the user account information may correspond to login information such as an ID, a password, and a public certificate for system login.

한편, 본 발명에 따른 지식 콘텐츠 추천 서비스에서는, 서버(200)는 로그인한 사용자 단말(110)로부터 문서 파일 등의 지식 데이터를 수신받아, 도 2의 지식 데이터 저장부(240)에 사용자별 지식 데이터를 저장한다(S320). 이때, 사용자별 지식 데이터는 각 사용자 단말의 사용자 계정 정보와 매핑되어 저장되는데, 맵리듀스부(230)에 의해 추출된 key-value 리스트 쌍에 문서 파일을 제공한 사용자 계정 정보 및 문서 파일이 저장된 경로 정보를 포함하여 저장할 수 있다. 이를 통해 특정 데이터 노드에 저장된 사용자 단말(110)의 지식 데이터 추출 이력을 확인할 수 있게 된다. 이러한 지식 데이터 저장 과정에 대해서는 도 4를 통해 후술한다.Meanwhile, in the knowledge content recommendation service according to the present invention, the server 200 receives knowledge data such as a document file from the logged-in user terminal 110 and stores knowledge data for each user in the knowledge data storage unit 240 shown in FIG. (S320). At this time, the per-user knowledge data is mapped and stored with the user account information of each user terminal. The user account information providing the document file in the key-value list pair extracted by the mapping de- Information can be stored. Thus, the knowledge data extraction history of the user terminal 110 stored in the specific data node can be confirmed. This knowledge data storing process will be described later with reference to FIG.

이어, 서버(200)는 사용자 단말(110)의 접속 계정 또는 로그인 정보(사용자 계정정보)를 기반으로 특정 데이터 노드에 저장된 사용자 단말(110)의 지식 데이터 추출 이력을 확인한다(S330). 이때, 웹 서버는 사전에 320단계에서 지식 데이터 저장부(240)에서 사용자별 지식 데이터를 저장하고 지식 데이터 추출 이력정보를 생성하여 특정 데이터 노드에 저장하도록 제어할 수 있다. The server 200 confirms the knowledge data extraction history of the user terminal 110 stored in the specific data node based on the connection account of the user terminal 110 or the login information (user account information) (S330). At this time, the web server may previously store knowledge data for each user in the knowledge data storage unit 240 in step 320 and generate knowledge data extraction history information to be stored in a specific data node.

이어, 서버(200)는 로그인한 사용자의 지식 데이터 추출 이력정보를 바탕으로 지식 콘텐츠 추천 정보를 제공하거나(S340), 상기 지식 데이터 추출 이력정보가 없을 경우 다수의 다른 사용자 단말(120 내지 130)에 의해 축적된 지식 데이터에 기반한 지식 콘텐츠 추천 정보를 제공할 수 있다(S350). 이때, 지식 콘텐츠 추천 정보는 해당 지식 데이터와 매핑된 문서, 동영상 등의 멀티미디어 데이터 또는 콘텐츠의 파일 목록 또는 리스트가 해당될수 있다.Then, the server 200 provides the knowledge content recommendation information based on the knowledge data extraction history information of the logged-in user (S340). If there is no knowledge data extraction history information, the server 200 provides the knowledge content recommendation information to the plurality of other user terminals 120 to 130 And provides knowledge content recommendation information based on the accumulated knowledge data (S350). At this time, the knowledge content recommendation information may correspond to a file list or a list of multimedia data or contents of a document, video, or the like mapped to the knowledge data.

이어, 웹 서버(200)는 상기 340 및 350단계에서 빅 데이터 클러스터에 저장된 지식 콘텐츠 정보를 확인하고, 로그인한 사용자 단말(110)로 해당 지식 콘텐츠 추천 정보를 제공하여 출력한다(S360).In step S360, the web server 200 confirms the knowledge content information stored in the big data cluster in steps 340 and 350 and provides the knowledge content recommendation information to the logged-in user terminal 110 in step S360.

도 4를 참조하면, 320 단계에서 사용자별 지식 데이터 저장 과정에서, 서버(200)는 사용자 로그인(S410)한 사용자 단말(110)로부터 문서 파일 수신 여부를 확인하고(S420), 무선 파일이 수신되지 않은 경우에는 문서 파일 수신 대기 상태를 계속 유지한다.Referring to FIG. 4, in step 320, the server 200 checks whether a document file is received from the user terminal 110 that has logged in the user (S410) (S420). When the wireless file is not received The document file reception state is maintained.

이어, 문서 파일 수신 시, 수신된 문서 파일 등에서 파일 형식의 데이터를 단어 데이터로 파싱(Parsing)하고(S430), 파싱된 단어 데이터에 대해 맵리듀스 과정에 최적화되도록 순서대로 배열하고 맵리듀스 과정을 거쳐 지식 데이터를 추출한다(S440). 이때, 데이터 파싱 및 맵리듀스 과정은 각각 도 2의 서버의 파일 분석부(220)와 맵리듀스(230)에서 수행한다. Next, at the time of receiving the document file, the data of the file format is parsed into the word data in the received document file or the like (S430). The parse word data is arranged in order so as to be optimized for the mapping process, The knowledge data is extracted (S440). At this time, the data parsing and mapping processes are performed by the file analysis unit 220 and the mapping rule 230 of the server of FIG. 2, respectively.

이어, 440단계에서 추출된 지식 데이터를 빅 데이터 클러스터에 분산 저장한다. 이때, 추출된 지식 데이터는 문서 파일을 제공한 사용자 계정 정보 및 문서 파일이 저장된 경로 정보를 포함하여 key-value 리스트 쌍으로 저장한다. 또한, key-value 리스트 쌍 저장은 각각 도 2의 서버의 지식 데이터 저장부(240)에서 수행되고, 상기 지식 데이터 저장부(240)는 별도의 외부 DB 또는 빅 데이터 클러스터와 연동되어 데이터 저장이 수행될 수 있다.Then, the knowledge data extracted in step 440 is distributedly stored in the big data cluster. At this time, the extracted knowledge data includes key-value list pairs including user account information providing the document file and path information storing the document file. In addition, the key-value list pair storage is performed in the knowledge data storage unit 240 of the server in FIG. 2, and the knowledge data storage unit 240 is interlocked with a separate external DB or a big data cluster, .

이에 따라, 서버(200)는 다수의 사용자 단말(110 내지 130) 중 어느 하나로부터 문서 파일이 수신되면, 430 내지 450 단계를 통해 저장된 지식 데이터 추출 이력을 바탕으로 이전 생성(축적)된 지식 콘텐츠 정보를 추천할 수 있고, 사용자에 적합한 지식 콘텐츠를 제공하여 사용자 맞춤형 스마트 워크가 가능하게 한다.Accordingly, when a document file is received from one of the plurality of user terminals 110 to 130, the server 200 generates knowledge content information (information) that has been previously generated (accumulated) based on the knowledge data extraction history stored in steps 430 to 450 And provides a knowledge content suitable for a user, thereby enabling a user-customized smart work.

즉, 확인된 지식 데이터 추출 이력을 바탕으로 지식 콘텐츠를 검색하되, 설정 값 기준으로 상위 및 하위 순위에 포함된 지식 콘텐츠들을 지식 콘텐츠 추천 정보로 생성할 수 있다. 여기서, 설정 값 기준은 맵리듀스부(230)에서 변형된 정형화된 지식 데이터로서 도출된 key-value 리스트 쌍의 개수(count)가 해당될 수 있다. 가령, key는 문서 속에서 표현된 단어가 해당되며, 상기 Value는 문서 속에서 표현된 단어의 횟수가 해당될 수 있다.That is, based on the confirmed knowledge data extraction history, the knowledge contents can be searched, and the knowledge contents included in the upper and lower ranks based on the set value can be generated as the knowledge content recommendation information. Here, the set value reference may correspond to the number of key-value list pairs derived as modified knowledge data in the map de-miss unit 230. For example, the key corresponds to a word expressed in a document, and the Value may correspond to the number of words represented in the document.

도 5는 도 3에서 적용된 맵리듀스(MapReduce)의 일 예로서, 지식 데이터 유사도 판단 구성 요소를 적용하는 과정에 대하여 Work Count를 예시로 나타낸 도면이다.FIG. 5 illustrates an example of MapReduce applied in FIG. 3, which illustrates an example of a Work Count for applying a knowledge data similarity determination component.

도 5를 참조하면, 서버가 문서 파일 수신 시, 수신된 문서 파일 등에서 파일 형식의 데이터를 단어 데이터로 파싱(Parsing)한다. 이어, 파싱된 단어 데이터 입력(Input)으로 있는 3줄은 HDFS(Hadoop Distributed File System) 상에 존재한다고 가정하며, 각각의 행은 하나의 데이터 노드에 존재하거나 여러 개의 데이터 노드에 나뉘어 존재한다. 여기서, 실질적으로 데이터 노드 저장 방식은 파일 사이즈에 따라 다를 수 있다. Split은 각각의 행(Row)과 전체 입력 데이터 중 일정 크기의 데이터를 특정 데이터 노드의 특정 Mapper에 할당한다.Referring to FIG. 5, when a server receives a document file, it parses the file format data in the received document file or the like into word data. Then, it is assumed that the three lines of the parsed word data input exist on the HDFS (Hadoop Distributed File System), and each line exists in one data node or in a plurality of data nodes. Here, the data node storage method may be substantially different depending on the file size. Split allocates data of a certain size among each row and all input data to a specific mapper of a specific data node.

도 5에서, 총 3개의 Mapper가 수행되며, 각각의 Mapper에는 한 행씩의 데이터가 입력으로 들어온다. Mapper에서는 한 행을 읽어 쉼표(,)로 데이터를 분리한 후 각 단어를 Key로 하고, 각 단어별 등장회수(=1)를 Value로 하여 출력한다. 이어출력된 (Key, Value) 값은 동일 key에 대한 Value를 동일한 데이터 노드에서 읽을 수 있도록 정렬된다. 각 데이터 노드의 리듀스(Reduce)에서는 특정 키에 대해 들어오는 Value 값을 읽어 원하는 기능을 수행한다.In Fig. 5, a total of three mapper operations are performed. In each mapper, one row of data is input. Mapper reads a line, separates the data by a comma (,), and outputs each word as a Key, and the number of occurrences (= 1) for each word as a Value. The output value (Key, Value) is then arranged so that the value for the same key can be read from the same data node. Reduce of each data node performs the desired function by reading the incoming value value for a specific key.

도 5에 나타낸 경우는 단순한 합산을 수행할 것을 예시한 것이다. “빅데이터“에 대해서는 4개의 Value가 들어오며 이를 단순 합산한 후에 (key, value) = (빅데이터, 4)라는 데이터를 HDFS에 출력한다. 모든 리듀스(Reduce) 수행이 끝나면 HDFS에서 바라볼 때, 전체 결과를 확인할 수 있다.In the case shown in Fig. 5, a simple summation is performed. For "big data", four values are entered. After simple summing, the data (key, value) = (big data, 4) is output to HDFS. After all Reduce is done, you can see the whole result when viewed from HDFS.

이제까지 본 발명에 대하여 실시 예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시 예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 따라서 본 발명의 범위는 전술한 실시 예에 한정되지 않고 특허 청구범위에 기재된 내용 및 그와 동등한 범위 내에 있는 다양한 실시 형태가 포함되도록 해석되어야 할 것이다.The present invention has been described above with reference to the embodiments. It will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the appended claims. Therefore, the disclosed embodiments should be considered in an illustrative rather than a restrictive sense. Therefore, the scope of the present invention is not limited to the above-described embodiments, but should be construed to include various embodiments within the scope of the claims and equivalents thereof.

110, 120, 130: 사용자 단말
200: 서버
210: 서버 통신부
220: 파일 분석부
230: 맵리듀스부
240: 지식 데이터 저장부
250: 지식 콘텐츠 추천부
110, 120, and 130:
200: Server
210: server communication section
220: File analysis section
230: Maple deuce part
240: knowledge data storage unit
250: Knowledge contents recommendation section

Claims (12)

다수의 사용자 단말과 서버가 네트워크로 연결된 시스템에 있어서,
상기 서버는,
상기 사용자 단말로부터 문서 파일과 상기 문서 파일을 제공한 사용자 계정 정보를 포함하는 문서 파일을 수신하는 서버 통신부;
상기 서버 통신부로부터 전송된 문서 파일의 파일 형식의 데이터에 포함된 문장을 공백 단위로 추출하고, 상기 추출된 문장을 워드(word) 단위 데이터로 파싱하고 파싱된 워드 단위 데이터를 순서대로 배열하는 파일 분석부;
상기 파일 분석부에 의해 파싱된 각 워드 단위 데이터마다 레코드 단위로 읽어 처리하고 그 결과를 key-value 리스트 쌍으로 만들어 저장하고 저장할 때는 같은 key 별로 병합하고 정렬하고 정렬이 끝난 데이터는 key-value 리스트 쌍으로 묶는 맵(Map) 동작과, 상기 맵 동작으로부터 생성된 정형화된 형태의 key-value 리스트 쌍을 대상으로 실제 병렬처리를 수행하여 중복데이터를 제거하는 리듀스(reduce) 동작을 수행하는 맵리듀스부;
상기 맵리듀스부에서 추출된 key-value 리스트 쌍에 상기 문서 파일을 제공한 사용자 계정 정보 및 문서 파일이 저장된 경로 정보를 포함하여 저장하는 지식 데이터 저장부; 및
상기 지식 데이터 저장부에 저장된 상기 사용자 계정 정보 및 문서 파일이 저장된 경로 정보를 포함한 key-value 리스트 쌍을 바탕으로 로그인한 사용자의 지식 데이터 추출 이력 정보를 확인하고, 확인된 지식 데이터 추출 이력을 바탕으로 지식 콘텐츠를 검색하되, 설정 값 기준으로 상위 및 하위 순위에 포함된 지식 콘텐츠들을 지식 콘텐츠 추천 정보로 생성하는 지식 콘텐츠 추천부를 포함하는 것을 특징으로 하는 빅 데이터 기반 지식 콘텐츠 추천 시스템.
In a system in which a plurality of user terminals and a server are connected via a network,
The server comprises:
A server communication unit for receiving a document file from the user terminal and a document file including user account information providing the document file;
A file analysis unit for extracting a sentence included in data of a file format of the document file transmitted from the server communication unit in a blank unit, parsing the extracted sentence into word unit data, and arranging the parsed word unit data in order part;
The data parsed by the file analyzing unit is read and processed in units of records for each record. When the result is stored in a key-value list pair, the data is merged and sorted by the same key, and the sorted data is stored in a key- And a map deuce unit for performing a reduce operation to remove redundant data by performing actual parallel processing on a pair of key-value lists of a regular type generated from the map operation, ;
A knowledge data storage unit for storing the user account information providing the document file and the path information in which the document file is stored in the key-value list pair extracted by the mapping deuce unit; And
Based on a key-value list pair including the user account information and the path information storing the document file stored in the knowledge data storage unit, the knowledge data extraction history information of the logged-in user is confirmed, and based on the confirmed knowledge data extraction history And a knowledge content recommendation unit configured to search knowledge contents and generate knowledge contents included in upper and lower ranks based on a set value as knowledge content recommendation information.
제1항에 있어서,
상기 지식 콘텐츠 추천부에서, 상기 설정 값 기준은 상기 맵리듀스부에서 도출된 key-value 리스트 쌍의 개수(count)인 것을 특징으로 하는 빅 데이터 기반 지식 콘텐츠 추천 시스템.
The method according to claim 1,
Wherein the set value reference in the knowledge content recommendation unit is a count of key-value list pairs derived from the map de-miss unit.
제2항에 있어서,
상기 key는 상기 문서 파일 속에서 표현된 단어가 해당되며, 상기 Value는 상기 문서 파일 속에서 표현된 단어의 횟수가 해당되는 것을 특징으로 하는 빅 데이터 기반 지식 콘텐츠 추천 시스템.
3. The method of claim 2,
Wherein the key corresponds to a word represented in the document file, and the Value corresponds to a number of words represented in the document file.
다수의 사용자 단말과 서버가 네트워크로 연결된 시스템에서의 지식 콘텐츠 추천 방법에 있어서,
(a) 상기 서버가, 상기 사용자 단말로부터 문서 파일과 상기 문서 파일을 제공한 사용자 계정 정보를 포함하는 문서 파일을 수신받는 제1단계와, 상기 제1단계에서 수신받은 상기 문서 파일에 포함된 문장을 공백 단위로 추출하고, 상기 추출된 문장을 워드(word) 단위 데이터로 파싱하고 파싱된 워드 단위 데이터를 순서대로 배열하는 제2단계와, 상기 제2단계에서 파싱된 각 워드 단위 데이터마다 레코드 단위로 읽어 처리하고 그 결과를 key-value 리스트 쌍으로 만들어 저장하고 저장할 때는 같은 key 별로 병합하고 정렬하고 정렬이 끝난 데이터는 key-value 리스트 쌍으로 묶는 맵(Map) 동작과, 상기 맵 동작으로부터 생성된 정형화된 형태의 key-value 리스트 쌍을 대상으로 실제 병렬처리를 수행하여 중복데이터를 제거하는 리듀스(reduce) 동작을 수행하는 제3단계와, 상기 제3단계에서 추출된 key-value 리스트 쌍에 상기 문서 파일을 제공한 사용자 계정 정보 및 문서 파일이 저장된 경로 정보를 포함하여 저장하는 제4단계를 포함하는 단계;
(b) 상기 서버가 상기 사용자 단말로부터의 지식 콘텐츠 추천 정보를 요청받으면, 상기 (a) 단계의 제4단계에서 저장된 상기 사용자 계정 정보 및 문서 파일이 저장된 경로 정보를 포함한 key-value 리스트 쌍을 바탕으로 상기 요청한 사용자의 지식 데이터 추출 이력 정보가 있는지 여부를 확인하는 단계;
(c) 상기 (b) 단계에서 판단 결과, 상기 지식 데이터 추출 이력 정보가 있는 경우에는 상기 (a) 단계에 저장된 사용자별 지식 데이터를 바탕으로 지식 콘텐츠를 검색하되, 설정 값 기준으로 상위 및 하위 순위에 포함된 지식 콘텐츠들을 지식 콘텐츠 추천 정보로 생성하는 단계; 및
(d) 상기 (b) 단계에서의 판단 결과, 상기 지식 데이터 추출 이력이 없는 경우에는 상기 (a) 단계에서 저장된 사용자별 지식 데이터를 반영하지 않고 지식 콘텐츠 추천 정보를 생성하는 단계를 포함하는 것을 특징으로 하는 빅 데이터 기반 지식 콘텐츠 추천 방법.
A method for recommending knowledge contents in a system in which a plurality of user terminals and a server are connected via a network,
(a) receiving, from the user terminal, a document file including a document file and user account information providing the document file; (b) receiving, from the user terminal, A second step of parsing the extracted sentence into word unit data and arranging the parsed word unit data in order; a second step of extracting, in units of word, And the result is stored as a pair of key-value lists, the map operation for merging and sorting the same key and grouping the sorted data into a pair of key-value lists, A third step of performing a reduce operation to remove redundant data by performing actual parallel processing on a set of key-value lists of a formal type; Comprising the steps of a key-value pair list extracted in the third step includes a fourth step of storing including the user account information and document files are stored path information providing the document file;
(b) when the server receives the request for knowledge content recommendation information from the user terminal, a key-value list pair including path information storing the user account information and the document file stored in step (4) Checking whether the requested user has knowledge data extraction history information;
(c) if it is determined in step (b) that there is the knowledge data extraction history information, searching the knowledge contents based on the per-user knowledge data stored in step (a) Generating knowledge contents included in the knowledge content recommendation information as knowledge content recommendation information; And
(d) generating the knowledge content recommendation information without reflecting the per-user knowledge data stored in the step (a) when the knowledge data extraction history is not available as a result of the determination in the step (b) Based knowledge content recommendation method.
제4항에 있어서,
상기 (c) 단계에서, 상기 설정 값 기준은 상기 key-value 리스트 쌍의 개수(count)인 것을 특징으로 하는 빅 데이터 기반 지식 콘텐츠 추천 방법.
5. The method of claim 4,
Wherein the set value reference is a count of the key-value list pairs in step (c).
제5항에 있어서,
상기 key는 상기 문서 파일 속에서 표현된 단어가 해당되며, 상기 Value는 상기 문서 파일 속에서 표현된 단어의 횟수가 해당되는 것을 특징으로 하는 빅 데이터 기반 지식 콘텐츠 추천 방법.
6. The method of claim 5,
Wherein the key corresponds to a word represented in the document file, and the Value corresponds to a number of words represented in the document file.
삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete
KR1020160068339A 2016-06-01 2016-06-01 Method for recommending konwledge contents based on big data and system at the same KR101855479B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160068339A KR101855479B1 (en) 2016-06-01 2016-06-01 Method for recommending konwledge contents based on big data and system at the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160068339A KR101855479B1 (en) 2016-06-01 2016-06-01 Method for recommending konwledge contents based on big data and system at the same

Publications (2)

Publication Number Publication Date
KR20170136679A KR20170136679A (en) 2017-12-12
KR101855479B1 true KR101855479B1 (en) 2018-06-26

Family

ID=60943811

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160068339A KR101855479B1 (en) 2016-06-01 2016-06-01 Method for recommending konwledge contents based on big data and system at the same

Country Status (1)

Country Link
KR (1) KR101855479B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021040101A1 (en) * 2019-08-30 2021-03-04 주식회사 나눔기술 Real-time distributed indexing system and method for high-performance query and response

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023038349A1 (en) * 2021-09-07 2023-03-16 삼성전자 주식회사 Electronic device for managing storage space and operation method for same

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021040101A1 (en) * 2019-08-30 2021-03-04 주식회사 나눔기술 Real-time distributed indexing system and method for high-performance query and response

Also Published As

Publication number Publication date
KR20170136679A (en) 2017-12-12

Similar Documents

Publication Publication Date Title
JP6776411B2 (en) Device identifier-dependent operation processing for packet-based data communication
US10691895B2 (en) Dynamic text generation for social media posts
US20180232362A1 (en) Method and system relating to sentiment analysis of electronic content
Park et al. Web-based collaborative big data analytics on big data as a service platform
US9984427B2 (en) Data ingestion module for event detection and increased situational awareness
US20230333919A1 (en) Flexible and scalable artificial intelligence and analytics platform with advanced content analytics and data ingestion
US20080052162A1 (en) Calendar-Based Advertising
US20070081550A1 (en) Network-accessible database of remote services
US20110276598A1 (en) System for and method of providing reusable software service information based on natural language queries
US20160092551A1 (en) Method and system for creating filters for social data topic creation
US20120324538A1 (en) System and method for discovering videos
CN104199863B (en) Lookup method, device and the router of file in storage device
WO2014146086A2 (en) Computer-based method and system of analyzing, editing and improving content
US10460031B2 (en) Generating structured meeting reports through semantic correlation of unstructured voice and text data
US20160012074A1 (en) System and method for providing contextual analytics data
JP2022031625A (en) Method and device for pushing information, electronic device, storage medium, and computer program
Boranbayev et al. The method of data analysis from social networks using apache hadoop
Vergara et al. Building cognitive applications with IBM watson services: Volume 7 natural language understanding
CN113221535B (en) Information processing method, device, computer equipment and storage medium
KR101855479B1 (en) Method for recommending konwledge contents based on big data and system at the same
US11113259B2 (en) Method and system for analyzing unstructured data for compliance enforcement
CN105740251B (en) Method and system for integrating different content sources in bus mode
US20220358293A1 (en) Alignment of values and opinions between two distinct entities
Al Bashaireh et al. Twitter Data Collection and Extraction: A Method and a New Dataset, the UTD-MI
Coppens et al. Unifying and targeting cultural activities via events modelling and profiling

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right