[go: up one dir, main page]

KR102359467B1 - Method and system for billing based on storage utilization history - Google Patents

Method and system for billing based on storage utilization history Download PDF

Info

Publication number
KR102359467B1
KR102359467B1 KR1020200084164A KR20200084164A KR102359467B1 KR 102359467 B1 KR102359467 B1 KR 102359467B1 KR 1020200084164 A KR1020200084164 A KR 1020200084164A KR 20200084164 A KR20200084164 A KR 20200084164A KR 102359467 B1 KR102359467 B1 KR 102359467B1
Authority
KR
South Korea
Prior art keywords
storage
information
processor
api
cloud
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
KR1020200084164A
Other languages
Korean (ko)
Other versions
KR20220006332A (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 KR1020200084164A priority Critical patent/KR102359467B1/en
Publication of KR20220006332A publication Critical patent/KR20220006332A/en
Application granted granted Critical
Publication of KR102359467B1 publication Critical patent/KR102359467B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06313Resource planning in a project environment
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/0637Strategic management or analysis, e.g. setting a goal or target of an organisation; Planning actions based on goals; Analysis or evaluation of effectiveness of goals
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/08Payment architectures
    • G06Q20/14Payment architectures specially adapted for billing systems
    • G06Q20/145Payments according to the detected use or quantity

Landscapes

  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Educational Administration (AREA)
  • Development Economics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Tourism & Hospitality (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Marketing (AREA)
  • Game Theory and Decision Science (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Data Mining & Analysis (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

스토리지 활용 이력에 기반한 비용 책정 방법 및 시스템이 개시된다. 스토리지 비용 책정 방법은, 클라우드 환경에서의 스토리지에 대한 활용 정보를 기록하는 단계; 및 상기 스토리지에 대하여 상기 활용 정보에 따른 과금 정보를 업데이트하는 단계를 포함한다.A method and system for setting a cost based on a storage utilization history are disclosed. The storage cost setting method includes: recording utilization information for storage in a cloud environment; and updating billing information according to the utilization information for the storage.

Description

스토리지 활용 이력에 기반한 비용 책정 방법 및 시스템{METHOD AND SYSTEM FOR BILLING BASED ON STORAGE UTILIZATION HISTORY}Pricing method and system based on storage utilization history

아래의 설명은 클라우드 스토리지 서비스(Cloud Storage Service)의 비용을 책정하는 기술에 관한 것이다.The description below relates to the technology for setting the cost of the cloud storage service.

일반적으로, 클라우드 스토리지 서비스는 물리적으로 떨어져 있는 스토리지 장비를 논리적인 하나의 스토리지로 구성해 고객이 요구할 때마다 하드디스크 공간을 용량 별로 할당해 실시간 제공하는 서비스이다.In general, cloud storage service is a service that configures physically separated storage devices into one logical storage, allocates hard disk space by capacity whenever a customer requests it, and provides it in real time.

이러한 클라우드 스토리지 서비스는 네트워크로 연결된 서버의 내장 스토리지들을 하나로 묶어서 사용자들에게 가상의 스토리지 공간을 할당량 및 사용 기간 기반으로 지원하게 된다.This cloud storage service bundles the built-in storage of networked servers into one and provides virtual storage space to users based on quota and usage period.

기존 클라우드 스토리지 서비스는 개인 사용자 또는 회사 및 동호회와 같은 단체들에 대해 다운로드 및 업로드 권한이 있는 아이디를 제공한다. 이에, 유무선 사용자 단말기로 클라우드 스토리지 서비스에 접속한 사용자들은 해당 아이디를 통해 인증을 수행한 후 스토리지 공간을 할당받아 활용하게 되며, 이때 스토리지 공간은 사용자가 지불하는 사용료에 대응하는 가상 공간을 설정하여 제공하게 된다.Existing cloud storage services provide IDs with download and upload rights to individual users or organizations such as companies and clubs. Accordingly, users who access the cloud storage service through wired/wireless user terminals perform authentication through the corresponding ID and then allocate and use the storage space. will do

이때, 사용자들은 지불하는 사용료에 따라 가상 공간에 대한 할당량을 많게 받거나, 사용기간 연장, 복수의 접속 아이디 등을 부여받을 수 있다.In this case, users may receive a large amount of virtual space quota according to the usage fee they pay, extend the period of use, and be given a plurality of access IDs.

이러한 클라우드 스토리지 서비스는 사용자 별로 부여된 가상 공간에서 업로드 또는 다운로드되는 데이터에 대해 보안, 바이러스 위험요소 제거 및 손실 방지를 위한 백업 서비스 등을 제공하고 있다.These cloud storage services provide backup services for security, virus risk removal, and loss prevention for data uploaded or downloaded from a virtual space assigned to each user.

클라우드 스토리지 서비스의 모든 기능들은 데이터를 기반으로 동작하며, 이에 각 클라우드 사업자들은 차별화된 스토리지 기능과 경쟁적인 가격의 클라우드 스토리지 서비스를 출시하고 있다.All functions of cloud storage services operate based on data, and each cloud service provider is launching differentiated storage functions and competitively priced cloud storage services.

클라우드 스토리지 서비스에서 스토리지 활용 이력에 기반하여 스토리지 비용을 책정할 수 있는 방법 및 시스템을 제공한다.A method and system for setting a storage cost based on a storage utilization history in a cloud storage service are provided.

컴퓨터 장치에서 실행되는 스토리지 비용 책정 방법에 있어서, 상기 컴퓨터 장치는 메모리에 포함된 컴퓨터 판독가능한 명령들을 실행하도록 구성된 적어도 하나의 프로세서를 포함하고, 상기 스토리지 비용 책정 방법은, 상기 적어도 하나의 프로세서에 의해, 클라우드 환경에서의 스토리지에 대한 활용 정보를 기록하는 단계; 및 상기 적어도 하나의 프로세서에 의해, 상기 스토리지에 대하여 상기 활용 정보에 따른 과금 정보를 업데이트하는 단계를 포함하는 스토리지 비용 책정 방법을 제공한다.CLAIMS What is claimed is: 1. A storage pricing method executed on a computer device, the computer device comprising at least one processor configured to execute computer readable instructions contained in a memory, the storage pricing method comprising: , recording utilization information for storage in a cloud environment; and updating, by the at least one processor, charging information according to the utilization information for the storage.

일 측면에 따르면, 상기 스토리지 비용 책정 방법은, PaaS(Platform as a Service)의 이용에 따른 과금을 처리할 수 있다.According to one aspect, the storage cost setting method may process billing according to the use of a PaaS (Platform as a Service).

다른 측면에 따르면, 상기 스토리지 비용 책정 방법은, PaaS의 기능 중 클라우드 사업자에 의해 특정된 기능의 이용에 따른 과금을 처리할 수 있다.According to another aspect, the storage cost setting method may process billing according to the use of a function specified by a cloud provider among PaaS functions.

또 다른 측면에 따르면, 상기 기록하는 단계는, 상기 스토리지 상의 데이터를 액세스하기 위한 API를 호출하는 단계; 및 상기 API를 통해 상기 스토리지에 대한 활용 정보를 기록하기 위한 클라우드 워치(cloud watch) 동작을 수행하는 단계를 포함할 수 있다.According to another aspect, the recording may include: calling an API for accessing data on the storage; and performing a cloud watch operation for recording usage information on the storage through the API.

또 다른 측면에 따르면, 상기 기록하는 단계는, ACL(access control list)이 허용한 호출에 대하여 상기 활용 정보를 기록할 수 있다.According to another aspect, the recording may include recording the utilization information for a call permitted by an access control list (ACL).

또 다른 측면에 따르면, 상기 수행하는 단계는, 상기 API의 호출이 가리키는 스토리지가 차등 과금 프로세스를 사용하는 스토리지인 경우 상기 클라우드 워치 동작을 트리거링할 수 있다.According to another aspect, the performing may trigger the cloud watch operation when the storage indicated by the API call is a storage using a differential charging process.

또 다른 측면에 따르면, 상기 수행하는 단계는, 상기 API를 통해 발생하는 이벤트에 대해 모니터링 및 로깅을 수행하고 API 호출을 추적하여 PaaS의 이용에 따른 정보를 저장할 수 있다.According to another aspect, in the performing step, monitoring and logging of an event occurring through the API may be performed, and the API call may be tracked to store information according to the use of PaaS.

또 다른 측면에 따르면, 상기 업데이트하는 단계는, 상기 스토리지의 활용 가중치에 따른 과금 할인 정책을 조회하는 단계; 및 상기 과금 할인 정책을 이용하여 상기 스토리지를 대상으로 차등 과금에 대한 정보를 업데이트하는 단계를 포함한다.According to another aspect, the updating may include: inquiring a billing discount policy according to a utilization weight of the storage; and updating information on differential billing for the storage by using the billing discount policy.

상기 스토리지 비용 책정 방법을 컴퓨터 장치에 실행시키기 위한 컴퓨터 프로그램이 기록되어 있는 컴퓨터 판독 가능한 기록매체를 제공한다.It provides a computer-readable recording medium in which a computer program for executing the storage cost setting method in a computer device is recorded.

컴퓨터 장치에 있어서, 메모리에 포함된 컴퓨터 판독가능한 명령들을 실행하도록 구성된 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서에 의해, 클라우드 환경에서의 스토리지에 대한 활용 정보를 기록하고, 상기 스토리지에 대하여 상기 활용 정보에 따른 과금 정보를 업데이트하는 것을 특징으로 하는 컴퓨터 장치를 제공한다.A computer device comprising: at least one processor configured to execute computer readable instructions contained in a memory, and by the at least one processor, recording utilization information for storage in a cloud environment; There is provided a computer device characterized in that the billing information is updated according to the usage information.

본 발명의 실시예에 따르면, 클라우드 스토리지 서비스 환경에서 스토리지 활용 이력에 기반하여 스토리지 비용을 책정함으로써 차등 과금 정책을 구현할 수 있다.According to an embodiment of the present invention, a differential charging policy may be implemented by setting a storage cost based on a storage usage history in a cloud storage service environment.

도 1은 본 발명의 일 실시예에 따른 네트워크 환경의 예를 도시한 도면이다.
도 2는 본 발명의 일실시예에 따른 컴퓨터 장치의 내부 구성을 설명하기 위한 블록도이다.
도 3은 본 발명의 일 실시예에 따른 서버가 수행할 수 있는 스토리지 비용 책정 방법의 예를 도시한 흐름도이다.
도 4는 본 발명의 일실시예에 있어서 스토리지 비용 책정을 위한 시스템 아키텍처의 예를 도시한 것이다.
1 is a diagram illustrating an example of a network environment according to an embodiment of the present invention.
2 is a block diagram illustrating an internal configuration of a computer device according to an embodiment of the present invention.
3 is a flowchart illustrating an example of a storage cost setting method that a server can perform according to an embodiment of the present invention.
4 illustrates an example of a system architecture for setting storage cost in an embodiment of the present invention.

이하, 본 발명의 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

본 발명의 실시예들은 클라우드 스토리지에 대한 비용을 책정하는 기술에 관한 것이다.Embodiments of the present invention relate to techniques for setting a cost for cloud storage.

클라우드는 데이터 저장 공간을 제공해주는 서비스로부터 시작되었으며, 현재에는 데이터 저장 공간뿐 아니라, 개발 도구, 데이터베이스 관리 툴, 비즈니스 분석이나 응용 프로그램 등의 서비스를 제공하고 있다.The cloud started as a service that provides data storage space, and now provides services such as development tools, database management tools, business analysis and applications as well as data storage space.

일반적인 클라우드 스토리지 서비스들은 대다수 액세스 빈도(Access Frequency)에 기반한 응답 속도에 초점을 맞추고 있으며, 요금제는 주로 객체 크기, 기간, 응답 시간(Response time) 등에 종속되어 있다.Most general cloud storage services focus on response speed based on access frequency, and plan mainly depends on object size, period, response time, etc.

클라우드 스토리지 서비스는 크게 IaaS(Infrastructure as a Service), PaaS(Platform as a Service), SaaS(Software as a Service)로 나누어진다.Cloud storage services are largely divided into IaaS (Infrastructure as a Service), PaaS (Platform as a Service), and SaaS (Software as a Service).

IaaS는 CPU나 메모리 등의 하드웨어적인 자원을 제공하는 클라우드 서비스를 의미하고, PaaS는 운영체제를 포함하여 소프트웨어를 개발할 수 있는 툴과 데이터 분석을 위한 도구들을 포함하는 플랫폼을 제공하는 클라우드 서비스를 의미하며, SaaS는 클라우드 내의 프로그램, 즉 소프트웨어를 제공하는 클라우드 서비스를 의미한다.IaaS refers to a cloud service that provides hardware resources such as CPU or memory, and PaaS refers to a cloud service that provides a platform including tools for software development including an operating system and tools for data analysis. SaaS refers to a cloud service that provides a program, that is, software in the cloud.

이러한 클라우드 스토리지 서비스는 클라우드로의 데이터 전송 시 인-바운드 트래픽(In-bound Traffic)과 아웃-바운드 트래픽(Out-bound Traffic)의 비용 차이로 설명이 가능하다.This cloud storage service can be explained by the difference in cost between in-bound traffic and out-bound traffic when data is transmitted to the cloud.

대다수 클라우드 사업자는 클라우드로의 데이터 유입에 대한 비용을 데이터 반출과 대비하여 낮게 책정하고 있다.Most cloud providers set the cost of data inflow to the cloud lower than that of data export.

클라우드 사업자는 사용자가 활용 중인 스토리지 상의 데이터를 보다 많이 사용할수록 전체적인 수익을 극대화할 수 있다는 점에서 액세스 빈도를 기준으로 스토리지 비용을 책정하는 기술이 필요하다.Cloud operators need technology to set storage costs based on access frequency in that they can maximize overall revenue as users use more data on the storage they are using.

본 명세서에서 구체적으로 개시되는 것들을 포함하는 실시예들은 클라우드 스토리지 서비스 상에서 스토리지 활용 이력에 기반하여 차등 과금을 위한 스토리지 비용을 책정할 수 있다.Embodiments including those specifically disclosed herein may set a storage cost for differential charging based on a storage usage history on a cloud storage service.

본 발명의 실시예들에 따른 스토리지 비용 책정 방법은 적어도 하나의 컴퓨터 장치를 통해 수행될 수 있다. 이때, 컴퓨터 장치에는 본 발명의 일실시예에 따른 컴퓨터 프로그램이 설치 및 구동될 수 있고, 컴퓨터 장치는 구동된 컴퓨터 프로그램의 제어에 따라 본 발명의 실시예들에 따른 스토리지 비용 책정 방법을 수행할 수 있다. 상술한 컴퓨터 프로그램은 컴퓨터 장치와 결합되어 스토리지 비용 책정 방법을 컴퓨터에 실행시키기 위해 컴퓨터 판독 가능한 기록매체에 저장될 수 있다.The storage cost setting method according to embodiments of the present invention may be performed through at least one computer device. In this case, the computer program according to an embodiment of the present invention may be installed and driven in the computer device, and the computer device may perform the storage cost setting method according to the embodiments of the present invention under the control of the driven computer program. have. The above-described computer program may be stored in a computer-readable recording medium in order to be combined with a computer device and execute the method for setting the storage cost in the computer.

도 1은 본 발명의 일 실시예에 따른 네트워크 환경의 예를 도시한 도면이다. 도 1의 네트워크 환경은 복수의 전자 기기들(110, 120, 130, 140), 복수의 서버들(150, 160) 및 네트워크(170)를 포함하는 예를 나타내고 있다. 이러한 도 1은 발명의 설명을 위한 일례로 전자 기기의 수나 서버의 수가 도 1과 같이 한정되는 것은 아니다.1 is a diagram illustrating an example of a network environment according to an embodiment of the present invention. The network environment of FIG. 1 shows an example including a plurality of electronic devices 110 , 120 , 130 , 140 , a plurality of servers 150 , 160 , and a network 170 . 1 is an example for explaining the invention, and the number of electronic devices or the number of servers is not limited as in FIG. 1 .

복수의 전자 기기들(110, 120, 130, 140)은 컴퓨터 시스템으로 구현되는 고정형 단말이거나 이동형 단말일 수 있다. 복수의 전자 기기들(110, 120, 130, 140)의 예를 들면, AI 스피커, 스마트폰(smart phone), 휴대폰, 내비게이션, 컴퓨터, 노트북, 디지털방송용 단말, PDA(Personal Digital Assistants), PMP(Portable Multimedia Player), 태블릿 PC, 게임 콘솔(game console), 웨어러블 디바이스(wearable device), IoT(internet of things) 디바이스, VR(virtual reality) 디바이스, AR(augmented reality) 디바이스 등이 있다. 일례로 도 1에서는 전자 기기(110)의 예로 AI 스피커의 형상을 나타내고 있으나, 본 발명의 실시예들에서 전자 기기(110)는 실질적으로 무선 또는 유선 통신 방식을 이용하여 네트워크(170)를 통해 다른 전자 기기들(120, 130, 140) 및/또는 서버(150, 160)와 통신할 수 있는 다양한 물리적인 컴퓨터 시스템들 중 하나를 의미할 수 있다.The plurality of electronic devices 110 , 120 , 130 , and 140 may be a fixed terminal implemented as a computer system or a mobile terminal. For example, an AI speaker, a smart phone, a mobile phone, a navigation device, a computer, a laptop computer, a digital broadcasting terminal, a PDA (Personal Digital Assistants), a PMP (Personal Digital Assistants) of the plurality of electronic devices 110, 120, 130, 140 portable multimedia players), tablet PCs, game consoles, wearable devices, Internet of things (IoT) devices, virtual reality (VR) devices, augmented reality (AR) devices, and the like. As an example, in FIG. 1 , the shape of an AI speaker is shown as an example of the electronic device 110 , but in the embodiments of the present invention, the electronic device 110 is substantially configured to communicate with another device through the network 170 using a wireless or wired communication method. It may refer to one of various physical computer systems capable of communicating with the electronic devices 120 , 130 , 140 and/or the servers 150 and 160 .

통신 방식은 제한되지 않으며, 네트워크(170)가 포함할 수 있는 통신망(일례로, 이동통신망, 유선 인터넷, 무선 인터넷, 방송망, 위성망 등)을 활용하는 통신 방식뿐만 아니라 기기들간의 근거리 무선 통신 역시 포함될 수 있다. 예를 들어, 네트워크(170)는, PAN(personal area network), LAN(local area network), CAN(campus area network), MAN(metropolitan area network), WAN(wide area network), BBN(broadband network), 인터넷 등의 네트워크 중 하나 이상의 임의의 네트워크를 포함할 수 있다. 또한, 네트워크(170)는 버스 네트워크, 스타 네트워크, 링 네트워크, 메쉬 네트워크, 스타-버스 네트워크, 트리 또는 계층적(hierarchical) 네트워크 등을 포함하는 네트워크 토폴로지 중 임의의 하나 이상을 포함할 수 있으나, 이에 제한되지 않는다.The communication method is not limited, and a communication method using a communication network (eg, a mobile communication network, a wired Internet, a wireless Internet, a broadcasting network, a satellite network, etc.) that the network 170 may include, as well as a short-distance wireless communication between devices may be included. can For example, the network 170 may include a personal area network (PAN), a local area network (LAN), a campus area network (CAN), a metropolitan area network (MAN), a wide area network (WAN), and a broadband network (BBN). , the Internet, and the like. In addition, the network 170 may include any one or more of a network topology including a bus network, a star network, a ring network, a mesh network, a star-bus network, a tree or a hierarchical network, etc. not limited

서버(150, 160) 각각은 복수의 전자 기기들(110, 120, 130, 140)과 네트워크(170)를 통해 통신하여 명령, 코드, 파일, 컨텐츠, 서비스 등을 제공하는 컴퓨터 장치 또는 복수의 컴퓨터 장치들로 구현될 수 있다. 예를 들어, 서버(150)는 네트워크(170)를 통해 접속한 복수의 전자 기기들(110, 120, 130, 140)로 제1 서비스를 제공하는 시스템일 수 있으며, 서버(160) 역시 네트워크(170)를 통해 접속한 복수의 전자 기기들(110, 120, 130, 140)로 제2 서비스를 제공하는 시스템일 수 있다. 보다 구체적인 예로, 서버(150)는 복수의 전자 기기들(110, 120, 130, 140)에 설치되어 구동되는 컴퓨터 프로그램으로서의 어플리케이션을 통해, 해당 어플리케이션이 목적하는 서비스(일례로, 클라우드 스토리지 서비스)를 제1 서비스로서 복수의 전자 기기들(110, 120, 130, 140)로 제공할 수 있다. 다른 예로, 서버(160)는 상술한 어플리케이션의 설치 및 구동을 위한 파일을 복수의 전자 기기들(110, 120, 130, 140)로 배포하는 서비스를 제2 서비스로서 제공할 수 있다.Each of the servers 150 and 160 communicates with the plurality of electronic devices 110 , 120 , 130 , 140 and the network 170 through a computer device or a plurality of computers that provides commands, codes, files, contents, services, etc. It can be implemented in devices. For example, the server 150 may be a system that provides a first service to a plurality of electronic devices 110 , 120 , 130 , 140 connected through the network 170 , and the server 160 is also a network ( It may be a system that provides the second service to the plurality of electronic devices 110 , 120 , 130 , and 140 connected through 170 . As a more specific example, the server 150 provides a service (eg, a cloud storage service) targeted by the application through an application as a computer program installed and driven in the plurality of electronic devices 110 , 120 , 130 , and 140 . The first service may be provided to the plurality of electronic devices 110 , 120 , 130 , and 140 . As another example, the server 160 may provide a service for distributing a file for installing and driving the above-described application to the plurality of electronic devices 110 , 120 , 130 , and 140 as the second service.

도 2는 본 발명의 일실시예에 따른 컴퓨터 장치의 예를 도시한 블록도이다. 앞서 설명한 서버(150)는 도 2를 통해 도시된 컴퓨터 장치(200)에 의해 구현될 수 있다.2 is a block diagram illustrating an example of a computer device according to an embodiment of the present invention. The server 150 described above may be implemented by the computer device 200 illustrated in FIG. 2 .

이러한 컴퓨터 장치(200)는 도 2에 도시된 바와 같이, 메모리(210), 프로세서(220), 통신 인터페이스(230) 그리고 입출력 인터페이스(240)를 포함할 수 있다.As shown in FIG. 2 , the computer device 200 may include a memory 210 , a processor 220 , a communication interface 230 , and an input/output interface 240 .

메모리(210)는 컴퓨터에서 판독 가능한 기록매체로서, RAM(random access memory), ROM(read only memory) 및 디스크 드라이브와 같은 비소멸성 대용량 기록장치(permanent mass storage device)를 포함할 수 있다. 여기서 ROM과 디스크 드라이브와 같은 비소멸성 대용량 기록장치는 메모리(210)와는 구분되는 별도의 영구 저장 장치로서 컴퓨터 장치(200)에 포함될 수도 있다. 또한, 메모리(210)에는 운영체제와 적어도 하나의 프로그램 코드가 저장될 수 있다. 이러한 소프트웨어 구성요소들은 메모리(210)와는 별도의 컴퓨터에서 판독 가능한 기록매체로부터 메모리(210)로 로딩될 수 있다. 이러한 별도의 컴퓨터에서 판독 가능한 기록매체는 플로피 드라이브, 디스크, 테이프, DVD/CD-ROM 드라이브, 메모리 카드 등의 컴퓨터에서 판독 가능한 기록매체를 포함할 수 있다. 다른 실시예에서 소프트웨어 구성요소들은 컴퓨터에서 판독 가능한 기록매체가 아닌 통신 인터페이스(230)를 통해 메모리(210)에 로딩될 수도 있다. 예를 들어, 소프트웨어 구성요소들은 네트워크(170)를 통해 수신되는 파일들에 의해 설치되는 컴퓨터 프로그램에 기반하여 컴퓨터 장치(200)의 메모리(210)에 로딩될 수 있다.The memory 210 is a computer-readable recording medium and may include a random access memory (RAM), a read only memory (ROM), and a permanent mass storage device such as a disk drive. Here, a non-volatile mass storage device such as a ROM and a disk drive may be included in the computer device 200 as a separate permanent storage device distinct from the memory 210 . Also, an operating system and at least one program code may be stored in the memory 210 . These software components may be loaded into the memory 210 from a computer-readable recording medium separate from the memory 210 . The separate computer-readable recording medium may include a computer-readable recording medium such as a floppy drive, a disk, a tape, a DVD/CD-ROM drive, and a memory card. In another embodiment, the software components may be loaded into the memory 210 through the communication interface 230 instead of a computer-readable recording medium. For example, the software components may be loaded into the memory 210 of the computer device 200 based on a computer program installed by files received through the network 170 .

프로세서(220)는 기본적인 산술, 로직 및 입출력 연산을 수행함으로써, 컴퓨터 프로그램의 명령을 처리하도록 구성될 수 있다. 명령은 메모리(210) 또는 통신 인터페이스(230)에 의해 프로세서(220)로 제공될 수 있다. 예를 들어 프로세서(220)는 메모리(210)와 같은 기록 장치에 저장된 프로그램 코드에 따라 수신되는 명령을 실행하도록 구성될 수 있다.The processor 220 may be configured to process instructions of a computer program by performing basic arithmetic, logic, and input/output operations. The instructions may be provided to the processor 220 by the memory 210 or the communication interface 230 . For example, the processor 220 may be configured to execute a received instruction according to a program code stored in a recording device such as the memory 210 .

통신 인터페이스(230)는 네트워크(170)를 통해 컴퓨터 장치(200)가 다른 장치(일례로, 앞서 설명한 저장 장치들)와 서로 통신하기 위한 기능을 제공할 수 있다. 일례로, 컴퓨터 장치(200)의 프로세서(220)가 메모리(210)와 같은 기록 장치에 저장된 프로그램 코드에 따라 생성한 요청이나 명령, 데이터, 파일 등이 통신 인터페이스(230)의 제어에 따라 네트워크(170)를 통해 다른 장치들로 전달될 수 있다. 역으로, 다른 장치로부터의 신호나 명령, 데이터, 파일 등이 네트워크(170)를 거쳐 컴퓨터 장치(200)의 통신 인터페이스(230)를 통해 컴퓨터 장치(200)로 수신될 수 있다. 통신 인터페이스(230)를 통해 수신된 신호나 명령, 데이터 등은 프로세서(220)나 메모리(210)로 전달될 수 있고, 파일 등은 컴퓨터 장치(200)가 더 포함할 수 있는 저장 매체(상술한 영구 저장 장치)로 저장될 수 있다.The communication interface 230 may provide a function for the computer device 200 to communicate with other devices (eg, the storage devices described above) through the network 170 . For example, a request, command, data, file, etc. generated by the processor 220 of the computer device 200 according to a program code stored in a recording device such as the memory 210 is transmitted to the network ( 170) to other devices. Conversely, signals, commands, data, files, etc. from other devices may be received by the computer device 200 through the communication interface 230 of the computer device 200 via the network 170 . A signal, command, or data received through the communication interface 230 may be transferred to the processor 220 or the memory 210 , and the file may be a storage medium (described above) that the computer device 200 may further include. persistent storage).

입출력 인터페이스(240)는 입출력 장치(250)와의 인터페이스를 위한 수단일 수 있다. 예를 들어, 입력 장치는 마이크, 키보드 또는 마우스 등의 장치를, 그리고 출력 장치는 디스플레이, 스피커와 같은 장치를 포함할 수 있다. 다른 예로 입출력 인터페이스(240)는 터치스크린과 같이 입력과 출력을 위한 기능이 하나로 통합된 장치와의 인터페이스를 위한 수단일 수도 있다. 입출력 장치(250)는 컴퓨터 장치(200)와 하나의 장치로 구성될 수도 있다.The input/output interface 240 may be a means for an interface with the input/output device 250 . For example, the input device may include a device such as a microphone, keyboard, or mouse, and the output device may include a device such as a display or a speaker. As another example, the input/output interface 240 may be a means for an interface with a device in which functions for input and output are integrated into one, such as a touch screen. The input/output device 250 may be configured as one device with the computer device 200 .

또한, 다른 실시예들에서 컴퓨터 장치(200)는 도 2의 구성요소들보다 더 적은 혹은 더 많은 구성요소들을 포함할 수도 있다. 그러나, 대부분의 종래기술적 구성요소들을 명확하게 도시할 필요성은 없다. 예를 들어, 컴퓨터 장치(200)는 상술한 입출력 장치(250) 중 적어도 일부를 포함하도록 구현되거나 또는 트랜시버(transceiver), 데이터베이스 등과 같은 다른 구성요소들을 더 포함할 수도 있다.Also, in other embodiments, the computer device 200 may include fewer or more components than those of FIG. 2 . However, there is no need to clearly show most of the prior art components. For example, the computer device 200 may be implemented to include at least a portion of the above-described input/output device 250 or may further include other components such as a transceiver and a database.

이하에서는 클라우드 스토리지 서비스에서 스토리지 비용을 책정하는 방법 및 시스템의 구체적인 실시예를 설명하기로 한다.Hereinafter, a specific embodiment of a method and system for setting a storage cost in a cloud storage service will be described.

도 3은 본 발명의 일실시예에 따른 서버가 수행할 수 있는 방법의 예를 도시한 흐름도이다.3 is a flowchart illustrating an example of a method that a server may perform according to an embodiment of the present invention.

서버(150)는 클라이언트(client)인 복수의 전자 기기들(110, 120, 130, 140)을 대상으로 클라우드 스토리지 서비스를 제공함에 있어 스토리지 활용 이력을 기반으로 스토리지 비용을 책정할 수 있다.When the server 150 provides a cloud storage service to a plurality of electronic devices 110 , 120 , 130 , and 140 that are clients, the server 150 may set a storage cost based on a storage utilization history.

서버(150)의 프로세서(220)는 스토리지 비용 책정 방법이 포함하는 단계들(S310 내지 S350)을 수행하도록 서버(150)를 제어할 수 있다. 예를 들어, 프로세서(220)는 메모리(210)가 포함하는 운영체제의 코드와 적어도 하나의 프로그램의 코드에 따른 명령(instruction)을 실행하도록 구현될 수 있다.The processor 220 of the server 150 may control the server 150 to perform the steps S310 to S350 included in the storage cost setting method. For example, the processor 220 may be implemented to execute an instruction according to the code of the operating system included in the memory 210 and the code of at least one program.

프로세서(220)는 서버(150)의 제어와 관련된 명령이 로딩된 메모리(210)로부터 필요한 명령을 읽어들일 수 있다. 이 경우, 상기 읽어들인 명령은 프로세서(220)가 이후 설명될 단계들(S310 내지 S350)을 실행하도록 제어하기 위한 명령을 포함할 수 있다.The processor 220 may read a necessary command from the memory 210 in which the command related to the control of the server 150 is loaded. In this case, the read command may include a command for controlling the processor 220 to execute steps S310 to S350 to be described later.

단계(S310)에서 프로세서(220)는 클라우드 스토리지 서비스에서 사용자에게 제공되는 스토리지에 대한 API(application program interface)를 호출한다. 프로세서(220)는 클라우드 스토리지 상의 데이터를 액세스하기 위한 외부 API를 호출한다.In step S310, the processor 220 calls an API (application program interface) for storage provided to the user in the cloud storage service. The processor 220 calls an external API for accessing data on the cloud storage.

단계(S320)에서 프로세서(220)는 ACL(access control list)을 기반으로 서비스 접근 대상을 판단한다. 단계(S310)에서 호출한 API 서버는 ACL 기반의 액세스 컨트롤 작업을 수행한다. 이때, ACL 정보는 호출 대상 서비스에 대한 구분자 역할을 동시에 수행할 수 있다. 즉, PaaS 서비스에서의 트리거링 여부에 대해서 인지하기 위한 정보로서 ACL 정보를 활용 가능하다.In step S320, the processor 220 determines a service access target based on an access control list (ACL). The API server called in step S310 performs an ACL-based access control operation. In this case, the ACL information may simultaneously serve as a delimiter for the call target service. That is, ACL information can be used as information for recognizing whether triggering in the PaaS service is performed.

단계(S330)에서 프로세서(220)는 클라우드 워치(cloud watch) 동작을 수행한다. ACL이 허용한 호출에 대하여 스토리지 활용 정보를 기록하기 위해 클라우드 워치가 동작한다. 이때, 클라우드 워치의 동작 여부는 해당 API 호출이 가리키는 스토리지가 차등 과금 프로세스를 사용하는 경우 동작을 트리거링할 수 있다. 차등 과금을 지원하는 스토리지에 대한 정보는 메타데이터 스토리지(metadata storage) 상의 정보를 활용할 수 있다.In step S330, the processor 220 performs a cloud watch operation. Cloud watch operates to record storage utilization information for calls allowed by ACL. In this case, whether the cloud watch operates may trigger an operation when the storage indicated by the corresponding API call uses a differential charging process. Information on storage supporting differential charging may utilize information on metadata storage.

단계(S340)에서 프로세서(220)는 호출 대상 서비스 정보를 기록한다. 본 실시예에서는 PaaS를 중심으로 차등 과금을 지원할 수 있으며, 프로세서(220)는 스토리지 서비스 호출 대상이 되는 PaaS 정보를 기록할 수 있다. 프로세서(220)는 서비스 호출 API의 데이터 파이프라인(pipeline) 또는 CI(continuous integration)/CD(continuous delivery) 정보, 또는 마이크로서비스 아키텍처(microservice architecture)의 호출 연계 정보 등을 이용하여 호출 대상 서비스를 판단할 수 있다.In step S340, the processor 220 records the call target service information. In this embodiment, differential charging may be supported based on PaaS, and the processor 220 may record PaaS information that is a storage service call target. The processor 220 determines a call target service using data pipeline or continuous integration (CI)/continuous delivery (CD) information of a service call API, or call link information of a microservice architecture. can do.

단계(S350)에서 프로세서(220)는 요금 정책(price policy) 정보를 조회하고 차등 과금 정보를 업데이트한다. 프로세서(220)는 PaaS 기반 요금 정책 정보를 조회한 후 해당 요금 정책 정보를 이용하여 스토리지 대상으로 차등 과금에 대한 정보를 업데이트할 수 있다.In step S350, the processor 220 inquires the price policy information and updates the differential charging information. After inquiring the PaaS-based charge policy information, the processor 220 may update the information on the differential billing for the storage target by using the corresponding charge policy information.

도 4는 본 발명의 일실시예에 있어서 스토리지 비용 책정을 위한 시스템 아키텍처의 예를 도시한 것이다.4 illustrates an example of a system architecture for setting storage cost in an embodiment of the present invention.

스토리지 비용 책정을 위한 시스템은 컴퓨터 장치(200)로 구현된 서버(150) 상에 포함되는 것으로, 도 4에 도시한 바와 같이 부하 분산부(load balancer)(401), API 서버(402), ACL 제공부(403), 클라우드 워치 실행부(404), 요금 정책 제공부(405), 메타데이터 스토리지(406), 블롭 스토리지(blob storage)(407), 및 과금 서버(payment server)(408)를 포함할 수 있다.The system for setting the storage cost is included on the server 150 implemented as the computer device 200 , and as shown in FIG. 4 , a load balancer 401 , an API server 402 , and an ACL The provision unit 403, the cloud watch execution unit 404, the fee policy provision unit 405, the metadata storage 406, the blob storage 407, and the payment server 408 are provided. may include

서버(150)는 클라우드 스토리지 서비스로서 PaaS 기능(410)을 제공한다. PaaS 기능(410)은 클라우드 스토리지를 제공하는 사업자들이 부가적으로 플랫폼 기반의 기능을 제공하는 서비스를 통칭한다. 예를 들어, 머신러닝, 데이터 분석 등의 고도화된 기능들을 제공하고 있으며, 사업자의 스토리지를 연결하여 데이터를 읽어들이고 이를 처리하는 데이터 파이프라인 또는 마이크로 서비스 기반의 개발 환경을 제공한다. PaaS는 IaaS 기능과 대비하여 시간 당 이용료가 비싸고 사업자 별 부가가치가 높은 서비스들이라 할 수 있다.The server 150 provides the PaaS function 410 as a cloud storage service. The PaaS function 410 collectively refers to services that providers providing cloud storage additionally provide platform-based functions. For example, it provides advanced functions such as machine learning and data analysis, and provides a data pipeline or microservice-based development environment that reads data by connecting the operator's storage and processes it. Compared to the IaaS function, PaaS is expensive per hour, and it can be said that PaaS is a service with high added value for each operator.

부하 분산부(401)는 외부 스토리지에 대한 get 및 put 명령어 처리를 위한 부하 분산 역할을 제공한다.The load balancer 401 provides a load balancer role for processing get and put commands for external storage.

API 서버(402)는 스토리지에 대응되는 기능을 API 형태로 제공한다.The API server 402 provides a function corresponding to the storage in the form of an API.

ACL 제공부(403)는 스토리지와 관련된 접근 권한 관리 기능을 제공한다.The ACL providing unit 403 provides a storage-related access right management function.

클라우드 워치 실행부(404)는 클라우드 워치 동작으로서 API 서버(402)를 통해 발생하는 모든 이벤트에 대해 모니터링(monitoring) 및 로깅(logging)하기 위한 기능을 제공한다. 클라우드 워치 실행부(404)는 PaaS 관련된 기능에 대한 API 호출(call)에 대해 추적하고, 해당 기능이 어떠한 블록 또는 버킷(bucket)(블록의 상위 개념)에 접근하는지에 대한 정보를 저장하는 기능을 담당한다.The cloud watch execution unit 404 provides a function for monitoring and logging all events that occur through the API server 402 as a cloud watch operation. The cloud watch execution unit 404 tracks API calls for PaaS-related functions, and stores information about which block or bucket (higher concept of block) the function accesses. in charge

요금 정책 제공부(405)는 스토리지의 활용 가중치에 따른 할인 정책을 제공할 수 있다. 요금 정책 제공부(405)는 PaaS 기능(410) 중 클라우드 사업자에 의해 특정된 기능, 예를 들어 시간 당 비용이 높은 기능, 운용 시간 대비 수익이 많은 기능, 유휴 자원을 이용하는 기능 등에 대해 차등적인 과금 활인 정책을 적용하기 위한 기능을 제공한다.The rate policy providing unit 405 may provide a discount policy according to the storage utilization weight. The fee policy providing unit 405 differential charging for functions specified by the cloud provider among the PaaS functions 410, for example, a function with a high hourly cost, a function with a high profit compared to the operating time, a function using idle resources, etc. Provides the function to apply active policy.

메타데이터 스토리지(406)는 저장 대상의 메타 데이터 정보를 저장하는 역할을 한다. 예를 들어, 저장 대상의 메타 데이터 정보로는 저장 위치, 복제 정보, 등급에 따른 액세스 정책 등이 포함될 수 있다.The metadata storage 406 serves to store metadata information of a storage target. For example, the metadata information of the storage target may include a storage location, replication information, and an access policy according to a grade.

블롭 스토리지(407)는 실제 데이터를 저장하는 스토리지에 해당되며, 블롭 스토리지(407)는 다수의 스토리지가 연결되어 구성될 수 있다.The blob storage 407 corresponds to storage that stores actual data, and the blob storage 407 may be configured by connecting a plurality of storages.

과금 서버(408)는 서비스 이용에 따른 과금 정보를 저장하는 역할을 한다. 일례로, 사업자가 PaaS 이용에 따른 차등 과금 정책을 제공하는 경우 PaaS 이용에 따른 과금 정보는 클라우드 워치 실행부(404)를 통해 트리거링 되어 과금 서버(408) 상에 저장된다.The billing server 408 serves to store billing information according to service use. For example, when the operator provides a differential charging policy according to the use of PaaS, the charging information according to the use of PaaS is triggered through the cloud watch execution unit 404 and stored on the charging server 408 .

도 3을 참조하여 전술된 기술적 특징에 대한 설명은 도 4에 대해서도 그대로 적용될 수 있으므로 중복되는 설명은 생략한다.The description of the technical features described above with reference to FIG. 3 may be applied to FIG. 4 as it is, and thus a redundant description will be omitted.

마이데이터(MyData)와 같이 개인의 데이터 주권을 가진 환경에서 개개인의 데이터를 장기간 저장 및 활용하기 위해서는 해당 비용에 대한 지불 주체가 필요하며, 이때 클라우드 스토리지 상에 데이터 활용 주체가 참여해 비용을 지급함으로써 상호 요구사항을 충족할 수 있다. 즉, 데이터 주체의 저장 의사가 있고, 해당 데이터를 데이터 활용 측에서 비용을 지불할 의사가 있는 경우, 클라우드 스토리지 기반의 데이터 저장 기반을 활용하되, 접근 이력(활용 이력)에 기반해 비용을 지불하는 형태로 데이터 저장에 필요한 비용을 지급할 수 있다.In order to store and utilize individual data for a long period of time in an environment with individual data sovereignty, such as MyData, a payment entity is required. requirements can be met. In other words, if the data subject is willing to store and the data utilization side is willing to pay for the data, the cloud storage-based data storage base is used, but the payment is made based on the access history (utilization history). You can pay the cost required to store the data in the form.

예를 들어, 서버(150)는 병원 플랫폼과 연동하여 정보 활용에 동의한 환자 각각의 EMR(electronic medical record), EHR(electronic health record), PHR(personal health record) 등을 포함하는 개인 의료 정보를 클라우드 스토리지(일례로, 블롭 스토리지(407) 등) 상에 저장하여 관리할 수 있고, 이러한 개인 의료 정보의 저장 및 관리 비용을 환자 개인이나 병원을 대신하여 제약사, 의료기기 서비스 사업자 등 개인 의료 정보를 직접 활용하는 업체에게 과금할 수 있다. 서버(150)는 의료 기관에 대한 마이데이터를 기반으로 개인 의료 정보를 저장하기 위한 클라우드 스토리지 서비스를 제공할 수 있으며, 이때 개인 의료 정보를 실제 활용하는 활용처를 대상으로 해당 정보가 저장된 스토리지의 활용 이력에 기반한 과금을 처리할 수 있다. 따라서, 사용자 동의를 기반으로 개인 의료 정보를 활용하고자 하는 활용처에서의 비용 부담을 통해 개인 의료 정보의 저장 및 관리 비용을 절감할 수 있다.For example, the server 150 interworks with the hospital platform to provide personal medical information including an electronic medical record (EMR), an electronic health record (EHR), a personal health record (PHR), etc. of each patient who has agreed to use the information. It can be stored and managed on cloud storage (eg, blob storage 407, etc.) You can charge the company that uses it directly. The server 150 may provide a cloud storage service for storing personal medical information based on My Data for a medical institution, and in this case, the storage in which the personal medical information is actually used is utilized Billing based on history can be processed. Therefore, it is possible to reduce the cost of storing and managing personal medical information by burdening the cost at the place where the personal medical information is to be utilized based on user consent.

이처럼 본 발명의 실시예들에 따르면, 클라우드 스토리지 서비스 환경에서 스토리지 활용 이력에 기반하여 스토리지 비용을 책정함으로써 차등 과금 정책을 구현할 수 있다.As such, according to embodiments of the present invention, a differential charging policy may be implemented by setting a storage cost based on a storage usage history in a cloud storage service environment.

이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 어플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The device described above may be implemented as a hardware component, a software component, and/or a combination of the hardware component and the software component. For example, the apparatus and components described in the embodiments may include a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA), and a programmable logic unit (PLU). It may be implemented using one or more general purpose or special purpose computers, such as a logic unit, microprocessor, or any other device capable of executing and responding to instructions. The processing device may execute an operating system (OS) and one or more software applications executed on the operating system. A processing device may also access, store, manipulate, process, and generate data in response to execution of the software. For convenience of understanding, although one processing device is sometimes described as being used, one of ordinary skill in the art will recognize that the processing device includes a plurality of processing elements and/or a plurality of types of processing elements. It can be seen that can include For example, the processing device may include a plurality of processors or one processor and one controller. Other processing configurations are also possible, such as parallel processors.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 컴퓨터 저장 매체 또는 장치에 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.Software may comprise a computer program, code, instructions, or a combination of one or more thereof, which configures a processing device to operate as desired or is independently or collectively processed You can command the device. The software and/or data may be embodied in any tangible machine, component, physical device, computer storage medium or device for interpretation by or providing instructions or data to the processing device. have. The software may be distributed over networked computer systems and stored or executed in a distributed manner. Software and data may be stored in one or more computer-readable recording media.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 이때, 매체는 컴퓨터로 실행 가능한 프로그램을 계속 저장하거나, 실행 또는 다운로드를 위해 임시 저장하는 것일 수도 있다. 또한, 매체는 단일 또는 수 개의 하드웨어가 결합된 형태의 다양한 기록수단 또는 저장수단일 수 있는데, 어떤 컴퓨터 시스템에 직접 접속되는 매체에 한정되지 않고, 네트워크 상에 분산 존재하는 것일 수도 있다. 매체의 예시로는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등을 포함하여 프로그램 명령어가 저장되도록 구성된 것이 있을 수 있다. 또한, 다른 매체의 예시로, 어플리케이션을 유통하는 앱 스토어나 기타 다양한 소프트웨어를 공급 내지 유통하는 사이트, 서버 등에서 관리하는 기록매체 내지 저장매체도 들 수 있다.The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable medium. In this case, the medium may be to continuously store a program executable by a computer, or to temporarily store it for execution or download. In addition, the medium may be various recording means or storage means in the form of a single or several hardware combined, it is not limited to a medium directly connected to any computer system, and may exist distributed over a network. Examples of the medium include a hard disk, a magnetic medium such as a floppy disk and a magnetic tape, an optical recording medium such as CD-ROM and DVD, a magneto-optical medium such as a floppy disk, and those configured to store program instructions, including ROM, RAM, flash memory, and the like. In addition, examples of other media may include recording media or storage media managed by an app store that distributes applications, sites that supply or distribute other various software, and servers.

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.As described above, although the embodiments have been described with reference to the limited embodiments and drawings, various modifications and variations are possible from the above description by those skilled in the art. For example, the described techniques are performed in an order different from the described method, and/or the described components of the system, structure, apparatus, circuit, etc. are combined or combined in a different form than the described method, or other components Or substituted or substituted by equivalents may achieve an appropriate result.

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents to the claims are also within the scope of the following claims.

Claims (15)

컴퓨터 장치에서 실행되는 스토리지 비용 책정 방법에 있어서,
상기 컴퓨터 장치는 메모리에 포함된 컴퓨터 판독가능한 명령들을 실행하도록 구성된 적어도 하나의 프로세서를 포함하고,
상기 스토리지 비용 책정 방법은,
상기 적어도 하나의 프로세서에 의해, 클라우드 환경에서의 스토리지에 대한 활용 정보를 기록하는 단계; 및
상기 적어도 하나의 프로세서에 의해, 상기 스토리지에 대하여 상기 활용 정보에 따른 과금 정보를 업데이트하는 단계
를 포함하고,
상기 스토리지 비용 책정 방법은,
PaaS(Platform as a Service)의 이용에 따른 과금을 처리하고,
상기 기록하는 단계는,
상기 스토리지 상의 데이터를 액세스하기 위한 API를 호출하는 단계;
ACL(access control list)을 기반으로 서비스 접근 대상을 판단하는 단계; 및
상기 API를 통해 상기 스토리지에 대한 활용 정보를 기록하기 위한 클라우드 워치(cloud watch) 동작을 수행하는 단계
를 포함하고,
상기 판단하는 단계는,
상기 API를 통해 ACL 기반의 액세스 컨트롤 작업을 수행하고 상기 PaaS에서의 트리거링 여부에 대해 인지하기 위한 정보로서 호출 대상 서비스에 대한 구분자 역할을 수행하는 ACL 정보를 이용하는 것
을 특징으로 하는 스토리지 비용 책정 방법.
A storage pricing method implemented on a computer device, comprising:
the computer device comprises at least one processor configured to execute computer readable instructions contained in a memory;
The method of determining the storage cost is,
recording, by the at least one processor, utilization information for storage in a cloud environment; and
Updating, by the at least one processor, charging information according to the utilization information for the storage
including,
The method of determining the storage cost is,
Handles billing according to the use of PaaS (Platform as a Service),
The recording step is
calling an API to access data on the storage;
determining a service access target based on an access control list (ACL); and
performing a cloud watch operation to record usage information for the storage through the API
including,
The determining step is
Using the ACL information that performs the ACL-based access control operation through the API and serves as a separator for the call target service as information for recognizing whether triggering in the PaaS is used
A storage pricing method characterized by
삭제delete 제1항에 있어서,
상기 스토리지 비용 책정 방법은,
PaaS의 기능 중 클라우드 사업자에 의해 특정된 기능의 이용에 따른 과금을 처리하는 것
을 특징으로 하는 스토리지 비용 책정 방법.
According to claim 1,
The method of determining the storage cost is,
Processing charges for the use of functions specified by the cloud service provider among the functions of PaaS
A storage pricing method characterized by
삭제delete 제1항에 있어서,
상기 기록하는 단계는,
ACL(access control list)이 허용한 호출에 대하여 상기 활용 정보를 기록하는 것
을 특징으로 하는 스토리지 비용 책정 방법.
According to claim 1,
The recording step is
Recording the usage information for calls allowed by access control list (ACL)
A storage pricing method characterized by
제1항에 있어서,
상기 수행하는 단계는,
상기 API의 호출이 가리키는 스토리지가 차등 과금 프로세스를 사용하는 스토리지인 경우 상기 클라우드 워치 동작을 트리거링하는 것
을 특징으로 하는 스토리지 비용 책정 방법.
According to claim 1,
The performing step is,
Triggering the cloud watch operation when the storage pointed to by the API call is storage using a differential charging process
A storage pricing method characterized by
제1항에 있어서,
상기 수행하는 단계는,
상기 API를 통해 발생하는 이벤트에 대해 모니터링 및 로깅을 수행하고 API 호출을 추적하여 PaaS의 이용에 따른 정보를 저장하는 것
을 특징으로 하는 스토리지 비용 책정 방법.
According to claim 1,
The performing step is,
Monitoring and logging the events that occur through the API, tracking API calls, and storing information according to the use of PaaS
A storage pricing method characterized by
제1항에 있어서,
상기 업데이트하는 단계는,
상기 스토리지의 활용 가중치에 따른 과금 할인 정책을 조회하는 단계; 및
상기 과금 할인 정책을 이용하여 상기 스토리지를 대상으로 차등 과금에 대한 정보를 업데이트하는 단계
를 포함하는 스토리지 비용 책정 방법.
According to claim 1,
The updating step is
inquiring a billing discount policy according to the storage utilization weight; and
Updating information on differential billing for the storage by using the billing discount policy
Storage pricing methods that include.
제1항, 제3항, 제5항 내지 제8항 중 어느 한 항의 스토리지 비용 책정 방법을 컴퓨터 장치에 실행시키기 위한 컴퓨터 프로그램이 기록되어 있는 컴퓨터 판독 가능한 기록매체.A computer-readable recording medium in which a computer program for executing the storage cost setting method of any one of claims 1, 3, and 5 to 8 in a computer device is recorded. 컴퓨터 장치에 있어서,
메모리에 포함된 컴퓨터 판독가능한 명령들을 실행하도록 구성된 적어도 하나의 프로세서
를 포함하고,
상기 적어도 하나의 프로세서에 의해,
클라우드 환경에서의 스토리지에 대한 활용 정보를 기록하고,
상기 스토리지에 대하여 상기 활용 정보에 따른 과금 정보를 업데이트하고,
상기 적어도 하나의 프로세서에 의해,
PaaS(Platform as a Service)의 이용에 따른 과금을 처리하고,
상기 적어도 하나의 프로세서에 의해,
상기 스토리지 상의 데이터를 액세스하기 위한 API를 호출하고,
ACL(access control list)을 기반으로 서비스 접근 대상을 판단하고,
상기 API를 통해 상기 스토리지에 대한 활용 정보를 기록하기 위한 클라우드 워치(cloud watch) 동작을 수행하고,
상기 적어도 하나의 프로세서에 의해,
상기 API를 통해 ACL 기반의 액세스 컨트롤 작업을 수행하고 상기 PaaS에서의 트리거링 여부에 대해 인지하기 위한 정보로서 호출 대상 서비스에 대한 구분자 역할을 수행하는 ACL 정보를 이용하는 것
을 특징으로 하는 컴퓨터 장치.
A computer device comprising:
at least one processor configured to execute computer readable instructions contained in memory
including,
by the at least one processor;
Record usage information for storage in the cloud environment,
update billing information according to the utilization information for the storage;
by the at least one processor;
Handles billing according to the use of PaaS (Platform as a Service),
by the at least one processor;
calling an API to access data on the storage;
Determining the service access target based on ACL (access control list),
performing a cloud watch operation to record usage information for the storage through the API;
by the at least one processor;
Using the ACL information that performs the ACL-based access control operation through the API and serves as a separator for the call target service as information for recognizing whether triggering in the PaaS is used
A computer device comprising a.
제10항에 있어서,
상기 적어도 하나의 프로세서에 의해,
PaaS의 기능 중 클라우드 사업자에 의해 특정된 기능의 이용에 따른 과금을 처리하는 것
을 특징으로 하는 컴퓨터 장치.
11. The method of claim 10,
by the at least one processor;
Processing charges for the use of functions specified by the cloud service provider among the functions of PaaS
A computer device comprising a.
삭제delete 제10항에 있어서,
상기 적어도 하나의 프로세서에 의해,
ACL이 허용한 호출에 대하여 상기 활용 정보를 기록하는 것
을 특징으로 하는 컴퓨터 장치.
11. The method of claim 10,
by the at least one processor;
Recording the usage information for calls allowed by the ACL
A computer device comprising a.
제10항에 있어서,
상기 적어도 하나의 프로세서에 의해,
상기 API의 호출이 가리키는 스토리지가 차등 과금 프로세스를 사용하는 스토리지인 경우 상기 클라우드 워치 동작을 트리거링하는 것
을 특징으로 하는 컴퓨터 장치.
11. The method of claim 10,
by the at least one processor;
Triggering the cloud watch operation when the storage pointed to by the API call is storage using a differential charging process
A computer device comprising a.
제10항에 있어서,
상기 적어도 하나의 프로세서에 의해,
상기 스토리지의 활용 가중치에 따른 과금 할인 정책을 조회하고,
상기 과금 할인 정책을 이용하여 상기 스토리지를 대상으로 차등 과금에 대한 정보를 업데이트하는 것
을 특징으로 하는 컴퓨터 장치.
11. The method of claim 10,
by the at least one processor;
Inquire the billing discount policy according to the utilization weight of the storage,
Updating information on differential billing for the storage using the billing discount policy
A computer device comprising a.
KR1020200084164A 2020-07-08 2020-07-08 Method and system for billing based on storage utilization history Active KR102359467B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200084164A KR102359467B1 (en) 2020-07-08 2020-07-08 Method and system for billing based on storage utilization history

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200084164A KR102359467B1 (en) 2020-07-08 2020-07-08 Method and system for billing based on storage utilization history

Publications (2)

Publication Number Publication Date
KR20220006332A KR20220006332A (en) 2022-01-17
KR102359467B1 true KR102359467B1 (en) 2022-02-08

Family

ID=80051829

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200084164A Active KR102359467B1 (en) 2020-07-08 2020-07-08 Method and system for billing based on storage utilization history

Country Status (1)

Country Link
KR (1) KR102359467B1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7273326B2 (en) * 2021-02-12 2023-05-15 ダイキン工業株式会社 Information processing device, information processing method, and program
KR20250054147A (en) 2023-10-15 2025-04-22 진도훈 Air compressed shoes using sensors
KR102788509B1 (en) * 2023-12-28 2025-03-31 주식회사 아이온커뮤니케이션즈 SaaS linkage system that implements linkage between SaaS applications using API specifications including BM

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004005647A (en) * 2002-05-10 2004-01-08 Microsoft Corp Method for providing access control, recording medium and system for controlling access
KR101644894B1 (en) * 2010-07-26 2016-08-12 에스케이텔레콤 주식회사 Cloud storage service apparatus and method
JP2017016513A (en) * 2015-07-03 2017-01-19 株式会社日立システムズ Charging information generation device, charging information generation method, and program
JP2019525363A (en) * 2016-06-06 2019-09-05 アルカテル−ルーセント Methods, systems, and devices for online billing in cloud systems

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190063158A (en) * 2017-11-29 2019-06-07 주식회사 핸디소프트 System and method for sharing and utilizing IoT data

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004005647A (en) * 2002-05-10 2004-01-08 Microsoft Corp Method for providing access control, recording medium and system for controlling access
KR101644894B1 (en) * 2010-07-26 2016-08-12 에스케이텔레콤 주식회사 Cloud storage service apparatus and method
JP2017016513A (en) * 2015-07-03 2017-01-19 株式会社日立システムズ Charging information generation device, charging information generation method, and program
JP2019525363A (en) * 2016-06-06 2019-09-05 アルカテル−ルーセント Methods, systems, and devices for online billing in cloud systems

Also Published As

Publication number Publication date
KR20220006332A (en) 2022-01-17

Similar Documents

Publication Publication Date Title
US12253980B2 (en) Distributed work data management
US10790965B1 (en) Tiered distributed ledger technology (DLT) in a network function virtualization (NFV) core network
KR102359467B1 (en) Method and system for billing based on storage utilization history
KR101107434B1 (en) Secure custom application cloud computing architecture
US10311216B2 (en) Borrowing software licenses in a license management system for time based usage
US20130283298A1 (en) Managing mobile execution environments
US12124580B2 (en) HSM self-destruction in a hybrid cloud KMS solution
JP2014528108A (en) Services for adding functionality to applications
JP2016126743A (en) Cloud service providing method and system
CN116472522A (en) Proxy cache for optimized service access with compact user objects and offline database updates
US20180373745A1 (en) Import, export, and copy management for tiered object storage
CN107667343B (en) System and method for loading on-demand resources
US12340242B2 (en) Method and system for collecting user information according to provided virtual desktop infrastructure service
US20170228408A1 (en) Data management apparatus and method therefor
KR101908214B1 (en) Cloud based broker platform for remote desktop sharing
KR102765776B1 (en) Token management method and system for distribution of music copyright fee based on connection between token management server and streaming server
CN117938842A (en) Resource processing method and device of multi-tenant system, electronic equipment and storage medium
KR101712609B1 (en) Cloud service system and method for providing initial information
KR20220005795A (en) Information bidding method for personal medical information management and system thereof
KR20250041455A (en) Sidechain method for development of cost-effective, reliable, and platform-specific blockchain and its system
US20240362556A1 (en) System and method for enriching cloud usage data
KR102055065B1 (en) Method for providing electronic civil affair cash service and system therefor
KR102382302B1 (en) Method and system for providing data
KR20150022037A (en) Server and method for distributing secondhand contents
KR20230059609A (en) Method and apparatus for providing contents service enabling user account to have ownership of content items

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20200708

PA0201 Request for examination
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20210726

Patent event code: PE09021S01D

PG1501 Laying open of application
E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20220126

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20220203

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20220204

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
PR1001 Payment of annual fee

Payment date: 20250124

Start annual number: 4

End annual number: 4