KR20230113029A - 데이터 거래 플랫폼 서비스를 제공하기 위한 방법, 서버 및 컴퓨터 프로그램 - Google Patents

데이터 거래 플랫폼 서비스를 제공하기 위한 방법, 서버 및 컴퓨터 프로그램 Download PDF

Info

Publication number
KR20230113029A
KR20230113029A KR1020220009430A KR20220009430A KR20230113029A KR 20230113029 A KR20230113029 A KR 20230113029A KR 1020220009430 A KR1020220009430 A KR 1020220009430A KR 20220009430 A KR20220009430 A KR 20220009430A KR 20230113029 A KR20230113029 A KR 20230113029A
Authority
KR
South Korea
Prior art keywords
information
data
transaction
user
server
Prior art date
Application number
KR1020220009430A
Other languages
English (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 KR1020220009430A priority Critical patent/KR20230113029A/ko
Publication of KR20230113029A publication Critical patent/KR20230113029A/ko

Links

Images

Classifications

    • 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/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0613Third-party assisted
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • 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/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0631Item recommendations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/53Network services using third party service providers

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Development Economics (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

전술한 바와 같은 과제를 실현하기 위한 데이터 거래 플랫폼 서비스를 제공하기 위한 방법이 개시된다. 상기 방법은, 사용자 단말로부터 스크래핑 요청 정보를 수신하는 단계, 상기 스크래핑 요청 정보에 기초하여 외부 서버로부터 복수의 자료 데이터를 수집하는 단계, 상기 복수의 자료 데이터에 기초하여 가공 데이터를 생성하는 단계 및 상기 사용자 단말로부터 상기 가공 데이터에 대응하는 거래 생성 요청 정보를 수신하는 것에 대응하여 상기 가공 데이터의 거래에 관련한 거래 서비스를 제공하는 단계를 포함할 수 있다.

Description

데이터 거래 플랫폼 서비스를 제공하기 위한 방법, 서버 및 컴퓨터 프로그램{METHOD, SERVER AND COMPUTER PROGRAM FOR PROVIDING DATA TRADING PLATFORM SERVICES}
본 발명은 데이터 거래 플랫폼에 관한 것으로, 보다 구체적으로, 수집된 복수의 데이터들을 개인화된 가치 정보로 변환하는 서비스 및 변환된 데이터를 다수의 사용자들과 공유하도록 하는 거래 플랫폼 서비스를 제공하는 방법, 서버 및 컴퓨터 프로그램을 제공하기 위함이다.
최근, 4차 산업혁명을 준비하기 위한 국가적, 기업적 움직임이 활발해지고 있다. 4차 산업혁명으로 도래하게 될 미래 사회는 거의 모든 사회, 경제활동이 데이터를 기반으로 이루어질 것으로 예상되고 있다. 4차 산업혁명을 통해 모든 산업분야에 데이터에 기반한 지능을 접목시킴으로써 단순한 자동화를 넘어서 새로운 혁신을 이룰 것으로 예상되고 있다.
사회와 경제의 다양한 분야에서 기초가 되는 데이터는 불가피하게 개인에 관한 데이터가 주를 이루거나 중요한 부분이 될 가능성이 높다. 특히 소비자와의 접점이 있는 분야에서는 개인에 대한 더욱 정밀한 데이터와 지능적 판단을 통하여 부가가치를 창출하려는 시도가 일반화될 것으로 예상되고 있다.
이러한 환경에서, 최근에는 스크래핑을 활용하여 대량을 자료를 수집하는 기술이 널리 이용되고 있다. 스크래핑 기술이란, 자동으로 시스템에 접속하여 필요한 자료만을 추출하여 가져오는 기술이다. 웹사이트에 있는 정보를 추출하여 다른 사이트나 데이터베이스에 저장하기 때문에 웹스크래핑이라고도 한다. 예컨대, 스크래핑 기술은 인터넷 뱅킹에 이용되기 용이하여 각 금융기관에서 활발하게 이용 중이다. 이 밖에도, 호텔과 항공사·렌터카·주유소 등의 마일리지와 같은 보상 프로그램, 전자 우편 통합조회, 뉴스·채팅·날씨 등 사용자가 클릭해 정보를 얻을 수 있는 다양한 분야에서 스크래핑 기술이 활용되고 있다.
다만, 스크래핑 기술은 다수의 사용자 각각의 스크래핑 요청에 대하여 각각에 스크래핑을 수행하게 되므로, 스크래핑 요청의 수 또는 스크래핑 요청의 대상이 되는 외부 기간의 종류에 따라 처리량이 증가할 수 있다. 이러한 처리량의 증가는 데이터 획득 시간을 지연시킬 우려가 있다.
또한, 이러한 데이터 스트래핑 기술을 활용하여 분산된 데이터들을 수집하더라도, 사용자 개인이 수집된 데이터를 개인화된 가치 정보로 변환하는데 어려움이 있다. 예컨대, 분산된 다량의 데이터들을 수집하더라도 저장 또는 공유할 수 있는 기능을 제공하지 않거나 또는 일회성으로 제공하여 개인이 구축한 데이터에 대한 가치 제공(예컨대, 데이터의 시각화를 위한 편집 등)이 불가능한 경우가 많다. 추가적으로, 각 사용자가 데이터들을 수집 및 가공하여 가치 정보로 변환하더라도, 타 사용자와의 거래가 용이하지 않아 제한적인 용도로만 활용될 우려가 있다.
이에 따라, 사용자 개개인이 용이하게 분산된 데이터를 수집 및 가공할 수 있으며, 가공된 데이터를 분석 및 거래할 수 있는 서비스 플랫폼에 대한 수요가 존재할 수 있다.
대한민국 공개특허 10-2017-0041523
본 발명이 해결하고자 하는 과제는 전술한 배경기술에 대응하여 안출된 것으로, 수집된 복수의 데이터들을 개인화된 가치 정보로 변환하는 서비스 및 변환된 데이터를 다수의 사용자들과 공유하도록 하는 거래 플랫폼 서비스를 제공하는 방법을 제시하기 위함이다.
본 발명이 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
상술한 과제를 해결하기 위한 본 발명의 일 실시예에 따른 데이터 거래 플랫폼 서비스를 제공하기 위한 방법이 개시된다. 상기 방법은, 사용자 단말로부터 스크래핑 요청 정보를 수신하는 단계, 상기 스크래핑 요청 정보에 기초하여 외부 서버로부터 복수의 자료 데이터를 수집하는 단계, 상기 복수의 자료 데이터에 기초하여 가공 데이터를 생성하는 단계 및 상기 사용자 단말로부터 상기 가공 데이터에 대응하는 거래 생성 요청 정보를 수신하는 것에 대응하여 상기 가공 데이터의 거래에 관련한 거래 서비스를 제공하는 단계를 포함할 수 있다.
대안적인 실시예에서, 상기 스크래핑 요청 정보는, 상기 사용자 단말의 사용자가 수집하고자 하는 자료 데이터에 관련한 정보 및 각 자료데이터들의 위치한 외부 서버에 관련한 정보를 포함하며, 상기 스크래핑 요청 정보에 기초하여 외부 서버로부터 복수의 자료 데이터를 수집하는 단계는, 상기 스크래핑 요청 정보에 기초하여 데이터 수집 주기 정보를 획득하는 단계 및 상기 데이터 수집 주기 정보에 기초하여 상기 복수의 자료 데이터를 수집하는 단계를 포함할 수 있다.
대안적인 실시예에서, 상기 스크래핑 요청 정보에 기초하여 외부 서버로부터 복수의 자료 데이터를 수집하는 단계는, 상기 스크래핑 요청 정보에 기초하여 외부 서버의 수 및 각 외부 서버에 대응하는 데이터 수집량을 식별하는 단계, 상기 외부 서버의 수 및 상기 각 외부 서버에 대응하는 데이터 수집량에 기초하여 스케줄링 정보를 생성하는 단계 및 상기 스케줄링 정보에 기초하여 상기 복수의 자료 데이터를 수집하는 단계를 포함하며, 상기 복수의 자료 데이터의 수집은, 외부 서버 각각에 대응하여 병렬적으로 수행되는 것을 특징으로 할 수 있다.
대안적인 실시예에서, 상기 복수의 자료 데이터에 기초하여 가공 데이터를 생성하는 단계는, 편집 사용자 인터페이스를 제공하는 단계 및 상기 편집 사용자 인터페이스에 대한 사용자 입력에 기초하여 상기 복수의 자료 데이터에 관련한 상기 가공 데이터를 생성하는 단계를 포함할 수 있다.
대안적인 실시예에서, 상기 거래 서비스를 제공하는 단계는, 상기 가공 데이터 및 상기 거래 생성 요청 정보에 기초하여 거래에 관련한 복수의 항목 정보를 포함하는 거래 정보를 생성하는 단계 및 거래 서비스 풀에 상기 거래 정보를 노출시켜 복수의 타 사용자 단말로부터의 거래 요청 수신을 허용하는 단계를 포함할 수 있다.
대안적인 실시예에서, 상기 방법은, 상기 사용자 단말의 사용자가 생성한 거래 정보의 수, 타 사용자 단말과의 거래가 완료된 거래 정보의 수 및 거래 정보의 판매 금액 중 적어도 하나에 기초하여 상기 사용자 단말의 사용자에 대응하는 거래 등급을 결정하는 단계 및 상기 거래 등급을 포함하는 상기 거래 정보를 생성하는 단계를 더 포함할 수 있다.
대안적인 실시예에서, 상기 방법은, 상기 복수의 타 사용자 단말 각각에 대응하는 컨텐츠 정보 각각과 상기 거래 정보의 연관성에 기초하여 상기 거래 정보에 대한 상기 복수의 타 사용자 단말 각각의 적합도를 산출하는 단계 및 상기 복수의 타 사용자 단말 각각에 대응하여 산출된 적합도에 기초하여 각 타 사용자 단말에 상기 거래 정보에 포함된 복수의 항목 정보의 노출 정도를 상이하게 결정하는 단계를 더 포함할 수 있다.
대안적인 실시예에서, 상기 방법은, 상기 거래 서비스 풀에 등록된 복수의 거래 정보 및 상기 복수의 거래 정보 각각에 대응하는 복수의 거래 완료 정보에 기초하여 데이터 경향성 정보를 획득하는 단계 및 상기 데이터 경향성 정보에 기초하여 가공 데이터 추천 정보를 생성하는 단계를 더 포함할 수 있다.
대안적인 실시예에서, 상기 방법은, 상기 가공 데이터 추천 정보에 기초하여 상기 거래 서비스 풀에 등록된 복수의 사용자 단말 중 하나 이상의 가공 추천 사용자 단말을 선별하는 단계 및 상기 하나 이상의 가공 추천 사용자 단말로 상기 가공 데이터 추천 정보를 전송할 것을 결정하는 단계를 더 포함할 수 있다.
본 개시의 다른 실시예에 따르면, 데이터 거래 플랫폼 서비스를 제공하기 위한 방법을 수행하는 서버가 개시된다. 상기 서버는 하나 이상의 인스트럭션을 저장하는 저장부 및 상기 메모리에 저장된 하나 이상의 인스터럭션을 실행하는 프로세서를 포함하고, 상기 프로세서는 상기 하나 이상의 인스터럭션을 실행함으로써, 전술한 데이터 거래 플랫폼 서비스를 제공하기 위한 방법을 수행할 수 있다.
본 발명의 또 다른 실시예에 따르면, 컴퓨터에서 독출가능한 기록매체에 저장된 컴퓨터 프로그램이 개시된다. 상기 컴퓨터 프로그램은 하드웨어인 컴퓨터와 결합되어, 데이터 거래 플랫폼 서비스를 제공하기 위한 방법을 수행할 수 있다.
본 발명의 기타 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
본 발명의 다양한 실시예에 따르면, 사용자가 원하는 복수의 데이터들을 용이하게 수집하도록 하며, 수집된 복수의 데이터들을 개인화된 가치 정보로 변환하도록 하는 서비스를 제공하여 데이터 수집을 위한 불필요한 시간을 줄이고 생산에 더 집중할 수 있는 가치를 창출할 수 있다.
또한, 본 발명의 다양한 실시예에 따르면, 변환된 데이터를 다수의 사용자들과 공유하도록 하는 거래 플랫폼 서비스를 제공하여 정보 거래 시장의 조성 및 활성화를 도모할 수 있다.
본 발명의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 발명의 일 실시예와 관련된 데이터 거래 플랫폼 서비스를 제공하기 위한 서버의 다양한 양태가 구현될 수 있는 시스템을 나타낸 개념도를 도시한다.
도 2는 본 발명의 일 실시예와 관련된 데이터 거래 플랫폼 서비스를 제공하기 위한 서버의 블록 구성도를 도시한다.
도 3는 본 발명의 일 실시예와 관련된 스크래핑 요청 정보에 기반하여 복수의 자료 데이터를 수집하는 과정을 예시적으로 나타낸 순서도를 도시한다.
도 4는 본 발명의 일 실시예와 관련된 복수의 자료 데이터에 기초하여 가공 데이터를 생성하는 과정을 예시적으로 나타낸 순서도를 도시한다.
도 5는 본 발명의 일 실시예와 관련된 가공 데이터의 거래에 관련한 거래 서비스를 제공하는 과정을 예시적으로 나타낸 순서도를 도시한다.
도 6은 본 발명의 일 실시예와 관련된 데이터 거래 플랫폼 서비스를 제공하기 위한 방법을 구현하기 위한 예시적인 순서도를 도시한다.
다양한 실시예들이 이제 도면을 참조하여 설명된다. 본 명세서에서, 다양한 설명들이 본 개시의 이해를 제공하기 위해서 제시된다. 그러나, 이러한 실시예들은 이러한 구체적인 설명 없이도 실행될 수 있음이 명백하다.
본 명세서에서 사용되는 용어 "컴포넌트", "모듈", "시스템" 등은 컴퓨터-관련 엔티티, 하드웨어, 펌웨어, 소프트웨어, 소프트웨어 및 하드웨어의 조합, 또는 소프트웨어의 실행을 지칭한다. 예를 들어, 컴포넌트는 프로세서상에서 실행되는 처리과정(procedure), 프로세서, 객체, 실행 스레드, 프로그램, 및/또는 컴퓨터일 수 있지만, 이들로 제한되는 것은 아니다. 예를 들어, 컴퓨팅 장치에서 실행되는 애플리케이션 및 컴퓨팅 장치 모두 컴포넌트일 수 있다. 하나 이상의 컴포넌트는 프로세서 및/또는 실행 스레드 내에 상주할 수 있다. 일 컴포넌트는 하나의 컴퓨터 내에 로컬화 될 수 있다. 일 컴포넌트는 2개 이상의 컴퓨터들 사이에 분배될 수 있다. 또한, 이러한 컴포넌트들은 그 내부에 저장된 다양한 데이터 구조들을 갖는 다양한 컴퓨터 판독가능한 매체로부터 실행할 수 있다. 컴포넌트들은 예를 들어 하나 이상의 데이터 패킷들을 갖는 신호(예를 들면, 로컬 시스템, 분산 시스템에서 다른 컴포넌트와 상호작용하는 하나의 컴포넌트로부터의 데이터 및/또는 신호를 통해 다른 시스템과 인터넷과 같은 네트워크를 통해 전송되는 데이터)에 따라 로컬 및/또는 원격 처리들을 통해 통신할 수 있다.
더불어, 용어 "또는"은 배타적 "또는"이 아니라 내포적 "또는"을 의미하는 것으로 의도된다. 즉, 달리 특정되지 않거나 문맥상 명확하지 않은 경우에, "X는 A 또는 B를 이용한다"는 자연적인 내포적 치환 중 하나를 의미하는 것으로 의도된다. 즉, X가 A를 이용하거나; X가 B를 이용하거나; 또는 X가 A 및 B 모두를 이용하는 경우, "X는 A 또는 B를 이용한다"가 이들 경우들 어느 것으로도 적용될 수 있다. 또한, 본 명세서에 사용된 "및/또는"이라는 용어는 열거된 관련 아이템들 중 하나 이상의 아이템의 가능한 모든 조합을 지칭하고 포함하는 것으로 이해되어야 한다.
또한, "포함한다" 및/또는 "포함하는"이라는 용어는, 해당 특징 및/또는 구성요소가 존재함을 의미하는 것으로 이해되어야 한다. 다만, "포함한다" 및/또는 "포함하는"이라는 용어는, 하나 이상의 다른 특징, 구성요소 및/또는 이들의 그룹의 존재 또는 추가를 배제하지 않는 것으로 이해되어야 한다. 또한, 달리 특정되지 않거나 단수 형태를 지시하는 것으로 문맥상 명확하지 않은 경우에, 본 명세서와 청구범위에서 단수는 일반적으로 "하나 또는 그 이상"을 의미하는 것으로 해석되어야 한다.
당업자들은 추가적으로 여기서 개시된 실시예들과 관련되어 설명된 다양한 예시적 논리적 블록들, 구성들, 모듈들, 회로들, 수단들, 로직들, 및 알고리즘 단계들이 전자 하드웨어, 컴퓨터 소프트웨어, 또는 양쪽 모두의 조합들로 구현될 수 있음을 인식해야 한다. 하드웨어 및 소프트웨어의 상호교환성을 명백하게 예시하기 위해, 다양한 예시 적 컴포넌트들, 블록들, 구성들, 수단들, 로직들, 모듈들, 회로들, 및 단계들은 그들의 기능성 측면에서 일반적으로 위에서 설명되었다. 그러한 기능성이 하드웨어로 또는 소프트웨어로서 구현되는지 여부는 전반적인 시스템에 부과된 특정 어플리케이션(application) 및 설계 제한들에 달려 있다. 숙련된 기술자들은 각각의 특정 어플리케이션들을 위해 다양한 방법들로 설명된 기능성을 구현할 수 있다. 다만, 그러한 구현의 결정들이 본 개시내용의 영역을 벗어나게 하는 것으로 해석되어서는 안된다.
제시된 실시예들에 대한 설명은 본 개시의 기술 분야에서 통상의 지식을 가진 자가 본 개시를 이용하거나 또는 실시할 수 있도록 제공된다. 이러한 실시예들에 대한 다양한 변형들은 본 개시의 기술 분야에서 통상의 지식을 가진 자에게 명백할 것이다. 여기에 정의된 일반적인 원리들은 본 개시의 범위를 벗어남이 없이 다른 실시예들에 적용될 수 있다. 그리하여, 본 개시는 여기에 제시된 실시예들로 한정되는 것이 아니다. 본 개시는 여기에 제시된 원리들 및 신규한 특징들과 일관되는 최광의의 범위에서 해석되어야 할 것이다.
본 명세서에서, 컴퓨터는 적어도 하나의 프로세서를 포함하는 모든 종류의 하드웨어 장치를 의미하는 것이고, 실시 예에 따라 해당 하드웨어 장치에서 동작하는 소프트웨어적 구성도 포괄하는 의미로서 이해될 수 있다. 예를 들어, 컴퓨터는 스마트폰, 태블릿 PC, 데스크톱, 노트북 및 각 장치에서 구동되는 사용자 클라이언트 및 애플리케이션을 모두 포함하는 의미로서 이해될 수 있으며, 또한 이에 제한되는 것은 아니다.
이하, 첨부된 도면을 참조하여 본 개시의 실시예를 상세하게 설명한다.
본 명세서에서 설명되는 각 단계들은 컴퓨터에 의하여 수행되는 것으로 설명되나, 각 단계의 주체는 이에 제한되는 것은 아니며, 실시 예에 따라 각 단계들의 적어도 일부가 서로 다른 장치에서 수행될 수도 있다.
도 1은 본 발명의 일 실시예와 관련된 데이터 거래 플랫폼 서비스를 제공하기 위한 방법의 다양한 양태가 구현될 수 있는 시스템을 나타낸 개념도를 도시한다.
도 1에 도시된 바와 같이, 본 발명의 실시예들에 따른 시스템은, 데이터 거래 플랫폼 서비스를 제공하기 위한 서버(100), 사용자 단말(10), 외부 서버(20) 및 네트워크를 포함할 수 있다. 도 1에서 도시되는 컴포넌트들은 예시적인 것으로서, 추가적인 컴포넌트들이 존재하거나 또는 도 1에서 도시되는 컴포넌트들 중 일부는 생략될 수 있다. 본 발명의 실시예들에 따른 데이터 거래 플랫폼 서비스를 제공하기 위한 서버(100), 사용자 단말(10) 및 외부 서버(20)는 네트워크를 통해, 본 발명의 일 실시예들에 따른 시스템을 위한 데이터를 상호 송수신할 수 있다.
본 발명의 실시예들에 따른 네트워크는 공중전화 교환망(PSTN: Public Switched Telephone Network), xDSL(x Digital Subscriber Line), RADSL(Rate Adaptive DSL), MDSL(Multi Rate DSL), VDSL(Very High Speed DSL), UADSL(Universal Asymmetric DSL), HDSL(High Bit Rate DSL) 및 근거리 통신망(LAN) 등과 같은 다양한 유선 통신 시스템들을 사용할 수 있다.
또한, 여기서 제시되는 네트워크는 CDMA(Code Division Multi Access), TDMA(Time Division Multi Access), FDMA(Frequency Division Multi Access), OFDMA(Orthogonal Frequency Division Multi Access), SC-FDMA(Single Carrier-FDMA) 및 다른 시스템들과 같은 다양한 무선 통신 시스템들을 사용할 수 있다.
본 발명의 실시예들에 따른 네트워크는 유선 및 무선 등과 같은 그 통신 양태를 가리지 않고 구성될 수 있으며, 단거리 통신망(PAN: Personal Area Network), 근거리 통신망(WAN: Wide Area Network) 등 다양한 통신망으로 구성될 수 있다. 또한, 상기 네트워크는 공지의 월드와이드웹(WWW: World Wide Web)일 수 있으며, 적외선(IrDA: Infrared Data Association) 또는 블루투스(Bluetooth)와 같이 단거리 통신에 이용되는 무선 전송 기술을 이용할 수도 있다. 본 명세서에서 설명된 기술들은 위에서 언급된 네트워크들뿐만 아니라, 다른 네트워크들에서도 사용될 수 있다.
본 발명의 실시예에 따르면, 사용자 단말(10)은 서버(100)와 통신을 위한 메커니즘을 갖는 시스템에서의 임의의 형태의 노드(들)를 의미할 수 있다. 사용자 단말(10)은 서버(100)와의 정보 교환을 통해 스크래핑 요청 정보에 대응하는 복수의 자료 데이터를 제공받을 수 있는 단말로, 사용자가 소지한 단말을 의미할 수 있다. 예를 들어, 사용자 단말(10)은 특정 관심 분야에 관련한 다량의 데이터를 수집하여 분석하고자 하는 사용자에 관련한 단말일 수 있다. 다른 예를 들어, 사용자 단말(10)은 다량의 데이터를 통해 유의미한 정보를 도출하고, 이를 기반으로 한 편집과정을 거쳐 가치 정보를 창출하고, 해당 가치 정보를 동일 분야의 타 사용자에게 제공 또는 판매하고자 하는 전문가 또는 판매자에 관련한 단말일 수 있다. 또 다른 예를 들어, 사용자 단말(10)은 다량의 자료 데이터 분석을 통해 생성된 가치 정보를 구매하고자 하는 구매자에 관련한 단말일 수 있다. 전술한 사용자 단말의 사용자에 대한 구체적인 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다.
사용자 단말(10)은 서버(100)와 통신을 위한 메커니즘을 갖는 시스템에서의 임의의 형태의 엔티티(들)를 의미할 수 있다. 예를 들어, 이러한 사용자 단말(10)은 PC(personal computer), 노트북(note book), 모바일 단말기(mobile terminal), 스마트 폰(smart phone), 태블릿 PC(tablet pc) 및 웨어러블 디바이스(wearable device) 등을 포함할 수 있으며, 유/무선 네트워크에 접속할 수 있는 모든 종류의 단말을 포함할 수 있다. 또한, 사용자 단말(10)은 에이전트, API(Application Programming Interface) 및 플러그-인(Plug-in) 중 적어도 하나에 의해 구현되는 임의의 서버를 포함할 수도 있다. 또한, 사용자 단말(10)은 애플리케이션 소스 및/또는 클라이언트 애플리케이션을 포함할 수 있다.
본 발명의 실시예에 따르면, 외부 서버(20)는 다량의 데이터를 수집하는 대상이 되는 서버들을 의미할 수 있다. 구체적으로, 외부 서버(20)는 사용자가 스크래핑하고자 하는 정보를 제공하는 서버로서, 예를 들어 HTTP(HyperText Transfer Protocol)를 이용하여 웹 브라우저(Web browser)를 통해 접속되는 서버일 수 있다. 구체적으로, 본 발명의 데이터 거래 플랫폼 서비스를 제공하기 위한 서버(100)는 사용자 단말(10)로부터 스크래핑 요청 정보를 수신할 수 있다. 여기서 스크래핑 요청 정보는, 사용자 단말(10)의 사용자가 수집하고자 하는 자료 데이터에 관련한 정보들 및 각 자료 데이터들이 위치한 외부 서버에 관련한 정보들을 포함할 수 있다. 즉, 데이터 거래 플랫폼 서비스를 제공하기 위한 서버(100)는 사용자 단말(10)로부터 스크래핑 요청 정보 수신에 대응하여, 스크래핑 요청 정보에 대응하는 외부 서버(20)로부터 특정 데이터들을 추출하여 수집할 수 있다. 외부 서버(20)는 예를 들어, 금융기관에 관련한 서버, 호텔, 항공사, 렌터카, 주유소 등의 마일리지와 같은 보상 정보를 저장하는 서버, 전자 우편을 통합 조회하는 서버, 또는 사용자가 클릭을 통해 정보를 획득할 수 있는 서버 등을 포함할 수 있다. 전술한 외부 서버(20)에 대한 구체적인 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다.
본 발명의 다른 실시예에서, 외부 서버(20)는 신경망의 학습을 위한 복수의 학습 데이터에 관련한 정보들을 저장하는 서버일 수 있다. 예를 들어, 외부 서버(20)는 복수의 텍스트, 복수의 이미지 또는 복수의 영상 데이터에 관련한 정보 및 각 정보들에 대응하는 컨텐츠 정보를 저장할 수 있다. 외부 서버(20)에 저장된 정보들은 본 발명에서의 신경망을 학습시키기 위한 학습 데이터, 검증 데이터, 및 테스트 데이터로 활용될 수 있다. 본 발명의 서버(100)는, 외부 서버(20)로부터 수신한 데이터들에 기반하여 학습 데이터 세트를 구축할 수 있으며, 학습 데이터 세트를 통해 하나 이상의 네트워크 함수를 포함하는 신경망 모델을 학습시킬 수 있다.
외부 서버(20)는 디지털 기기로서, 랩탑 컴퓨터, 노트북 컴퓨터, 데스크톱 컴퓨터, 웹 패드, 이동 전화기와 같이 프로세서를 탑재하고 메모리를 구비한 연산 능력을 갖춘 디지털 기기일 수 있다. 외부 서버(20)는 서비스를 처리하는 웹 서버일 수 있다. 전술한 서버의 종류는 예시일 뿐이며 본 개시는 이에 제한되지 않는다.
본 발명의 일 실시예에 따르면, 데이터 거래 플랫폼 서비스를 제공하기 위한 서버(100)(이하 '서버')는 사용자의 요청에 대응하여 하나 이상의 외부 서버들로부터 자료데이터들을 수집하는 스크래핑 서비스를 제공할 수 있다. 예를 들어, 스크래핑 서비스는, 이메일에 접속하여 이메일 관련 정보를 수집하는 이메일 정보 스크래핑 서비스, 은행 등 금융기관 서버에 접속하여 금융 관련 정보를 수집하는 금융 정보 스크래핑 서비스, 뉴스 관련 서버에 접속하여 뉴스 관련 정보를 수집하는 뉴스 정보 스크래핑 서비스 등을 포함함 수 있다. 다만 이에 제한되는 것은 아니고, 전술한 정보 및 서버 이외에 다양한 종류의 정보들을 개시하는 다양한 서버로부터 보다 다양한 정보를 수집하는 스크래핑 서비스를 더 포함할 수 있다.
실시예에 따르면, 서버(100)는 사용자 단말(10)로부터 스크래핑 요청 정보를 수신할 수 있으며, 수신한 스크래핑 요청 정보에 대응하여 외부 서버(20)로부터 복수의 자료 데이터를 수집할 수 있다. 실시예에서, 스크래핑 요청 정보는, 사용자 단말(10)의 사용자가 사전 결정한 수집 주기 정보를 포함할 수 있으며, 서버(100)는 해당 수집 주기 정보에 기초하여 외부 서버(20)로부터 복수의 자료 데이터를 수집할 수 있다. 수집 주기 정보는, 사용자 단말(10)의 사용자가 각 서버로부터 일정 주기에 따라 자동으로 데이터가 수집되도록 설정한 정보에 관한 것으로, 예를 들어, 특정 시간 주기(예컨대, 초, 분, 시간, 일, 주, 월, 연 등)에 관한 정보를 포함할 수 있다. 다시 말해, 서버(100)는 사용자 단말(10)의 사용자가 설정한 수집 주기 정보에 따라 다량의 데이터들을 일정 주기에 따라 획득할 수 있다. 이에 따라, 시계열에 기반하여 반복적인 데이터 수집이 가능해질 수 있다. 이는 특정 서버들에 대한 수집 설정 한 번으로 사용자가 원하는 시간에 자동으로 데이터들을 최신화하여 수집할 수 있는 환경을 구축하는 것으로, 정보 수집의 시간 감소 및 업무의 편의성 향상을 도모하는 효과를 제공할 수 있다.
일 실시예에 따르면, 서버(100)는 외부 서버(20) 각각에 대응하여 복수의 자료 데이터를 병렬적으로 획득하는 것을 특징으로 할 수 있다. 본 발명의 실시예들에 따른 서버는 예를 들어, 클라우드 서버일 수 있다. 서버는 서비스를 처리하는 웹 서버일 수 있다. 전술한 서버의 종류는 예시일 뿐이며 본 발명은 이에 제한되지 않는다. 실시예에서, 서버(100)는 로컬 컴퓨터 네트워크 및 클라우드 서버를 통해 구성될 수 있다. 즉, 서버(100)는 분산 네트워크를 통해 각 외부 서버에 대응하여 복수의 자료 데이터를 병렬적으로 획득할 수 있다.
구체적으로, 서버(100)는 스크래핑 요청 정보에 기초하여 복수의 수집 대상(즉, 다양한 외부 서버)으로부터 얼마만큼 자료 데이터를 수집해야 하는지에 관련한 데이터 수집량을 파악할 수 있으며, 전체 데이터 수집량을 기초하여 스케줄링 정보를 생성할 수 있다. 스케줄링 정보는, 분산 네트워크 각각에서 외부 서버 각각에 대응하여 얼마만큼의 자료 데이터를 수집해야 하는지에 관련한 작업 할당량에 관한 정보를 포함할 수 있다. 즉, 서버(100)는 방대한 양의 자료 수집 요청에 대응하여 병렬적인 데이터 수집 즉 멀티 스크래핑을 수행함으로써, 정보 수집 시간을 최소화하는 효과를 제공할 수 있다. 또한, 멀티 스크래핑을 수행하는 과정에서, 스크래핑 스케줄 별 최적화된 리소스를 할당하도록 하는 스케줄링 정보를 생성함으로써, 멀티 스크래핑의 효율을 극대화시킬 수 있다.
일 실시예에 따르면, 서버(100)는 사용자 단말(10)로 하여금 복수의 자료 데이터에 대한 가공을 수행하도록 하는 편집 사용자 인터페이스를 제공할 수 있다. 예컨대, 사용자 개개인이 스크래핑을 통해 자신이 원하는 복수의 자료 데이터를 확보하더라도, 해당 복수의 자료 데이터들에 기초하여 유의미한 정보를 도출하거나 또는, 정보의 시각화 등을 통해 가치 정보를 생성하는 것에는 어려움이 있을 수 있다. 이에 따라, 서버(100)는 사용자 단말(10)의 사용자가 원하는 복수의 자료 데이터를 스크래핑하여 제공할 뿐만 아니라, 제공된 데이터에 대한 가공 즉 편집 기능을 지원하는 편집 사용자 인터페이스를 제공할 수 있다. 서버(100)는 본 발명의 실시예들에 따른 편집 사용자 인터페이스를 생성할 수 있다. 서버는 클라이언트(예를 들어, 사용자 단말)에게 네트워크를 통해 정보를 제공하는 컴퓨팅 시스템일 수 있다. 서버(100)는 생성한 편집 사용자 인터페이스를 사용자 단말(10)로 전송할 수 있다. 이러한 경우, 사용자 단말(10)은 서버(100)에 액세스할 수 있는 임의의 형태의 컴퓨팅 장치일 수 있다. 예컨대, 사용자 단말(10)의 사용자는 표, 그래프, 그림 등의 데이터 그리드 모듈을 지원하는 사용자 인터페이스를 활용하여 수집한 복수의 자료 데이터에 대응하는 가공 데이터를 생성할 수 있다. 이에 따라, 복수의 자료 데이터에 기반한 가치 정보 생성 과정에서 편의성이 향상될 수 있다.
일 실시예에서 서버(100)는 가공 데이터에 대한 거래 서비스를 제공할 수 있다. 구체적으로, 서버(100)는 사용자 단말(10)의 사용자가 복수의 자료 데이터에 기반하여 가치 정보로 가공한 가공 데이터에 관련한 거래 생성 요청 정보를 수신할 수 있으며, 해당 거래 생성 요청 정보를 수신하는 것에 대응하여 가공 데이터에 대한 거래 서비스를 제공할 수 있다.
즉, 서버(100)는 각 사용자에 의해 가공된 가공 데이터에 관련한 거래 서비스를 제공함으로써, 다양한 데이터의 질적 향상 및 정보 거래 시장을 조성할 수 있다. 또한, 양질의 정보를 수집 및 판매하는 전문가가 활동할 수 있는 거래 환경을 구축하여 거래 시스템 상에서 지속적인 정보의 질 향상을 도모할 수 있다.
도 1에서의 1개의 서버(100)만을 도시하고 있으나, 이보다 많은 서버들 또한 본 발명의 범위에 포함될 수 있다는 점 그리고 서버(100)가 추가적인 컴포넌트들을 포함할 수 있다는 점은 당해 출원분야에 있어서 통상의 지식을 가진 자에게 명백할 것이다. 즉, 서버(100)는 복수 개의 컴퓨팅 장치로 구성될 수도 있다. 다시 말해, 복수의 노드의 집합이 서버(100)를 구성할 수 있다.
본 발명의 일 실시예에 따르면, 서버(100)는 클라우드 컴퓨팅 서비스를 제공하는 서버일 수 있다. 보다 구체적으로, 서버(100)는 인터넷 기반 컴퓨팅의 일종으로 정보를 사용자의 컴퓨터가 아닌 인터넷에 연결된 다른 컴퓨터로 처리하는 클라우드 컴퓨팅 서비스를 제공하는 서버일 수 있다. 상기 클라우드 컴퓨팅 서비스는 인터넷 상에 자료를 저장해 두고, 사용자가 필요한 자료나 프로그램을 자신의 컴퓨터에 설치하지 않고도 인터넷 접속을 통해 언제 어디서나 이용할 수 있는 서비스일 수 있으며, 인터넷 상에 저장된 자료들을 간단한 조작 및 클릭으로 쉽게 공유하고 전달할 수 있다. 또한, 클라우드 컴퓨팅 서비스는 인터넷 상의 서버에 단순히 자료를 저장하는 것뿐만 아니라, 별도로 프로그램을 설치하지 않아도 웹에서 제공하는 응용프로그램의 기능을 이용하여 원하는 작업을 수행할 수 있으며, 여러 사람이 동시에 문서를 공유하면서 작업을 진행할 수 있는 서비스일 수 있다. 또한, 클라우드 컴퓨팅 서비스는 IaaS(Infrastructure as a Service), PaaS(Platform as a Service), SaaS(Software as a Service), 가상 머신 기반 클라우드 서버 및 컨테이너 기반 클라우드 서버 중 적어도 하나의 형태로 구현될 수 있다. 즉, 본 발명의 서버(100)는 상술한 클라우드 컴퓨팅 서비스 중 적어도 하나의 형태로 구현될 수 있다. 전술한 클라우드 컴퓨팅 서비스의 구체적인 기재는 예시일 뿐, 본 발명의 클라우드 컴퓨팅 환경을 구축하는 임의의 플랫폼을 포함할 수도 있다.
본 발명에서의 다량의 자료 데이터를 수집하는 방법, 복수의 자료 데이터에 대한 가공을 통해 가공 데이터를 생성하는 방법 및 가공 데이터에 대한 거래 서비스를 제공하는 방법 등에 관한 구체적인 설명은 이하의 도 2 내지 도 6을 참조하여 후술하도록 한다.
도 2는 본 발명의 일 실시예와 관련된 데이터 거래 플랫폼 서비스를 제공하기 위한 서버의 블록 구성도를 도시한다.
도 2에 도시된 바와 같이, 서버(100)는 네트워크부(110), 메모리(120) 및 프로세서(130)를 포함할 수 있다. 전술한 서버(100)에 포함된 컴포넌트들은 예시적인 것으로 본 발명내용의 권리범위가 전술한 컴포넌트들로 제한되지 않는다. 즉, 본 발명내용의 실시예들에 대한 구현 양태에 따라서 추가적인 컴포넌트들이 포함되거나 전술한 컴포넌트들 중 일부가 생략될 수 있다.
본 발명의 일 실시예에 따르면, 서버(100)는 외부 서버(20) 및 사용자 단말(10)과 데이터를 송수신하는 네트워크부(110)를 포함할 수 있다. 네트워크부(110)는 본 발명의 실시예에 스크래핑 요청 정보 및 스크래핑 요청 정보에 대응하는 복수의 자료 데이터를 사용자 단말(10) 및 외부 서버(20) 중 적어도 하나와 송수신할 수 있다. 예를 들어, 서버(100)는 네트워크부(110)를 통해 사용자 단말(10)로부터 스크래핑 요청 정보를 수신할 수 있다. 다른 예를 들어, 서버(100)는 네트워크부(110)를 통해 스크래핑 요청 정보에 대응하는 복수의 자료 데이터를 외부 서버(20)로부터 수집하고, 수집한 복수의 자료 데이터를 사용자 단말(10)로 전송할 수 있다. 전술한 네트워크부가 송수신하는 정보에 대한 구체적인 기재는 예시일 뿐, 본 개시는 이에 제한되지 않는다. 추가적으로, 네트워크부(110)는 서버(100)로 프로시저를 호출하는 방식으로 서버(100)와 외부 서버(20) 및 사용자 단말(10) 간의 정보 전달을 허용할 수 있다.
본 발명의 일 실시예에 따른 네트워크부(110)는 공중전화 교환망(PSTN: Public Switched Telephone Network), xDSL(x Digital Subscriber Line), RADSL(Rate Adaptive DSL), MDSL(Multi Rate DSL), VDSL(Very High Speed DSL), UADSL(Universal Asymmetric DSL), HDSL(High Bit Rate DSL) 및 근거리 통신망(LAN) 등과 같은 다양한 유선 통신 시스템들을 사용할 수 있다.
또한, 본 명세서에서 제시되는 네트워크부(110)는 CDMA(Code Division Multi Access), TDMA(Time Division Multi Access), FDMA(Frequency Division Multi Access), OFDMA(Orthogonal Frequency Division Multi Access), SC-FDMA(Single Carrier-FDMA) 및 다른 시스템들과 같은 다양한 무선 통신 시스템들을 사용할 수 있다.
본 발명에서 네트워크부(110)는 유선 및 무선 등과 같은 그 통신 양태를 가리지 않고 구성될 수 있으며, 단거리 통신망(PAN: Personal Area Network), 근거리 통신망(WAN: Wide Area Network) 등 다양한 통신망으로 구성될 수 있다. 또한, 상기 네트워크는 공지의 월드와이드웹(WWW: World Wide Web)일 수 있으며, 적외선(IrDA: Infrared Data Association) 또는 블루투스(Bluetooth)와 같이 단거리 통신에 이용되는 무선 전송 기술을 이용할 수도 있다. 본 명세서에서 설명된 기술들은 위에서 언급된 네트워크들뿐만 아니라, 다른 네트워크들에서도 사용될 수 있다.
본 발명의 일 실시예에 따르면, 메모리(120)는 데이터 거래 플랫폼 서비스를 제공하기 위한 방법을 수행하기 위한 컴퓨터 프로그램을 저장할 수 있으며, 저장된 컴퓨터 프로그램은 프로세서(130)에 의하여 판독되어 구동될 수 있다. 또한, 메모리(120)는 프로세서(130)가 생성하거나 결정한 임의의 형태의 정보 및 네트워크부(110)가 수신한 임의의 형태의 정보를 저장할 수 있다. 또한, 메모리(120)는 사용자 단말(10)로부터 수신한 스크래핑 요청 정보 및 스크래핑 요청 정보에 대응하여 수집한 복수의 자료 데이터를 저장할 수 있다. 예를 들어, 메모리(120)는 입/출력되는 데이터들(예를 들어, 스크래핑 요청 정보, 스크래핑 요청 정보에 대응하여 수집한 복수의 자료 데이터, 복수의 자료 데이터를 통해 생성된 가공 데이터, 복수의 자료 데이터에 기반하여 생성된 편집 사용자 인터페이스 및 가공 데이터의 거래에 관련한 거래 서비스 등)을 임시 또는 영구 저장할 수 있다. 구체적인 예를 들어, 메모리(120)는 스크래핑 요청 정보에 따른 자료 데이터들을 식별하기 위한 응용 프로그램들을 저장할 수 있다. 다른 예를 들어, 메모리(120)는 편집 사용자 인터페이스에 관련한 사용자 입력에 대응하여 가공 데이터를 생성하기 위한 응용 프로그램들을 저장할 수 있다. 전술한 메모리가 저장하는 정보들에 대한 구체적인 기재는 일 예시일 뿐, 본 발명은 이에 제한되지 않는다.
본 개시의 일 실시예에 따르면, 메모리(120)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(Random Access Memory, RAM), SRAM(Static Random Access Memory), 롬(Read-Only Memory, ROM), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다. 서버(100)는 인터넷(internet) 상에서 상기 메모리(120)의 저장 기능을 수행하는 웹 스토리지(web storage)와 관련되어 동작할 수도 있다. 전술한 메모리에 대한 기재는 예시일 뿐, 본 개시는 이에 제한되지 않는다.
본 발명의 일 실시예에 따르면, 프로세서(130)는 하나 이상의 코어로 구성될 수 있으며, 컴퓨팅 장치의 중앙 처리 장치(CPU: central processing unit), 범용 그래픽 처리 장치(GPGPU: general purpose graphics processing unit), 텐서 처리 장치(TPU: tensor processing unit) 등의 데이터 분석, 딥러닝을 위한 프로세서를 포함할 수 있다.
본 발명의 일 실시예에 따르면, 프로세서(130)는 통상적으로 서버(100)의 전반적인 동작을 처리할 수 있다. 프로세서(130)는 위에서 살펴본 구성요소들을 통해 입력 또는 출력되는 신호, 데이터, 정보 등을 처리하거나 메모리(120)에 저장된 응용 프로그램을 구동함으로써, 사용자 또는 사용자 단말에게 적정한 정보 또는, 기능을 제공하거나 처리할 수 있다.
본 발명의 일 실시예에 따르면, 프로세서(130)는 사용자 단말(10)로부터 스크래핑 요청 정보를 수신할 수 있다. 실시예에서, 스크래핑 요청 정보는, 사용자 단말(10)의 사용자가 획득하고자 하는 필요로 하는 자료 데이터를 수집하기 위한 기반이 되는 정보로, 사용자가 수집하고자 하는 자료 데이터에 관련한 정보 및 각 자료 데이터들이 위치한 외부 서버(20)에 관련한 정보를 포함할 수 있다. 예를 들어, 스크래핑 요청 정보는, 사용자가 획득하고자 하는 복수의 자료 데이터가 금융 거래 데이터이며, 해당 금융 거래 데이터가 제공되는 제1외부 서버가 금융 서버라는 정보를 포함할 수 있다. 다른 예를 들어, 스크래핑 요청 정보는, 사용자가 획득하고자 하는 복수의 자료 데이터가 뉴스 관련 정보이며, 해당 뉴스 관련 정보가 제공되는 제2외부 서버가 뉴스 서버라는 정보를 포함할 수 있다. 전술한 스크래핑 요청 정보에 대한 구체적인 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다.
또한, 실시예에 따르면, 스크래핑 요청 정보는 사용자의 개인 정보를 포함할 수 있다. 여기서 사용자의 개인 정보는, 복수의 자료 데이터 수집, 즉, 스크래핑 수행에 필요한 사용자의 개인 정보일 수 있다. 다시 말해, 사용자 개인 정보는 요청된 스크래핑을 수행하기 위하여 요구되는 사용자의 개인 정보일 수 있다. 구체적인 예를 들어, 제1사용자에 관련한 복수의 금융 거래 데이터를 획득하기 위해서는, 제1사용자의 접속 아이디 및 패스워드가 요구될 수 있으며, 스크래핑 요청 정보는 이러한 사용자 개인 정보를 포함할 수 있다. 사용자 개인 정보에 대한 구체적인 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다.
본 발명의 일 실시예에 따르면, 프로세서(130)는 스크래핑 요청 정보에 기초하여 외부 서버(20)로부터 복수의 자료 데이터를 수집할 수 있다. 프로세서(130)는 사용자 단말(10)로부터 스크래핑 요청 정보를 수신하는 경우, 스크래핑 요청 정보에 따라, 특정 외부 서버에 접속할 수 있으며, 해당 외부 서버에서 제공하는 특정 데이터들을 수집할 수 있다. 여기서, 스크래핑 요청 정보는, 사용자의 개인 정보를 더 포함할 수 있다. 프로세서(130)는 사용자 개인 정보를 활용하여 특정 외부 서버에서 해당 사용자에 관련한 자료 데이터에 접근할 수 있으며, 이를 통해 사용자에 관련한 복수의 자료 데이터를 수집할 수 있다.
일 실시예에서, 프로세서(130)는 스크래핑 요청 정보에 기초하여 데이터 수집 주기 정보를 획득할 수 있다. 구체적으로, 스크래핑 요청 정보는, 사용자 단말(10)의 사용자가 사전 결정한 수집 주기에 대한 정보 즉, 데이터 수집 주기 정보를 포함할 수 있다. 데이터 수집 주기 정보는, 사용자 단말(10)의 사용자가 외부 서버(20)로부터 일정 주기에 따라 자동으로 데이터가 수집되도록 설정한 정보에 관한 것일 수 있다. 예를 들어, 데이터 수집 주기 정보는, 외부 서버(20)로부터 일주일(즉, 7일) 시간 간격으로 특정 자료 데이터들을 수집하라는 정보일 수 있다. 전술한 시간 간격에 대한 구체적인 수치적 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다.
이러한 데이터 수집 주기 정보는, 반복적으로 자료 데이터를 수집하는 작업에 편의성을 향상시킬 수 있다. 예컨대, 일부 직군의 경우, 특정 외부 서버에 대한 최신 정보를 매일 또는 매주 수집하여 기초자료로 활용할 수 있다. 이러한 경우, 일정 시간 주기 간격으로 자료 데이터를 수집 및 관리하는데 시간이 많이 소요될 수 있다. 이에 따라, 본 발명의 프로세서(130)는 데이터 수집 주기 정보에 기초하여 복수의 자료 데이터를 수집할 수 있다. 구체적으로, 프로세서(130)는 스크래핑 요청 정보를 통해 사용자 단말(10)의 사용자가 설정한 수집 주기 정보를 획득하고, 획득한 수집 주기 정보에 기초하여 복수의 자료 데이터를 일정 주기에 따라 획득할 수 있다.
이에 따라, 시계열에 기반하여 반복적인 데이터 수집이 가능해질 수 있다. 이는, 특정 서버들에 대한 수집 설정 한 번으로 사용자가 원하는 시간 주기에 따라 자동으로 데이터들을 최신화하여 수집할 수 있는 환경을 구축하는 것으로, 정보 수집 시간의 감소 및 업무의 편의성 향상을 도모하는 효과를 제공할 수 있다.
또한, 실시예에 따르면, 프로세서(130)는 외부 서버 각각에 대응하여 복수의 자료 데이터를 수집할 수 있다. 실시예에서, 본 발명의 서버(100)는 로컬 컴퓨터 네트워크 및 클라우드 서버를 통해 구현될 수 있으며, 이에 따라, 프로세서(130)는 분산 네트워크를 통해 외부 서버 각각에 대응하여 병렬적으로 복수의 자료 수집을 수행할 수 있다. 예를 들어, 서버(100)가 클라우드 서버를 통해 구현되는 경우, 프로세서(130)는 클라우드 환경에서 가상 머신을 구동하여 복수의 OS를 구동하고, 그리고 복수의 OS 각각에 대응하여 자료 데이터를 수집할 수 있다.
실시예에서, 프로세서(130)는 스크래핑 요청 정보에 기초하여 분산 네트워크 각각을 활용하여 각 외부 서버로부터 복수의 자료를 병렬적으로 획득하기 위한 스케줄링을 수행할 수 있다.
보다 자세히 설명하면, 프로세서(130)는 스크래핑 요청 정보에 기초하여 외부 서버의 수 및 각 외부 서버에 대응하는 데이터 수집량을 식별할 수 있다. 또한, 프로세서(130)는 외부 서버의 수 및 각 외부 서버에 대응하는 데이터 수집량에 기초하여 스케줄링 정보를 생성할 수 있다. 여기서 스케줄링 정보는, 분산 네트워크 각각에서 외부 서버 각각에 대응하여 얼마만큼의 자료 데이터를 수집해야 하는지에 관련한 작업 할당량에 관한 정보를 포함할 수 있다.
보다 구체적인 예를 들어, 프로세서(130)는 스크래핑 요청 정보를 통해 사용자가 자료 데이터를 수집하고자 하는 외부 서버의 수가 5개라는 정보 식별할 수 있으며, 5개의 외부 서버 각각에 대응하여 수집하고자 하는 데이터 수집량을 식별할 수 있다. 프로세서(130)는 각 외부 서버에 대응하여 파악한 데이터 수집량을 통해 스케줄링 정보를 생성할 수 있다. 이 경우, 프로세서(130)가 생성한 스케줄링 정보는 클라우드 환경에서 5개의 가상 머신을 구동하여 5개의 OS를 구동하는 경우, 각 가상 머신 별 5개의 외부 서버 각각에서 데이터를 수집하도록 하는 정보를 포함할 수 있다.
다른 예를 들어, 외부 서버의 수가 3개(예컨대, 제1외부 서버, 제2외부 서버 및 제3외부 서버)일 수 있으며, 제1외부 서버에서의 데이터 수집량이 비교적 많으며, 제2외부 서버 및 제3외부 서버에서의 데이터 수집량이 적을 수 있다. 이 경우, 프로세서(130)는 제1외부 서버에 대응하여 제1가상 머신이 자료 데이터를 획득하도록 하며, 제2외부 서버 및 제3외부 서버에 대응하여 제2가상 머신이 자료 데이터를 획득하도록 할 수 있다. 즉, 프로세서(130)는 데이터 수집량이 비교적 많은 외부 서버(또는 웹 사이트)일수록 데이터 수집에 많은 OS를 할당하도록 하는 스케줄링 정보를 생성할 수 있다. 전술한 외부 서버의 수 및 각 외부 서버의 데이터 수집량에 관련한 구체적인 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다.
실시예에서, 프로세서(130)는 각 분산 네트워크의 작동 상태를 모니터링하고, 각 네트워크 별 리소스 사용량 또는 업무별 최대 멀티 스크래핑 처리량에 따라서 가용 가능한 네트워크를 선정할 수 있다.
전술한 바와 같이, 프로세서(130)는 방대한 양의 자료 수집 요청에 대응하여 병렬적인 데이터 수집 즉 멀티 스크래핑을 수행함으로써, 정보 수집 시간을 최소화하는 효과를 제공할 수 있다. 또한, 멀티 스크래핑을 수행하는 과정에서, 스크래핑 스케줄 별 최적화된 리소스를 할당하도록 하는 스케줄링 정보를 생성함으로써, 멀티 스크래핑의 효율을 극대화시킬 수 있다.
일 실시예에서, 프로세서(130)는 사용자 단말(10)의 스크래핑 요청 정보에 대응하여 외부 서버(20)로부터 수집한 복수의 자료 데이터를 사용자 단말(10)에 전달할 수 있다. 프로세서(130)는 수집한 복수의 자료 데이터를 URL(uniform resource locator) 주소 형태로 사용자 단말(10)로 전달할 수 있다. 이에 따라, 사용자 단말(10)은 해당 URL 주소 공유를 통해 수집한 복수의 자료 데이터를 다양한 타 사용자와 용이하게 공유할 수 있다.
본 발명의 일 실시예에 따르면, 프로세서(130)는 복수의 자료 데이터에 기초하여 가공 데이터를 생성할 수 있다. 프로세서(130)는 사용자 단말(10)로 하여금 복수의 자료 데이터에 대한 가공을 수행하도록 하는 편집 사용자 인터페이스를 제공할 수 있다. 예컨대, 사용자 개개인이 스크래핑을 통해 자신이 원하는 복수의 자료 데이터를 확보하더라도, 해당 복수의 자료 데이터들에 기초하여 유의미한 정보를 도출하거나 또는, 정보의 시각화 등을 통해 가치 정보를 생성하는 것에는 어려움이 있을 수 있다. 이에 따라, 프로세서(130)는 사용자 단말(10)의 사용자가 원하는 복수의 자료 데이터를 스크래핑하여 제공할 뿐만 아니라, 제공된 데이터에 대한 가공 즉 편집 기능을 지원하는 편집 사용자 인터페이스를 제공할 수 있다. 프로세서(130)는 본 발명의 실시예들에 따른 편집 사용자 인터페이스를 생성할 수 있다. 또한, 프로세서(130)는 생성한 편집 사용자 인터페이스를 사용자 단말(10)로 전송할 수 있다. 이러한 경우, 사용자 단말(10)은 서버(100)에 액세스할 수 있는 임의의 형태의 컴퓨팅 장치일 수 있다. 프로세서(130)는 편집 사용자 인터페이스에 대한 사용자 입력에 기초하여 복수의 자료 데이터에 관련한 가공 데이터를 생성할 수 있다. 예컨대, 사용자 단말(10)의 사용자는 표, 그래프, 그림 등의 데이터 그리드 모듈을 지원하는 사용자 인터페이스를 활용하여 수집한 복수의 자료 데이터에 대응하는 가공 데이터를 생성할 수 있다. 이에 따라, 복수의 자료 데이터에 기반한 가치 정보 생성 과정에서 편의성이 향상될 수 있다.
본 발명의 일 실시예에 따르면, 프로세서(130)는 가공 데이터의 거래에 관련한 거래 서비스를 제공할 수 있다. 구체적으로, 프로세서(130)는 사용자 단말(10)로부터 가공 데이터에 대응하는 거래 생성 요청 정보를 수신하는 경우, 가공 데이터의 거래에 관련한 거래 서비스를 제공할 수 있다. 즉, 프로세서(130)는 사용자 단말(10)의 사용자가 복수의 자료 데이터에 기반하여 가치 정보로 가공한 가공 데이터에 관련한 거래 생성 요청 정보를 수신할 수 있으며, 해당 거래 생성 요청 정보를 수신하는 것에 대응하여 가공 데이터에 대한 거래 서비스를 제공할 수 있다.
일 실시예에서, 프로세서(130)는 가공 데이터 및 거래 생성 요청 정보에 기초하여 거래 정보를 생성할 수 있다. 여기서 거래 정보는, 거래에 관련한 복수의 항목 정보를 포함할 수 있다. 구체적인 예를 들어, 거래 정보는, 가공 데이터의 종류가 '고객 유형별 소비 형태'에 관련한다는 데이터 종류 정보, 해당 가공 데이터의 분석 기간이 2021년이라는 조사 기간 정보, 해당 가공 정보의 판매 가격이 50만원이라는 판매 가격 정보 또는 가공 데이터 생성에 참조가 된 자료 데이터의 수집처가 제1외부 서버라는 데이터 참조 정보 등을 포함할 수 있다. 거래 정보가 포함하는 정보는 전술한 예시에 제한되지 않으며, 거래에 관련한 보다 다양한 정보들을 더 포함할 수 있다.
프로세서(130)는 거래 서비스 풀에 거래 정보를 노출시켜 복수의 타 사용자 단말로부터의 거래 요청 수신을 허용할 수 있다. 거래 서비스 풀은, 다양한 사용자들 각각이 자신의 가공 데이터를 판매하거나 또는 타 사용자들의 가공 데이터를 구매하기 위한 거래 서비스를 제공하기 위한 서비스 풀을 의미할 수 있다. 이러한 거래 서비스 풀에 가공 데이터가 노출된 경우, 타 사용자 단말로부터의 거래 요청을 수신하는 것에 대응하여 판매 및 구매에 관련한 각 사용자 간의 거래가 허용될 수 있다. 즉, 프로세서(130)는 사용자 단말(10)로부터 수신한 가공 데이터 및 거래 생성 요청 정보에 기초하여 거래 정보를 생성하고, 해당 거래 정보를 거래 서비스 풀에 노출시켜 타 사용자 단말 과의 정보 거래를 허용할 수 있다. 즉, 프로세서(130)는 각 사용자에 의해 가공된 가공 데이터에 관련한 거래 서비스를 제공함으로써, 다양한 가공 데이터들의 질적 향상 및 정보 거래 시장을 조성할 수 있다.
일 실시예에 따르면, 프로세서(130)는 사용자 단말(10)의 사용자가 생성한 거래 정보의 수, 타 사용자 단말과의 거래가 완료된 거래 정보의 수 및 거래 정보의 판매 금액 중 적어도 하나에 기초하여 사용자 단말의 사용자에 대응하는 거래 등급을 결정할 수 있다. 예를 들어, 특정 사용자에 대응하여 생성한 거래 정보가 많거나, 완료된 거래 정보가 많거나 또는 거래 금액이 높을수록 사용자의 등급이 높게 결정될 수 있다. 이러한 사용자 등급은, 사용자 간의 거래 과정에서 각 사용자의 가공 데이터에 대한 신뢰 정도를 나타낼 수 있다.
실시예에서, 프로세서(130)는 거래 등급을 포함하는 거래 정보를 생성할 수 있다. 즉, 전술한 과정을 통해 생성된 사용자의 거래 등급은, 거래 과정에서(예컨대, 거래 서비스 풀 등록 시) 타 사용자에게 노출됨에 따라, 각 사용자에게 가공 데이터에 대한 직관적인 신뢰 정보를 제공할 수 있다.
일 실시예에 따르면, 프로세서(130)는 복수의 타 사용자 단말 각각에 대응하는 컨텐츠 정보 각각과 거래 정보의 연관성에 기초하여 거래 정보에 대한 복수의 타 사용자 단말 각각의 적합도를 산출할 수 있다.
실시예에서, 프로세서(130)는 복수의 사용자 단말 각각에 대응하는 컨텐츠 정보를 수집할 수 있다. 컨텐츠 정보는, 각 사용자 단말의 사용자가 관심을 갖는 데이터에 관한 정보를 포함할 수 있다. 예컨대, 제1사용자 단말의 제1사용자에 대응하는 컨텐츠 정보는 해당 사용자가 패션에 관심이 있다는 정보를 포함할 수 있으며, 제2사용자 단말의 제2사용자에 대응하는 컨텐츠 정보는 해당 사용자가 요식업에 관심이 있다는 정보를 포함할 수 있다. 전술한 각 사용자에 대응하는 컨텐츠 정보에 대한 구체적인 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다. 프로세서(130)는 사용자 단말(즉, 판매자에 관련한 사용자 단말)에 관련한 거래 정보와 타 사용자 단말(즉, 구매자에 관련한 사용자 단말) 각각의 컨텐츠 정보 간 연관성에 기초하여 거래 정보에 대한 각 타 사용자 단말 각각의 적합도를 산출할 수 있다.
구체적인 예를 들어, 가공 데이터의 판매에 관련한 판매 사용자 단말은 가공 데이터와 거래 생성 요청 정보를 프로세서(130)로 전송할 수 있으며, 프로세서(130)는 가공 데이터 및 거래 생성 요청 정보에 대응하여 거래 정보를 생성할 수 있다. 이 경우, 판매 사용자 단말에 대응하여 생성된 거래 정보는, 가공 데이터의 종류가 '코로나 백신 예방에 따른 확진자 증감 추이 데이터'에 관련한다는 데이터 종류 정보, 해당 가공 데이터의 분석 기간이 2021년이라는 조사 기간 정보를 포함할 수 있다. 또한, 프로세서(130)는 구매에 관련한 구매 제1사용자 단말의 컨텐츠 정보가 '의료'에 관련한다는 정보를 획득할 수 있으며, 구매 제2사용자 단말의 컨텐츠 정보라 '요식업'에 관련한다는 정보를 획득할 수 있다. 이 경우, 프로세서(130)는 가공 데이터와 비교적 연관성이 높은 컨텐츠 정보를 가진 구매 제1사용자 단말에 대응하여 비교적 높은 적합도 정보(예컨대, 8.9)를 산출할 수 있으며, 가공 데이터와 연관성이 낮은 컨텐츠 정보를 가진 구매 제2사용자 단말에 대응하여 낮은 적합도 정보(예컨대, 1)를 산출할 수 있다. 전술한 각 사용자 단말에 대응하여 산출된 적합도에 관련한 구체적인 수치적 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다.
실시예에서, 프로세서(130)는 복수의 타 사용자 단말 각각에 대응하여 산출된 적합도에 기초하여 각 타 사용자 단말에 거래 정보에 포함된 복수의 항목 정보의 노출 정도를 상이하게 결정할 수 있다. 예컨대, A 거래 정보와 적합도가 높은 제1사용자 단말의 경우, 해당 A 거래 정보에 포함된 항목들이 비교적 많이 노출되도록 하며, A 거래 정보화 적합도가 낮은 제2사용자 단말의 경우, 해당 A 거래 정보에 포함된 항목들이 비교적 적게 노출될 수 있다. 예를 들어, 제1사용자 단말에서는 A 거래 정보의 복수의 항목 정보들 중 데이터 종류 정보, 조사 기간 정보, 판매 가격 정보 및 데이터 참조 정보를 식별할 수 있으나, 제2사용자 단말에서는 A 거래 정보의 복수의 항목 정보들 중 데이터 종류 정보만이 식별될 수 있다. 즉, 프로세서(130)는 각 거래 정보와 각 사용자 단말(예컨대, 구매에 관련한 사용자 단말) 간의 적합도에 기초하여 각 거래 정보의 항목 공개 정보를 상이하게 결정할 수 있다. 또한 실시예에서, 프로세서(130)는 각 거래 정보와 각 사용자 단말 간의 산출된 적합도에 기초하여 거래 정보에 대한 알림을 제공할 수 있다. 예컨대, 특정 거래 정보와 적합도가 높게 산출된 제1사용자 단말에게는 SMS 및 팝업 알림 방식으로 해당 거래 정보의 알림 정보를 제공할 수 있으며, 특정 거래 정보와 적합도가 낮게 산출된 제2사용자 단말에게는 별도의 알림 정보를 제공하지 않을 수 있다. 즉, 프로세서(130)는 각 거래 정보와 적합도가 높은 사용자가 보다 많은 정보(즉, 복수의 항목 정보)를 제공하며, 보다 적극적이고 직접적인 방식으로 정보에 접근하도록 할 수 있다. 이는, 거래 가능성이 높은 구매자에게 보다 방대한 양의 정보를 보다 접근이 용이하도록 정보를 제공하는 것으로, 거래의 활성화를 도모하는 효과를 가진다.
일 실시예에서, 프로세서(130)는 거래 서비스 풀에 등록된 복수의 거래 정보 및 복수의 거래 정보 각각에 대응하는 복수의 거래 완료 정보에 기초하여 데이터 경향성 정보를 획득할 수 있다. 거래 정보는, 예컨대, 거래하고자 하는 가공 데이터의 분야 정보, 가공 데이터의 조사 기간에 대한 정보, 판매 금액에 대한 정보를 포함할 수 있다. 거래 완료 정보는, 특정 거래 정보에 대응하여 완료된 거래에 대한 정보로, 예컨대, 거래 정보에 대응하는 거래 완료 시점, 거래 완료 금액 및 구매자의 소속 정보 등을 포함할 수 있다. 전술한 거래 정보 및 거래 완료 정보에 포함된 정보들에 대한 구체적인 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다. 실시예에서, 데이터 경향성 정보는, 거래 서비스 풀에서 거래되는 거래 정보들의 최신 경향에 관한 정보일 수 있다. 데이터 경향성 정보는 사용자들이 관심을 갖는 최신 트렌드에 관한 거래 정보를 포함할 수 있다. 예를 들어, 데이터 경향성 정보는 최근 1주일 기간 동안 사용자들에 의해 많이 거래된 분야가 '의료 분야'라는 정보를 포함할 수 있다. 보다 구체적인 예를 들어, 데이터 경향성 정보는, 코로나에 질병에 관련한 가공 데이터들이 최근 1주일 기간 동안 활발히 거래되었다는 정보를 포함할 수 있다. 전술한 데이터 경향성 정보에 대한 구체적인 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다.
프로세서(130)는 데이터 경향성 정보에 기초하여 가공 데이터 추천 정보를 생성할 수 있다. 예를 들어, 프로세서(130)는 코로나 질병에 관련한 가공 데이터들이 최근 활발히 거래되고 있다는 데이터 경향성 정보에 기초하여 코로나 질병을 관심 분야로 하는 가공 데이터 추천 정보를 생성할 수 있다. 가공 데이터 추천 정보는, 타 사용자들로 하여금 가공 데이터 생성 과정에 추천하고자 하는 정보들을 포함할 수 있다. 예컨대, 특정 분야의 가공 데이터를 생성하도록 추천하거나, 또는 특정 분야의 가공 데이터의 판매금액을 어느 정도로 설정해야 하는지에 관련한 추천 정보 등을 포함할 수 있다. 다시 말해, 프로세서(130)는 사용자들로부터 활발히 거래되고 있는 최신 트렌드 정보에 기초하여 다양한 사용자에게 추천하고자 하는 정보(즉, 가공 데이터 추천 정보)를 생성할 수 있다.
실시예에 따르면, 프로세서(130)는 가공 컨텐츠 추천 정보에 기초하여 거래 서비스 풀에 등록된 복수의 사용자 단말 중 하나 이상의 가공 추천 사용자 단말을 선별할 수 있다. 실시예에서, 프로세서(130)는 가공 컨텐츠 추천 정보와 복수의 사용자 단말 각각의 컨텐츠 정보를 비교를 수행할 수 있으며, 가공 컨텐츠 추천 정보와 각 사용자 단말의 컨텐츠 정보에 비교 결과에 따라 하나 이상의 가공 추천 사용자 단말을 선별할 수 있다. 예컨대, 프로세서(130)는 가공 컨텐츠 추천 정보와 연관성이 높은 컨텐츠 정보를 포함하는 사용자 단말들을 하나 이상의 가공 추천 사용자 단말로 결정할 수 있다. 또한, 프로세서(130)는 하나 이상의 가공 추천 사용자 단말로 가공 데이터 추천 정보를 전송할 것을 결정할 수 있다. 즉, 프로세서(130)는 양질의 정보를 수집 및 판매하는 전문가가 활동할 수 있는 거래 환경을 구축하여 거래 시스템 상에서 지속적인 정보의 질 향상을 도모할 수 있다.
도 3는 본 발명의 일 실시예와 관련된 스크래핑 요청 정보에 기반하여 복수의 자료 데이터를 수집하는 과정을 예시적으로 나타낸 순서도를 도시한다.
일 실시예에 따르면, 사용자 단말(10)은 서버(100)로 스크래핑 요청 정보를 전송할 수 있다(S101). 스크래핑 요청 정보는, 사용자 단말(10)의 사용자가 획득하고자 하는 필요로 하는 자료 데이터를 수집하기 위한 기반이 되는 정보로, 사용자가 수집하고자 하는 자료 데이터에 관련한 정보 및 각 자료 데이터들이 위치한 외부 서버(20)에 관련한 정보를 포함할 수 있다. 예를 들어, 스크래핑 요청 정보는, 사용자가 획득하고자 하는 복수의 자료 데이터가 금융 거래 데이터이며, 해당 금융 거래 데이터가 제공되는 제1외부 서버가 금융 서버라는 정보를 포함할 수 있다. 다른 예를 들어, 스크래핑 요청 정보는, 사용자가 획득하고자 하는 복수의 자료 데이터가 뉴스 관련 정보이며, 해당 뉴스 관련 정보가 제공되는 제2외부 서버가 뉴스 서버라는 정보를 포함할 수 있다. 전술한 스크래핑 요청 정보에 대한 구체적인 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다.
일 실시예에 따르면, 서버(100)는 사용자 단말(10)로부터 수신한 스크래핑 요청 정보에 기초하여 외부 서버(20)로부터 복수의 자료 데이터를 수집할 수 있다(S103).
서버(100)는 사용자 단말(10)로부터 스크래핑 요청 정보를 수신하는 경우, 스크래핑 요청 정보에 따라, 특정 외부 서버에 접속할 수 있으며, 해당 외부 서버에서 제공하는 특정 데이터들을 수집할 수 있다. 여기서, 스크래핑 요청 정보는, 사용자의 개인 정보를 더 포함할 수 있다. 서버(100)는 사용자 개인 정보를 활용하여 특정 외부 서버에서 해당 사용자에 관련한 자료 데이터에 접근할 수 있으며, 이를 통해 사용자에 관련한 복수의 자료 데이터를 수집할 수 있다.
또한, 서버(100)는 외부 서버(20)로부터 수집한 복수의 자료 데이터를 사용자 단말(10)로 전달할 수 있다(S105). 서버(100)는 수집한 복수의 자료 데이터를 URL(uniform resource locator) 주소 형태로 사용자 단말(10)로 전달할 수 있다. 이에 따라, 사용자 단말(10)은 해당 URL 주소 공유를 통해 수집한 복수의 자료 데이터를 다양한 타 사용자와 용이하게 공유할 수 있다.
도 4는 본 발명의 일 실시예와 관련된 복수의 자료 데이터에 기초하여 가공 데이터를 생성하는 과정을 예시적으로 나타낸 순서도를 도시한다.
일 실시예에 따르면, 서버(100)는 사용자 단말(10)로 편집 사용자 인터페이스를 제공할 수 있다(S201). 예컨대, 사용자 개개인이 스크래핑을 통해 자신이 원하는 복수의 자료 데이터를 확보하더라도, 해당 복수의 자료 데이터들에 기초하여 유의미한 정보를 도출하거나 또는, 정보의 시각화 등을 통해 가치 정보를 생성하는 것에는 어려움이 있을 수 있다. 이에 따라, 서버(100)는 사용자 단말(10)의 사용자가 원하는 복수의 자료 데이터를 스크래핑하여 제공할 뿐만 아니라, 제공된 데이터에 대한 가공 즉 편집 기능을 지원하는 편집 사용자 인터페이스를 제공할 수 있다.
사용자 단말(10)은 서버(100)가 제공하는 편집 사용자 인터페이스를 활용하여 가공 데이터를 생성할 수 있다(S203). 사용자 단말(10)은 서버(100)에 액세스할 수 있는 임의의 형태의 컴퓨팅 장치일 수 있다. 서버(100)는 편집 사용자 인터페이스에 대한 사용자 입력에 기초하여 복수의 자료 데이터에 관련한 가공 데이터를 생성할 수 있다. 예컨대, 사용자 단말(10)의 사용자는 표, 그래프, 그림 등의 데이터 그리드 모듈을 지원하는 사용자 인터페이스를 활용하여 수집한 복수의 자료 데이터에 대응하는 가공 데이터를 생성할 수 있다. 이에 따라, 복수의 자료 데이터에 기반한 가치 정보 생성 과정에서 편의성이 향상될 수 있다.
사용자 단말(10)은 가공 데이터의 거래에 관련한 거래 생성 요청 정보를 서버(100)로 전송할 수 있다(S205).
서버(100)는 사용자 단말(10)로부터 수신한 가공 데이터의 거래에 관련한 거래 서비스를 제공할 수 있다(S207). 즉, 서버(100)는 사용자 단말(10)의 사용자가 복수의 자료 데이터에 기반하여 가치 정보로 가공한 가공 데이터에 관련한 거래 생성 요청 정보를 수신할 수 있으며, 해당 거래 생성 요청 정보를 수신하는 것에 대응하여 가공 데이터에 대한 거래 서비스를 제공할 수 있다.
도 5는 본 발명의 일 실시예와 관련된 가공 데이터의 거래에 관련한 거래 서비스를 제공하는 과정을 예시적으로 나타낸 순서도를 도시한다.
일 실시예에 따르면, 사용자 단말(10)은 서버(100)로 거래 생성 요청 정보를 전송할 수 있다(S301).
서버(100)는 사용자 단말(10)로부터 수신한 가공 데이터 및 거래 생성 요청 정보에 기초하여 거래 정보를 생성할 수 있다(S303). 여기서 거래 정보는, 거래에 관련한 복수의 항목 정보를 포함할 수 있다. 구체적인 예를 들어, 거래 정보는, 가공 데이터의 종류가 '고객 유형별 소비 형태'에 관련한다는 데이터 종류 정보, 해당 가공 데이터의 분석 기간이 2021년이라는 조사 기간 정보, 해당 가공 정보의 판매 가격이 50만원이라는 판매 가격 정보 또는 가공 데이터 생성에 참조가 된 자료 데이터의 수집처가 제1외부 서버라는 데이터 참조 정보 등을 포함할 수 있다. 거래 정보가 포함하는 정보는 전술한 예시에 제한되지 않으며, 거래에 관련한 보다 다양한 정보들을 더 포함할 수 있다.
또한, 서버(100)는 생성된 거래 정보를 거래 서비스 풀에 노출시킬 수 있다(S306). 거래 서비스 풀은, 다양한 사용자들 각각이 자신의 가공 데이터를 판매하거나 또는 타 사용자들의 가공 데이터를 구매하기 위한 거래 서비스를 제공하기 위한 서비스 풀을 의미할 수 있다. 이러한 거래 서비스 풀에 가공 데이터가 노출된 경우, 타 사용자 단말로부터의 거래 요청을 수신하는 것에 대응하여 판매 및 구매에 관련한 각 사용자 간의 거래가 허용될 수 있다.
서버(100)는 타 사용자 단말(30)로부터 거래 정보에 대한 거래 요청을 수신할 수 있다(S307). 즉, 서버(100)는 사용자 단말(10)로부터 수신한 가공 데이터 및 거래 생성 요청 정보에 기초하여 거래 정보를 생성하고, 해당 거래 정보를 거래 서비스 풀에 노출시켜 타 사용자 단말 과의 정보 거래를 허용할 수 있다. 즉, 서버(100)는 각 사용자에 의해 가공된 가공 데이터에 관련한 거래 서비스를 제공함으로써, 다양한 가공 데이터들의 질적 향상 및 정보 거래 시장을 조성할 수 있다.
도 6은 본 발명의 일 실시예와 관련된 데이터 거래 플랫폼 서비스를 제공하기 위한 방법을 구현하기 위한 예시적인 순서도를 도시한다.
본 발명의 일 실시예에 따르면, 상기 방법은, 사용자 단말(10)로부터 스크래핑 요청 정보를 수신하는 단계(S410)를 포함할 수 있다.
본 발명의 일 실시예에 따르면, 상기 방법은, 스크래핑 요청 정보에 기초하여 외부 서버(20)로부터 복수의 자료 데이터를 수집하는 단계(S420)를 포함할 수 있다.
본 발명의 일 실시예에 따르면, 상기 방법은, 복수의 자료 데이터에 기초하여 가공 데이터를 생성하는 단계(S430)를 포함할 수 있다.
본 발명의 일 실시예에 따르면, 상기 방법은, 사용자 단말(10)로부터 가공 데이터에 대응하는 거래 생성 요청 정보를 수신하는 것에 대응하여 가공 데이터의 거래에 관련한 거래 서비스를 제공하는 단계(S440)를 포함할 수 있다.
전술한 도 6에 도시된 단계들은 필요에 의해 순서가 변경될 수 있으며, 적어도 하나 이상의 단계가 생략 또는 추가될 수 있다. 즉, 전술한 단계는 본 발명의 일 실시예에 불과할 뿐, 본 발명의 권리 범위는 이에 제한되지 않는다.
본 발명의 실시예와 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로 직접 구현되거나, 하드웨어에 의해 실행되는 소프트웨어 모듈로 구현되거나, 또는 이들의 결합에 의해 구현될 수 있다. 소프트웨어 모듈은 RAM(Random Access Memory), ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리(Flash Memory), 하드 디스크, 착탈형 디스크, CD-ROM, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터 판독가능 기록매체에 상주할 수도 있다.
본 발명의 구성 요소들은 하드웨어인 컴퓨터와 결합되어 실행되기 위해 프로그램(또는 애플리케이션)으로 구현되어 매체에 저장될 수 있다. 본 발명의 구성 요소들은 소프트웨어 프로그래밍 또는 소프트웨어 요소들로 실행될 수 있으며, 이와 유사하게, 실시 예는 데이터 구조, 프로세스들, 루틴들 또는 다른 프로그래밍 구성들의 조합으로 구현되는 다양한 알고리즘을 포함하여, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능적인 측면들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다.
본 발명의 기술 분야에서 통상의 지식을 가진 자는 여기에 개시된 실시예들과 관련하여 설명된 다양한 예시적인 논리 블록들, 모듈들, 프로세서들, 수단들, 회로들 및 알고리즘 단계들이 전자 하드웨어, (편의를 위해, 여기에서 "소프트웨어"로 지칭되는) 다양한 형태들의 프로그램 또는 설계 코드 또는 이들 모두의 결합에 의해 구현될 수 있다는 것을 이해할 것이다. 하드웨어 및 소프트웨어의 이러한 상호 호환성을 명확하게 설명하기 위해, 다양한 예시적인 컴포넌트들, 블록들, 모듈들, 회로들 및 단계들이 이들의 기능과 관련하여 위에서 일반적으로 설명되었다. 이러한 기능이 하드웨어 또는 소프트웨어로서 구현되는지 여부는 특정한 애플리케이션 및 전체 시스템에 대하여 부과되는 설계 제약들에 따라 좌우된다. 본 발명의 기술 분야에서 통상의 지식을 가진 자는 각각의 특정한 애플리케이션에 대하여 다양한 방식들로 설명된 기능을 구현할 수 있으나, 이러한 구현 결정들은 본 발명의 범위를 벗어나는 것으로 해석되어서는 안 될 것이다.
여기서 제시된 다양한 실시예들은 방법, 장치, 또는 표준 프로그래밍 및/또는 엔지니어링 기술을 사용한 제조 물품(article)으로 구현될 수 있다. 용어 "제조 물품"은 임의의 컴퓨터-판독가능 장치로부터 액세스 가능한 컴퓨터 프로그램, 캐리어, 또는 매체(media)를 포함한다. 예를 들어, 컴퓨터-판독가능 매체는 자기 저장 장치(예를 들면, 하드 디스크, 플로피 디스크, 자기 스트립, 등), 광학 디스크(예를 들면, CD, DVD, 등), 스마트 카드, 및 플래쉬 메모리 장치(예를 들면, EEPROM, 카드, 스틱, 키 드라이브, 등)를 포함하지만, 이들로 제한되는 것은 아니다. 또한, 여기서 제시되는 다양한 저장 매체는 정보를 저장하기 위한 하나 이상의 장치 및/또는 다른 기계-판독가능한 매체를 포함한다. 용어 "기계-판독가능 매체"는 명령(들) 및/또는 데이터를 저장, 보유, 및/또는 전달할 수 있는 무선 채널 및 다양한 다른 매체를 포함하지만, 이들로 제한되는 것은 아니다.
제시된 프로세스들에 있는 단계들의 특정한 순서 또는 계층 구조는 예시적인 접근들의 일례임을 이해하도록 한다. 설계 우선순위들에 기반하여, 본 발명의 범위 내에서 프로세스들에 있는 단계들의 특정한 순서 또는 계층 구조가 재배열될 수 있다는 것을 이해하도록 한다. 첨부된 방법 청구항들은 샘플 순서로 다양한 단계들의 엘리먼트들을 제공하지만 제시된 특정한 순서 또는 계층 구조에 한정되는 것을 의미하지는 않는다.
제시된 실시예들에 대한 설명은 임의의 본 발명의 기술 분야에서 통상의 지식을 가진 자가 본 발명을 이용하거나 또는 실시할 수 있도록 제공된다. 이러한 실시예들에 대한 다양한 변형들은 본 발명의 기술 분야에서 통상의 지식을 가진 자에게 명백할 것이며, 여기에 정의된 일반적인 원리들은 본 발명의 범위를 벗어남이 없이 다른 실시예들에 적용될 수 있다. 그리하여, 본 발명은 여기에 제시된 실시예들로 한정되는 것이 아니라, 여기에 제시된 원리들 및 신규한 특징들과 일관되는 최광의의 범위에서 해석되어야 할 것이다.

Claims (11)

  1. 컴퓨팅 장치의 하나 이상의 프로세서에서 수행되는 방법에 있어서,
    사용자 단말로부터 스크래핑 요청 정보를 수신하는 단계;
    상기 스크래핑 요청 정보에 기초하여 외부 서버로부터 복수의 자료 데이터를 수집하는 단계;
    상기 복수의 자료 데이터에 기초하여 가공 데이터를 생성하는 단계; 및
    상기 사용자 단말로부터 상기 가공 데이터에 대응하는 거래 생성 요청 정보를 수신하는 것에 대응하여 상기 가공 데이터의 거래에 관련한 거래 서비스를 제공하는 단계;
    를 포함하는,
    데이터 거래 플랫폼 서비스를 제공하기 위한 방법.
  2. 제1항에 있어서,
    상기 스크래핑 요청 정보는,
    상기 사용자 단말의 사용자가 수집하고자 하는 자료 데이터에 관련한 정보 및 각 자료데이터들의 위치한 외부 서버에 관련한 정보를 포함하며,
    상기 스크래핑 요청 정보에 기초하여 외부 서버로부터 복수의 자료 데이터를 수집하는 단계는,
    상기 스크래핑 요청 정보에 기초하여 데이터 수집 주기 정보를 획득하는 단계; 및
    상기 데이터 수집 주기 정보에 기초하여 상기 복수의 자료 데이터를 수집하는 단계;
    를 포함하는,
    데이터 거래 플랫폼 서비스를 제공하기 위한 방법.
  3. 제1항에 있어서,
    상기 스크래핑 요청 정보에 기초하여 외부 서버로부터 복수의 자료 데이터를 수집하는 단계는,
    상기 스크래핑 요청 정보에 기초하여 외부 서버의 수 및 각 외부 서버에 대응하는 데이터 수집량을 식별하는 단계;
    상기 외부 서버의 수 및 상기 각 외부 서버에 대응하는 데이터 수집량에 기초하여 스케줄링 정보를 생성하는 단계; 및
    상기 스케줄링 정보에 기초하여 상기 복수의 자료 데이터를 수집하는 단계;
    를 포함하며,
    상기 복수의 자료 데이터의 수집은,
    외부 서버 각각에 대응하여 병렬적으로 수행되는 것을 특징으로 하는,
    데이터 거래 플랫폼 서비스를 제공하기 위한 방법.
  4. 제1항에 있어서,
    상기 복수의 자료 데이터에 기초하여 가공 데이터를 생성하는 단계는,
    편집 사용자 인터페이스를 제공하는 단계; 및
    상기 편집 사용자 인터페이스에 대한 사용자 입력에 기초하여 상기 복수의 자료 데이터에 관련한 상기 가공 데이터를 생성하는 단계;
    를 포함하는,
    데이터 거래 플랫폼 서비스를 제공하기 위한 방법.
  5. 제1항에 있어서,
    상기 거래 서비스를 제공하는 단계는,
    상기 가공 데이터 및 상기 거래 생성 요청 정보에 기초하여 거래에 관련한 복수의 항목 정보를 포함하는 거래 정보를 생성하는 단계; 및
    거래 서비스 풀에 상기 거래 정보를 노출시켜 복수의 타 사용자 단말로부터의 거래 요청 수신을 허용하는 단계;
    를 포함하는,
    데이터 거래 플랫폼 서비스를 제공하기 위한 방법.
  6. 제5항에 있어서,
    상기 방법은,
    상기 사용자 단말의 사용자가 생성한 거래 정보의 수, 타 사용자 단말과의 거래가 완료된 거래 정보의 수 및 거래 정보의 판매 금액 중 적어도 하나에 기초하여 상기 사용자 단말의 사용자에 대응하는 거래 등급을 결정하는 단계; 및
    상기 거래 등급을 포함하는 상기 거래 정보를 생성하는 단계;
    를 더 포함하는,
    데이터 거래 플랫폼 서비스를 제공하기 위한 방법.
  7. 제5항에 있어서,
    상기 방법은,
    상기 복수의 타 사용자 단말 각각에 대응하는 컨텐츠 정보 각각과 상기 거래 정보의 연관성에 기초하여 상기 거래 정보에 대한 상기 복수의 타 사용자 단말 각각의 적합도를 산출하는 단계; 및
    상기 복수의 타 사용자 단말 각각에 대응하여 산출된 적합도에 기초하여 각 타 사용자 단말에 상기 거래 정보에 포함된 복수의 항목 정보의 노출 정도를 상이하게 결정하는 단계;
    를 더 포함하는,
    데이터 거래 플랫폼 서비스를 제공하기 위한 방법.
  8. 제5항에 있어서,
    상기 방법은,
    상기 거래 서비스 풀에 등록된 복수의 거래 정보 및 상기 복수의 거래 정보 각각에 대응하는 복수의 거래 완료 정보에 기초하여 데이터 경향성 정보를 획득하는 단계; 및
    상기 데이터 경향성 정보에 기초하여 가공 데이터 추천 정보를 생성하는 단계;
    를 더 포함하는,
    데이터 거래 플랫폼 서비스를 제공하기 위한 방법.
  9. 제8항에 있어서,
    상기 방법은,
    상기 가공 데이터 추천 정보에 기초하여 상기 거래 서비스 풀에 등록된 복수의 사용자 단말 중 하나 이상의 가공 추천 사용자 단말을 선별하는 단계; 및
    상기 하나 이상의 가공 추천 사용자 단말로 상기 가공 데이터 추천 정보를 전송할 것을 결정하는 단계;
    를 더 포함하는,
    데이터 거래 플랫폼 서비스를 제공하기 위한 방법.
  10. 하나 이상의 인스트럭션을 저장하는 메모리; 및
    상기 메모리에 저장된 하나 이상의 인스트럭션을 실행하는 프로세서;
    를 포함하고,
    상기 프로세서는 상기 하나 이상의 인스트럭션을 실행함으로써, 제1항의 방법을 수행하는, 서버.
  11. 하드웨어인 컴퓨터와 결합되어, 제1항의 방법을 수행할 수 있도록 컴퓨터에서 독출가능한 기록매체에 저장된 컴퓨터 프로그램.
KR1020220009430A 2022-01-21 2022-01-21 데이터 거래 플랫폼 서비스를 제공하기 위한 방법, 서버 및 컴퓨터 프로그램 KR20230113029A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220009430A KR20230113029A (ko) 2022-01-21 2022-01-21 데이터 거래 플랫폼 서비스를 제공하기 위한 방법, 서버 및 컴퓨터 프로그램

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220009430A KR20230113029A (ko) 2022-01-21 2022-01-21 데이터 거래 플랫폼 서비스를 제공하기 위한 방법, 서버 및 컴퓨터 프로그램

Publications (1)

Publication Number Publication Date
KR20230113029A true KR20230113029A (ko) 2023-07-28

Family

ID=87427142

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220009430A KR20230113029A (ko) 2022-01-21 2022-01-21 데이터 거래 플랫폼 서비스를 제공하기 위한 방법, 서버 및 컴퓨터 프로그램

Country Status (1)

Country Link
KR (1) KR20230113029A (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170041523A (ko) 2015-10-07 2017-04-17 한국정보통신주식회사 스크래핑 서비스 제공 방법, 그를 위한 서버 장치 및 시스템

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170041523A (ko) 2015-10-07 2017-04-17 한국정보통신주식회사 스크래핑 서비스 제공 방법, 그를 위한 서버 장치 및 시스템

Similar Documents

Publication Publication Date Title
Attaran et al. Cloud computing technology: improving small business performance using the Internet
CN102783129B (zh) 用于处理在应用程序接口处接收的请求的系统和方法
JP7455252B2 (ja) セグメンテーション・アズ・ア・サービスのための方法及びシステム
CN111344690B (zh) 分层数据交换管理系统
EP3754582A1 (en) Systems and methods for recommending merchant discussion groups based on settings in an e-commerce platform
US9703793B1 (en) Data aggregation and caching
JP6429979B1 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
US20210150604A1 (en) Systems and methods for customization of reviews
US11893613B2 (en) Systems, manufacture, and methods for controlling access to resources
US20200402118A1 (en) Systems and methods for recommending merchant discussion groups based on merchant categories
US20220075850A1 (en) Systems and methods for user authentication
US20220067510A1 (en) System and method for tag-directed deep-learning-based features for predicting events and making determinations
AU2010292908B2 (en) Monetization of interactive networked-based information objects
CA3166041A1 (en) Systems and methods for blockchain network congestion-adaptive digital asset event handling
US20220398572A1 (en) Systems and methods for controlling transfers of digital assets
Altalhi et al. Developing a framework and algorithm for scalability to evaluate the performance and throughput of CRM systems
EP4040317A1 (en) Systems and methods for generating account permissions based on application programming interface interactions
KR20230113029A (ko) 데이터 거래 플랫폼 서비스를 제공하기 위한 방법, 서버 및 컴퓨터 프로그램
US20210150593A1 (en) Systems and methods for customization of reviews
US20200349620A1 (en) Email address verification
US20200204514A1 (en) Prioritized messaging system
KR20210132415A (ko) Ai 활용 개인 데이터 거래 중개 및 마케팅 대행 서비스 시스템 및 방법
US20240012866A1 (en) Queuing analytics events before consent
US11516208B2 (en) System and method for merging accounts
Atmaja et al. Architecture Design of E-Information System Marketplace with Method Enterprise Architecture Planning

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E601 Decision to refuse application