KR102254809B1 - 블록체인에 기반한, 자원 공유에 따른 보상 제공하는 분산형 컴퓨팅 자원 공유 시스템 및 컴퓨팅 장치 - Google Patents

블록체인에 기반한, 자원 공유에 따른 보상 제공하는 분산형 컴퓨팅 자원 공유 시스템 및 컴퓨팅 장치 Download PDF

Info

Publication number
KR102254809B1
KR102254809B1 KR1020180113587A KR20180113587A KR102254809B1 KR 102254809 B1 KR102254809 B1 KR 102254809B1 KR 1020180113587 A KR1020180113587 A KR 1020180113587A KR 20180113587 A KR20180113587 A KR 20180113587A KR 102254809 B1 KR102254809 B1 KR 102254809B1
Authority
KR
South Korea
Prior art keywords
resource
computing resource
transaction
present disclosure
evaluation
Prior art date
Application number
KR1020180113587A
Other languages
English (en)
Other versions
KR20200034171A (ko
Inventor
장세영
Original Assignee
주식회사 머니브레인
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 머니브레인 filed Critical 주식회사 머니브레인
Priority to KR1020180113587A priority Critical patent/KR102254809B1/ko
Publication of KR20200034171A publication Critical patent/KR20200034171A/ko
Application granted granted Critical
Publication of KR102254809B1 publication Critical patent/KR102254809B1/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
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/101Collaborative creation, e.g. joint development of products or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0639Performance analysis of employees; Performance analysis of enterprise or organisation operations
    • 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
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/103Workflow collaboration or project management
    • 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
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • 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/0236Incentive or reward received by requiring registration or ID from user

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • Human Resources & Organizations (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Tourism & Hospitality (AREA)
  • Operations Research (AREA)
  • Finance (AREA)
  • Data Mining & Analysis (AREA)
  • Quality & Reliability (AREA)
  • Educational Administration (AREA)
  • Software Systems (AREA)
  • Game Theory and Decision Science (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Mathematical Physics (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

스마트 계약을 지원하는 블록체인에 기반한, 분산형 컴퓨팅 자원 공유 시스템 상의 컴퓨팅 장치가 제공된다. 블록체인은 복수의 사용자 계정과 공유 컴퓨팅 자원의 관리를 위한 스마트 계약 계정을 포함하고, 상기 복수의 사용자 계정 각각은, 다른 사용자와의 공유를 위해 상기 공유 컴퓨팅 자원을 상기 분산형 컴퓨팅 자원 공유 시스템 상에 제공한 제공자 계정, 상기 공유 컴퓨팅 자원을 이용하려는 이용자 계정, 및 상기 공유 컴퓨팅 자원을 검수하는 검수자 계정 중 하나이고, 상기 공유 컴퓨팅 자원은 블록체인 안에서 거래될 수 있는 자원이며 상기 컴퓨팅 장치는 상기 블록체인 상에 배포된 트랜잭션을 수신하고 상기 수신된 트랜잭션에 포함된 프로그램 코드를 실행하도록 구성된 트랜잭션 처리 모듈; 및 상기 트랜잭션 처리 모듈에서 실행한 프로그램 코드에 대한 평가를 수행하도록 구성된 평가 관리 모듈을 포함하고, 상기 트랜잭션은, 상기 스마트 계약 계정의 식별자와, 상기 제공자 계정 또는 상기 이용자 계정의 식별자를 포함하고, 상기 공유 컴퓨팅 자원의 등록 또는 이용에 관한 정보를 포함하며, 상기 트랜잭션 처리 모듈은, 상기 프로그램 코드를 실행하는 경우, 상기 트랜잭션에 포함된 상기 공유 컴퓨팅 자원의 등록 또는 이용에 관한 정보, 및 상기 평가 관리 모듈에서 수행한 상기 공유 컴퓨팅 자원에 대한 평가가 상기 스마트 계약 계정에 연관되어 저장되도록 한다.

Description

블록체인에 기반한, 자원 공유에 따른 보상 제공하는 분산형 컴퓨팅 자원 공유 시스템 및 컴퓨팅 장치 {DISTRIBUTED COMPUTING RESOURCES SHARING SYSTEM AND COMPUTING APPARATUS THEREOF PROVIDING REWARD BASED ON BLOCK CHAIN}
본 개시는, 분산형 컴퓨팅 자원 공유 시스템에 관한 것이며, 보다 구체적으로는 스마트 계약을 지원하는 블록체인에 기반하여, 머신러닝에 이용될 수 있는 분산형 컴퓨팅 자원을 공유하고 자원 공유에 따른 보상을 제공하는 자원 공유 시스템 등에 관한 것이다.
근래, 머신러닝에 기초한 인공지능 연구에 관한 관심이 점점 더 높아져가고 있다. 머신러닝에 기초한 인공지능이, 인류의 미래를 이전과는 다른 차원의 것으로 발전시킬 것이라는 기대가 팽배하다. 이러한 머신러닝에 기초한 인공지능 연구는, 기본적으로, 대량의 연산을 지원할 수 있는 하드웨어 자원, 머신러닝에 활용될 수 있는 학습용 데이터, 및 머신러닝 모델(알고리즘)의 세 가지를 필수 요소로 한다. 그런데, 주지하듯이, 페이스북, 아마존, 구글, 마이크로소프트 등을 비롯한 일부 거대 기업들은, 저마다의 방식으로 위 인공지능 연구를 위한 각 요소들을 독점하고 있으며, 상대적으로 열악한 환경의 개별 연구자들이나 소규모 기업들은 인공지능 연구에 참여할 기회를 박탈당하고 있는 바, 이는 인공지능 및 그에 따른 각종 개발 부산물들이 이들 거대 기업의 사유물이 될 것이라는 우려를 만들어내고 있다.
한편, 2009년 나카모토 사토시가 암호화폐 비트코인을 통해 블록체인 기술을 세상에 선보인 이래 다양한 형태의 암호화폐들과 이들을 뒷받침하는 블록체인 기술에 관한 관심이 점점 더 뜨거워지고 있다. 블록체인 기술은, 탈 중앙화된 분산형 공유 원장 방식에 기초한 거래를 가능하게 하여, 높은 개방성, 신뢰성, 투명성, 및 상호작용성 등을 제공한다는 점에서, 다양한 분야에서 그 응용 가능성이 검토되고 있다. 특히, 비트코인에 뒤 이은 이더리움 등의 새로운 블록체인 기술은, 스마트 계약, 즉 블록체인 상에 계약 조건을 명시하고 그 조건이 충족되면 계약 내용이 자동으로 이행되도록 하는 디지털 계약 기능을 지원함에 따라, 더욱 다양한 산업 분야에서 이러한 블록체인 기술의 응용이 시도되고 있다.
특허문헌: 한국 등록특허 제10-1852079호
머신러닝에 기초한 인공지능 연구를 위한 자원, 예컨대 연산 및 저장을 위한 하드웨어 자원, 머신러닝에 활용될 양질의 학습용 데이터, 및 다양한 머신러닝 모델(알고리즘)의 효율적 공유 네트워크를 구축하고 이들 자원의 공유 제공 및 사용에 대한 객관적이고 합당한 보상 체계를 지원할 수 있는 플랫폼을 제공하고자 한다. 특히, 블록체인 기술을 활용하여, 인공지능 연구를 위한 각종 하드웨어 및 소프트웨어 자원의 정당한 공유 사용 등을 지원하는 탈 중앙화된 신뢰할 만한 플랫폼을 제공하고 아울러 그러한 플랫폼의 활성화를 도모할 수 있는 방안을 제공하고자 한다.
본 개시의 일 특징에 의하면, 스마트 계약을 지원하는 블록체인에 기반한, 분산형 컴퓨팅 자원 공유 시스템 상의 컴퓨팅 장치가 제공된다. 블록체인은 복수의 사용자 계정과 공유 컴퓨팅 자원의 관리를 위한 스마트 계약 계정을 포함하고, 상기 복수의 사용자 계정 각각은, 다른 사용자와의 공유를 위해 상기 공유 컴퓨팅 자원을 상기 분산형 컴퓨팅 자원 공유 시스템 상에 제공한 제공자 계정, 상기 공유 컴퓨팅 자원을 이용하려는 이용자 계정, 및 상기 공유 컴퓨팅 자원을 검수하는 검수자 계정 중 하나이고, 상기 공유 컴퓨팅 자원은 블록체인 안에서 거래될 수 있는 자원이며 상기 컴퓨팅 장치는 상기 블록체인 상에 배포된 트랜잭션을 수신하고 상기 수신된 트랜잭션에 포함된 프로그램 코드를 실행하도록 구성된 트랜잭션 처리 모듈; 및 상기 트랜잭션 처리 모듈에서 실행한 프로그램 코드에 대한 평가를 수행하도록 구성된 평가 관리 모듈을 포함하고, 상기 트랜잭션은, 상기 스마트 계약 계정의 식별자와, 상기 제공자 계정 또는 상기 이용자 계정의 식별자를 포함하고, 상기 공유 컴퓨팅 자원의 등록 또는 이용에 관한 정보를 포함하며, 상기 트랜잭션 처리 모듈은, 상기 프로그램 코드를 실행하는 경우, 상기 트랜잭션에 포함된 상기 공유 컴퓨팅 자원의 등록 또는 이용에 관한 정보, 및 상기 평가 관리 모듈에서 수행한 상기 공유 컴퓨팅 자원에 대한 평가가 상기 스마트 계약 계정에 연관되어 저장되도록 할 수 있다. .
본 개시의 일 실시예에 의하면, 상기 블록체인 안에서 거래될 수 있는 자원은 머신러닝에 이용될 수 있는, 처리장치 유닛, 저장 유닛, 데이터 세트, 및 학습 모델 중 적어도 하나를 포함할 수 있다.
본 개시의 일 실시예에 의하면, 상기 컴퓨팅 장치는, 상기 복수의 사용자 계정 중 적어도 하나의 사용자 계정을 위한 디지털 지갑 관리 모듈을 더 포함하고, 상기 평가 관리 모듈은 상기 디지털 지갑 관리 모듈에 저장된 토큰의 수량에 따라 평가의 가중치를 부여하도록 더 구성될 수 있다.
본 개시의 일 실시예에 의하면, 상기 평가 관리 모듈은 상기 블록체인 상에 배포된 트랜잭션을 수신하고 상기 트랜잭션에 포함된 프로그램 코드에 대한 평가를 수행하도록 더 구성될 수 있다.
본 개시의 일 실시예에 의하면, 상기 평가 관리 모듈은 연관된 사용자 계정에 대한 등급을 분류하도록 더 구성되며, 상기 등급은 상기 사용자 계정에서 제공한 공유 컴퓨팅 자원의 총량 및 상기 사용자 계정에서 제공한 공유 컴퓨팅 자원의 평가를 기초로 분류될 수 있다.
본 개시의 일 실시예에 의하면, 상기 등급은 상기 사용자 계정에서 제공한 공유 컴퓨팅 자원의 평가가 긍정적인 경우 등급을 상향 조절하고, 부정적인 경우 등급을 하향 조절하여 다수 의견에 가중치를 부여하도록 분류될 수 있다.
본 개시의 일 실시예에 의하면, 전술한 컴퓨팅 장치는, 상기 스마트 계약 계정에 연관되어 저장되어 있는 상기 공유 컴퓨팅 자원에 대한 평가를 기초로 상기 공유 컴퓨팅 자원의 등록 또는 이용에 따른 보상을 받을 수 있다.
본 개시의 다른 특징에 의하면, 블록체인에 기반한, 자원 공유에 따른 보상 제공하는 컴퓨팅 자원 공유 시스템이 제공된다. 자원 공유에 따른 보상 제공하는 컴퓨팅 자원 공유 시스템은 상기 블록체인을 지원하는 통신망; 및 상기 통신망을 통해 서로 접속된 복수의 노드를 포함하고, 상기 복수의 노드 각각은 전술한 컴퓨팅 장치들 중 하나이다.
본 개시의 일 실시예에 의하면, 상기 통신망을 통해 상기 복수의 노드들과 접속된 플랫폼 서버를 더 포함할 수 있고, 플랫폼 서버는, 상기 통신망을 통해, 상기 복수의 노드들 중 하나의 노드로부터 소정의 컴퓨팅 자원 공유에 관련된 정보를 포함하는 트랜잭션을 수신하도록 구성된 통신 모듈; 및 상기 컴퓨팅 자원 공유 시스템 상의 상기 자원 공유에 관련된 평가 및 보상을 처리하도록 구성된 평가 및 보상 모듈을 포함하고, 상기 평가 및 보상 모듈은 상기 트랜잭션에 포함된 상기 스마트 계약 계정의 식별자와, 상기 제공자 계정 또는 상기 이용자 계정의 식별자, 상기 공유 컴퓨팅 자원의 등록 또는 이용에 관한 정보공유 컴퓨팅 자원의 등록 또는 이용에 관한 정보 및 공유 컴퓨팅 자원에 대한 평가를 기초로 상기 제공자 계정에 보상을 지급하도록 구성될 수 있다.
본 개시의 일 실시예에 의하면, 상기 평가 및 보상 모듈은 상기 공유 컴퓨팅 자원이 머신러닝에 이용될 수 있는 학습 모델인 경우, 상기 공유 컴퓨팅 자원에 대한 평가는 학습 모델의 상대적 정확도에 연관되어 수행하도록 구성될 수 있다.
본 개시의 실시예들에 의하면, 머신러닝에 기초한 인공지능 연구를 위한 자원, 예컨대 연산을 위한 하드웨어 자원, 머신러닝에 활용될 양질의 학습용 데이터, 및 다양한 머신러닝 모델(알고리즘)의 효율적 공유 사용 및 자원 제공에 대한 객관적이고 합당한 보상의 제공이 이루어질 수 있다.
개개인이 보유한 하드웨어 자원(예컨대, GPU 등 처리 장치 및 각종 저장 공간 장치)이 항상 100% 활용되는 것은 아니며, 많은 수의 하드웨어 자원이 많은 시간 유휴 상태에 놓여 있다. 본 개시의 실시예들에 의하면, 개개인이 보유한 유휴 하드웨어 자원이 인공지능 기술의 발전에 이바지한다고 하는 가치 있는 목적을 위하여 유용한 형태로 활용될 수 있게 된다. 또, 본 개시의 실시예들에 의하면, 개개인이 개발 및/또는 보유한 소프트웨어 자원, 예컨대 머신러닝을 위한 데이터 및 다양한 학습 모델 등의 공유 사용이 활발하게 이루어지게 되고, 각각의 창작자나 보유자 등은 자원의 공유 제공에 대한 정당한 수익을 얻을 수 있게 되며, 연구자들은 동일한 작업을 위해 자원을 중복 소비하는 대신에 새로운 작업에 자원들을 활용할 수 있게 되어, 궁극적으로 인공지능 발전이 가속화될 수 있다.
본 개시의 실시예들에 의하면, 플랫폼 상에서의 각종 자원의 제공 및 활용과 그에 따른 대가의 지불이 블록체인 기술에 기초하여 이루어질 수 있으며, 이로써 개방적이고 투명하며 신뢰할 만한 거래가 가능하게 되고, 구성원들의 자발적이고 적극적인 참여를 유도할 수 있다.
도 1은, 본 개시의 일 실시예에 따른, 스마트 계약을 지원하는 블록체인 기반의 분산형 컴퓨팅 자원 공유 시스템(100)의 전체 구성을 개념적으로 도시한 도면이다.
도 2는, 본 개시의 일 실시예에 따른, 도 1의 자원 공유 노드(130)의 기능적 구성을 개략적으로 도시한 기능 블록도이다.
도 3은, 본 개시의 일 실시예에 따른, 도 2의 자원 공유 노드(130)에 포함된 블록체인 분산원장 저장 모듈(208)에 저장될 수 있는, 블록체인 및 그에 포함된 각 블록(300)의 구성을 개념적으로 도시한 도면이다.
도 4는, 본 개시의 일 실시예에 따른, 도 3의 블록(300)에 포함될 수 있는 트랜잭션 정보(304)의 일예로서, 분산형 컴퓨팅 자원 공유 시스템(100) 상에 공유 자원을 제공하기 위한 트랜잭션 정보를 예시적으로 도시한 도면이다.
도 5는, 본 개시의 일 실시예에 따른, 도 1의 자원 공유 노드(130)에 의해서 생성된, 분산형 컴퓨팅 자원 공유 시스템(100) 상에서 소정의 공유 자원을 검색하기 위한 쿼리를 예시적으로 도시한 도면이다.
도 6은, 본 개시의 일 실시예에 따른, 도 3의 블록(300)에 포함된 트랜잭션 정보(304)의 일예로서, 분산형 컴퓨팅 자원 공유 시스템(100) 상의 공유 자원의 이용을 요청하기 위한 트랜잭션 정보를 예시적으로 도시한 도면이다.
도 7은, 본 개시의 일 실시예에 따른, 도 1의 플랫폼 서버(140)의 기능적 구성을 개략적으로 도시한 도면이다.
도 8은, 본 개시의 일 실시예에 따른, 도 1의 자원 공유 노드(130)를 통해 분산형 컴퓨팅 자원 공유 시스템(100) 상으로 공유 자원의 제공이 이루어지는 과정의 일 예를 개략적으로 도시한 동작 흐름도이다.
도 9는, 본 개시의 일 실시예에 따른, 분산형 컴퓨팅 자원 공유 시스템(100) 상에서 수행되는, 데이터 자원의 공유 요청, 제공 및 이용의 과정의 일 예를 개략적으로 도시한 동작 흐름도이다.
이하, 첨부 도면을 참조하여 본 개시의 실시예에 관하여 상세히 설명한다. 이하에서는, 본 개시의 요지를 불필요하게 흐릴 우려가 있다고 판단되는 경우, 이미 공지된 기능 및 구성에 관한 구체적인 설명을 생략한다. 또한, 이하에서 설명하는 내용은 어디까지나 본 개시의 일 실시예에 관한 것일 뿐 본 개시가 이로써 제한되는 것은 아님을 알아야 한다.
본 개시에서 사용되는 용어는 단지 특정한 실시예를 설명하기 위해 사용되는 것으로 본 개시를 한정하려는 의도에서 사용된 것이 아니다. 예를 들면, 단수로 표현된 구성요소는 문맥상 명백하게 단수만을 의미하지 않는다면 복수의 구성요소를 포함하는 개념으로 이해되어야 한다. 본 개시에서 사용되는 "및/또는"이라는 용어는, 열거되는 항목들 중 하나 이상의 항목에 의한 임의의 가능한 모든 조합들을 포괄하는 것임이 이해되어야 한다. 본 개시에서 사용되는 '포함하다' 또는 '가지다' 등의 용어는 본 개시 상에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것일 뿐이고, 이러한 용어의 사용에 의해 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 배제하려는 것은 아니다.
본 개시의 실시예에 있어서 '모듈' 또는 '부'는 적어도 하나의 기능이나 동작을 수행하는 기능적 부분을 의미하며, 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다. 또한, 복수의 '모듈' 또는 '부'는, 특정한 하드웨어로 구현될 필요가 있는 '모듈' 또는 '부'를 제외하고는, 적어도 하나의 소프트웨어 모듈로 일체화되어 적어도 하나의 프로세서에 의해 구현될 수 있다.
덧붙여, 달리 정의되지 않는 한 기술적 또는 과학적인 용어를 포함하여, 본 개시에서 사용되는 모든 용어들은 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의된 용어들은, 관련 기술의 문맥상 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 개시에서 명백하게 달리 정의하지 않는 한 과도하게 제한 또는 확장하여 해석되지 않는다는 점을 알아야 한다.
이하, 첨부된 도면을 참조하여, 본 개시의 실시예에 대해 구체적으로 설명하기로 한다.
도 1은, 본 개시의 일 실시예에 따른, 스마트 계약을 지원하는 블록체인 기반의 분산형 컴퓨팅 자원 공유 시스템(100)의 전체 구성을 개념적으로 도시한 도면이다. 도시된 바에 의하면, 분산형 컴퓨팅 자원 공유 시스템(100)은, 블록체인 네트워크(110), 복수의 공유 컴퓨팅 자원 영역(120), 복수의 자원 공유 노드(130), 및 플랫폼 서버(140)를 포함한다.
본 개시의 일 실시예에 의하면, 블록체인 네트워크(110)는, 분산형 컴퓨팅 자원 공유 시스템(100) 상의 각 공유 컴퓨팅 자원 영역(120), 각 자원 공유 노드(130), 및 플랫폼 서버(140) 간의 통신이 가능하게 하는 임의의 유선 또는 무선 통신망일 수 있다. 본 개시의 일 실시예에 의하면, 블록체인 네트워크(110)는, 예컨대 TCP/IP 통신망 상에 구현된 P2P 분산 네트워크를 포함할 수 있다. 본 개시의 일 실시예에 의하면, 블록체인 네트워크(110)는, 예컨대 Wi-Fi망, LAN망, WAN망, 인터넷망 등에 구현된 순수 P2P 네트워크 또는 하이브리드 P2P 네트워크일 수 있으며, 다만 본 개시가 이로써 제한되는 것은 아니다. 본 개시의 일 실시예에 의하면, 블록체인 네트워크(110)를 통하여 각 자원 공유 노드(130)에 의해 생성 및 배포된 각 트랜잭션이 분산형 컴퓨팅 자원 공유 시스템(100)을 위한 블록체인에 포함되어 다른 자원 공유 노드들(130) 및 플랫폼 서버(140)와 공유될 수 있다.
구체적으로 도시되지는 않았으나, 본 개시의 일 실시예에 의하면, 분산형 컴퓨팅 자원 공유 시스템(100)은, 복수의 사용자 계정과, 공유 컴퓨팅 자원의 이용 및 보상 등의 관리를 위한 자원 관리 계정(예컨대, 분산형 컴퓨팅 자원 공유 시스템(100)의 블록체인의 스마트 계약 계정)을 포함할 수 있다. 본 개시의 일 실시예에 의하면, 분산형 자원 공유 시스템(100)의 각 사용자는 각각 자신의 사용자 계정(및 클라이언트)을 통하여 블록체인 네트워크(110)에 액세스할 수 있고, 후술하는 자원 공유 노드(130)를 통하여 트랜잭션을 생성 및/또는 배포함으로써, 자신의 컴퓨팅 자원을 분산형 컴퓨팅 자원 공유 시스템(100) 상에 제공하거나 분산형 컴퓨팅 자원 공유 시스템(100) 상에 제공된 컴퓨팅 자원을 이용할 수 있다. 본 개시의 일 실시예에 의하면, 분산형 자원 공유 시스템(100)의 각 사용자 계정은, 자신이 보유한 하드웨어 및/또는 소프트웨어 자원을 분산형 자원 공유 시스템(100) 상에서 다른 사용자에 의해 공유 사용될 수 있도록 제공하는 자원 제공자를 위한 계정일 수 있다. 본 개시의 일 실시예에 의하면, 분산형 자원 공유 시스템(100)의 각 사용자 계정은, 소정의 알고리즘에 따라 머신러닝을 수행하고자 하는 개발자로서, 분산형 자원 공유 시스템(100) 상에서 공유 사용에 제공된 하드웨어 및/또는 소프트웨어 자원을, 정당한 대가를 지불하고서 이용하고자 하는 개발자를 위한 계정일 수 있다. 본 개시의 일 실시예에 의하면, 분산형 자원 공유 시스템(100)의 각 사용자 계정은, 소정의 서비스 개발자로서, 분산형 컴퓨팅 자원 공유 시스템(100) 상에 공유 제공된 GPU 자원, 데이터 세트, 및 학습 모델에 따라 수행된 머신러닝의 결과를 위 서비스에 이용하고자 하는 서비스 개발자를 위한 계정일 수 있다. 본 개시의 일 실시예에 의하면, 분산형 자원 공유 시스템(100)의 각 사용자 계정은, 자원 제공자이자 개발자인 사용자를 위한 계정일 수 있다.
본 개시의 일 실시예에 의하면, 복수의 공유 컴퓨팅 자원 영역(120) 각각은, 분산형 컴퓨팅 자원 공유 시스템(100) 상에서 복수의 사용자들 간에 공유 사용이 이루어질 수 있는 하나 또는 일군의 컴퓨팅 자원을 포함할 수 있다. 본 개시의 일 실시예에 의하면, 공유 컴퓨팅 자원 영역(120)은, 머신러닝에 이용될 수 있는 컴퓨팅 자원, 예컨대 GPU 등의 처리 장치 유닛이나 저장 유닛 등의 하드웨어 자원 및/또는 머신러닝을 위한 학습 데이터 세트나 학습 모델 등의 소프트웨어 자원을 포함할 수 있다. 본 개시의 일 실시예에 의하면, 공유 컴퓨팅 자원 영역(120)의 각 컴퓨팅 자원은, 분산형 컴퓨팅 자원 공유 시스템(100) 상의 일 사용자(즉, 제공자)에 의해 제공되고 다른 사용자들에 의해 이용될 수 있는데, 이러한 공유 컴퓨팅 자원 영역(120)의 각 자원의 제공 및 이용은, 분산형 컴퓨팅 자원 공유 시스템(100)을 위한 블록체인(구체적으로, 해당 블록체인에 의한 스마트 계약 및 그에 따른 스마트 계약 계정)을 통하여 운영 및 관리될 수 있다.
본 개시의 일 실시예에 의하면, 공유 컴퓨팅 자원 영역(120)의 컴퓨팅 자원 가운데 데이터 세트 자원은, 한 세트의 데이터 세트 자원이 복수 개의 부분으로 분할되어 복수의 공유 컴퓨팅 자원 영역(120)에 분산되어 저장될 수 있다. 이러한 경우, 머신러닝의 수행을 위하여 데이터 세트 자원의 이동이 필요한 때, 그 필요한 데이터 세트 자원의 각 부분이 병렬적으로 전송될 수 있고 이로써 대량의 데이터 이동의 전송 시간 지역이나 대역폭 부족의 문제를 해결할 수 있다. 또한, 전술한 바와 같이, 한 세트의 데이터 세트 자원이 복수 개의 부분으로 분할되어 복수의 공유 컴퓨팅 자원 영역(120)에 분산되어 저장되는 경우에는, 시스템(100)의 전체 공유 컴퓨팅 자원 영역들(120)에 걸쳐 위 데이터 세트 자원의 각 분할된 부분이 적어도 2개는 존재(즉, 전체 영역에 걸쳐 동일한 내용의 데이터가 적어도 2개는 존재)하도록 중복하여 저장될 수 있다. 이로써, 데이터 세트 자원의 일 부분이 저장된 공유 컴퓨팅 자원 영역(120)이 차단되는 경우에도, 전체 시스템(100) 내에서는 그 전체 데이터 세트 자원의 완전성이 손상되지 않도록 할 수 있다.
본 개시의 다른 실시예에 의하면, 공유 컴퓨팅 자원 영역(120)의 컴퓨팅 자원 가운데 데이터 세트 자원은, 해당 데이터 세트 자원 전체가 하나의 공유 컴퓨팅 자원 영역(120)에 저장될 수 있는데, 원시 데이터로서의 해당 데이터 세트 자원이, 그 원시 데이터를, 머신러닝을 위한 소정의 트레이닝 코드에 부합하도록 인코딩함으로써 획득된, 전처리 데이터(preprocessed data) 세트와 함께, 해당 공유 컴퓨팅 자원 영역(120)에 저장될 수 있다. 이로써, 머신러닝의 수행을 위하여 데이터 세트 자원의 이동이 필요한 경우, 용량이 큰 원시 데이터로서의 데이터 세트 자원 대신에, 그에 상응하는 전처리 데이터 세트가 전송되도록 함으로써 데이터 이동의 전송 시간 지연이나 대역폭 부족의 문제를 해결할 수 있다.
본 개시의 일 실시예에 의하면, 복수의 자원 공유 노드(130) 각각은, 분산형 컴퓨팅 자원 공유 시스템(100)의 블록체인 네트워크(110)에 접속된 각 컴퓨팅 장치일 수 있다. 본 개시의 일 실시예에 의하면, 자원 공유 노드(130)는, ERC 20 등(그러나 이로써 제한되는 것은 아님)의 블록체인 프로토콜에 따라, 소정의 트랜잭션을 생성하고, 그 생성된 트랜잭션을 블록체인 네트워크(110)를 통해 분산형 컴퓨팅 자원 공유 시스템(100)을 위한 블록체인 상에 배포하는데 이용될 수 있다. 본 개시의 일 실시예에 의하면, 각각의 자원 공유 노드(130)로부터 생성 및 배포될 수 있는 트랜잭션은, 예컨대 소정의 하드웨어 또는 소프트웨어 자원이 분산형 컴퓨팅 자원 공유 시스템(100) 상에서 공유 사용될 수 있도록 제공(예컨대, 공유 사용을 위한 등록)하기 위한 것일 수 있다. 본 개시의 일 실시예에 의하면, 각각의 자원 공유 노드(130)로부터 생성 및 배포될 수 있는 트랜잭션은, 예컨대 분산형 컴퓨팅 자원 공유 시스템(100) 상에서 사용자들 간 공유 사용을 위하여 제공된 소정의 하드웨어 또는 소프트웨어 자원을 머신러닝에 이용하고자 하는 요청을 포함하는 것일 수 있다. 본 개시의 일 실시예에 의하면, 각 사용자는, 자신의 사용자 계정(및 클라이언트)을 이용하여 자원 공유 노드(130)를 통해 소정의 트랜잭션(예컨대, 자원의 제공 또는 이용을 위한 트랜잭션 등)이 생성되어 블록체인 네트워크(110) 상에 배포되도록 할 수 있다.
본 개시의 일 실시예에 의하면, 각각의 자원 공유 노드(130)는, 다른 자원 공유 노드(130)로부터 생성되어 블록체인 상에 배포된 각 트랜잭션을 수신 및 처리할 수 있다. 본 개시의 일 실시예에 의하면, 각각의 자원 공유 노드(130)는, 수신된 트랜잭션 상의 프로그램 코드(예컨대, 분산형 컴퓨팅 자원 공유 시스템(100) 상에서의 하드웨어 및/또는 소프트웨어 자원의 공유 사용에 관한 스마트 계약에 관한 프로그램 코드)를 실행할 수 있다. 본 개시의 일 실시예에 의하면, 각각의 자원 공유 노드(130)는, 소정의 하드웨어 및/또는 소프트웨어 자원의 공유 제공에 관한 트랜잭션을 수신한 경우, 수신된 트랜잭션 상의 스마트 계약에 관한 프로그램 코드를 실행하고, 그 제공된 자원에 관한 정보(예컨대, 자원의 유형, 위치, 속성 등을 비롯한 다양한 정보)를, 공유 컴퓨팅 자원의 관리를 위한 스마트 계약 계정(예컨대, 자원 관리 계정)과 연관시켜 저장할 수 있다. 본 개시의 일 실시예에 의하면, 각각의 자원 공유 노드(130)는, 소정의 하드웨어 및/또는 소프트웨어 자원의 이용 요청을 포함하는 트랜잭션을 수신한 경우, 수신된 트랜잭션 상의 스마트 계약에 관한 프로그램 코드를 실행하고, 해당 자원의 이용에 관한 정보(예컨대, 해당 자원을 이용하려는 사용자 계정, 해당 자원의 유형, 위치, 속성, 이용량 등을 비롯한 다양한 정보)를, 공유 컴퓨팅 자원의 관리를 위한 스마트 계약 계정(예컨대, 자원 관리 계정)과 연관시켜 저장할 수 있다.
본 개시의 일 실시예에 의하면, 복수의 자원 공유 노드(130) 각각은, 플랫폼 서버(130)의 제어 하에 또는 분산형 컴퓨팅 자원 공유 시스템(100) 상의 미리 정해진 알고리즘에 따라, 분산형 컴퓨팅 자원 공유 시스템(100) 상의 각 트랜잭션의 기록을 위한 블록을 생성(또는 채굴) 및/또는 검증할 수 있다. 본 개시의 일 실시예에 의하면, 소정의 시간 간격 동안에 각 공유 자원 노드(130)에 의해 생성되어 분산형 컴퓨팅 자원 공유 시스템(100)을 위한 블록체인 네트워크(110) 상에 배포된 트랜잭션들이, 새로이 생성된 블록에 함께 저장될 수 있다.
본 개시의 일 실시예에 의하면, 자원 공유 노드(130) 각각은, 플랫폼 서버(140)의 제어 하에 또는 분산형 컴퓨팅 자원 공유 시스템(100) 상의 미리 정해진 알고리즘에 따라, 분산형 컴퓨팅 자원 공유 시스템(100)을 위한 블록체인(즉, 블록체인 분산 원장)의 적어도 일부를 저장할 수 있다. 본 개시의 일 실시예에 의하면, 자원 공유 노드(130) 각각은, 플랫폼 서버(140)의 제어 하에 또는 분산형 컴퓨팅 자원 공유 시스템(100) 상의 미리 정해진 알고리즘에 따라, 분산형 컴퓨팅 자원 공유 시스템(100)을 위한 블록체인에 의해 유지 및 관리되는 스마트 계약(예컨대, 분산형 컴퓨팅 자원 공유 시스템(100) 상에서의 하드웨어 및/또는 소프트웨어 자원의 공유 사용을 관리하는 스마트 계약 계정 등)에 관한 정보의 적어도 일부를 저장할 수 있다.
본 개시의 일 실시예에 의하면, 각 사용자는 자신의 사용자 계정 및 자원 공유 노드(130)를 이용해서, 소정의 프로토콜에 따른 쿼리(예컨대, 소정의 자원 검색을 위한 자원 관리 계정에 대한 쿼리)를 생성 및 처리할 수 있다. 본 개시의 일 실시예에 의하면, 자원 공유 노드(130)는, 소정의 사용자 계정에 관련된 쿼리를 스스로 처리하거나 블록체인 네트워크(110)를 통해 전송할 수 있다. 본 개시의 일 실시예에 의하면, 각 사용자 계정 및 자원 공유 노드(130)를 통해 생성되는 쿼리는, 예컨대 분산형 컴퓨팅 자원 공유 시스템(100) 상에서의 공유 사용에 제공된 하드웨어 및/또는 소프트웨어 자원의 상태(예컨대, 소정의 스펙을 갖춘 데이터 세트 자원이 분산형 컴퓨팅 자원 공유 시스템(100)의 공유 컴퓨팅 자원 영역들(120) 중에 존재하는가 등을 포함하며, 이로써 제한되는 것은 아님)의 조회를 위한 것일 뿐이며, 그 자체로서는 새로운 스마트 계약을 생성 또는 변경하는 것이 아닐 수 있다. 그러므로, 본 개시의 일 실시예에 의하면, 각 사용자 계정 및 자원 공유 노드(130)를 통해 생성되는 쿼리는, 분산형 컴퓨팅 자원 공유 시스템(100)의 블록체인 상에 저장되지는 않을 수 있다. 본 개시의 일 실시예에 의하면, 자원 공유 노드(130)는, 스스로 쿼리에 대한 응답을 생성하거나 블록체인 네트워크(110)로부터 그 쿼리에 대한 응답을 수신하고, 해당 쿼리에 대응하는 사용자(쿼리 요청자) 계정 상에 위 응답을 제공할 수 있다.
본 개시의 일 실시예에 의하면, 자원 공유 노드(130)는 또한 분산형 컴퓨팅 자원 공유 시스템(100) 상에서의 자원 공유에 따른 각 사용자에 대한 보상의 지급 및 수령에 따라 해당 분산형 컴퓨팅 자원 공유 시스템(100)과 연관된 사용자 계정(들)의 디지털 지갑을 유지 및 관리할 수 있다. 본 개시의 일 실시예에 의하면, 분산형 컴퓨팅 자원 공유 시스템(100) 상에서의 자원 공유에 따른 각 사용자(예컨대, 자원 제공자)에 대한 보상은, 분산형 컴퓨팅 자원 공유 시스템(100)과 연관된 소정의 디지털 화폐에 의해 이루어질 수 있다. 본 개시의 일 실시예에 의하면, 분산형 컴퓨팅 자원 공유 시스템(100) 상에서의 자원 공유에 따른 보상은, 각 자원 별로 사용량에 비례하여 이루어질 수 있다. 본 개시의 일 실시예에 의하면, 분산형 컴퓨팅 자원 공유 시스템(100) 상에서의 자원 공유에 따른 보상은, 이용된 각 자원에 대한 소정의 기준에 따른 평가(예컨대, 각 자원의 분산형 컴퓨팅 자원 공유 시스템(100)에 대한 기여도 등에 관한 평가)에 따라 이루어질 수 있다.
본 개시의 일 실시예에 의하면, 플랫폼 서버(140)는, 각각의 자원 공유 노드(130)로부터 분산형 컴퓨팅 자원 공유 시스템(100) 상에 제공된, 소정의 자원 이용 요청을 포함하는 트랜잭션을 수신할 수 있다. 본 개시의 일 실시예에 의하면, 플랫폼 서버(140)는, 소정의 자원(예컨대, GPU 자원)에 대한 이용 요청을 포함하는 트랜잭션을 수신하고, 수신된 트랜잭션을 처리하여, 해당 트랜잭션으로부터 획득된 정보에 따라, 소정의 알고리즘에 기초하여, 분산형 컴퓨팅 자원 공유 시스템(100)의 각 공유 컴퓨팅 자원 영역(120) 상에서 이용 가능한 자원들 가운데 적절한 자원을 할당할 수 있다.
본 개시의 일 실시예에 의하면, 플랫폼 서버(140)는, 자원 공유 노드(130)들이, 분산형 컴퓨팅 자원 공유 시스템(100) 상의 각 트랜잭션의 기록을 위한 블록을 생성(또는 채굴) 및/또는 검증하도록, 관리할 수 있다. 본 명세서에서는, 주로, 분산형 컴퓨팅 자원 공유 시스템(100)의 플랫폼 서버(140)가 블록의 생성/검증 및/또는 블록체인 분산 원장의 저장에 대한 제어 및 관리를 수행하는 것처럼 설명되어 있으나, 본 개시가 이로써 제한되는 것은 아니다. 본 개시의 다른 실시예에 의하면, 분산형 컴퓨팅 자원 공유 시스템(100) 상에서, 블록의 생성/검증과 블록체인 분산 원장의 저장 등은, 플랫폼 서버(140)에 의한 개입 없이, 블록체인 네트워크(110) 상의 미리 정해진 알고리즘에 따라 자동으로 이루어질 수 있음을 알아야 한다.
본 개시의 일 실시예에 의하면, 플랫폼 서버(140)는 또한 분산형 컴퓨팅 자원 공유 시스템(100) 상에 공유를 위하여 제공된 각 자원의 이용과 관련하여, 각 자원의 제공자에게 정당한 보상이 이루어지는 것을 돕도록 관리할 수 있다. 본 개시의 일 실시예에 의하면, 플랫폼 서버(140)는, 분산형 컴퓨팅 자원 공유 시스템(100) 상에 공유를 위하여 제공된 각 자원의 이용과 관련하여, 소정의 기준에 따라, 각 자원에 대한 평가(예컨대, 각 자원의 분산 자원 고유 시스템(100)에 대한 기여도 등에 관한 평가)를 수행하고, 그 평가 결과에 따라, 각 자원의 제공자에게 그에 부합하는 합당한 보상이 이루어지도록 관리할 수 있다.
도 2는, 본 개시의 일 실시예에 따른, 도 1의 자원 공유 노드(130)의 기능적 구성을 개략적으로 도시한 기능 블록도이다. 도시된 바에 의하면, 자원 공유 노드(130)는, 트랜잭션 처리/생성 모듈(202), 통신 모듈(204), 블록 생성/검증 모듈(206), 블록체인 분산원장 저장 모듈(208), 디지털 지갑 관리 모듈(210) 및 평가 관리 모듈(212)을 포함한다.
본 개시의 일 실시예에 의하면, 분산형 컴퓨팅 자원 공유 시스템(100)의 각 사용자(클라이언트)는, 분산형 컴퓨팅 자원 공유 시스템(100) 상에서 다른 사용자와의 공유 이용을 위하여 소정의 자원을 제공하고 이를 등록하고자 할 경우, 해당 자원 공유 노드(위 사용자 또는 클라이언트에 연관된 자원 공유 노드)(130)의 트랜잭션 처리/생성 모듈(202)를 통해, 그 자원 등록에 관한 트랜잭션을 생성할 수 있다. 본 개시의 일 실시예에 의하면, 분산형 컴퓨팅 자원 공유 시스템(100)의 사용자(클라이언트)는, 분산형 컴퓨팅 자원 공유 시스템(100) 상에 제공된 소정의 자원을 이용하고자 할 경우, 해당 자원 공유 노드(위 사용자 또는 클라이언트에 연관된 자원 공유 노드)(130)의 트랜잭션 처리/생성 모듈(202)을 통해, 그 자원 이용에 관한 트랜잭션을 생성할 수 있다. 본 개시의 일 실시예에 의하면, 분산형 컴퓨팅 자원 공유 시스템(100)의 각 사용자(클라이언트)는, 분산형 컴퓨팅 자원 공유 시스템(100) 상에서 다른 사용자와의 공유 이용 결과를 평가할 경우, 해당 자원 공유 노드(위 사용자 또는 클라이언트에 연관된 자원 공유 노드)(130)의 트랜잭션 처리/생성 모듈(202)를 통해, 그 자원 평가에 관한 트랜잭션을 생성할 수 있다.
본 개시의 일 실시예에 의하면, 자원 공유 노드(130)의 트랜잭션 처리/생성 모듈(202)은, 자원의 등록 및 이용에 관한 트랜잭션들 이외에도, 블록체인 네트워크(110)를 통하여 수행될 기타 다양한 트랜잭션(예컨대, 디지털 화폐의 거래 등을 포함하며, 이로써 제한되지 않음)을 생성할 수 있다.
본 개시의 일 실시예에 의하면, 각 자원 공유 노드(130)의 트랜잭션 처리/생성 모듈(202)은, 다른 자원 공유 노드(130)에 의해서 생성되어 블록체인 상에 배포된 트랜잭션을 수신 및 처리할 수 있다. 본 개시의 일 실시예에 의하면, 트랜잭션 처리/생성 모듈(202)은, 수신된 트랜잭션 상의 스마트 계약(예컨대, 공유 자원의 제공 및 이용 등에 관한 스마트 계약)에 관한 프로그램 코드를 실행할 수 있다. 본 개시의 일 실시예에 의하면, 트랜잭션 처리/생성 모듈(202)은, 수신된 트랜잭션 상의 스마트 계약에 관한 프로그램 코드를 실행함으로써, 수신된 트랜잭션 상의 정보에 기초하여 스마트 계약 계정(예컨대, 자원 관리 계정)의 정보를 갱신할 수 있다.
본 개시의 일 실시예에 의하면, 통신 모듈(204)은, 자원 공유 노드(130)가 블록체인 네트워크(110)와 소정의 프로토콜에 따라 통신할 수 있도록 동작할 수 있다. 본 개시의 일 실시예에 의하면, 통신 모듈(204)은, 트랜잭션 처리/생성 모듈(202)에 의해 생성된 블록체인 트랜잭션을 소정의 프로토콜에 따라 블록체인 네트워크(110) 상에 배포할 수 있고, 아울러 블록체인 네트워크(110)를 통하여 수신되는 각종 정보(예컨대, 다른 자원 공유 노드(130)에 의해 생성 및 배포된 트랜잭션, 플랫폼 서버(140) 등에 의한 각종 제어 신호 등)를 수신할 수 있다.
본 개시의 일 실시예에 의하면, 블록 생성/검증 모듈(206)은, 블록체인 네트워크(110)를 위한 블록을 생성하고, 소정의 시간 동안 분산형 컴퓨팅 자원 공유 시스템(100) 상에서 발생한 트랜잭션들을 모아서 적절한 헤더 정보와 함께 그 생성된 블록에 기록할 수 있다. 본 개시의 일 실시예에 의하면, 블록 생성/검증 모듈(206)은, 생성된 블록을 통신 모듈(204)을 통하여 블록체인 네트워크(110) 상에 공지할 수 있다. 본 개시의 일 실시예에 의하면, 블록 생성/검증 모듈(206)은, 블록체인 네트워크(110) 상에 공지된, 다른 자원 공유 노드(130)에 의하여 생성된 블록에 대한 검증을 수행할 수 있다.
본 개시의 일 실시예에 의하면, 블록체인 분산원장 저장 모듈(208)은, 플랫폼 서버(130)의 제어 하에 또는 분산형 컴퓨팅 자원 공유 시스템(100) 상의 미리 정해진 알고리즘에 따라, 분산형 컴퓨팅 자원 공유 시스템(100)을 위한 블록체인 데이터베이스(즉, 트랜잭션들의 이력을 모두 포함하는 분산 원장)의 적어도 일부를 저장할 수 있다. 본 개시의 일 실시예에 의하면, 블록체인 분산원장 저장 모듈(208)은, 또한, 플랫폼 서버(130)의 제어 하에 또는 분산형 컴퓨팅 자원 공유 시스템(100) 상의 미리 정해진 알고리즘에 따라, 블록체인 네트워크(110) 상의 블록체인에 의해 유지 및 관리되는 스마트 계약에 관한 정보(예컨대, 분산형 컴퓨팅 자원 공유 시스템(100) 상에서의 하드웨어 및/또는 소프트웨어 자원의 공유 사용에 관한 스마트 계약 계정에 관한 정보, 예컨대 각 자원의 위치, 형식, 제공자, 이용자, 이용 이력, 이용 빈도 등 각종 정보를 포함함)의 적어도 일부를 저장할 수 있으며, 다만 본 개시가 이로써 제한되는 것은 아니다.
본 개시의 일 실시예에 의하면, 디지털 지갑 관리 모듈(210)은, 자원 공유 노드(130)와 연관된 각 사용자 계정을 위한 지갑 정보를 저장 및 관리할 수 있다. 본 개시의 일 실시예에 의하면, 디지털 지갑 관리 모듈(210)은, 분산형 컴퓨팅 자원 공유 시스템(100) 상에서 지원되는 디지털 화폐에 관한 거래, 예컨대 분산형 컴퓨팅 자원 공유 시스템(100) 상에서의 자원 공유에 따른 보상의 지급 및 수령이나 기타 해당 디지털 화폐에 관한 거래의 정보를 반영하여, 해당 자원 공유 노드(130) 상의 각 사용자 계정을 위한 지갑 정보를 갱신할 수 있다.
본 개시의 일 실시예에 의하면, 평가 관리 모듈(212)은, 자원 공유 노드(130)가 제공한 자원의 양과 질을 평가 및 관리할 수 있다. 본 개시의 일 실시예에 의하면, 평가 관리 모듈(212)은, 분산형 컴퓨팅 자원 공유 시스템(100) 상에서 다른 사용자와의 공유 이용 결과를 평가할 수 있다.
본 개시의 일 실시예에 의하면, 평가 관리 모듈(212)은 자원 공유 노드(130)가 등록 또는 이용한 자원의 양과 질을 평가하고 이에 따라 보상을 제공할 수 있다. 본 개시의 일 실시예에 의하면, 평가 관리 모듈(212)은 해당 스마트 계약 계정에 연관되어 저장되어 있는 상기 공유 컴퓨팅 자원에 대한 평가를 기초로 상기 공유 컴퓨팅 자원의 등록 또는 이용에 따른 보상을 제공할 수 있다.
본 개시의 일 실시예에 의하면, 평가 관리 모듈(212)은, 트랜잭션 처리 모듈(202)에서 실행한 프로그램 코드에 대한 평가를 수행할 수 있다. 본 개시의 일 실시예에 의하면, 평가 관리 모듈(212)은, 디지털 지갑 관리 모듈(210)에 저장된 토큰의 수량에 따라 평가의 가중치를 부여할 수 있다. 본 개시의 일 실시예에 의하면, 평가 관리 모듈(212)은 자원 공유 노드(130)와 연관된 각 사용자 계정의 디지털 지갑 관리 모듈(210)에 저장된 지갑 정보를 반영하여 평가 결과에 가중치를 부여할 수 있다. 예컨대, 해당 계정의 디지털 지갑 관리 모듈(210)에 저장된 토큰의 수량이 많을수록 수량에 비례하여 높은 평가를 받을 수 있다.
본 개시의 일 실시예에 의하면, 평가 관리 모듈(212)은 연관된 사용자 계정에 대한 등급을 분류하도록 더 구성되며, 상기 등급은 상기 사용자 계정에서 제공한 공유 컴퓨팅 자원의 총량 및 상기 사용자 계정에서 제공한 공유 컴퓨팅 자원의 평가를 기초로 분류될 수 있다. 본 개시의 일 실시예에 의하면, 평가 관리 모듈(212)은 연관된 사용자 계정에서 제공한 공유 컴퓨팅 자원의 평가가 긍정적인 경우 등급을 상향 조절하고, 부정적인 경우 등급을 하향 조절하여 다수 의견에 가중치를 부여하도록 연관된 사용자 계정에 대한 등급을 분류할 수 있다.
도 3은, 본 개시의 일 실시예에 따른, 도 2의 자원 공유 노드(130)에 포함된 블록체인 분산원장 저장 모듈(208)에 저장될 수 있는, 블록체인 및 그에 포함된 각 블록(300)의 구성을 개념적으로 도시한 도면이다. 도시된 바에 의하면, 블록체인은 복수의 블록을 포함하며, 각 블록(300)은 블록 헤더(302)와 복수의 트랜잭션 정보(304a-304n)를 포함할 수 있다.
본 개시의 일 실시예에 의하면, 블록 헤더(302)는, 이전 블록 헤더의 해시(hash) 값, 넌스(nonce) 값, 해당 블록(300)에 포함될 트랜잭션 정보들(304a-304n)의 머클루트, 블록(300)이 생성된 시간을 나타내는 타임스탬프, 해당 블록(300)의 채굴 난이도 등의 값을 포함할 수 있다. 본 개시의 일 실시예에 의하면, 블록(300)에 포함된 복수의 트랜잭션 정보(304a-304n)는, 소정의 시간 간격 동안, 도 1의 각 자원 공유 노드(130)로부터 분산형 컴퓨팅 자원 공유 시스템(100) 상에 배포된 복수의 트랜잭션 정보일 수 있다. 본 개시의 일 실시예에 의하면, 블록(300)의 트랜잭션 정보(304a-304n)는, 도 1의 자원 공유 노드(130)에 의해서 생성된, 분산형 컴퓨팅 자원 공유 시스템(100) 상에 공유 자원을 제공(즉, 등록)하기 위한 트랜잭션 정보일 수 있다. 본 개시의 일 실시예에 의하면, 트랜잭션 정보(304a-304n)은, 자원 공유 노드(130)에 의해서 생성된, 분산형 컴퓨팅 자원 공유 시스템(100) 상의 공유 자원을 이용하기 위한 트랜잭션 정보일 수 있다.
도 4는, 본 개시의 일 실시예에 따른, 도 3의 블록(300)에 포함될 수 있는 트랜잭션 정보(304)의 일예로서, 분산형 컴퓨팅 자원 공유 시스템(100) 상에 공유 자원의 제공하기 위한 트랜잭션 정보를 예시적으로 도시한 도면이다. 도시된 바에 의하면, 트랜잭션 정보(304)는, 자원 관리 계정(402), 자원 제공자 계정(404), 자원 등록 실행 명령(406), 및 자원 정보(408)를 포함할 수 있다.
본 개시의 일 실시예에 의하면, 트랜잭션 정보(304)에 포함된 자원 관리 계정(402)은, 예컨대 분산형 컴퓨팅 자원 공유 시스템(100) 상의 공유 자원의 관리를 위한 스마트 계약 계정의 주소일 수 있다. 본 개시의 일 실시예에 의하면, 트랜잭션 정보(304)에 포함된 자원 제공자 계정(404)은, 해당 공유 자원의 제공을 위한 트랜잭션 생성을 야기한, 사용자(클라이언트)의 계정일 수 있다. 본 개시의 일 실시예에 의하면, 공유 자원의 제공을 위한 트랜잭션 정보(304)에 포함된 자원 등록 실행 명령은, 예컨대 ERC20에 따른 스마트 계약을 위한 프로그램 코드일 수 있으며, 자원 공유 노드(130)에 의해 실행될 경우, 자원 제공자 계정(404)에 의해 공유 제공된 자원의 자원 정보(408)가 자원 관리 계정(402)과 연관하여 저장되도록 할 수 있다. 본 개시의 일 실시예에 의하면, 자원 정보(408)는, 예컨대 해당 자원의 유형, 속성, 위치 등을 비롯한 다양한 정보를 포함할 수 있으며, 본 개시가 이로써 제한되는 것은 아니다.
도 5는, 본 개시의 일 실시예에 따른, 도 1의 자원 공유 노드(130)에 의해서 생성된, 분산형 컴퓨팅 자원 공유 시스템(100) 상에서 소정의 공유 자원을 검색하기 위한 쿼리(500)를 예시적으로 도시한 도면이다. 도시된 바에 의하면, 쿼리(500)는, 자원 관리 계정(502), 자원 검색 실행 명령(504), 및 요청자 계정(506)을 포함할 수 있다.
본 개시의 일 실시예에 의하면, 쿼리(500)에 포함된 자원 관리 계정(502)은, 전술한 바와 같이, 분산형 컴퓨팅 자원 공유 시스템(100) 상의 공유 자원의 관리를 위한 스마트 계약 계정의 주소일 수 있다. 본 개시의 일 실시예에 의하면, 쿼리(500)에 포함된 자원 검색 실행 명령(504)은, 예컨대 ERC20에 따른 프로그램 코드일 수 있으며, 자원 공유 노드(130)에 의해 실행될 경우, 소정의 규격을 갖춘 자원에 대한 검색을 수행하고 그 검색에 대한 응답을 요청자 계정(506)으로 제공하도록 하는 명령일 수 있다. 본 개시의 일 실시예에 의하면, 쿼리(500)에 포함된 요청자 계정(506)은, 해당 쿼리가 생성되도록 한 사용자(클라이언트) 계정일 수 있다. 전술한 바와 같이, 쿼리(500)는, 본 개시의 일 실시예에 의하면, 예컨대 분산형 컴퓨팅 자원 공유 시스템(100) 상에서의 공유 사용에 제공된 하드웨어 및/또는 소프트웨어 자원의 상태의 조회를 위한 것일 뿐, 그 자체로서는 새로운 스마트 계약을 생성 또는 변경하는 것이 아닐 수 있다. 그러므로, 본 개시의 일 실시예에 의하면, 쿼리(500)는, 각 트랜잭션 정보(304)와 달리, 분산형 컴퓨팅 자원 공유 시스템(100)의 블록체인 상에 저장되지는 않을 수 있다.
도 6은, 본 개시의 일 실시예에 따른, 도 3의 블록(300)에 포함된 트랜잭션 정보(304)의 일예로서, 분산형 컴퓨팅 자원 공유 시스템(100) 상의 공유 자원의 이용을 요청하기 위한 트랜잭션 정보를 예시적으로 도시한 도면이다. 도시된 바에 의하면, 트랜잭션 정보(304)는, 자원 관리 계정(602), 자원 이용자 계정(604), 자원 이용 실행 명령(606), 및 이용 자원 정보(608)를 포함할 수 있다.
본 개시의 일 실시예에 의하면, 트랜잭션 정보(304)에 포함된 자원 관리 계정(602)은, 예컨대 분산형 컴퓨팅 자원 공유 시스템(100) 상의 공유 자원의 관리를 위한 스마트 계약 계정의 주소일 수 있다. 본 개시의 일 실시예에 의하면, 트랜잭션 정보(304)에 포함된 자원 이용자 계정(604)은, 해당 공유 자원의 이용 요청을 위한 트랜잭션의 생성을 야기한, 사용자(클라이언트)의 계정일 수 있다. 본 개시의 일 실시예에 의하면, 공유 자원의 이용 요청을 위한 트랜잭션 정보(304)에 포함된 자원 이용 실행 명령은, 예컨대 ERC20에 따른 스마트 계약을 위한 프로그램 코드일 수 있으며, 자원 공유 노드(130)에 의해 실행될 경우, 해당 요청에 따라 정해진 자원이 자원 이용자 계정(404)과 연관되어 이용(및 이용에 관한 정보가 저장)되도록 할 수 있다. 본 개시의 일 실시예에 의하면, 자원 정보(408)는, 해당 자원의 유형, 속성, 위치, 이용량 등을 비롯한 다양한 정보를 포함할 수 있으며, 본 개시가 이로써 제한되는 것은 아니다.
도 7은, 본 개시의 일 실시예에 따른, 도 1의 플랫폼 서버(140)의 기능적 구성을 개략적으로 도시한 기능 블록도이다. 도시된 바에 의하면, 플랫폼 서버(140)는, 통신 모듈(702), 공유 자원 분배 모듈(704), 블록 생성/검증 관리 모듈(706), 및 평가/보상 모듈(708)을 포함한다.
본 개시의 일 실시예에 의하면, 통신 모듈(702)은, 플랫폼 서버(140)가 블록체인 네트워크(110)와 소정의 프로토콜에 따라 통신할 수 있도록 동작할 수 있다. 본 개시의 일 실시예에 의하면, 통신 모듈(702)은, 블록체인 네트워크(110)를 통하여 각 자원 공유 노드들(130)로부터 배포된 각종 트랜잭션 등을 수신할 수 있다.
본 개시의 일 실시예에 의하면, 소정의 자원 이용 요청을 포함하는 트랜잭션이 수신된 경우, 공유 자원 분배 모듈(704)은, 그 수신된 트랜잭션으로부터 획득된 정보에 따라, 소정의 알고리즘에 기초하여, 분산형 컴퓨팅 자원 공유 시스템(100) 상에서 이용 가능한 자원들 가운데 적절한 자원을 해당 요청에 할당할 수 있다. 본 개시의 일 실시예에 의하면, 공유 자원 분배 모듈(704)은, 수신된 트랜잭션 상의 자원 이용 요청과 그에 대응하여 이루어진 자원의 할당에 관한 정보를 반영하여, 자원 관리 계정에 연관된 해당 자원에 관한 정보가 갱신되도록 할 수 있다. 본 개시의 일 실시예에 의하면, 공유 자원 분배 모듈(704)은 또한 분산형 컴퓨팅 자원 공유 시스템(100)을 위한 블록체인 데이터베이스(즉, 분산 원장)의 적어도 일부를 저장하도록 각 자원 공유 노드(130)를 제어/관리할 수 있으며, 다만 본 개시가 이로써 제한되는 것은 아니다.
본 개시의 일 실시예에 의하면, 블록 생성 관리 모듈(706)은, 소정의 기준에 따라, 분산형 컴퓨팅 자원 공유 시스템(100) 상의 자원 공유 노드(130)들 중에, 각 트랜잭션의 기록을 위한 블록을 생성(또는 채굴) 또는 검증할 노드를 선택하고 그에 관한 지시를 내릴 수 있으며, 다만 본 개시가 이로써 제한되는 것은 아니다. 본 개시의 다른 실시예에 의하면, 분산형 컴퓨팅 자원 공유 시스템(100) 상에서의 각 블록의 생성 및 검증은 블록체인 네트워크(110) 상에서 미리 정해진 알고리즘에 따라 플랫폼 서버(140)의 개입 없이 자동으로 행하여 질 수 있음을 알아야 한다.
본 개시의 일 실시예에 의하면, 평가/보상 모듈(708)은, 분산형 컴퓨팅 자원 공유 시스템(100) 상에 공유를 위하여 제공된 각 자원과 관련하여, 소정의 기준에 따라 각 자원에 대한 평가(예컨대, 각 자원의 분산형 컴퓨팅 자원 공유 시스템(100)에 대한 기여도 등에 관한 평가)를 수행할 수 있다. 본 개시의 일 실시예에 의하면, 평가/보상 모듈(708)은, 위 평가 결과에 따라, 각 자원의 제공자에게 그에 부합하는 합당한 보상이 이루어지도록 관리할 수 있다. 본 명세서에서는, 분산형 컴퓨팅 자원 공유 시스템(100)이 플랫폼 서버(140)를 포함하고, 플랫폼 서버(140)를 통해 공유 자원의 할당(분배)과 블록 생성/검증의 관리를 수행하는 것으로 설명되었으나, 본 개시가 이로써 제한되는 것은 아니다. 본 개시의 다른 실시예에 의하면, 분산형 컴퓨팅 자원 공유 시스템(100)은 플랫폼 서버(140)를 포함하지 않을 수 있고, 공유 자원의 이용 요청에 따른 자원의 할당이나 블록의 생성 및 검증의 관리가 분산형 컴퓨팅 자원 공유 시스템(100) 상에 미리 정해진 알고리즘에 따라 자동으로 수행될 수도 있음을 알아야 한다.
도 8은, 본 개시의 일 실시예에 따른, 도 1의 자원 공유 노드(130)를 통해 분산형 컴퓨팅 자원 공유 시스템(100) 상으로 공유 자원의 제공이 이루어지는 과정의 일 예를 개략적으로 도시한 동작 흐름도이다.
먼저, 단계(802)에서, 자원 공유 노드(130) 상의 자원 제공자(예컨대, 자신이 보유한 소정의 GPU 자원, 저장 유닛, 데이터 세트 또는 학습 모델 등의 자원이 분산형 컴퓨팅 자원 공유 시스템(100) 상에서 공유 이용될 수 있도록 제공하려는 사용자)가 해당 자원 공유 노드(130)를 통하여, 자원의 공유 제공을 위한 트랜잭션(즉, 자원 제공 등록 트랜잭션)을 생성할 수 있다. 그런 다음, 단계(804)에서는, 그 생성된 트랜잭션이 블록체인 네트워크(110) 상에 배포될 수 있다. 본 개시의 일 실시예에 의하면, 블록체인 네트워크(110) 상에 배포된 트랜잭션은 플랫폼 서버(140)와 기타 다른 자원 공유 노드들(130) 모두에 의해 수신될 수 있다. 본 개시의 일 실시예에 의하면, 자원 제공 등록 트랜잭션을 수신한 블록체인(예컨대, 블록체인 상의 자원 공유 노드들(130))은 그 수신된 트랜잭션을 처리하고, 새로이 생성된 블록에 자원 제공 등록 트랜잭션을 기록할 수 있다. 본 개시의 일 실시예에 의하면, 단계(806)에서, 블록체인(예컨대, 블록체인 상의 각 자원 공유 노드들(130))에 의해, 트랜잭션이 처리되고, 그에 따라 자원 관리 계정이 갱신(즉, 해당 자원의 등록)이 수행될 수 있다.
도 9는, 본 개시의 일 실시예에 따른, 분산형 컴퓨팅 자원 공유 시스템(100) 상에서 수행되는, 데이터 자원의 공유 요청, 제공 및 이용의 과정의 일 예를 개략적으로 도시한 동작 흐름도이다.
도시된 바에 의하면, 먼저 단계(902)에서, 자원 공유 노드(130) 상의 자원 요청자(예컨대, 머신러닝을 위하여 소정의 데이터 세트를 활용하기 원하는 개발자로서의 사용자)가 해당 자원 공유 노드(130)를 통해 자신이 원하는 자원(예컨대, 소정의 데이터 세트)에 관한 이용 요청 트랜잭션(예컨대, 데이터 이용 요청 트랜잭션)을 생성할 수 있다. 본 개시의 일 실시예에 의하면, 소정의 데이터 세트에 관한 이용 요청 트랜잭션은, 요청되는 데이터 세트의 구체적인 스펙(예컨대, 데이터 내용, 포맷 등)을 포함할 수 있다. 그런 다음, 단계(904)에서 그 생성된 트랜잭션이 블록체인 네트워크(110) 상에 배포될 수 있다. 본 개시의 일 실시예에 의하면, 블록체인 네트워크(110) 상에 배포된 트랜잭션은 플랫폼 서버(140)와 기타 다른 자원 공유 노드들(130) 모두에 의해 수신될 수 있다.
단계(906)에서는, 전술한 데이터 이용 요청 트랜잭션을 수신한 자원 공유 노드들(130) 가운데 하나의 자원 공유 노드가 그 트랜잭션의 요구에 부합하는 자원, 예컨대 데이터 세트를 생성할 수 있다. 그런 다음, 단계(908)에서 해당 자원 공유 노드는, 그 생성된 데이터 세트에 관한 공유 제공 트랜잭션을 생성하고 블록체인 네트워크(110)를 통해 이를 배포할 수 있다. 단계(910)에서는, 단계(908)에서 배포된 데이터 공유 제공 트랜잭션이 블록체인 상에서 처리되고 해당 데이터 자원이 자원 관리 계정과 연관되어 등록 및 저장될 수 있다. 단계(906) 내지 단계(910)의 과정은, 전술한 도 8에서의 동작 흐름에 대응하며 그에 관한 개시 내용을 참조할 수 있을 것이다.
그런 다음, 단계(912)에서는, 앞서 수신된 데이터 이용 요청 트랜잭션(904)에 대응하여, 요청된 자원(예컨대, 소정의 데이터 세트 자원)이 해당 요청자를 위하여 할당되고, 해당 자원의 할당 및 이용에 관한 사항이 자원 관리 계정과 연관되어 저장될 수 있다. 이어서, 단계(914)에서는, 자원 요청자를 위하여, 해당 자원의 이용이 이루어질 수 있다.
본 개시의 일 실시예에 의하면, 자원 이용 요청 트랜잭션에 부합하는 자원이 소정의 데이터 세트이고, 그 데이터 세트가 분산형 컴퓨팅 자원 공유 시스템(100) 상의 복수 위치의 저장 유닛(예컨대, 복수의 공유 컴퓨팅 자원 영역들(120))에 분산 저장된 경우, 자원 요청자를 위하여 해당 데이터 세트의 각 부분이 위 복수 위치의 저장 유닛(예컨대, 복수의 공유 컴퓨팅 자원 영역들(120))으로부터 병렬 전송될 수 있고, 이로써 대용량 데이터의 전송에 따른 전송 속도의 문제가 해결될 수 있다. 본 개시의 일 실시예에 의하면, 복수의 저장 유닛들 중 어느 저장 유닛으로부터 데이터 세트의 어떤 부분이 전송될 것인지의 구체적인 사항은, 예컨대 플랫폼 서버(140)의 공유 자원 분배 모듈(704)에 의해, 자원들 간의 거리(예컨대 연산에 관여하는 하드웨어 자원들과 연산에 이용될 데이터 세트의 저장 유닛 간의 거리 등) 또는 통신 시간 등을 고려하여 전체 시스템의 효율을 최대화할 수 있는 방향으로 수행될 수 있음을 알아야 한다(다만, 본 개시가 이로써 제한되는 것은 아님). 본 개시의 일 실시예에 의하면, 자원 이용 요청 트랜잭션에 부합하는 자원이 소정의 데이터 세트이고, 그 데이터 세트가 분산형 컴퓨팅 자원 공유 시스템(100) 상의 하나의 저장 유닛(예컨대, 하나의 공유 컴퓨팅 자원 영역(120))에 저장된 경우, 자원 요청자를 위한 머신러닝 연산이, 해당 저장 유닛과 같은 위치(즉, 그 저장 유닛이 속한 공유 컴퓨팅 자원 영역(120))의 GPU에 의해 수행될 수 있고, 이로써 대용량 데이터의 전송에 따른 전송 속도의 문제가 해결될 수 있다.
단계(914)에서, 자원 요청자에 의한 자원의 이용이 이루어지고 나면, 단계(916)에서는 자원 요청자(의 디지털 지갑)로부터 해당 자원의 이용에 대한 정산이 이루어지고 아울러 해당 자원의 제공자에 대한 정당한 보상이 이루어질 수 있다. 본 개시의 일 실시예에 의하면, 단계(916)에서 수행되는 자원 이용에 대한 정산은, 자원 이용 요청 트랜잭션 상에 포함된 스마트 계약을 통하여 자동으로 이루어질 수 있다. 본 개시의 일 실시예에 의하면, 자원 이용 요청 트랜잭션 상의 스마트 계약을 통한 정산은, 소정의 사용료가 자원 요청자(이용자)의 디지털 지갑으로부터 플랫폼 서버(140)에 제공됨으로써 이루어질 수 있다(다만 본 개시가 이로써 제한되는 것은 아님). 본 개시의 일 실시예에 의하면, 각 자원 요청자(이용자)로부터 수신된 사용료 중 일부는, 플랫폼 서버(140)에 의해서, 분산형 컴퓨팅 자원 공유 시스템(100)에 제공된 각 자원의 자원 제공자에 대해 제공 자원의 양에 따라 분배되는 형태로 일부 정산될 수 있다(다만 본 개시가 이로써 제한되는 것은 아님). 본 개시의 일 실시예에 의하면, 각 자원 요청자(이용자)로부터 수신된 사용료 중 일부는, 플랫폼 서버(140)에 의해서, 그 제공된 자원에 대한 평가(예컨대, 해당 자원의 전체 분산형 컴퓨팅 자원 공유 시스템(100)에 대한 기여도 평가) 등에 기초하여, 각 자원의 자원 제공자에 대해 차등 분배되는 형태로 일부 정산될 수 있다(다만 본 개시가 이로써 제한되는 것은 아님). 본 개시의 일 실시예에 의하면, 자원 공유 노드(평가자: 130)는, 자원 공유 노드(제공자: 130)가 제공한 자원의 양과 질을 평가 및 관리할 수 있다. 본 개시의 일 실시예에 의하면, 자원 공유 노드(평가자: 130)는 분산형 컴퓨팅 자원 공유 시스템(100) 상에서 다른 사용자와의 공유 이용 결과를 평가할 수 있다. 본 개시의 일 실시예에 의하면, 자원 공유 노드(평가자: 130)는 해당 자원을 요청하여 이용한 자원 공유 노드(요청자: 130)일 수 있고, 또는 자원 공유 노드(평가자:130)는 해당 자원을 요청하거나 이용하지는 않지만 자원 공유 자원에 대한 평가를 주로 수행하는 노드일 수 있으나 본 발명이 이에 한정되는 것은 아니다.
본 개시의 일 실시예에 의하면, 자원 공유 노드(평가자:130)는 자원 공유 노드(130)가 등록 또는 이용한 자원의 양과 질을 평가하고 이에 따라 보상을 제공할 수 있다. 본 개시의 일 실시예에 의하면, 자원 공유 노드(평가자:130)는 해당 스마트 계약 계정에 연관되어 저장되어 있는 상기 공유 컴퓨팅 자원에 대한 평가를 기초로 상기 공유 컴퓨팅 자원의 등록 또는 이용에 따른 보상을 제공할 수 있다.
본 개시의 일 실시예에 의하면, 자원 공유 노드(평가자:130)는 자원 공유 노드(요청자)가 실행한 프로그램 코드에 대한 평가를 수행할 수 있다. 본 개시의 일 실시예에 의하면, 자원 공유 노드(평가자: 130)는, 디지털 지갑 관리 모듈(210)에 저장된 토큰의 수량에 따라 평가의 가중치를 부여할 수 있다. 본 개시의 일 실시예에 의하면, 자원 공유 노드(평가자: 130)는 해당 자원의 제공자의 디지털 지갑 관리 모듈(210)에 저장된 지갑 정보를 반영하여 평가 결과에 가중치를 부여할 수 있다. 예컨대, 해당 계정의 디지털 지갑 관리 모듈(210)에 저장된 토큰의 수량이 많을수록 수량에 비례하여 높은 평가를 받을 수 있다.
본 개시의 일 실시예에 의하면, 자원 공유 노드(평가자:130)는 해당 자원의 제공자의 연관된 사용자 계정에 대한 등급을 분류하도록 더 구성되며, 상기 등급은 상기 사용자 계정에서 제공한 공유 컴퓨팅 자원의 총량 및 상기 사용자 계정에서 제공한 공유 컴퓨팅 자원의 평가를 기초로 분류될 수 있다. 본 개시의 일 실시예에 의하면, 자원 공유 노드(평가자:130)는 해당 자원의 제공자의 연관된 사용자 계정에서 제공한 공유 컴퓨팅 자원의 평가가 긍정적인 경우 등급을 상향 조절하고, 부정적인 경우 등급을 하향 조절하여 다수 의견에 가중치를 부여하도록 연관된 사용자 계정에 대한 등급을 분류할 수 있다.
본 명세서에서는, 주로, 공유되는 자원의 분배 및 할당, 블록의 생성 및 저장, 자원 이용에 정산 및 보상 등이 플랫폼 서버(140)의 개입 하에 이루어지는 것으로 설명되었으나, 본 개시가 이로써 제한되는 것은 아니다. 본 개시의 다른 실시예에 의하면, 분산형 컴퓨팅 자원 공유 시스템(100) 상에서 미리 정의된 알고리즘에 따라 그러한 동작이 플랫폼 서버(140)의 개입 없이 이루어질 수도 있음을 알아야 할 것이다.
당업자라면 알 수 있듯이, 본 개시가 본 명세서에 기술된 예시에 한정되는 것이 아니라 본 개시의 범주를 벗어나지 않는 범위 내에서 다양하게 변형, 재구성 및 대체될 수 있다. 본 명세서에 기술된 다양한 기술들은 하드웨어 또는 소프트웨어, 또는 하드웨어와 소프트웨어의 조합에 의해 구현될 수 있음을 알아야 한다.
본 개시의 일 실시예에 따른 컴퓨터 프로그램은, 컴퓨터 프로세서 등에 의해 판독 가능한 저장 매체, 예컨대 EPROM, EEPROM, 플래시 메모리장치와 같은 비휘발성 메모리, 내장형 하드 디스크와 착탈식 디스크 같은 자기 디스크, 광자기 디스크, 및 CDROM 디스크 등을 포함한 다양한 유형의 저장 매체에 저장된 형태로 구현될 수 있다. 또한, 프로그램 코드(들)는 어셈블리어나 기계어로 구현될 수 있다. 본 개시의 진정한 사상 및 범주에 속하는 모든 변형 및 변경을 이하의 특허청구범위에 의해 모두 포괄하고자 한다.

Claims (10)

  1. 블록체인에 기반한, 자원 공유에 따른 보상 제공하는 분산형 컴퓨팅 자원 공유 시스템의 블록체인 네트워크에 접속된 각 컴퓨팅 장치로서,
    상기 블록체인은 복수의 사용자 계정과 공유 컴퓨팅 자원의 관리를 위한 스마트 계약 계정을 포함하고,
    상기 복수의 사용자 계정 각각은, 다른 사용자와의 공유를 위해 상기 공유 컴퓨팅 자원을 상기 분산형 컴퓨팅 자원 공유 시스템 상에 제공한 제공자 계정, 상기 공유 컴퓨팅 자원을 이용하려는 이용자 계정, 및 상기 공유 컴퓨팅 자원을 검수하는 검수자 계정 중 하나이고,
    상기 공유 컴퓨팅 자원은 블록체인 안에서 거래될 수 있는 자원 - 상기 자원은 머신러닝에 이용될 수 있는, 처리장치 유닛, 저장 유닛, 데이터 세트, 및 학습 모델 중 적어도 하나를 포함함 - 이며
    상기 컴퓨팅 장치는
    상기 블록체인 상에 배포된 트랜잭션을 수신하고 상기 수신된 트랜잭션에 포함된 프로그램 코드를 실행하도록 구성된 트랜잭션 처리 모듈; 및
    상기 트랜잭션 처리 모듈에서 실행한 프로그램 코드에 대한 평가를 수행하도록 구성된 평가 관리 모듈
    을 포함하고,
    상기 트랜잭션은, 상기 스마트 계약 계정의 식별자와, 상기 제공자 계정 또는 상기 이용자 계정의 식별자를 포함하고, 상기 공유 컴퓨팅 자원의 등록 또는 이용에 관한 정보를 포함하며,
    상기 트랜잭션 처리 모듈은, 상기 프로그램 코드를 실행하는 경우, 상기 트랜잭션에 포함된 상기 공유 컴퓨팅 자원의 등록 또는 이용에 관한 정보, 및 상기 평가 관리 모듈에서 수행한 상기 공유 컴퓨팅 자원에 대한 평가가 상기 스마트 계약 계정에 연관되어 저장되며,
    상기 컴퓨팅 장치는, 상기 복수의 사용자 계정 중 적어도 하나의 사용자 계정을 위한 디지털 지갑 관리 모듈을 더 포함하고,
    상기 평가 관리 모듈은 상기 디지털 지갑 관리 모듈에 저장된 토큰의 수량에 따라 평가의 가중치를 부여하도록 구성되며,
    상기 평가 관리 모듈은 연관된 사용자 계정에 대한 등급을 분류하도록 더 구성되며, 상기 등급은 상기 사용자 계정에서 제공한 공유 컴퓨팅 자원의 총량 및 상기 사용자 계정에서 제공한 공유 컴퓨팅 자원의 평가를 기초로 분류되는 컴퓨팅 장치.
  2. 삭제
  3. 삭제
  4. 제1항에 있어서,
    상기 평가 관리 모듈은 상기 블록체인 상에 배포된 트랜잭션을 수신하고 상기 트랜잭션에 포함된 프로그램 코드에 대한 평가를 수행하도록 더 구성되는 컴퓨팅 장치.
  5. 삭제
  6. 제1항에 있어서,
    상기 등급은 상기 사용자 계정에서 제공한 공유 컴퓨팅 자원의 평가가 긍정적인 경우 등급을 상향 조절하고, 부정적인 경우 등급을 하향 조절하여 다수 의견에 가중치를 부여하도록 분류되는 컴퓨팅 장치.
  7. 제1항에 있어서,
    상기 컴퓨팅 장치는, 상기 스마트 계약 계정에 연관되어 저장되어 있는 상기 공유 컴퓨팅 자원에 대한 평가를 기초로 상기 공유 컴퓨팅 자원의 등록 또는 이용에 따른 보상을 받는 컴퓨팅 장치.
  8. 스마트 계약을 지원하는 블록체인에 기반한, 분산형 컴퓨팅 자원 공유 시스템으로서,
    상기 블록체인을 지원하는 통신망; 및
    상기 통신망을 통해 서로 접속된 복수의 노드를 포함하고,
    상기 복수의 노드 각각은 제1항, 제4항 및 제6항 중 어느 하나의 항에 따른 컴퓨팅 장치인, 분산형 컴퓨팅 자원 공유 시스템.
  9. 제8항에 있어서,
    상기 통신망을 통해 상기 복수의 노드들과 접속된 플랫폼 서버를 더 포함하고,
    상기 플랫폼 서버는,
    상기 통신망을 통해, 상기 복수의 노드들 중 하나의 노드로부터 소정의 컴퓨팅 자원 공유에 관련된 정보를 포함하는 트랜잭션을 수신하도록 구성된 통신 모듈; 및
    상기 컴퓨팅 자원 공유 시스템 상의 상기 자원 공유에 관련된 평가 및 보상을 처리하도록 구성된 평가 및 보상 모듈
    을 포함하고,
    상기 평가 및 보상 모듈은 상기 트랜잭션에 포함된 상기 스마트 계약 계정의 식별자와, 상기 제공자 계정 또는 상기 이용자 계정의 식별자, 상기 공유 컴퓨팅 자원의 등록 또는 이용에 관한 정보공유 컴퓨팅 자원의 등록 또는 이용에 관한 정보 및 공유 컴퓨팅 자원에 대한 평가를 기초로 상기 제공자 계정에 보상을 지급하도록 구성되는, 분산형 컴퓨팅 자원 공유 시스템.
  10. 삭제
KR1020180113587A 2018-09-21 2018-09-21 블록체인에 기반한, 자원 공유에 따른 보상 제공하는 분산형 컴퓨팅 자원 공유 시스템 및 컴퓨팅 장치 KR102254809B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180113587A KR102254809B1 (ko) 2018-09-21 2018-09-21 블록체인에 기반한, 자원 공유에 따른 보상 제공하는 분산형 컴퓨팅 자원 공유 시스템 및 컴퓨팅 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180113587A KR102254809B1 (ko) 2018-09-21 2018-09-21 블록체인에 기반한, 자원 공유에 따른 보상 제공하는 분산형 컴퓨팅 자원 공유 시스템 및 컴퓨팅 장치

Publications (2)

Publication Number Publication Date
KR20200034171A KR20200034171A (ko) 2020-03-31
KR102254809B1 true KR102254809B1 (ko) 2021-05-24

Family

ID=70002371

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180113587A KR102254809B1 (ko) 2018-09-21 2018-09-21 블록체인에 기반한, 자원 공유에 따른 보상 제공하는 분산형 컴퓨팅 자원 공유 시스템 및 컴퓨팅 장치

Country Status (1)

Country Link
KR (1) KR102254809B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230006321A (ko) * 2021-07-02 2023-01-10 김한보 클라우드 기반 가상화폐 채굴 서비스 제공 시스템

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112329942A (zh) * 2020-11-06 2021-02-05 联想(北京)有限公司 一种基于区块链的信息处理方法、装置及设备
KR102498336B1 (ko) * 2020-12-04 2023-02-09 충북대학교 산학협력단 블록체인에 기반하여 유저들의 평판을 관리하는 방법 및 시스템
KR102271371B1 (ko) * 2020-12-24 2021-06-30 전남대학교산학협력단 네트워크 트래픽 절감을 위한 모바일 엣지 컴퓨팅 기반 슈퍼-레졸루션 스트리밍 영상 전송 시스템
CN112637822B (zh) * 2020-12-26 2023-01-20 北京工业大学 一种基于区块链的蜂窝网络安全交易平台
CN113377974A (zh) * 2021-05-21 2021-09-10 浙江泰科数联信息技术有限公司 一种基于区块链的资源审核方法及系统
CN113496350A (zh) * 2021-06-11 2021-10-12 成都金融梦工场投资管理有限公司 一种基于区块链面向多任务发布者的众包实现方法
KR102538350B1 (ko) * 2021-12-24 2023-05-30 한국항공대학교산학협력단 인공지능 문제 해결을 병행하는 작업증명 방법 및 시스템
KR102582354B1 (ko) 2022-11-16 2023-09-25 주식회사 피씨엔 인공지능 기반 제조 환경 맞춤형 결함 탐지 모델 생성 및 배포 방법 및 장치
KR102592569B1 (ko) * 2022-11-30 2023-10-23 한국전자기술연구원 AIoT 플랫폼을 활용한 ML 모델 배포관리 방법
CN116258521A (zh) * 2022-12-02 2023-06-13 东莞盟大集团有限公司 基于区块链技术的二级节点标识应用积分管理方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018132794A (ja) * 2017-02-13 2018-08-23 株式会社野村総合研究所 シェアリングシステム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020048319A (ko) * 2002-03-19 2002-06-22 문의선 분산컴퓨팅에 사용된 정보처리기에 대한 보상 방법 및 장치
KR101908214B1 (ko) * 2017-01-20 2018-10-15 세종대학교산학협력단 클라우드 기반 잉여 컴퓨팅 자원 원격사용 중개 플랫폼
KR101852079B1 (ko) 2018-03-16 2018-04-27 주식회사 미탭스플러스 블록체인 기반의 게임 난이도 조절을 위해 조정 정보를 이용한 분산 원장 장치 및 분산 원장 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018132794A (ja) * 2017-02-13 2018-08-23 株式会社野村総合研究所 シェアリングシステム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230006321A (ko) * 2021-07-02 2023-01-10 김한보 클라우드 기반 가상화폐 채굴 서비스 제공 시스템
KR102576393B1 (ko) * 2021-07-02 2023-09-07 김한보 클라우드 기반 가상화폐 채굴 서비스 제공 시스템

Also Published As

Publication number Publication date
KR20200034171A (ko) 2020-03-31

Similar Documents

Publication Publication Date Title
KR102254809B1 (ko) 블록체인에 기반한, 자원 공유에 따른 보상 제공하는 분산형 컴퓨팅 자원 공유 시스템 및 컴퓨팅 장치
KR102107115B1 (ko) 스마트 계약을 지원하는 블록체인에 기반한, 분산형 컴퓨팅 자원 공유 시스템 및 컴퓨팅 장치
US10986177B2 (en) Systems and methods of self-forking blockchain protocol
US11087372B2 (en) Benefit allocation method, apparatus, and electronic device
Qiu et al. Applications of auction and mechanism design in edge computing: A survey
US11750679B1 (en) Systems and methods for it management of distributed computing resources on a peer-to-peer network
CN113409045B (zh) 一种基于区块链的数据处理方法、装置及电子设备
CN105074702A (zh) 提供单租户和多租户环境的数据库系统
KR20140097145A (ko) 복합 애플리케이션 및 데이터 솔루션을 위한 마켓플레이스
JP7393426B2 (ja) 分散コンピューティングおよびストレージのためのインテリジェントで自律的な非中央集権型の市場
KR102206026B1 (ko) 블록체인 기반의 작업 요청 및 결과물의 거래 방법 및 시스템
WO2022103900A1 (en) Edge computing platform supported by smart contract enabled blockchain network
Li et al. MapReduce delay scheduling with deadline constraint
KR20200063595A (ko) 블록체인을 이용한 IoT 데이터 중개 방법 및 이를 위한 중개 서버
KR102221925B1 (ko) 블록체인에 기반한 분산형 컴퓨팅 자원 공유 시스템 상에서, 머신러닝과 병행하여 채굴을 수행하는 방법 및 그러한 채굴을 지원하는 방법
Jain et al. Auction based cost‐efficient resource allocation by utilizing blockchain in fog computing
Jain et al. Combinatorial auction based multi-task resource allocation in fog environment using blockchain and smart contracts
US10419359B2 (en) Resource path monitoring
Baranwal et al. Blockchain based resource allocation in cloud and distributed edge computing: A survey
KR102176128B1 (ko) 블록체인에 기반한, 분산형 컴퓨팅 자원 공유 시스템 상에서의 보안 통신 제공 방법
KR102193890B1 (ko) 블록체인에 기반한, 분산형 컴퓨팅 자원 공유 시스템 상에서의 워킹 그룹별 동일한 키를 사용하는 보안 통신 제공 방법
US20230148292A1 (en) System and method for reward-based computing services on a distributed computing platform
CN109492847B (zh) 基于区块链的多资源平台以及多资源分配方法
CN111967994B (zh) 一种智能合约的创建方法和装置
KR102169299B1 (ko) 블록체인에 기반한 분산형 컴퓨팅 자원 공유 시스템 상에서의 그룹 관리 서버를 통한 보안 통신 제공 방법

Legal Events

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