KR101709171B1 - 애그리게이팅된 환경에서의 벤더 최적화 - Google Patents
애그리게이팅된 환경에서의 벤더 최적화 Download PDFInfo
- Publication number
- KR101709171B1 KR101709171B1 KR1020137033296A KR20137033296A KR101709171B1 KR 101709171 B1 KR101709171 B1 KR 101709171B1 KR 1020137033296 A KR1020137033296 A KR 1020137033296A KR 20137033296 A KR20137033296 A KR 20137033296A KR 101709171 B1 KR101709171 B1 KR 101709171B1
- Authority
- KR
- South Korea
- Prior art keywords
- service
- services
- infrastructure
- infrastructure provider
- provider
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/12—Accounting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Commerce
- G06Q30/04—Billing or invoicing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0633—Lists, e.g. purchase orders, compilation or processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5072—Grid computing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Development Economics (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- General Physics & Mathematics (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Technology Law (AREA)
- Human Resources & Organizations (AREA)
- Entrepreneurship & Innovation (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Game Theory and Decision Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
클라우드 컴퓨팅 환경 내에서 벤더를 최적화하는데 효과적인 시스템 및 방법을 위한 기술이 일반적으로 기술된다. 예시에서, 패키지로서 함께 판매하는 서비스가 분해될 수 있고 서비스 제공자와 인프라 제공자 사이의 관계를 나타내는 계층 트리가 생성될 수 있다. 항목별로 작성된 청구서가 서비스 제공자로부터 수신되는 경우, 계층 트리는 항목별로 작성된 청구서로부터의 항목과 특정 인프라 제공자를 매칭하도록 사용될 수 있다. 인프라 제공자에 의해 제공되는 모든 서비스를 보여주는 거래 보고가 할인 또는 벌크율을 이용하기 위해 이후 각각의 인프라 제공자에게 발송될 수 있다. 다른 예시에서, 가장 낮은 비용으로 서비스를 제공하는 인프라 제공자의 세트가 결정될 수 있고, 서비스 제공자는 그 인프라 제공자의 세트로 교체하도록 구성되거나 요구될 수 있다.
Description
본 개시는 클라우드 컴퓨팅 환경에서의 벤더(vendor) 최적화에 일반적으로 관련된다.
클라우드 컴퓨팅은 인터넷 또는 다른 네트워크를 사용하여 클라우드에 기반을 두고 로컬에 저장되지 않는 서비스로의 접근을 제공한다. 통상적인 클라우드 컴퓨팅 환경은 서로 상호작용하여 최종 사용자를 위한 자원을 제공하는 애그리게이팅된(aggregated together) 복수의 층(layer)으로 구성될 수 있다. SaaS(Software as a Service), PaaS(Platform as a Service), 및 IaaS(Infrastructure as a Service)는 모두 "클라우드"를 구성하는 층이 될 수 있다. SaaS 층은 설치하여야 할 필요가 없고 고객 자신의 컴퓨터 상에서 애플리케이션을 실행하는 주문형 애플리케이션(on-demand application)을 제공할 수 있다. PaaS 층은 애플리케이션의 배치를 용이하게 하는 서비스로서 솔루션 스택 및 컴퓨팅 플랫폼을 전달할 수 있다. IaaS 층은 서비스로서 컴퓨팅 전력 또는 스토리지와 같은 컴퓨터 인프라(infrastructure)를 전달할 수 있다.
임의의 이러한 층은 최종 사용자에 의해 접근될 수 있으나, 층 사이의 상호작용은 최종 사용자에게 불명료할 수 있다. 최종 사용자가 층 중 하나로 접근하는 경우, 최종 사용자는 그 층과 다른 층 사이의 상호작용에 일반적으로 내밀히 관여하지 못한다. 층 간의 서비스에 대한 대가는, 전체 스토리지 비용으로 지불된 세트 양, 컴퓨팅 시간 등과 함께, 유틸리티 기반으로 통상적으로 이루어진다. 이러한 합쳐진 비용은 최종 사용자가 접근한 층에 의해 준비된 청구서를 통해 이후 최종 사용자에게 전해진다.
최종 사용자와 직접 인터페이스하지 않는 층은 자신의 자원과 서비스의 궁극적인 수령인을 통상적으로 알지 못한다. 최종 사용자 부분 및 배경 층에 대한 정보의 결여는 최종 사용자가 배경 층을 가지고 특별 할인 요금을 협상하지 못하는 것을 의미한다. 유사하게, 배경 층은 자신의 서비스와 자원을 사용하는 최종 사용자에게 할인 또는 벌크율(bulk rate)을 제안하지 못한다.
클라우드 컴퓨팅 환경으로의 종래 접근법의 전술된 결함은 종래 접근법 및 기법의 일부 문제의 개관을 제공하도록 단지 의도된 것이며 완전한 것으로 의도된 것은 아니다. 종래 시스템 및 기법이 가지는 다른 문제와, 여기에서 기술되는 다양한 제한되지 않은 실시예의 대응하는 이점이 다음의 서술의 검토 상에서 더 명확해질 것이다.
다양한 제한되지 않는 실시예에서, 합쳐진 환경에서의 벤더의 최적화를 허용하기 위한 시스템 및 방법이 제공된다. 예시적인 실시예에서, 방법은 묶음 서비스(bundled service)를 탑 레벨 서비스와 서브 서비스로 분해(de-aggregate)하는 단계, 탑 레벨 서비스와 서브 서비스를 매핑하여 계층 트리를 생성하는 단계 및, 규칙의 세트에 기초하여 계층 트리를 수정하는 단계 및 서브 서비스를 재통합하는 단계를 포함하는, 탑 레벨 서비스와 서브 서비스의 의존도를 구성하는 단계를 포함한다.
다른 예시적인 실시예에서, 시스템은, 묶음 서비스를 분석하고, 묶음 서비스의 서비스에 대한 정보를 추출하도록 구성되는 분해 컴포넌트 및 묶음 서비스에 대한 정보의 함수로서 인프라 제공자 및 서비스의 계층 트리를 생성하도록 구성되는 매핑 컴포넌트를 포함하고, 서비스의 계층 트리는 서비스 제공자와 인프라 제공자와 사이의 관계를 나타낸다. 시스템은 규칙의 세트에 기초하여 서비스와 인프라 제공자 사이의 관계를 수정하도록 구성되는 구성 엔진 컴포넌트를 더 포함할 수 있다.
다른 예시적인 실시예에서, 방법은 복수의 서비스 제공자로부터 항목별로 청구된 청구서(itemized bill)을 수신하는 단계, 인프라 제공자와 서비스 제공자의 계층 트리로 접근하는 단계, 계층 트리를 분석하는 단계를 포함하는, 복수의 제공자로부터의 항목별로 청구된 청구서 상의 아이템을 인프라 제공자에 의해 제공되는 서비스에 매칭하는 단계, 및 각각의 인프라 제공자에 의해 제공되는 서비스의 통합된 리스트를 인프라 제공자에게 발송하는 단계를 포함한다.
다른 예시적인 실시예에서, 컴퓨터 판독가능 저장 매체는 컴퓨터 실행가능 명령어를 가지고, 컴퓨터 실행가능 명령어는, 실행에 응답하여, 컴퓨팅 장치로 하여금, 각각의 서비스 제공자로부터 항목별로 청구된 청구서를 수신하는 단계, 항목별로 청구된 청구서에 기초하여 인프라 제공자에 의해 제공되는 서비스의 리스트를 생성하는 단계, 여기에서 서비스의 리스트는 서비스의 가격 및 사용을 포함하고, 그리고 서비스 제공자가 공통 인프라 제공자로 전환하도록 구성함으로써 인프라 제공자를 통합하는 단계를 포함하는 동작을 수행하도록 하게 한다.
다른 예시적인 실시예에서, 시스템은 서비스 제공자로부터 항목별로 청구된 청구서를 수신하도록 구성된 청구 컴포넌트, 서비스 제공자와 인프라 제공자의 계층 트리 및 항목별로 청구된 청구서를 분석하고, 항목별로 청구된 청구서로부터의 아이템을 인프라 제공자에 매칭하도록 구성되는 매칭 컴포넌트 및 인프라 제공자로 매치된 아이템을 클러스터링(clustering)하고 그룹화된 거래 보고(transaction report)를 인프라 제공자에게 발송하도록 구성되는 그룹화 컴포넌트를 포함한다.
다른 예시적인 실시예에서, 시스템은 인프라 제공자 세트를 생성하도록 구성되는 세트 생성 컴포넌트, 여기에서 인프라 제공자 세트는 서비스 제공자에 의해 사용되는 서비스 세트를 제공하도록 구성되고, 인프라 제공자 세트에서의 인프라 제공자 사용 및 사용 당 가격을 분석하고 가장 낮은 비용을 가지는 세트로부터 인프라 제공자 세트를 선택하도록 구성되는 선택 컴포넌트 및 서비스 제공자 구성을 선택 컴포넌트에 의해 선택되는 인프라 제공자 세트로 전환하도록 수정하기 위한 요청을 전송하도록 구성되는 통합 컴포넌트를 포함한다.
다른 예시적인 실시예에서, 시스템은 복수의 서비스 제공자로부터의 항목별로 청구된 청구서 상의 아이템을 복수의 인프라 제공자에 의해 제공되는 서비스로 매칭하기 위한 수단, 복수의 인프라 제공자에 의해 제공되는 서비스에 기초하여 항목별로 청구된 청구서로부터의 아이템을 그룹으로 통합하기 위한 수단 및 인프라 제공자에 의해 제공되는 서비스의 통합된 리스트를 복수의 인프라 제공자에게 발송하기 위한 수단을 포함한다.
이상의 요약은 단순히 예시적인 것으로서 어떠한 방식으로든 제한적으로 의도된 것이 아니다. 이하의 상세한 설명과 도면을 참조함으로써, 상기 설명된 예시적인 양태, 실시예, 그리고 특징에 더하여, 추가적인 양태, 실시예, 그리고 특징 또한 명확해질 것이다.
다양한 제한이 아닌 실시예가 다음의 도면을 참조하여 더 기술된다.
도 1은 서비스 제공자와 인프라 제공자의 계층 트리를 생성하기 위한 시스템의 예시적이고 제한이 아닌 실시예를 도시하는 블록도이고,
도 2는 서비스 제공자와 인프라 제공자 사이의 의존도와 관계를 수정하기 위한 시스템의 예시적이고 제한이 아닌 실시예를 도시하는 블록도이고,
도 3은 서비스 제공자와 인프라 제공자의 계층 트리를 생성하고 수정하기 위한 시스템의 예시적이고 제한이 아닌 실시예를 도시하는 블록도이고,
도 4는 탑 레벨 서비스와 서브 서비스의 의존도를 구성하기 위한 방법의 예시적이고 제한이 아닌 실시예의 흐름도를 도시하고,
도 5는 탑 레벨 서비스와 서브 서비스의 계층 트리를 생성하고 수정하기 위한 방법의 예시적이고 제한이 아닌 실시예의 흐름도를 도시하고,
도 6은 통합된 거래 보고를 인프라 제공자에게 발송하기 위한 청구 시스템의 예시적이고 제한이 아닌 실시예를 도시하는 블록도이고,
도 7은 인프라 제공자에게 서비스의 통합된 리스트를 발송하기 위한 방법의 예시적이고 제한이 아닌 실시예의 흐름도를 도시하고,
도 8은 서비스 제공자에 의해 사용되는 인프라 제공자를 통합하기 위한 컴퓨터 판독가능 명령어의 세트의 예시적이고 제한이 아닌 실시예의 흐름도를 도시하고,
도 9는 인프라 제공자를 선택하기 위한 시스템의 예시적이고 제한이 아닌 실시예를 도시하는 블록도이고,
도 10은 대상 개시의 실시예 중 적어도 일부에 대하여 배열되는 예시적인 컴퓨팅 장치를 도시하는 블록도이고,
도 11은 청구된 대상에 따라 이용될 수 있는 예시적인 네트워킹 환경을 도시하는 블록도이다.
도 1은 서비스 제공자와 인프라 제공자의 계층 트리를 생성하기 위한 시스템의 예시적이고 제한이 아닌 실시예를 도시하는 블록도이고,
도 2는 서비스 제공자와 인프라 제공자 사이의 의존도와 관계를 수정하기 위한 시스템의 예시적이고 제한이 아닌 실시예를 도시하는 블록도이고,
도 3은 서비스 제공자와 인프라 제공자의 계층 트리를 생성하고 수정하기 위한 시스템의 예시적이고 제한이 아닌 실시예를 도시하는 블록도이고,
도 4는 탑 레벨 서비스와 서브 서비스의 의존도를 구성하기 위한 방법의 예시적이고 제한이 아닌 실시예의 흐름도를 도시하고,
도 5는 탑 레벨 서비스와 서브 서비스의 계층 트리를 생성하고 수정하기 위한 방법의 예시적이고 제한이 아닌 실시예의 흐름도를 도시하고,
도 6은 통합된 거래 보고를 인프라 제공자에게 발송하기 위한 청구 시스템의 예시적이고 제한이 아닌 실시예를 도시하는 블록도이고,
도 7은 인프라 제공자에게 서비스의 통합된 리스트를 발송하기 위한 방법의 예시적이고 제한이 아닌 실시예의 흐름도를 도시하고,
도 8은 서비스 제공자에 의해 사용되는 인프라 제공자를 통합하기 위한 컴퓨터 판독가능 명령어의 세트의 예시적이고 제한이 아닌 실시예의 흐름도를 도시하고,
도 9는 인프라 제공자를 선택하기 위한 시스템의 예시적이고 제한이 아닌 실시예를 도시하는 블록도이고,
도 10은 대상 개시의 실시예 중 적어도 일부에 대하여 배열되는 예시적인 컴퓨팅 장치를 도시하는 블록도이고,
도 11은 청구된 대상에 따라 이용될 수 있는 예시적인 네트워킹 환경을 도시하는 블록도이다.
이하의 상세한 설명에서 본 개시의 일부를 이루는 첨부된 도면이 참조된다. 문맥에서 달리 지시하고 있지 않은 한, 통상적으로, 도면에서 유사한 부호는 유사한 컴포넌트를 나타낸다. 상세한 설명, 도면, 그리고 청구범위에 설명되는 예시적인 예시는 제한적으로 여겨지지 않는다. 본 개시에서 제시되는 대상의 범위 또는 사상에서 벗어나지 않으면서도 다른 예시가 이용되거나, 다른 변경이 이루어질 수 있다. 여기에서 일반적으로 설명되고, 도면에 도시되는 본 개시의 양태는 다양한 다른 구성으로 배열, 대체, 조합, 분리 및 설계될 수 있음과 이 모두가 여기에서 명시적으로 고려됨이 기꺼이 이해될 것이다.
상세한 설명에서, "서비스 제공자" 및 "인프라 제공자"로의 참조가 이루어진다. 단순성을 위하여, 인프라 제공자(또는, 서브 서비스)는 서비스 제공자에게 서비스와 자원을 제공하는 한편, 서비스 제공자 (또는, 탑 레벨 서비스)는 고객 또는 최종 사용자에게 서비스를 제공하는 것으로 정의될 수 있다. 최종 사용자는 SaaS, PaaS, 또는 IaaS 층 중 임의의 것과 상호작용할 수 있으며, 오직 한 유형의 층과의 상호작용에 제한되는 것이 아님이 주목되어야 한다. 따라서, 서비스 제공자와 인프라 제공자 각각은 SaaS, PaaS, 또는 IaaS 층 중 임의의 하나일 수 있다.
도 1로 돌아가, 서비스 제공자와 인프라 제공자의 계층 트리를 생성하기 위한 시스템의 예시적이고 제한이 아닌 실시예의 블록도가 도시된다. 도 1에 도시된 바와 같이, 분해 시스템(100)이 묶음 서비스(104(a)-104(c))를 포함하는 묶음 서비스의 세트를 해체하기 위하여 제공된다. 분해 컴포넌트(106)는 묶음 서비스를 수신할 수 있고, 서비스를 서비스 제공자(112(a), 112(b), 114(a) 및 114(b)), 및 인프라 제공자(110(a), 110(b) 및 110(c))로 분해할 수 있다. 매핑 컴포넌트(108)는 벤더의 의존도와 관계를 나타내는 계층 트리(116)를 생성할 수 있다. 명확성을 위해, 도 1은 인프라 제공자의 하나의 층과 서비스 제공자의 두 개의 층을 도시하고 있으나, 계층 트리(116)는 임의의 수의 층 및 인프라 및 서비스 제공자의 조합을 포함할 수 있다.
일 예시에서, 묶음 서비스의 세트(102)는, 고객이 사용하거나 가입한 클라우드 서비스의 전부 또는 일부일 수 있다. 묶음 서비스(102)는 사적 및 공적 클라우드 서비스의 임의의 조합일 수 있다. 묶음 서비스(102)의 세트는 묶음 서비스(104(a), 104(b) 및 104(c))를 포함할 수 있다. 묶음 서비스는 사적 클라우드 네트워크 또는 공적 클라우드 네트워크에서 존재할 수 있다.
분해 컴포넌트(106)는 묶음 서비스(104(a) 내지 104(c))를 분석할 수 있고 서비스 제공자(112(a), 112(b), 114(a) 및 114(b)) 및 인프라 제공자(110(a) 내지 (110(c))에 대한 정보를 추출할 수 있다. 도 1이 네 개의 서비스 제공자와 세 개의 인프라 제공자를 포함하는 묶음 서비스를 도시하고 있는 반면, 묶음 서비스는 임의의 수 및/또는 조합의 서비스 제공자와 인프라 제공자를 포함할 수 있음이 이해될 것이다.
분해 컴포넌트(106)에 의해 추출된 정보는, 묶음 서비스에 의해 사용되는 서비스 제공자, 및 각각의 서비스 제공자에 의해 사용되는 인프라 제공자를 식별할 수 있다. 정보는 서비스 제공자에 의해 실제로 사용되는 인프라 제공자와 관련될 수 있고, 실제로 사용되고 있지는 않으나 서비스 제공자에 의해 사용될 수 있는 인프라 제공자를 또한 식별할 수 있다. 예시로써, 계층 트리(116)에서, 서비스 제공자(112(a))는 인프라 제공자(110(c))가 아닌 두 인프라 제공자(110(a) 및 110(b))는 사용할 수 있다. 유사하게, 서비스 제공자 서비스 제공자(112(b))는 인프라 제공자(110(a))가 아닌 두 인프라 제공자(110(b) 및 110(c))는 사용할 수 있다.
일 실시예에서, 분해 컴포넌트(106)는, 묶음 서비스의 패키지 또는 모듈 각각이 호출하는 서비스에 대한 정보를 로그하거나 묶음 서비스를 모니터함으로써, 서비스 제공자와 인프라 제공자 사이의 관계에 대한 정보를 추출할 수 있다. 다른 실시예에서, 분해 컴포넌트(106)가 묶음 서비스 내의 모듈에 의해 이루어진 서비스 요청을 모니터하는 것이 불가능한 경우, 분해 컴포넌트(106)는 서비스 제공자와 인프라 제공자 사이의 관계의 미리 지정된 리스트를 수신하도록 구성될 수 있다. 예시로써, 분해 컴포넌트(106)는, 묶음 서비스에서 식별된 서비스 제공자에게 사용되고 있거나 사용될 수 있는 인프라 제공자를 결정해달라는 요청을 발송하는 것에 응답하여, 이러한 정보를 수신할 수 있다.
추가적인 실시예에서, 분해 컴포넌트(106)는 서비스와 인프라 코드에 대한 구성 파일, 스크립트 또는 헤더를 분석(parse)함으로써 서비스 제공자와 인프라 제공자 사이의 관계에 대한 정보를 추출할 수 있다. 예컨대, SaaS 서비스는 실행 및 스크립트의 혼합(mixture of scripts and executables)일 수 있고, 분해 컴포넌트(106)는 스크립트나 구성 파일을 로드할 수 있고, 이용 가능하거나 실현되는 인프라 컴포넌트 상의 정보를 찾는 그들을 분석할 수 있다. 분해 컴포넌트(106)가 포인터, 위치, 네트워크 주소 또는 인프라 요소 상의 다른 정보를 찾는 경우, 분해 컴포넌트(106)는 지시된 디렉토리 또는 머신으로 더 변경될 수 있고, 구성 파일, 스크립트, 헤더 등의 검색을 반복할 수 있다. 이러한 검색은 각각의 서브 디렉토리(계층적 검색) 및 다른 머신, 디렉토리 또는 네트워크 위치로의 후속 링크들로 내려가고 이러한 위치들에서 계층적 검색을 반복하는 하나 또는 복수의 쓰레드에 의해 수행될 수 있다. 프로세스는 탐색할 추가적인 머신 또는 디렉토리 및 인프라 요소 상의 추가적인 로드가 없을 때까지 계속한다. 추가적 예시에서, 합쳐진 서비스의 검토(audit)가 제3자에 의해 수행될 수 있고, 그 결과는 분해 컴포넌트(106)에 의해 분석되어 정보를 추출할 수 있다. 대안적으로, 벤더는 분해 컴포넌트(106)에 의해 분석될 수 있는 탑 레벨 서비스와 서브 서비스를 리스팅한 테이블을 제공하여 서비스 제공자와 인프라 제공자에 대한 정보를 컴파일할 수 있다. 이러한 외부 참조는 테이블 또는 리스트의 형태로 제공될 수 있거나 분해 컴포넌트(106)가 탑 레벨 서비스 및/또는 제공자 상에서 정보를 식별하면서 질의할 수 있는 분리된 웹 서비스 또는 API의 형태를 취할 수 있다.
매핑 컴포넌트(108)는 분해 컴포넌트(106)에 의해 추출되는 정보를 사용하는 데이터 스토어를 생성할 수 있다. 매핑 컴포넌트(108)는 묶음 서비스에 대한 정보의 함수로서 계층 트리(116)를 생성하도록 또한 구성될 수 있다. 계층 트리(116)는 서비스 제공자(112(a), 112(b), 114(a) 및 114(b)) 및 인프라 제공자(110(a), 110(b), 및 (110(c)) 사이의 관계를 나타낼 수 있다. 계층 트리(116)가 오직 두 서비스 제공자 및 세 개의 인프라 제공자를 나타내는 반면, 매핑 컴포넌트(108)는 임의의 수 및/또는 조합의 서비스 제공자 및 인프라 제공자를 가지는 계층 구조를 생성할 수 있다.
매핑 컴포넌트(108)는 분해 컴포넌트(106)에 의해 추출되는 의존도 및 관계 정보를 분석함으로써 계층 트리(116)를 생성할 수 있다. 매핑 컴포넌트(108)는 인프라 제공자에 의존하는 서비스 제공자뿐만 아니라, 모든 잠재적인 관계에 기초하여 계층 트리(116)를 생성할 수 있다. 트리의 노드는 비용, 이용가능성 조건, 연락 정보 또는 인프라 서비스 및 잠재적인 인프라 서비스에 관련되는 네트워크 주소와 같은 추가적인 데이터를 포함할 수 있다.
도 2로 이제 돌아가서, 서비스 제공자와 인프라 제공자 사이의 관계 및 의존도를 수정하기 위한 시스템의 예시적이고 제한적이지 않은 실시예를 도시하는 블록도가 도시된다. 도 2에 도시되는 바와 같이, 구성 시스템(200)은 서비스 제공자와 인프라 제공자 사이의 의존도와 관계를 관리하도록 제공된다. 구성 엔진 컴포넌트(202)는 규칙 생성 컴포넌트(204)에 의해 제공되는 규칙의 세트를 사용하여 계층 트리(116)에 나타나는 인프라 제공자 및 서비스 제공자의 의존도를 수정한다. 수정된 계층 트리(206)는 수정된 관계와 의존도를 나타낸다.
구성 엔진 컴포넌트(202)는 서비스 제공자(112(a) 내지 114(b))와 인프라 제공자(110(a), 110(b) 및 110(c))의 의존도와 관계를 서비스 및 인프라 제공자와 호환 가능한 임의의 가능한 조합으로 변경함으로써 계층 트리(116)를 수정하도록 구성될 수 있다. 예컨대, 계층 트리(116)에 도시된 바와 같이, 서비스 제공자(112(b))는 인프라 제공자(110(b) 및 110(c))와 호환 가능한 한편, 서비스 제공자(112(a))는 인프라 제공자(110(a) 및 (110(b)) 중 어느 하나를 사용할 수 있다. 구성 엔진 컴포넌트(202)는 관계를 수정할 수 있고, 서비스 제공자(112(a) 및 112(b)) 둘 모두 수정된 계측 트리(206)에 도시된 인프라 제공자(110(b))를 사용하도록 인프라 제공자를 통합하도록 구성될 수 있다. 또한, 서비스 제공자(114(a) 및 114(b))는 각각 서비스 제공자(112(a) 및 112(b))를 사용하도록 구성될 수 있다. 구성 엔진 컴포넌트(202)는 수정된 계층 트리(206) 내 도시된 관계를 수정하는 것에 제한되지 않을 뿐만 아니라 임의의 수 및/또는 조합의 가능한 의존도를 또한 생성할 수 있음이 이해될 것이다.
일 실시예에서, 구성 엔진 컴포넌트(202)는 SaaS 층 서비스 제공자로의 접근을 가질 수 있다. 이러한 실시예에서, 구성 엔진 컴포넌트(202)는 SaaS 층 서비스 제공자를 구성함으로써 관계를 수동으로 수정하여 특정 인프라 제공자를 사용할 수 있다.
다른 실시예에서, 구성 엔진 컴포넌트(202)는 서비스 제공자의 관계를 직접적으로 수정하기 위한 접근 또는 권한이 결여될 수 있다. 이러한 예시에서, 구성 엔진 컴포넌트(202)는 서비스 제공자에게 규칙의 세트에 따라 관계를 변경해달라는 요청을 발송할 수 있다.
일 실시예에서, 구성 엔진 컴포넌트(202)를 가이드하기 위하여, 규칙 생성 컴포넌트(204)는, 구성 엔진 컴포넌트(202)가 관계를 수정함에 있어서 적용할 수 있거나 따를 수 있는 규칙의 세트를 생성하도록 구성될 수 있다. 규칙은 인프라 제공자의 사용의 크기 또는 가격 수준에 기초하여 동적으로 생성될 수 있다. 규칙 생성 컴포넌트(204)는 인프라 제공자와 함께 고객이 가지는 가입의 데이터베이스를 또한 유지할 수 있고, 규칙을 생성하여 특정 인프라 제공자가 고객이 가지는 가입에 기초하여 우선적으로 사용되도록 서비스 제공자의 의존도를 수정할 수 있다. 규칙 생성 컴포넌트(204)는 계층 트리(116)으로부터 정보를 또한 유도할 수 있다.
추가적인 실시예에서, 규칙 생성 컴포넌트(204)는 인프라 제공자가 할인 또는 벌크율을 가지는지 결정할 수 있고, 그러한 인프라 제공자를 우선적으로 선택하는 규칙의 세트를 생성할 수 있다. 대안적으로, 규칙 생성 컴포넌트는 규칙을 생성하여 인프라 층에 의해 제공되는 서비스를 가능한 한 적은 인프라 제공자로 통합하도록 구성될 수 있다.
도 3으로 이제 돌아가서, 서비스 제공자와 인프라 제공자의 계층 트리를 생성하고 수정하기 위한 시스템의 예시적이고 제한이 아닌 실시예를 도시하는 블록도가 도시된다. 시스템(300)은 (도 1 및 도 2에 각각 도시된) 시스템(100 및 200)이 함께 조합된 표현이다.
분해 컴포넌트(302)는 묶음 서비스를 분석하고, 묶음 서비스에서의 서비스에 관련된 정보를 추출하도록 구성될 수 있다. 묶음 서비스는 사적 클라우드 네트워크 또는 공적 클라우드 네트워크 내에 존재할 수 있고, 서비스 제공자 및 인프라 제공자를 포함할 수 있다. 분해 컴포넌트(302)에 의해 추출된 정보는 사용되고 있거나 서비스 제공자에 의해서 잠재적으로 사용될 수 있는 인프라 제공자를 식별할 수 있다.
분해 컴포넌트(302)에 의해 추출된 정보를 사용하여, 매핑 컴포넌트(304)는 서비스 제공자와 인프라 제공자의 계층 트리(306)를 생성하도록 구성될 수 있다. 계층 트리(306)는 인프라 제공자 및 서비스 제공자 사이의 관계를 디스플레이할 수 있다. 계층 트리(306)는 실제 관계를 나타낼 수 있고, 즉, 인프라 제공자가 서비스 제공자에 의해 사용되는 관계, 이 뿐만 아니라 인프라 제공자와 서비스 제공자 사이의 잠재적인 관계 또한 나타낼 수 있다.
구성 엔진 컴포넌트(308)는 세트의 규칙에 따라 인프라 제공자와 서비스 제공자 사이의 관계를 수정하도록 구성될 수 있다. 규칙은 인프라 제공자의 사용의 크기 또는 비용에 기초할 수 있다. 구성 엔진 컴포넌트(308)는 인프라 제공자의 수를 통합하기 위하여 관계를 또한 수정할 수 있다. 이는 수정된 계층 트리(310) 내에서 도시될 수 있다.
도 4-도 5는 전술된 시스템에 관한 프로세스를 도시한다. 도 4-도 5 내의 프로세스는 도 1, 도 2 및 도 3 각각에서 도시된 시스템(100, 200 또는 300)에 의한 예시를 위해 구현될 수 있다.
도 4는 탑 레벨 서비스와 서브 서비스의 의존도를 구성하기 위한 방법의 예시적이고 제한이 아닌 실시예의 흐름도를 도시한다. 도면 부호 400의 블록(묶음 서비스를 탑 레벨 서비스와 서브 서비스로 분해)에서, 구성 프로세스는 묶음 서비스를 탑 레벨 서비스와 서브 서비스로 분해함으로써 개시된다. 묶음 서비스는 사적 클라우드 네트워크 또는 공적 클라우드 네트워크 내 존재할 수 있고, 웹사이트, 인터넷 또는 다른 네트워크를 통해 접근될 수 있다. 묶음 서비스는 또한 고객이 사용하거나 가입한 클라우드 서비스의 전부 또는 일부분일 수 있다.
묶음 서비스를 분해하는 단계는, 탑 레벨 서비스에 의해 호출되거나 탑 레벨 서비스와 호환 가능한 서브 서비스를 결정함으로써, 또는 제3자에 의한 검토, 벤더가 제공하는 표로부터 탑 레벨 서비스에 의해 사용되는 서브 서비스의 리스트에 의해, 사용되는 서브 서비스의 리스트를 수신하는 단계를 포함할 수 있다.
도면 부호 410의 블록(탑 레벨 서비스와 서비 서비스를 매핑하여 계층 트리 생성)에서, 묶음 서비스가 분해되고 정보가 탑 레벨 서비스와 서브 서비스에 대하여 추출되는 경우, 탑 레벨 서비스와 서브 서비스는 매핑되어 계층 트리를 생성한다. 계층 트리는 탑 레벨 서비스에 의해 사용되는 서브 서비스뿐만 아니라 탑 레벨 서비스와 호환 가능한 모든 서브 서비스를 디스플레이할 수 있다.
도면 부호 420의 블록(탑 레벨 서비스와 서브 서비스의 의존도를 구성하고 규칙의 세트에 기초하여 계층 트리를 수정하여 서브 서비스 통합)에서, 탑 레벨 서비스와 서브 서비스의 의존도가 구성되고 계층 트리가 수정된다. 의존도의 구성은 탑 레벨 서비스가 더 적은 서브 서비스를 사용하도록 서브 서비스를 통합하기 위해 설계된 규칙의 세트에 기초할 수 있다. 규칙의 세트는 특정 서브 서비스를 우선적으로 선택하도록 정의될 수 있다.
당업자는, 여기에서 개시되는 이러한 그리고 다른 프로세스 및 방법에 대하여, 프로세스와 방법에서 수행되는 기능이 상이한 순서로 구현될 수 있음을 이해할 것이다. 나아가, 개관적인 단계 및 동작은 오직 예시로 제공되는 것이며, 개시된 실시예의 본질에서 벗어나지 않으면서, 단계 및 동작 중 일부는 선택적일 수 있거나, 더 적은 단계 및 동작으로 조합될 수 있거나, 또는 추가적인 단계 및 동작으로 확장될 수 있다.
도 5는 탑 레벨 서비스와 서브 서비스의 계층 트리를 생성하고 수정하기 위한 방법의 예시적이고 제한이 아닌 실시예의 흐름도를 도시한다. 500(탑 레벨 서비스의 사용 추적 및 탑 레벨 서비스에 의해 사용되는 서브 서비스 결정)에서, 탑 레벨 서비스의 사용이 추적될 수 있고, 이러한 추적에 기초하여, 탑 레벨 서비스에 의해 사용되는 서브 서비스가 결정될 수 있다. 추적은 탑 레벨 서비스가 서브 서비스로부터의 서비스를 요청하는 서비스 요청을 모니터함으로써 달성될 수 있다.
도면 부호 510의 블록(탑 레벨 서비스와 호환 가능한 서브 서비스의 리스트 수신)에서, 탑 레벨 서비스와 호화 가능한 서브 서비스의 리스트가 수신된다. 서브 서비스의 리스트는 탑 레벨 서비스를 분석함으로써 결정될 수 있다. 대안적으로, 탑 레벨 서비스와 호환 가능한 서브 서비스를 리스팅하여, 탑 레벨 서비스와 호환 가능한 서브 서비스의 리스트가 제3자의 검토 보고에 의해 컴파일될 수 있거나, 탑 레벨 서비스 벤더로부터 수신될 수 있다.
도면 부호 520의 블록(탑 레벨 서비스와 호환 가능하고 사용되는 서브 서비스를 나타내는 정보를 포함하는 데이터 스토어 생성)에서, 서브 서비스의 리스트가 수신되면, 사용되는 서브 서비스를 나타내는 정보를 포함하는 데이터 스토어가 생성될 수 있다. 데이터 스토어는 탑 레벨 서비스와 호환 가능한 다른 서브 서비스에 대한 정보를 또한 포함할 수 있다. 데이터 스토어는 데이터 센터 내에서 저장될 수 있거나 클라우드 내에서 저장될 수 있다.
도면 부호 530의 블록(데이터 스토어에 기초하여 계층 트리 생성)에서, 계층 트리는 데이터 스토어에서의 정보에 기초하여 생성될 수 있다. 계층 트리는 탑 레벨 서비스와 서브 서비스 사이의 관계를 나타낸다. 계층 트리는 의존도 및 관계 정보를 분석함으로써 생성될 수 있고, 탑 레벨 서비스에 의해 사용되는 서브 서비스를 나타낼 뿐만 아니라, 탑 레벨 서비스와 호환 가능하거나 또는 탑 레벨 서비스에 의해 사용될 수 있는 서브 서비스를 나타낸다.
도면 부호 540의 블록(서브 서비스의 비용에 기초하여 계층 트리 수정)에서, 계층 트리가 생성되면, 트리에 대한 의존도는 서브 서비스의 비용에 기초하여 수정될 수 있다. 탑 레벨 서비스에 의해 사용되고 있는 서브 서비스가 탑 레벨 서비스와 호환 가능한 서브 서비스의 비용보다 더 비싸면, 의존도는 탑 레벨 서비스가 더 값 싼 서브 서비스를 사용하도록 수정될 수 있다. 비용에 대한 정보는 제3자 소스로부터 복구될 수 있거나, 서브 서비스로부터 유도될 수 있거나 또는 고객에 의해 제공될 수 있다. 수정은, 탑 레벨 서비스를 더 낮은 비용의 서브 서비스로 전환하도록 구성하여, 직접적으로 완료될 수 있거나, 탑 레벨 서비스로 더 낮은 비용의 서브 서비스로 변경하라는 요청을 발송함으로써 달성될 수 있다.
대안적으로, 도면 부호 550의 블록(서브 서비스의 사용 크기에 관한 조건에 맞는 것에 응답하여 계층 트리 수정)에서, 계층 트리가 서브 서비스의 사용 크기에 관한 조건에 맞거나 만족하는 것에 응답하여 수정될 수 있다. 사용의 특정 크기가 만족되면, 서브 서비스는 할인 또는 벌크율을 제안할 수 있으므로, 계층 트리는 사용 크기가 서브 서비스 중 적어도 하나에 맞는 것을 보장하도록 수정될 수 있다. 탑 레벨 서비스가 인프라 지원을 위한 다양한 서브 서비스를 사용하고 있으나 서브 서비스당 증가된 사용 크기와 함께 더 적은 서브 서비스가 사용되는 조합이 발견될 경우에, 탑 레벨 서비스의 의존도가 그에 따라 수정될 수 있다.
도 6으로 이제 돌아와서, 인프라 제공자에게 통합된 거래 보고를 발송하기 위한 청구 시스템의 예시적이고 제한이 아닌 실시예를 도시하는 블록도가 도시된다. 도 6에 도시된 바와 같이, 시스템(600)은 서비스 제공자로부터 수신된 다수의 항목별로 청구된 청구서를 취하고 항목별로 청구된 청구서를 해체하고, 인프라 제공자가 준 서비스를 리스팅하는 보고를 인프라 제공자에게 발송하도록 제공된다.
청구 컴포넌트(604)는 서비스 제공자(602(a), 602(b) 및 602(c)로부터 항목별로 청구된 청구서를 수신하도록 구성될 수 있다. 항목별로 청구된 청구서는 디지털 방식으로 수신될 수 있거나 청구 컴포넌트(604)에 의해 스캔되고 디지털 형식으로 바뀐 종이 청구서일 수 있다. 항목별로 청구된 청구서는 스토리지, 스토리지 거래, 계산 시간, 데이터 전송 등에 대한 항목별로 청구된 비용을 포함할 수 있다. 청구에 대한 아이템은 기능적으로 또는 연대순으로 그룹화될 수 있다. 항목별로 청구된 청구서에 대한 아이템은 서비스 제공자 및 인프라 제공자에 의해 제공되는 서비스를 나타낼 수 있다.
매칭 컴포넌트(606)는 항목별로 청구된 청구서 상의 아이템을 특정 인프라 제공자로 매칭하도록 제공될 수 있다. 매칭 컴포넌트(606)는 서비스 제공자로부터 항목별로 청구된 청구서를 분석하여 항목별로 청구된 상의 아이템 중 어느 것이 인프라 제공자와 매칭되는지 결정하도록 구성될 수 있다. 계층 트리(608)는 서비스 제공자와 인프라 제공자 사이의 관계를 나타내는 정보를 포함할 수 있다. 계층 트리(608)는 매칭 컴포넌트(606)가 사용하는 인프라 제공자에 의해 형성되는 서비스의 유형에 대한 정보를 포함하여 청구서 상의 아이템을 인프라 제공자에 또한 매칭할 수 있다.
일 실시예에서, 매칭 컴포넌트(606)는 항목별로 청구된 청구서를 분석하여 특정 동작을 나타내는 청구서 상의 아이템이 서비스 제공자에 의해 청구되었는지 결정할 수 있다. 매칭 컴포넌트(606)는 계층 트리로부터 동작을 지원하는 서비스 제공자에 의해 사용되는 인프라 제공자를 결정할 수 있다. 매칭 컴포넌트(606)는 이후 동작을 나타내는 아이템을 인프라 제공자로 매칭할 수 있다.
아이템이 특정 인프라 제공자로 매칭되면, 그룹화 컴포넌트(610)는 인프라 제공자에 의해 모든 매칭된 아이템을 클러스터링하고, 각각의 인프라 제공자로 매칭된 모든 아이템을 가지는 각각의 인프라 제공자에 대한 거래 보고를 생성하도록 구성될 수 있다. 거래 보고는 이후 그룹화 컴포넌트(610)에 의해 인프라 제공자(612(a), 612(b) 및 612(c))로 발송될 수 있다.
거래 보고는 각각의 청구된 서비스의 크기 및 서비스의 비용과 관련된 정보를 포함할 수 있다. 거래 보고는 고객에게 제공된 서비스 중 각각에 대해 어떤 서비스 제공자가 청구하였는지 또한 리스팅할 수 있다. 거래 보고는 특정 시간 및 날짜 또는 거래 ID, 또는 사용을 입증하고 기록하기 위한 인프라 제공자를 위한 다른 방법을 또한 리스팅할 수 있다. 거래 보고는 인프라 제공자가 고객이 그들로부터 궁극적으로 사용하는 서비스 비용 및 전체 크기, 중간 매개인 서비스 제공자의 수를 결정하는 것을 가능하게 한다.
도 7은 전술된 시스템에 대한 프로세스를 도시한다. 도 7 내의 프로세스는 도 6에서 도시된 시스템(600)에 의한 예시를 위해 구현될 수 있다.
도 7은 인프라 제공자에게 서비스의 통합된 리스트를 발송하기 위한 방법의 예시적이고 제한이 아닌 실시예의 흐름도를 도시한다. 700(복수의 서비스 제공자로부터 항목별로 청구된 청구서 수신)에서, 청구 통합 프로세스는 복수의 서비스 제공자로부터 항목별로 청구된 청구서를 수신함으로써 개시된다. 항목별로 청구된 청구서는 디지털 방식으로 수신될 수 있거나 스캔되고, 광학 문자 인식 프로세스의 대상이 되어 전자식으로 검색 가능한 항목별로 청구된 청구서로 형성되는 종이 청구서일 수 있다. 항목별로 청구된 청구서는 스토리지, 스토리지 거래, 계산 시간, 데이터 전송에 대한 항목별로 청구된 비용을 포함할 수 있다. 청구서 상의 아이템은 기능적으로 또는 연대순으로 그룹화될 수 있다. 항목별로 청구된 청구서 상의 아이템은 서비스 제공자와 인프라 제공자에 의해 제공되는 서비스를 나타낼 수 있다.
도면 부호 710의 블록(서비스 제공자와 인프라 제공자의 계층 트리 접근)에서, 서비스 제공자와 인프라 제공자의 계층 트리가 접근될 수 있다. 계층 트리는 서비스 제공자와 인프라 제공자 사이의 관계 및 의존도에 대한 정보를 제공할 수 있다. 계층 트리는 서비스 제공자가 서비스를 고객에게 제공하기 위해 사용하는 인프라 제공자에 대한 정보를 또한 포함할 수 있다.
도면 부호 720의 블록(복수의 서비스 제공자로부터의 항목별로 청구된 청구서 상의 아이템을 계층 트리를 분석함으로써 인프라 제공자에 의해 제공되는 서비스로 매칭)에서, 서비스 제공자로부터의 항목별로 청구된 청구서 상의 아이템이 인프라 제공자에 의해 제공되는 서비스로 매칭될 수 있다. 매칭은 계층 트리와 함께 항목별로 청구되는 청구서를 분석함으로써 이루어질 수 있다. 매칭은 항목별로 청구된 청구서 상의 각각의 아이템이 대응하는 동작 또는 서비스의 유형을 결정할 수 있고, 이후 계층 트리를 검색하고 각각의 서비스를 제공하였을 인프라 제공자를 결정할 수 있다. 이러한 방법에서, 항목별로 청구된 청구서 상의 모든 아이템은 특정 인프라 제공자와 매칭될 수 있다. 매칭 프로세스는, 복수의 서비스 제공자에 걸친 인프라 서비스를 동일한 최종 고객과 연관시킴으로써, 수신되어야 하는 인센티브 가격 또는 리베이트(rebate)의 계산을 포함할 수 있다.
도면 부호 730의 블록(각각의 인프라 제공자에 의해 제공되는 서비스의 통합된 리스트를 인프라 제공자에게 발송)에서, 인프라 제공자에 의해 항목별로 청구되는 청구서 상의 아이템을 그룹화하는 통합된 리스트가 생성될 수 있다. 각각의 인프라 제공자에 대한 거래 보고는 인프라 제공자에 의해 제공되는 모든 서비스와 아이템을 리스팅하는 통합된 리스트로부터 생성될 수 있다. 거래 보고는 특정 시간 및 날짜, 또는 거래 ID, 또는 사용을 기록하고 입증하기 위한 인프라 제공자를 위한 다른 방법을 또한 리스팅할 수 있다. 각각의 인프라 제공자에 대한 거래 보고는 이후 각각의 인프라 제공자 각각에게 발송될 수 있다.
도 8은 서비스 제공자에 의해 사용되는 인프라 제공자를 통합하기 위한 컴퓨터 판독가능 명령어의 세트의 예시적이고 제한이 아닌 실시예의 흐름도를 도시한다. 컴퓨터 판독가능 저장 매체(800)는 컴퓨터 실행가능 명령어를 포함할 수 있다. 도면 부호 810의 블록에서, 명령어는 각각의 서비스 제공자로부터 항목별로 청구된 청구서를 수신하도록 동작할 수 있다. 가각의 서비스 제공자로부터의 항목별로 청구된 청구서는 스토리지, 스토리지 거래, 계산 시간 및 인프라 제공자에 의해 제공되는 데이터 전달에 대한 항목별로 청구된 비용을 리스팅할 수 있다.
도면 부호 820의 블록에서, 이러한 명령어는 항목별로 청구된 청구서에 기초하여 인프라 제공자에 의해 제공되는 서비스의 리스트를 생성하도록 동작할 수 있다. 이러한 명령어는 인프라 제공자에 의해 제공되는 서비스의 사용의 크기 및 가격을 포함하는 리스트를 생성하도록 또한 동작할 수 있다.
도면 부호 830의 블록에서, 이러한 명령어는 서비스 제공자를 공통 인프라 제공자로 전환하도록 구성하기 위한 명령어를 포함함으로써 인프라 제공자를 통합하도록 동작할 수 있다. 공통 인프라 제공자는 모든 서비스 제공자와 호환 가능한 인프라 제공자이다. 이러한 명령어는 서비스 제공자 모두와 호환 가능한 인프라 제공자 세트를 생성하기 위한 명령어를 포함할 수 있다. 명령어는 인프라 제공자 세트 중 각각에 대한 비용을 결정하도록 또한 제공될 수 있다. 비용은 세트 내의 인프라 제공자 각각에 대한 사용의 전체 크기 및 각각의 인프라 제공자에 대한 사용의 크기 단위의 가격에 기초할 수 있다.
인프라 제공자 각각의 세트에 대한 비용이 결정되면, 이러한 명령어는 가장 낮은 비용을 가지는 세트를 선택하도록 작동할 수 있다. 명령어는 서비스 제공자가 인프라 제공자 중 가장 낮은 비용 세트로 전환하도록 구성하도록 동작할 수 있거나 서비스 제공자에게 가장 낮은 비용 세트로 전환하라는 요청을 발송하도록 동작할 수 있다.
도 9로 이제 돌아와서, 인프라 제공자를 선택하기 위한 시스템의 예시적이고 제한이 아닌 실시예를 도시하는 블록도가 도시된다. 도 9에서 도시된 바와 같이, 세트 생성 컴포넌트(902)는 인프라 제공자(906(a), 906(b), 906(c) 및 906(d))를 포함하는 인프라 제공자 세트(904(a) 및 904(b))를 생성할 수 있다. 선택 컴포넌트(908)는 인프라 제공자 세트(904(a) 및 904(b))에 관련된 정보를 분석할 수 있고, 가장 낮은 비용 또는 그렇지 않으면 바람직한 측정기준(metric)을 가지는 세트를 선택할 수 있다. 통합 컴포넌트(910)는 서비스 제공자(912(a) 및 912(b))에게 선택 컴포넌트(908)에 의해 선택된 인프라 제공자 세트로 전환하라는 요청을 발송할 수 있다.
세트 생성 컴포넌트(902)는 인프라 제공자 세트를 생성하도록 구성될 수 있고, 여기에서 인프라 제공자 세트(904(a) 및 904(b)) 각각은 서비스 제공자(912(a) 및 912(b))에 의해 사용되는 서비스 모두를 제공하도록 구성될 수 있다. 인프라 제공자(906(a), 906(b), 906(c) 및 906(d))는, 906(a), 906(b), 906(c) 및 906(d)의 세트가 서비스 모두를 함께 제공하는 동안은, 서비스 제공자에 의해 사용되는 모든 서비스를 개별적으로 반드시 제공할 필요는 없을 수 있다. 도 9가 두 인프라 제공자를 각각 가지는 세트(904(a) 및 904(b))를 도시하는 반면, 임의의 수 및/또는 조합의 인프라 제공자가 세트를 구성할 수 있다. 유사하게, 세트 생성 컴포넌트(902)는 임의의 수의 인프라 제공자 세트를 생성할 수 있다.
선택 컴포넌트(908)는 세트를 분석하여 가장 낮은 비용을 제공할 인프라 제공자 세트를 결정할 수 있다. 선택 컴포넌트(908)는 인프라 제공자 각각의 사용의 크기 및 사용 당 가격에 관련된 정보를 분석하여 각각의 세트의 전체 비용을 결정하도록 구성될 수 있다. 각각 세트의 전체 비용이 결정되면, 선택 컴포넌트(908)는 가장 낮은 비용을 가지는 세트를 선택하도록 구성될 수 있다.
대안적인 실시예에서, 선택 컴포넌트(908)는 세트를 선택함에 있어서, 잠재적인 벌크율과 할인을 고려할 수 있다. 할인에 대한 정보는 인프라 제공자로부터 또는 다른 소스로부터 직접적으로 수신될 수 있다. 선택 컴포넌트(908)는 인프라 제공자의 사용이 할인을 가능하게 할 것인지 이후 결정할 수 있고, 선택 컴포넌트(908)는 세트의 전체 비용을 결정함에 있어서 할인율을 이후 고려할 수 있다.
통합 컴포넌트(910)는 선택 컴포넌트(908)로부터 선택을 수신할 수 있고, 통합 컴포넌트(910)는 서비스 제공자(912(a) 및 912(b))에게 선택된 인프라 제공자 세트를 사용하도록 전환하라는 요청을 발송하도록 이후 구성될 수 있다. 다른 실시예에서, 통합 컴포넌트(910)는 선택 컴포넌트(908)에 의해 선택된 인프라 제공자로 서비스 제공자를 전환하도록 직접적으로 수정하도록 구성될 수 있다.
도 10은 대상 개시의 실시예 중 적어도 일부를 위해 배열되는 컴퓨팅 장치를 도시하는 블록도이다. 매우 기본적인 구성(1002)에서, 컴퓨팅 장치(1000)는 전형적으로 하나 이상의 프로세서(1004) 및 시스템 메모리(1006)를 포함한다. 메모리 버스(1008)가 프로세서(1004)와 시스템 메모리(1006) 사이의 통신을 위해 사용될 수 있다.
요구되는 구성에 따라, 프로세서(1004)는 마이크로프로세서(μP), 마이크로컨트롤러(μC), 디지털 신호 프로세서(DSP) 또는 그 임의의 조합을 포함하는 임의의 유형일 수 있지만, 이에 한정되는 것은 아니다. 프로세서(1004)는 레벨 1 캐시(1010) 및 레벨 2 캐시(1012)와 같은 하나 이상의 레벨의 캐싱, 프로세서 코어(1014) 및 레지스터(1016)를 포함할 수 있다. 예시적인 프로세서 코어(1014)는 ALU(arithmetic logic unit), FPU(floating point unit), DSP 코어(digital signal processing core), 또는 그 임의의 조합을 포함할 수 있다. 예시적인 메모리 컨트롤러(1018)는 또한 프로세서(1004)와 사용될 수 있거나, 또는 몇몇 구현예에서, 메모리 컨트롤러(1018)는 프로세서(1004)의 내부 부품일 수 있다.
요구되는 구성에 따라, 시스템 메모리(1006)는 (RAM과 같은) 휘발성 메모리, (ROM, 플래시 메모리 등과 같은) 비휘발성 메모리, 또는 그 임의의 조합을 포함할 수 있지만, 이에 한정되지 않는 임의의 유형일 수 있다. 시스템 메모리(1006)는 운영 체제(1020), 하나 이상의 애플리케이션(1022), 및 프로그램 데이터(1024)를 포함할 수 있다. 애플리케이션(1022)은 여기에서 기술된 기능을 수행하도록 배열되는 벤더 최적화 모듈(1026)을 포함할 수 있다. 프로그램 데이터(1024)는, 벤더 최적화 프로세스 및 자원 정보를 포함할 수 있다. 일부 실시예에서, 애플리케이션(1022)은 운영 체제(1020) 상에서 프로그램 데이터(1024)와 동작하도록 배열될 수 있다.
컴퓨팅 장치(1000)는 추가적인 특징 또는 기능, 및 기본 구성(1002)과 임의의 요구되는 장치와 인터페이스 간 통신을 용이하게 하기 위한 추가적인 인터페이스를 가질 수 있다. 예를 들면, 버스/인터페이스 컨트롤러(1030)는 저장 인터페이스 버스(1034)를 통한 기본 구성(1002)과 하나 이상의 데이터 저장 장치(1032) 간의 통신을 용이하게 하는데 사용될 수 있다. 데이터 저장 장치(1032)는 분리형 저장 장치(1036), 비분리형 저장 장치(1038), 또는 그들의 조합일 수 있다. 분리형 저장 장치 및 비분리형 저장 장치의 예로는, 몇 가지 말하자면, 플렉서블 디스크 드라이브 및 하드 디스크 드라이브(HDD)와 같은 자기 디스크 장치, 컴팩트 디스크(CD) 드라이브 또는 디지털 다기능 디스크(DVD) 드라이브와 같은 광 디스크 드라이브, 고체 상태 드라이브(solid state drive; SSD), 및 테이프 드라이브가 포함된다. 예시적인 컴퓨터 저장 매체는, 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 다른 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성의, 분리형 및 비분리형 매체를 포함할 수 있다.
시스템 메모리(1006), 분리형 저장 장치(1036) 및 비분리형 저장 장치(1038)는 컴퓨터 저장 매체의 예이다. 컴퓨터 저장 매체는 RAM, ROM, EEPROM, 플래시 메모리 또는 다른 메모리 기술, CD-ROM, 디지털 다기능 디스크(DVD) 또는 다른 광학 저장 장치, 자기 카세트, 자기 테이프, 자기 디스크 저장 장치 또는 다른 자기 저장 장치, 또는 원하는 정보를 저장하는데 사용될 수 있고 컴퓨팅 장치(1000)에 의해 액세스될 수 있는 임의의 다른 매체를 포함하지만, 이에 한정되는 것은 아니다. 그러한 임의의 컴퓨터 저장 매체는 컴퓨팅 장치(1000)의 일부일 수 있다.
컴퓨팅 장치(1000)는 버스/인터페이스 컨트롤러(1030)를 통한 다양한 인터페이스 장치(예를 들면, 출력 장치(1042), 주변 인터페이스(1044) 및 통신 장치(1046))로부터 기본 구성(1002)으로의 통신을 용이하게 하기 위한 인터페이스 버스(1040)도 포함할 수 있다. 예시적인 출력 장치(1042)는 그래픽 처리 유닛(1048) 및 오디오 처리 유닛(1050)을 포함하며, 이는 하나 이상의 A/V 포트(1052)를 통해 디스플레이 또는 스피커와 같은 다양한 외부 장치로 통신하도록 구성될 수 있다. 예시적인 주변 인터페이스(1044)는 직렬 인터페이스 컨트롤러(1054) 또는 병렬 인터페이스 컨트롤러(1056)를 포함하며, 이는 하나 이상의 I/O 포트(1058)를 통해 입력 장치(예를 들면, 키보드, 마우스, 펜, 음성 입력 장치, 터치 입력 장치 등) 또는 다른 주변 장치(예를 들면, 프린터, 스캐너 등)와 같은 외부 장치와 통신하도록 구성될 수 있다. 예시적인 통신 장치(1046)는 네트워크 컨트롤러(1060)를 포함하며, 이는 하나 이상의 통신 포트(1064)를 통해 네트워크 통신 상에서의 하나 이상의 다른 컴퓨팅 장치(1062)와의 통신을 용이하게 하도록 배치될 수 있다.
네트워크 통신 링크는 통신 매체의 일 예시일 수 있다. 통신 매체는 전형적으로 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 반송파 또는 다른 전송 메커니즘 같은 변조된 데이터 신호 내의 다른 데이터에 의해 구현될 수 있고, 임의의 정보 전달 매체를 포함할 수 있다. "변조된 데이터 신호"는 신호 내에 정보를 인코딩하기 위한 방식으로 설정되거나 변경된 특성 중 하나 이상을 갖는 신호일 수 있다. 제한적인지 않은 예로서, 통신 매체는 유선 네트워크 또는 직접 유선 접속과 같은 유선 매체, 및 음파, 무선 주파수(RF), 마이크로웨이브, 적외선(IR) 및 다른 무선 매체와 같은 무선 매체를 포함할 수 있다. 여기서 사용되는 컴퓨터 판독가능 매체라는 용어는 저장 매체 및 통신 매체 둘 다를 포함할 수 있다.
컴퓨팅 장치(1000)는, 휴대 전화, PDA(personal data assistant), 개인용 미디어 플레이어 장치, 무선 웹-워치(web-watch) 장치, 개인용 헤드셋 장치, 특수 용도 장치, 또는 위 기능 중 임의의 것을 포함하는 하이브리드 장치 같은 소형 폼 팩터(small-form factor)의 휴대용(또는 모바일) 전자 장치의 일부로서 구현될 수 있다. 컴퓨팅 장치(1000)는 또한 랩톱 컴퓨터 및 랩톱이 아닌 컴퓨터 구성을 모두 포함하는 개인용 컴퓨터로서 구현될 수 있거나 워크스테이션 또는 서버 구성으로 구현될 수 있다.
도 11로 이제 돌아와서, 청구된 대상에 따라 이용될 수 있는 예시적인 네트워크 환경을 도시하는 블록도가 도시된다. 시스템(1100)은 하나 이상의 클라이언트(1110)를 포함한다. 클라이언트(1110)는 하드웨어 및/또는 소프트웨어(예컨대, 쓰레드, 프로세스, 컴퓨팅 장치)일 수 있다. 시스템(1100)은 또한 하나 이상의 서버(1120)를 또한 포함할 수 있다. 서버(1120)는 하드웨어 및/또는 소프트웨어(예컨대, 쓰레드, 프로세스, 컴퓨팅 장치)일 수 있다. 서버(1120)는 예컨대, 대상 혁신(subject innovation)을 이용함으로써 변환을 수행하기 위해 쓰레드를 하우징(housing)할 수 있다.
클라이언트(1110)와 서버(1120) 사이의 하나의 가능한 통신은 둘 이상의 컴퓨터 프로세스 사이에서 전송될 적응된 데이터 패킷의 형태일 수 있다. 시스템(1100)은 클라이언트(1110)와 서버(1120) 사이의 통신을 용이하게 하도록 이용될 수 있는 통신 프레임워크(1140)를 포함한다. 클라이언트(1110)는 클라이언트(1110)에 국지적인 정보를 저장하도록 이용될 수 있는 하나 이상의 클라이언트 데이터 스토어(1150)에 동작적으로 연결된다. 유사하게, 서버(1120)는 서버(1120)에 국지적인 데이터를 저장하도록 이용될 수 있는 하나 이상의 서버 데이터 스토어(1130)에 동작적으로 연결된다.
본 개시는 다양한 태양의 예시로서 의도된 본 출원에 기술된 특정 실시예들에 제한되지 않을 것이다. 당업자에게 명백할 바와 같이, 많은 수정과 변형이 그 사상과 범위를 벗어나지 않으면서 이루어질 수 있다. 여기에 열거된 것들에 더하여, 본 개시의 범위 안에서 기능적으로 균등한 방법과 장치가 위의 설명으로부터 당업자에게 명백할 것이다. 그러한 수정과 변형은 첨부된 청구항의 범위에 들어가도록 의도된 것이다. 본 개시는 첨부된 청구항의 용어에 의해서만, 그러한 청구항에 부여된 균등물의 전 범위와 함께, 제한될 것이다. 본 개시가 물론 다양할 수 있는 특정 방법, 시약, 합성 구성 또는 생물학적 시스템에 제한되지 않는 것으로 이해될 것이다. 또한, 여기에서 사용된 용어는 단지 특정 실시예들을 기술하기 위한 목적이고, 제한하는 것으로 의도되지 않음이 이해될 것이다.
예시적인 실시예에서, 여기에서 기술된 임의의 동작, 처리 등은 컴퓨터-판독가능 매체에 저장된 컴퓨터-판독가능 명령어로서 구현될 수 있다. 컴퓨터-판독가능 명령어는 모바일 유닛, 네트워크 요소, 및/또는 임의의 다른 컴퓨팅 장치의 프로세서에 의해 실행될 수 있다.
시스템 양상들의 하드웨어와 소프트웨어 구현 사이에는 구별이 거의 없다. 하드웨어 또는 소프트웨어의 사용은 일반적으로 (그러나 어떤 맥락에서 하드웨어 및 소프트웨어 사이의 선택이 중요하게 될 수 있다는 점에서 항상 그런 것은 아니지만) 비용 대비 효율의 트레이드오프(tradeoff)를 나타내는 설계상 선택(design choice)이다. 여기에서 기술된 프로세스 및/또는 시스템 및/또는 다른 기술들이 영향 받을 수 있는 다양한 수단(vehicles)(예를 들어, 하드웨어, 소프트웨어 및/또는 펌웨어)이 있으며, 선호되는 수단은 프로세스 및/또는 시스템 및/또는 다른 기술이 사용되는 맥락(context)에 따라 변경될 것이다. 예를 들어, 만약 구현자가 속도 및 정확도가 중요하다고 결정하면, 구현자는 주로 하드웨어 및/또는 펌웨어(firmware) 수단을 선택할 수 있고, 만약 유연성이 중요하다면, 구현자는 주로 소프트웨어 구현을 선택할 수 있으며, 또는, 또 다른 대안으로서, 구현자는 하드웨어, 소프트웨어, 및/또는 펌웨어 중 일부 조합을 선택할 수 있다.
전술한 상세한 설명은 블록도, 흐름도, 및/또는 예시의 사용을 통해 장치 및/또는 프로세스의 다양한 실시예를 설명하였다. 그러한 블록도, 흐름도, 및/또는 예시가 하나 이상의 기능 및/또는 동작을 포함하는 한, 당업자라면 그러한 블록도, 흐름도, 또는 예시 내의 각각의 기능 및/또는 동작은 하드웨어, 소프트웨어, 펌웨어, 또는 실질적으로 그들 임의의 조합의 넓은 범위에 의해 개별적으로 및/또는 집합적으로 구현될 수 있다는 것이 이해될 것이다. 일 실시예에서, 여기에서 기술된 대상의 몇몇 부분은 ASIC(Application Specific Integrated Circuit), FPGA(Field Programmable Gate Array), DSP(Digital Signal Processor) 또는 다른 집적의 형태를 통해 구현될 수 있다. 그러나, 당업자라면, 여기에서 기술된 실시예의 일부 양상이, 하나 이상의 컴퓨터 상에 실행되는 하나 이상의 컴퓨터 프로그램(예를 들어, 하나 이상의 컴퓨터 시스템 상에 실행되는 하나 이상의 프로그램), 하나 이상의 프로세서 상에서 실행되는 하나 이상의 프로그램(예를 들어, 하나 이상의 마이크로프로세서 상에서 실행되는 하나 이상의 프로그램), 펌웨어 또는 실질적으로 그들의 조합으로서, 전체적으로 또는 부분적으로 균등하게 집적 회로에 구현될 수 있다는 알 수 있으며, 소프트웨어 및/또는 펌웨어를 위한 코드의 작성 및/또는 회로의 설계는 본 개시에 비추어 당업자에게 자명할 것이다. 또한, 당업자라면, 여기에서 기술된 대상의 수단(mechanism)들이 다양한 형태의 프로그램 제품으로 분포될 수 있음을 이해할 것이며, 여기에서 기술된 대상의 예시는, 분배를 실제로 수행하는데 사용되는 신호 베어링 매체(signal bearing medium)의 특정 유형과 무관하게 적용됨을 이해할 것이다. 신호 베어링 매체의 예시는, 플로피 디스크, 하드 디스크 드라이브(HDD), CD(Compact Disc), DVD(Digital Versatile Disk), 디지털 테이프, 컴퓨터 메모리 등과 같은 판독가능 유형의 매체 및 디지털 및/또는 아날로그 통신 매체(예를 들어, 섬유 광학 케이블, 웨이브가이드, 유선 통신 링크, 무선 통신 링크 등)와 같은 전송 유형 매체를 포함할 수 있으나, 이에 제한되지는 않는다.
당업자라면, 여기서 설명된 형식으로 장치 및/또는 프로세스를 기술하고, 이후, 공학 실무를 사용하여 그러한 기술된 장치 및/또는 방법을 데이터 처리 시스템에 통합한다는 것은 당해 분야에서는 일반적이란 것을 인식할 것이다. 즉, 여기서 기술된 장치 및/또는 방법의 적어도 일부는 합당한 실험 량을 통해 데이터 처리 시스템에 통합될 수 있다. 당업자라면, 전형적인 데이터 처리 시스템은 일반적으로 시스템 유닛 하우징, 비디오 디스플레이 장치, 휘발성 및 비휘발성 메모리 같은 메모리, 마이크로프로세서 및 디지털 신호 프로세서와 같은 프로세서, 운영 체제, 드라이버, 그래픽 사용자 인터페이스 및 애플리케이션 프로그램과 같은 컴퓨터 엔티티(computational entities), 터치 패드 또는 스크린 같은 하나 이상의 상호작용 장치, 및/또는 피드백 루프 및 제어 모터(예를 들면, 위치 및/또는 속도를 감지하기 위한 피드백; 컴포넌트 및/또는 양(quantities)을 이동하고 및/또는 조정하기 위한 제어 모터)를 포함하는 제어 시스템 중 하나 이상을 일반적으로 포함한다는 것을 인식할 것이다. 전형적인 데이터 처리 시스템은 데이터 컴퓨팅/통신 및/또는 네트워크 컴퓨팅/통신 시스템에서 전형적으로 발견되는 바와 같은 임의의 적절한 상업적으로 이용 가능한 컴포넌트를 이용하여 구현될 수 있다.
여기에서 기술된 대상은 때때로 상이한 다른 컴포넌트 또는 구성요소 내에 포함되거나 접속된 상이한 컴포넌트 또는 구성요소를 도시한다. 도시된 그러한 아키텍처는 단순히 예시적인 것이고, 사실상 동일한 기능을 달성하는 다른 많은 아키텍처가 구현될 수 있다는 것이 이해되어야 한다. 개념적으로, 동일한 기능을 달성하기 위한 컴포넌트의 임의의 배치는 원하는 기능이 달성되도록 유효하게 "연관"된다. 이에 따라, 특정 기능을 달성하기 위해 여기서 결합된 임의의 두 개의 컴포넌트는, 아키텍처 또는 중간 컴포넌트와는 무관하게, 원하는 기능이 달성되도록 서로 "연관"된 것으로 볼 수 있다. 마찬가지로, 연관된 임의의 두 개의 컴포넌트는 또한 원하는 기능을 달성하기 위해 서로 "동작적으로 접속"되거나 또는 "동작적으로 연결"되는 것으로 간주될 수 있고, 그와 같이 연관될 수 있는 임의의 두 개의 컴포넌트는 또한 원하는 기능을 달성하기 위해 서로 "동작적으로 연결가능"한 것으로 볼 수 있다. 동작적으로 연결가능하다는 것의 특정예는 물리적으로 양립가능(mateable)하고 및/또는 물리적으로 인터액팅하는 컴포넌트 및/또는 무선으로 인터액팅이 가능하고 및/또는 무선으로 인터액팅하는 컴포넌트 및/또는 논리적으로 인터액팅하고 및/또는 논리적으로 인터액팅이 가능한 컴포넌트를 포함하지만, 이에 한정되는 것은 아니다.
여기에서 실질적으로 임의의 복수 및/또는 단수의 용어의 사용에 대하여, 당업자는 맥락 및/또는 응용에 적절하도록, 복수를 단수로 및/또는 단수를 복수로 해석할 수 있다. 다양한 단수/복수의 치환은 명확성을 위해 여기에서 명시적으로 기재될 수 있다.
당업자라면, 일반적으로 본 개시에 사용되며 특히 첨부된 청구범위(예를 들어, 첨부된 청구범위)에 사용된 용어들이 일반적으로 "개방적(open)" 용어(예를 들어, 용어 "포함하는"은 "포함하지만 이에 제한되지 않는"으로, 용어 "갖는"는 "적어도 갖는"으로, 용어 "포함하다"는 "포함하지만 이에 한정되지 않는" 등으로 해석되어야 함)로 의도되었음을 이해할 것이다. 또한, 당업자라면, 도입된 청구항의 기재사항의 특정 수가 의도된 경우, 그러한 의도가 청구항에 명시적으로 기재될 것이며, 그러한 기재사항이 없는 경우, 그러한 의도가 없음을 또한 이해할 것이다. 예를 들어, 이해를 돕기 위해, 이하의 첨부 청구범위는 "적어도 하나" 및 "하나 이상" 등의 도입 구절의 사용을 포함하여 청구항 기재사항을 도입할 수 있다. 그러나, 그러한 구절의 사용이, 부정관사 "하나"("a" 또는 "an")에 의한 청구항 기재사항의 도입이, 그러한 하나의 기재사항을 포함하는 실시예들로, 그러한 도입된 청구항 기재사항을 포함하는 특정 청구항을 제한함을 암시하는 것으로 해석되어서는 안되며, 동일한 청구항이 도입 구절인 "하나 이상" 또는 "적어도 하나" 및 "하나"("a" 또는 "an")과 같은 부정관사(예를 들어, "하나"는 "적어도 하나" 또는 "하나 이상"을 의미하는 것으로 해석되어야 함)를 포함하는 경우에도 마찬가지로 해석되어야 한다. 이는 청구항 기재사항을 도입하기 위해 사용된 정관사의 경우에도 적용된다. 또한, 도입된 청구항 기재사항의 특정 수가 명시적으로 기재되는 경우에도, 당업자라면 그러한 기재가 적어도 기재된 수(예를 들어, 다른 수식어가 없는 "두개의 기재사항"을 단순히 기재한 것은, 적어도 두 개의 기재사항 또는 두 개 이상의 기재사항을 의미함)를 의미하도록 해석되어야 함을 이해할 것이다. 또한, "A, B 및 C 등 중의 적어도 하나"와 유사한 규칙이 사용된 경우에는, 일반적으로 그러한 해석은 당업자가 그 규칙을 이해할 것이라는 전제가 의도된 것이다(예를 들어, "A, B 및 C 중의 적어도 하나를 갖는 시스템"은, A만을 갖거나, B만을 갖거나, C만을 갖거나, A 및 B를 함께 갖거나, A 및 C를 함께 갖거나, B 및 C를 함께 갖거나, A, B, 및 C를 함께 갖는 시스템 등을 포함하지만 이에 제한되지 않음). "A, B 또는 C 등 중의 적어도 하나"와 유사한 규칙이 사용된 경우에는, 일반적으로 그러한 해석은 당업자가 그 규칙을 이해할 것이라는 전제가 의도된 것이다(예를 들어, "A, B 또는 C 중의 적어도 하나를 갖는 시스템"은, A만을 갖거나, B만을 갖거나, C만을 갖거나, A 및 B를 함께 갖거나, A 및 C를 함께 갖거나, B 및 C를 함께 갖거나, A, B, 및 C를 함께 갖는 시스템 등을 포함하지만 이에 제한되지 않음). 또한 당업자라면, 실질적으로 임의의 이접 접속어(disjunctive word) 및/또는 두 개 이상의 대안적인 용어들을 나타내는 구절은, 그것이 상세한 설명, 청구범위 또는 도면에 있는지와 상관없이, 그 용어들 중의 하나, 그 용어들 중의 어느 하나, 또는 그 용어들 두 개 모두를 포함하는 가능성을 고려했음을 이해할 것이다. 예를 들어, "A 또는 B"라는 구절은 "A" 또는 "B" 또는 "A 및 B"의 가능성을 포함하는 것으로 이해될 것이다.
추가적으로, 개시의 특징 또는 양태가 마쿠시(Markush) 그룹으로 기술되는 경우, 개시는 마쿠시 그룹의 임의의 개별 요소 또는 요소들의 하위 그룹 역시 포함하고 있다는 것을 당업자는 인식할 것이다.
당업자에게 이해될 것과 같이, 임의의 그리고 모든 목적에서든, 기술 내용을 제공하는 것 등에 있어서, 여기에 개시되어 있는 모든 범위는 임의의 그리고 모든 가능한 하위범위와 그러한 하위범위의 조합을 또한 포함한다. 임의의 열거된 범위는 적어도 1/2, 1/3, 1/4, 1/5, 1/10 등으로 나누어지는 동일한 범위를 충분히 설명하고 실시가능하게 하는 것으로서 쉽게 인식될 수 있다. 제한하지 않는 예시로서, 여기서 논의되는 각각의 범위는 하위 1/3, 중앙 1/3, 상위 1/3 등으로 나누어질 수 있다. 또한, "까지", "적어도" 등과 같은 언어는 기재된 수를 포함하며, 전술한 하위범위로 후속적으로 나누어질 수 있는 범위를 지칭함이 당업자에게 이해되어야 한다. 마지막으로, 범위는 각각의 개별 요소를 포함함이 이해되어야 한다. 따라서, 예를 들어, 1-3개의 셀을 갖는 그룹은 1, 2 또는 3개의 셀을 갖는 그룹들을 의미한다. 유사하게, 1-5개의 셀을 갖는 그룹은 1, 2, 3, 4 또는 5개의 셀을 갖는 그룹을 의미한다.
앞서 말한 바로부터, 대상 개시의 다양한 실시예가 예시의 목적을 위해 여기에서 기술되었고, 다양한 수정이 대상 개시의 사상과 범위를 벗어나지 않으면서 이루어질 수 있음이 이해될 것이다. 따라서, 여기에서 개시된 다양한 실시예는 제한하려고 의도된 것이 아니며, 진정한 범위와 사상은 이하 청구범위에서 나타난다.
Claims (46)
- 클라우드 컴퓨팅 시스템의 제어 하에서 수행되는 방법으로서, 상기 클라우드 컴퓨팅 시스템은 묶음 서비스(bundled services)를 처리하도록 구성되고, 상기 묶음 서비스는 하나 이상의 탑 레벨 서비스(top-level services) 및 하나 이상의 서브 서비스(sub services)를 포함하며, 상기 서브 서비스는 상기 탑 레벨 서비스에 의해 사용되는 것이고,
상기 방법은,
상기 묶음 서비스(bundled service)를 상기 탑 레벨 서비스(top-level services) 및 서브 서비스(sub services)로 분해(de-aggregate)하는 단계 - 상기 탑 레벨 서비스 중 하나의 탑 레벨 서비스는 상기 서브 서비스 중 하나의 서브 서비스로부터 인프라 서비스(infrastructure service)를 수신함 -;
상기 탑 레벨 서비스와 상기 서브 서비스를 매핑하여 계층 트리(hierarchical tree)를 생성하는 단계; 및
상기 서브 서비스를 통합(consolidate)하기 위해 규칙의 세트(set of rules)에 기초하여 상기 계층 트리를 수정하도록 상기 탑 레벨 서비스에게 요청(request)을 발송하는 것을 포함하는, 상기 탑 레벨 서비스와 상기 서브 서비스의 의존도(dependency)를 구성(configure)하는 단계
를 포함하고,
상기 규칙의 세트는 최종 사용자에 의해 사용되는 상기 서브 서비스의 사용의 크기(volume of usage) 및 각 사용의 크기 당 상기 서브 서비스에 의해 청구되도록 결정된 줄어든 비용에 기초하고, 그리고 상기 탑 레벨 서비스에게 상기 요청을 발송하는 것에 응답하여, 상기 탑 레벨 서비스 중 상기 하나의 탑 레벨 서비스는 상기 서브 서비스 중 상기 하나의 서브 서비스와는 다른 또 하나의 서브 서비스로부터 인프라 서비스를 수신하는, 방법. - 제1항에 있어서,
상기 묶음 서비스를 분해하는 상기 단계는, 상기 탑 레벨 서비스의 각각의 탑 레벨 서비스에 의해 사용되는 서브 서비스의 리스트를 수신하는 단계를 포함하는, 방법. - 제2항에 있어서,
상기 계층 트리를 생성하는 단계는, 상기 각각의 탑 레벨 서비스에 의해 사용되는 상기 서브 서비스의 리스트를 나타내는 정보를 포함하는 데이터 스토어를 생성하는 단계 및 상기 정보에 기초하여 계층 맵을 생성하는 단계를 포함하는, 방법. - 제2항에 있어서,
상기 서브 서비스의 리스트를 수신하는 상기 단계는, 상기 각각의 탑 레벨 서비스의 사용을 추적(tracking)하는 단계 및 상기 각각의 탑 레벨 서비스에 의해 사용되는 상기 서브 서비스를 결정하는 단계를 포함하는, 방법. - 제2항에 있어서,
상기 서브 서비스의 리스트를 수신하는 상기 단계는, 미리 특정된 리스트를 수신하는 단계를 포함하는, 방법. - 제2항에 있어서,
상기 서브 서비스의 리스트를 수신하는 상기 단계는, 상기 각각의 탑 레벨 서비스와 호환 가능한 서브 서비스의 리스트를 수신하는 단계를 더 포함하는, 방법. - 제1항에 있어서,
상기 탑 레벨 서비스와 상기 서브 서비스의 상기 의존도를 구성하는 상기 단계는, 상기 탑 레벨 서비스에 의해 사용되는 상기 서브 서비스의 수를 줄이는 단계를 포함하는, 방법. - 삭제
- 제1항에 있어서,
상기 세트의 규칙에 기초하여 상기 계층 트리를 수정하는 상기 단계는, 상기 최종 사용자에 의해 사용되는 상기 서브 서비스의 사용의 크기에 대한 디스카운트에 관한 조건이 만족되었다는 결정에 응답하여 상기 탑 레벨 서비스의 상기 의존도를 수정하는 단계를 포함하는, 방법. - 하나 이상의 서비스(services)로 구성된 묶음 서비스(bundled services)를 처리하도록 구성된 클라우드 컴퓨팅 시스템으로서,
메모리에 결합된 프로세서를 포함하고, 상기 프로세서는 적어도,
상기 묶음 서비스를 분석하여 상기 묶음 서비스의 상기 서비스에 대한 정보를 추출하고;
상기 묶음 서비스에 대한 상기 정보의 함수(function)로서 상기 서비스 및 인프라 제공자(infrastructure providers)의 계층 트리(hierarchical tree)를 생성하고 - 여기에서 상기 계층 트리는 상기 서비스와 상기 인프라 제공자 사이의 관계를 나타내고, 상기 서비스 중 하나의 서비스는 상기 인프라 제공자 중 하나의 인프라 제공자로부터 인프라 서비스를 수신함 -;
적어도 최종 사용자에 의해 사용되는 상기 인프라 제공자의 사용의 크기(volume of usage) 및 각 사용의 크기 당 상기 인프라 제공자에 의해 청구되도록 결정된 서비스의 비용의 함수로서, 상기 인프라 제공자를 통합하기 위해 상기 서비스와 상기 인프라 제공자 사이의 상기 관계를 수정하도록 상기 서비스에게 요청을 발송하고; 그리고
상기 관계를 수정하도록 상기 서비스에게 요청을 발송하는 것과 수정된 상기 관계에 응답하여, 상기 서비스 중 상기 하나의 서비스는 상기 인프라 제공자 중 상기 하나의 인프라 제공자와는 다른 또 하나의 인프라 제공자로부터 상기 인프라 서비스를 수신
하기 위한 컴퓨터 실행가능 명령어의 실행을 실행하거나 용이하게 하는, 클라우드 컴퓨팅 시스템. - 제10항에 있어서,
상기 프로세서는 상기 서비스와 상기 인프라 제공자 사이의 이미 존재하는 관계에 기초하여 상기 인프라 제공자를 매핑하기 위한 상기 컴퓨터 실행가능 명령어의 실행을 더 실행하거나 용이하게 하는, 클라우드 컴퓨팅 시스템. - 삭제
- 제10항에 있어서,
상기 프로세서는 상기 서비스와 상기 인프라 제공자 사이의 상기 관계의 미리 특정된 리스트를 수신하기 위한 상기 컴퓨터 실행가능 명령어의 실행을 더 실행하거나 용이하게 하는, 클라우드 컴퓨팅 시스템. - 제10항에 있어서,
상기 프로세서는 규칙의 세트를 생성하기 위한 상기 컴퓨터 실행가능 명령어의 실행을 더 실행하거나 용이하게 하고, 여기에서 상기 규칙의 세트는 인프라 제공자와의 관계의 생성으로 이어지는 조건을 포함하는, 클라우드 컴퓨팅 시스템. - 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 제10항에 있어서,
상기 프로세서는 선택된 인프라 제공자를 사용하도록 상기 서비스 중 하나 이상을 구성하기 위한 상기 컴퓨터 실행가능 명령어의 실행을 더 실행하거나 용이하게 하는, 클라우드 컴퓨팅 시스템. - 제10항에 있어서,
상기 프로세서는 상기 서비스와 상기 인프라 제공자 사이의 상기 관계를 수정하기에 접근 권한이 부족하다는 결정에 응답하여 상기 관계를 수정하도록 상기 서비스에게 요청을 발송하기 위한 상기 컴퓨터 실행가능 명령어의 실행을 더 실행하거나 용이하게 하는, 클라우드 컴퓨팅 시스템. - 제14항에 있어서,
상기 프로세서는 하나 이상의 인프라 제공자 가입(subscription)에 기초하여 상기 규칙의 세트를 생성하기 위한 상기 컴퓨터 실행가능 명령어의 실행을 더 실행하거나 용이하게 하는, 클라우드 컴퓨팅 시스템. - 제14항에 있어서,
상기 프로세서는,
상기 최종 사용자에 의해 사용되는 제2 사용의 크기에 대하여 상기 인프라 제공자에 의해 제안된 디스카운트를 결정하고; 그리고
상기 제2 사용의 크기와 매칭되도록 상기 인프라 제공자와의 상기 관계를 수정하도록 상기 규칙의 세트를 생성하기 위한 상기 컴퓨터 실행가능 명령어의 실행을 더 실행하거나 용이하게 하는, 클라우드 컴퓨팅 시스템. - 제1항에 있어서,
상기 클라우드 컴퓨팅 시스템에 의해, 상기 서브 서비스의 미리 결정된 서브 서비스에 의존하도록 상기 서비스의 계층 트리의 탑 레벨 서비스를 구성하는 단계를 더 포함하는 방법. - 제1항에 있어서,
상기 클라우드 컴퓨팅 시스템에 의해, 접근 권한이 상기 탑 레벨 서비스의 상기 의존도를 수정하기에 부족하다는 결정에 응답하여 의존도를 변경하도록 서비스의 상기 계층 트리의 상기 탑 레벨 서비스의 탑 레벨 서비스에게 요청을 발송하는 단계를 더 포함하는 방법. - 제1항에 있어서,
상기 클라우드 컴퓨팅 시스템에 의해, 상기 서브 서비스들 중 서브 서비스에 대한 가입에 기초하여 상기 규칙의 세트를 생성하는 단계를 더 포함하는 방법. - 제1항에 있어서,
상기 클라우드 컴퓨팅 시스템에 의해, 디스카운트가 상기 최종 사용자에 의해 사용되는 제2 사용의 크기에 대한 상기 서브 서비스들 중 서브 서비스에 의해 제안된다고 결정하는 단계; 및
상기 클라우드 컴퓨팅 시스템에 의해, 상기 제2 사용의 크기에 매칭되도록 상기 탑 레벨 서비스들 중 탑 레벨 서비스와 상기 서브 서비스 사이의 관계를 수정하도록 상기 규칙의 세트를 생성하는 단계를 더 포함하는 방법. - 컴퓨터 실행가능 명령어를 갖는 유형의 컴퓨터 판독가능 저장 매체(tangible computer-readable storage medium)로서, 상기 컴퓨터 실행가능 명령어는, 실행에 응답하여, 클라우드 컴퓨팅 시스템으로 하여금 서비스(services) 및 인프라 제공자(infrastructure providers)를 관리(managing)하여,
상기 서비스(services)를 분석하고 상기 서비스 및 상기 인프라 제공자 사이의 관계에 관한 정보를 추출하는 것;
상기 서비스 및 상기 인프라 제공자 사이의 관계에 관한 상기 정보에 기초하여, 서비스 및 인프라 제공자의 계층 트리를 생성하는 것 - 상기 서비스 중 하나의 서비스는 상기 인프라 제공자 중 하나의 인프라 제공자로부터 인프라 서비스를 수신함 -;
상기 인프라 제공자를 통합하기 위해 규칙의 세트(set of rules)에 기초하여 상기 계층 트리를 수정하도록 상기 서비스에게 요청을 발송하는 것을 포함하여 상기 서비스 및 상기 인프라 제공자의 의존도(dependencies)를 구성하는 것
을 포함하는 동작을 수행하게 하며,
상기 규칙의 세트의 규칙은 최종 사용자에 의해 사용되는 상기 인프라 제공자의 사용의 크기(volume of usage) 및 각 사용의 크기 당 상기 인프라 제공자 중 어느 한 인프라 제공자에 의해 청구되도록 결정된 비용의 함수에 기초하고, 상기 서비스에게 상기 요청을 발송하는 것에 응답하여, 상기 서비스 중 상기 하나의 서비스는 상기 인프라 제공자 중 상기 하나의 인프라 제공자와는 다른 또 하나의 인프라 제공자로부터 인프라 서비스를 수신하는 것인, 컴퓨터 판독가능 저장 매체. - 제40항에 있어서,
상기 동작은 상기 서비스 및 상기 인프라 제공자 사이의 이미 존재하는 관계를 분석하는 것을 더 포함하는, 컴퓨터 판독가능 저장 매체. - 삭제
- 제40항에 있어서,
상기 규칙의 세트는 인프라 제공자와의 관계의 생성을 이끌도록 결정되는 조건을 포함하는, 컴퓨터 판독가능 저장 매체. - 제43항에 있어서,
상기 동작은,
디스카운트가 상기 사용의 크기에 대하여 상기 인프라 제공자에 의해 제안된다고 결정하는 것; 및
상기 사용의 크기에 매칭되도록 상기 인프라 제공자와의 관계를 수정하는 것을 더 포함하는, 컴퓨터 판독가능 저장 매체. - 서비스(services)와 인프라 제공자(infrastructure providers)를 관리(managing)하는 클라우드 컴퓨팅 시스템으로서,
명령어를 저장하기 위한 메모리; 및
상기 메모리에 결합된 프로세서
를 포함하고,
상기 프로세서는 적어도,
상기 서비스(services)를 분석하고 상기 서비스 및 상기 인프라 제공자 사이의 관계에 관한 정보를 추출하고;
상기 서비스 및 상기 인프라 제공자 사이의 관계에 관한 상기 정보에 기초하여, 서비스와 인프라 제공자의 계층 트리를 생성하고 - 상기 서비스 중 하나의 서비스는 상기 인프라 제공자 중 하나의 인프라 제공자로부터 인프라 서비스를 수신함 -; 그리고
상기 인프라 제공자를 통합하기 위하여, 최종 사용자에 의해 사용되는 상기 인프라 제공자의 사용의 크기 및 비용에 기초하는 규칙의 세트(set of rules)에 기초하여 상기 계층 트리의 수정을 수행하도록 상기 서비스에게 요청을 발송하는 것을 포함하는 상기 서비스와 상기 인프라 제공자의 의존도를 구성하기 위한 상기 명령어의 실행을 용이하게 하고,
상기 요청을 발송하는 것에 응답하여, 상기 서비스 중 상기 하나의 서비스는 상기 인프라 제공자 중 상기 하나의 인프라 제공자와는 다른 또 하나의 인프라 제공자로부터 상기 인프라 서비스를 수신하는 것인, 클라우드 컴퓨팅 시스템. - 삭제
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2011/043229 WO2013006180A1 (en) | 2011-07-07 | 2011-07-07 | Vendor optimization in aggregated environments |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020157030665A Division KR101825397B1 (ko) | 2011-07-07 | 2011-07-07 | 애그리게이팅된 환경에서의 벤더 최적화 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20140009575A KR20140009575A (ko) | 2014-01-22 |
KR101709171B1 true KR101709171B1 (ko) | 2017-02-22 |
Family
ID=47437323
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020137033296A KR101709171B1 (ko) | 2011-07-07 | 2011-07-07 | 애그리게이팅된 환경에서의 벤더 최적화 |
KR1020157030665A KR101825397B1 (ko) | 2011-07-07 | 2011-07-07 | 애그리게이팅된 환경에서의 벤더 최적화 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020157030665A KR101825397B1 (ko) | 2011-07-07 | 2011-07-07 | 애그리게이팅된 환경에서의 벤더 최적화 |
Country Status (5)
Country | Link |
---|---|
US (2) | US20130013377A1 (ko) |
JP (1) | JP5914646B2 (ko) |
KR (2) | KR101709171B1 (ko) |
CN (1) | CN103649984B (ko) |
WO (1) | WO2013006180A1 (ko) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140201017A1 (en) * | 2008-06-19 | 2014-07-17 | Servicemesh, Inc. | Systems and methods for providing repeated use of computing resources |
US9489647B2 (en) * | 2008-06-19 | 2016-11-08 | Csc Agility Platform, Inc. | System and method for a cloud computing abstraction with self-service portal for publishing resources |
US10411975B2 (en) | 2013-03-15 | 2019-09-10 | Csc Agility Platform, Inc. | System and method for a cloud computing abstraction with multi-tier deployment policy |
TWI512486B (zh) * | 2013-05-24 | 2015-12-11 | Univ Nat Cheng Kung | 可攜式電子裝置與可攜式雲端運算系統 |
US20150006730A1 (en) * | 2013-06-27 | 2015-01-01 | Sap Ag | Enabling multi-tenant virtual servers in a cloud system |
US9940111B2 (en) | 2013-12-18 | 2018-04-10 | Red Hat, Inc. | Policy-based application deployment to a target application platform system |
US9565250B2 (en) * | 2014-05-30 | 2017-02-07 | Microsoft Technology Licensing, Llc | Data transfer service |
US10194210B2 (en) * | 2015-02-10 | 2019-01-29 | Hulu, LLC | Dynamic content delivery network allocation system |
CN106281269B (zh) * | 2016-08-17 | 2018-10-16 | 常熟理工学院 | 一种堵水不堵油型堵水剂及其制备方法 |
US10979296B2 (en) * | 2017-10-04 | 2021-04-13 | Servicenow, Inc. | Systems and method for service mapping |
CN110334099A (zh) * | 2019-07-09 | 2019-10-15 | 西安点告网络科技有限公司 | 基于数据库的表单计算方法和系统 |
US11082741B2 (en) | 2019-11-19 | 2021-08-03 | Hulu, LLC | Dynamic multi-content delivery network selection during video playback |
US12120404B2 (en) | 2020-08-14 | 2024-10-15 | Novi Digital Entertainment Private Limited | System and method for delivering media content to users |
US11496786B2 (en) | 2021-01-06 | 2022-11-08 | Hulu, LLC | Global constraint-based content delivery network (CDN) selection in a video streaming system |
KR102522219B1 (ko) * | 2022-06-30 | 2023-04-17 | 주식회사 에이젠글로벌 | 데이터 이코노미에서 금융 데이터 가치 측정 방법 및 이러한 방법을 수행하는 장치 |
CN118233662A (zh) | 2022-12-19 | 2024-06-21 | 北京葫芦软件技术开发有限公司 | 使用代理选择内容分发网络 |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2319862A (en) * | 1996-11-28 | 1998-06-03 | Ibm | Performing computer-based on-line commerce using an intelligent agent |
JP2002245152A (ja) * | 2001-02-14 | 2002-08-30 | Fujitsu Ltd | サービス仲介処理装置,サービス仲介処理方法およびサービス仲介処理用プログラム |
JP2004164313A (ja) * | 2002-11-13 | 2004-06-10 | Fujitsu Ltd | サービス連携装置 |
JP4759269B2 (ja) * | 2003-05-16 | 2011-08-31 | 株式会社エヌ・ティ・ティ・ドコモ | 個別サービス選択 |
US7877754B2 (en) * | 2003-08-21 | 2011-01-25 | International Business Machines Corporation | Methods, systems, and media to expand resources available to a logical partition |
KR100978821B1 (ko) * | 2003-10-27 | 2010-08-30 | 노키아 코포레이션 | 서비스 선택 및 분류를 위한 장치, 시스템, 방법 및 컴퓨터프로그램 생성물 |
US20050172291A1 (en) * | 2004-01-30 | 2005-08-04 | Rajarshi Das | Method and apparatus for utility-based dynamic resource allocation in a distributed computing system |
CN103218732A (zh) * | 2004-12-07 | 2013-07-24 | 毕库德股份有限公司 | 一种电子商务系统、方法和装置 |
US20060143617A1 (en) * | 2004-12-29 | 2006-06-29 | Knauerhase Robert C | Method, apparatus and system for dynamic allocation of virtual platform resources |
US20110016214A1 (en) * | 2009-07-15 | 2011-01-20 | Cluster Resources, Inc. | System and method of brokering cloud computing resources |
US7496893B2 (en) * | 2006-06-15 | 2009-02-24 | International Business Machines Corporation | Method for no-demand composition and teardown of service infrastructure |
US8943497B2 (en) * | 2008-05-29 | 2015-01-27 | Red Hat, Inc. | Managing subscriptions for cloud-based virtual machines |
US8271974B2 (en) * | 2008-10-08 | 2012-09-18 | Kaavo Inc. | Cloud computing lifecycle management for N-tier applications |
US20100217867A1 (en) * | 2009-02-25 | 2010-08-26 | International Business Machines Corporation | System and method for creating and using service dependency graphs to automate the development and deployment of service oriented applications |
US8209272B2 (en) * | 2009-02-27 | 2012-06-26 | Red Hat, Inc. | Dynamic computation of optimal placement for services in a distributed computing system |
KR101179554B1 (ko) * | 2009-03-26 | 2012-09-05 | 한국전자통신연구원 | 모바일 클라우드 플랫폼을 구비한 모바일 단말 장치 |
EP2425341B1 (en) * | 2009-05-01 | 2018-07-11 | Citrix Systems, Inc. | Systems and methods for establishing a cloud bridge between virtual storage resources |
JP4939594B2 (ja) * | 2009-11-30 | 2012-05-30 | インターナショナル・ビジネス・マシーンズ・コーポレーション | プライマリクラウドが提供したサービスレベルの実績値又は更新されたプリファレンス情報に基づいて、サービスレベルアグリーメントを動的に決定してサービスを提供することができるクラウドシステムを構成する装置、方法及びコンピュータプログラム |
US9104438B2 (en) * | 2009-12-03 | 2015-08-11 | International Business Machines Corporation | Mapping computer desktop objects to cloud services within a cloud computing environment |
US8924569B2 (en) * | 2009-12-17 | 2014-12-30 | Intel Corporation | Cloud federation as a service |
US8433802B2 (en) * | 2010-01-26 | 2013-04-30 | International Business Machines Corporation | System and method for fair and economical resource partitioning using virtual hypervisor |
US8301746B2 (en) * | 2010-01-26 | 2012-10-30 | International Business Machines Corporation | Method and system for abstracting non-functional requirements based deployment of virtual machines |
US8364819B2 (en) * | 2010-05-28 | 2013-01-29 | Red Hat, Inc. | Systems and methods for cross-vendor mapping service in cloud networks |
US20120311157A1 (en) * | 2011-06-03 | 2012-12-06 | Erickson Philip J | Integrated information technology service management for cloud resources |
US8745233B2 (en) * | 2010-12-14 | 2014-06-03 | International Business Machines Corporation | Management of service application migration in a networked computing environment |
-
2011
- 2011-07-07 KR KR1020137033296A patent/KR101709171B1/ko active IP Right Grant
- 2011-07-07 US US13/510,277 patent/US20130013377A1/en not_active Abandoned
- 2011-07-07 KR KR1020157030665A patent/KR101825397B1/ko active IP Right Grant
- 2011-07-07 JP JP2014516959A patent/JP5914646B2/ja not_active Expired - Fee Related
- 2011-07-07 CN CN201180072141.9A patent/CN103649984B/zh not_active Expired - Fee Related
- 2011-07-07 WO PCT/US2011/043229 patent/WO2013006180A1/en active Application Filing
-
2015
- 2015-03-06 US US14/640,933 patent/US20150199769A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US20150199769A1 (en) | 2015-07-16 |
KR20140009575A (ko) | 2014-01-22 |
US20130013377A1 (en) | 2013-01-10 |
JP2014517432A (ja) | 2014-07-17 |
CN103649984A (zh) | 2014-03-19 |
KR20150126716A (ko) | 2015-11-12 |
CN103649984B (zh) | 2016-10-19 |
JP5914646B2 (ja) | 2016-05-11 |
KR101825397B1 (ko) | 2018-02-06 |
WO2013006180A1 (en) | 2013-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101709171B1 (ko) | 애그리게이팅된 환경에서의 벤더 최적화 | |
Shukla et al. | Riotbench: An iot benchmark for distributed stream processing systems | |
US20230049730A1 (en) | Aggregation in dynamic and distributed computing systems | |
US11836533B2 (en) | Automated reconfiguration of real time data stream processing | |
US10122788B2 (en) | Managed function execution for processing data streams in real time | |
CN105593854B (zh) | 数据流的定制划分 | |
US9477787B2 (en) | Method and apparatus for information clustering based on predictive social graphs | |
US9363195B2 (en) | Configuring cloud resources | |
US20150067019A1 (en) | Method and system for using arbitrary computing devices for distributed data processing | |
US20110251937A1 (en) | Software license brokering within a cloud computing environment | |
US11567930B2 (en) | Adaptive data retrieval with runtime authorization | |
EP2808792B1 (en) | Method and system for using arbitrary computing devices for distributed data processing | |
CN109726004A (zh) | 一种数据处理方法及装置 | |
US11449409B2 (en) | Schema inference and log data validation system | |
US20130346381A1 (en) | Multimedia Real-Time Searching Platform (SKOOP) | |
Kabáč et al. | Designing parallel data processing for enabling large-scale sensor applications | |
Kang et al. | Distributed monitoring system for microservices-based iot middleware system | |
KR20220023325A (ko) | 특성을 공유하는 이벤트들을 식별하기 위한 시스템 및 방법 | |
US20120030238A1 (en) | Automatically identifying personalized support | |
US20130097622A1 (en) | Framework for system communication for handling data | |
US20220391746A1 (en) | Api optimizer using contextual analysis of interface data exchange | |
Poulakis et al. | Hocc: an ontology for holistic description of cluster settings | |
US20170083632A1 (en) | Efficient Distributed Query Execution | |
US20210286819A1 (en) | Method and System for Operation Objects Discovery from Operation Data | |
WO2023034322A1 (en) | Tracer events |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
AMND | Amendment | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
A107 | Divisional application of patent | ||
AMND | Amendment | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E90F | Notification of reason for final refusal | ||
AMND | Amendment | ||
X701 | Decision to grant (after re-examination) | ||
GRNT | Written decision to grant |