DE102020208110A1 - Verfahren und vorrichtungen zum aggregieren von telemetriedaten in einer edge-umgebung - Google Patents

Verfahren und vorrichtungen zum aggregieren von telemetriedaten in einer edge-umgebung Download PDF

Info

Publication number
DE102020208110A1
DE102020208110A1 DE102020208110.7A DE102020208110A DE102020208110A1 DE 102020208110 A1 DE102020208110 A1 DE 102020208110A1 DE 102020208110 A DE102020208110 A DE 102020208110A DE 102020208110 A1 DE102020208110 A1 DE 102020208110A1
Authority
DE
Germany
Prior art keywords
resource
telemetry
performance metric
telemetry data
data
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.)
Pending
Application number
DE102020208110.7A
Other languages
English (en)
Inventor
Timothy Verrall
Ned M. Smith
Kshitij Arun Doshi
Francesc Guim Bernat
Rajesh Gadiyar
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of DE102020208110A1 publication Critical patent/DE102020208110A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/544Buffers; Shared memory; Pipes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3433Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment for load management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/1865Transactional file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • G06F16/90339Query processing by using parallel associative memories or content-addressable memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/44Encoding
    • G06F8/443Optimisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44594Unloading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0893Assignment of logical groups to network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0894Policy-based network configuration management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0895Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/142Network analysis or design using statistical or mathematical methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/145Network analysis or design involving simulating, designing, planning or modelling of a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/147Network analysis or design for predicting network behaviour
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • H04L41/5009Determining service level performance parameters or violations of service level contracts, e.g. violations of agreed response time or mean time between failures [MTBF]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • H04L41/5019Ensuring fulfilment of SLA
    • H04L41/5025Ensuring fulfilment of SLA by proactively reacting to service quality change, e.g. by reconfiguration after service quality degradation or upgrade
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5041Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
    • H04L41/5051Service on demand, e.g. definition and deployment of services in real time
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/22Traffic shaping
    • H04L47/225Determination of shaping rate, e.g. using a moving window
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/38Flow control; Congestion control by adapting coding or compression rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/82Miscellaneous aspects
    • H04L47/822Collecting or measuring resource availability data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0407Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the identity of one or more communicating identities is hidden
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • H04L67/125Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0822Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1408Protection against unauthorised use of memory or access to memory by using cryptography
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2308Concurrency control
    • G06F16/2315Optimistic concurrency control
    • G06F16/2322Optimistic concurrency control using timestamps
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/509Offload
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16YINFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
    • G16Y40/00IoT characterised by the purpose of the information processing
    • G16Y40/10Detection; Monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3297Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving time stamps, e.g. generation of time stamps
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/70Services for machine-to-machine communication [M2M] or machine type communication [MTC]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Environmental & Geological Engineering (AREA)
  • Bioethics (AREA)
  • Quality & Reliability (AREA)
  • Data Mining & Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Probability & Statistics with Applications (AREA)
  • Mathematical Analysis (AREA)
  • Algebra (AREA)
  • Computational Linguistics (AREA)
  • Debugging And Monitoring (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Storage Device Security (AREA)
  • Telephonic Communication Services (AREA)

Abstract

Es werden Verfahren, Vorrichtungen, Systeme und Herstellungsartikel zum Aggregieren von Telemetriedaten in einer Edge-Umgebung offenbart. Eine beispielhafte Vorrichtung weist wenigstens einen Prozessor und einen Speicher auf, der Befehle aufweist, die, wenn sie ausgeführt werden, den wenigstens einen Prozessor veranlassen, wenigstens Folgendes auszuführen: Erzeugen einer Komposition für einen Edge-Dienst in der Edge-Umgebung, wobei die Komposition eine erste Schnittstelle zum Erhalten der Telemetriedaten repräsentiert, die Telemetriedaten Ressourcen des Edge-Dienstes zugeordnet sind und eine Leistungsmetrik aufweisen, Erzeugen eines Ressourcenobjekts auf der Grundlage der Leistungsmetrik, Erzeugen eines Telemetrieobjekts auf der Grundlage der Leistungsmetrik und Erzeugen eines ausführbaren Telemetrieprogramms auf der Grundlage der Komposition, wobei die Komposition wenigstens eines vom Ressourcenobjekt oder vom Telemetrieobjekt aufweist, wobei das ausführbare Telemetrieprogramm die Telemetriedaten ansprechend darauf erzeugen soll, dass der Edge-Dienst eine Rechenaufgabe ausführt, die auf der Grundlage der Telemetriedaten auf den Edge-Dienst verteilt wurde.

Description

  • VERWANDTE ANMELDUNG
  • Dieses Patent ergibt sich aus einer nicht vorläufigen Patentanmeldung, welche die Priorität aus der am 22. November 2019 eingereichten vorläufigen US-Patentanmeldung Nr. 62/939 303 mit dem Titel „Multi-Entity Resource, Security, and Service Management in Edge Computing Deployments“ und aus der am 28. September 2019 eingereichten vorläufigen US-Patentanmeldung Nr. 62/907 597 mit dem Titel „Multi-Entity Resource, Security, and Service Management in Edge Computing Deployments“ beansprucht. Die vorläufige US-Patentanmeldung Nr. 62/939 303 und die vorläufige US-Patentanmeldung Nr. 62/907 597 sind hier in ihrer Gesamtheit durch Verweis aufgenommen.
  • GEBIET DER OFFENBARUNG
  • Diese Offenbarung betrifft allgemein Edge-Umgebungen und insbesondere Verfahren und Vorrichtungen zum Aggregieren von Telemetriedaten in einer Edge-Umgebung.
  • HINTERGRUND
  • Edge-Umgebungen (beispielsweise ein Edge-, Fog-, Mehrfachzugriffs-Edge-Computing(MEC)- oder Internet-der-Dinge(IoT)-Netz) ermöglichen eine Ausführung von Arbeitslasten (beispielsweise eine Ausführung einer oder mehrerer Rechenaufgaben, eine Ausführung eines Maschinenlernmodells unter Verwendung eingegebener Daten usw.) in der Nähe von Endpunktvorrichtungen, die eine Ausführung der Arbeitslast fordern. Edge-Umgebungen können Infrastruktur in der Art eines Edge-Dienstes aufweisen, die mit Cloud-Infrastruktur, Endpunktvorrichtungen oder zusätzlicher Edge-Infrastruktur über Netze in der Art des Internets verbunden ist. Edge-Dienste können sich näher an Endpunktvorrichtungen befinden als Cloud-Infrastruktur in der Art zentralisierter Server.
  • Figurenliste
  • Es zeigen:
    • 1 eine beispielhafte Umgebung, die eine beispielhafte Cloud-Umgebung, eine beispielhafte Edge-Umgebung, eine beispielhafte Endpunktumgebung und beispielhafte Telemetriesteuereinrichtungen zum Aggregieren von Telemetriedaten aufweist,
    • 2 ein Blockdiagramm der beispielhaften Telemetriesteuereinrichtungen aus 1,
    • 3 ein beispielhaftes Ressourcenmodell, das ein Ressourceninformationsobjekt und ein Telemetrieinformationsobjekt aufweist,
    • 4 ein Blockdiagramm des Telemetrieinformationsobjekts aus 3,
    • die 5A - 5E beispielhafte Beziehungen zwischen dem Ressourcenobjekt aus 3 und dem Telemetrieobjekt aus den 3 und/oder 4,
    • die 6A - 6C schematische Darstellungen beispielhafter Ressourcenkompositionen,
    • die 7A - 7C schematische Darstellungen beispielhafter Telemetriekompositionen,
    • 8 ein Flussdiagramm, das beispielhafte maschinenlesbare Befehle repräsentiert, die ausgeführt werden können, um die beispielhafte Telemetrie-Steuereinrichtung aus den 1 und/oder 2 zu implementieren, um auf der Grundlage von Telemetriedaten Rechenaufgaben auf einen oder mehrere beispielhafte Edge-Dienste zu verteilen,
    • 9 ein Flussdiagramm, das beispielhafte maschinenlesbare Befehle repräsentiert, die ausgeführt werden können, um die beispielhafte Telemetrie-Steuereinrichtung aus den 1 und/oder 2 zu implementieren, um eine oder mehrere beispielhafte Kompositionen eines beispielhaften Edge-Dienstes zu erzeugen,
    • 10 ein Flussdiagramm, das beispielhafte maschinenlesbare Befehle repräsentiert, die ausgeführt werden können, um die beispielhafte Telemetrie-Steuereinrichtung aus den 1 und/oder 2 zu implementieren, um ein oder mehrere beispielhafte Ressourcenobjekte zu erzeugen,
    • 11 ein Flussdiagramm, das beispielhafte maschinenlesbare Befehle repräsentiert, die ausgeführt werden können, um die beispielhafte Telemetrie-Steuereinrichtung aus den 1 und/oder 2 zu implementieren, um ein oder mehrere beispielhafte Telemetrieinformationsobjekte zu erzeugen,
    • 12 ein Flussdiagramm, das beispielhafte maschinenlesbare Befehle repräsentiert, die ausgeführt werden können, um das beispielhafte Telemetrieinformationsobjekt aus den 3, 4 und/oder 5A zu implementieren, um Telemetriedaten zu erzeugen,
    • 13 ein Blockdiagramm einer beispielhaften Verarbeitungsplattform, die aufgebaut ist, um die beispielhaften maschinenlesbaren Befehle aus den 8 - 12 auszuführen, um die eine oder die mehreren beispielhaften Telemetrie-Steuereinrichtungen aus den 1 und/oder 2 zu implementieren, und
    • 14 ein Blockdiagramm einer beispielhaften Verarbeitungsplattform, die aufgebaut ist, um die beispielhaften maschinenlesbaren Befehle aus den 8 - 12 auszuführen, um den einen oder die mehreren beispielhaften Edge-Dienste aus 1 zu implementieren.
  • Die Figuren sind nicht maßstabsgerecht. Im Allgemeinen werden in den Zeichnungen und der anliegenden Beschreibung die gleichen Bezugszahlen verwendet, um gleiche oder vergleichbare Teile zu bezeichnen.
  • DETAILLIERTE BESCHREIBUNG
  • Die Deskriptoren „erster“, „zweiter“, „dritter“ usw. werden hier verwendet, wenn mehrere Elemente oder Komponenten identifiziert werden, auf die getrennt Bezug genommen werden kann. Sofern nichts anderes spezifiziert wird oder auf der Grundlage ihres Verwendungszusammenhangs verständlich wird, sollen solche Deskriptoren keine Bedeutung einer Priorität, physischen Reihenfolge oder Anordnung in einer Liste oder zeitlichen Reihenfolge unterstellen, sondern werden lediglich zum einfachen Verständnis der offenbarten Beispiele als Bezeichner zur getrennten Bezugnahme auf mehrere Elemente oder Komponenten verwendet. Bei einigen Beispielen kann der Deskriptor „erster“ verwendet werden, um ein Element in der detaillierten Beschreibung zu bezeichnen, während das gleiche Element in einem Anspruch mit einem anderen Deskriptor in der Art von „zweiter“ oder „dritter“ bezeichnet werden kann. In solchen Fällen ist zu verstehen, dass diese Deskriptoren lediglich zur einfachen Bezugnahme auf mehrere Elemente oder Komponenten verwendet werden.
  • Das Edge-Computing bezieht sich auf einem allgemeinen Niveau auf den Übergang von Rechen- und Speicherressourcen, die Endpunktvorrichtungen (beispielsweise Endverbraucher-Rechenvorrichtungen, Benutzergeräten usw.) näher liegen, um die Gesamtbetriebskosten zu optimieren, die Anwendungslatenz zu verringern, die Dienstfähigkeiten zu verbessern und die Einhaltung von Datenschutz- oder Sicherheitsanforderungen zu verbessern. Das Edge-Computing kann in manchen Szenarien einen Cloud-artigen verteilten Dienst bereitstellen, der eine Orchestrierung und Verwaltung von Anwendungen zwischen vielen Typen von Speicher- und Rechenressourcen bietet. Deshalb wurden einige Implementationen des Edge-Computings als „Edge-Cloud“ oder „Fog“ bezeichnet, weil mächtige Rechenressourcen, die zuvor nur den großen fernen Rechenzentren verfügbar waren, näher an Endpunkte bewegt wurden und Verbrauchern am „Rand“ des Netzes verfügbar gemacht wurden.
  • Verwendungsfälle des Edge-Computings in Mobilnetzumgebungen wurden für die Integration mit Mehrfachzugriffs-Edge-Computing(MEC)-Ansätzen, auch als „mobiles Edge-Computing“ bekannt, entwickelt. MEC-Ansätze sollen es Anwendungsentwicklern und Inhaltsanbietern ermöglichen, auf Rechenkapazitäten und eine Informationstechnologie(IT)-Dienstumgebung in dynamischen Mobilnetzumgebungen am Rand des Netzes zuzugreifen. Begrenzte Standards wurden von der Industriespezifikationsgruppe (ISG) des europäischen Instituts für Telekommunikationsnormung (ETSI) in einem Versuch entwickelt, gemeinsame Schnittstellen für den Betrieb von MEC-Systemen, -Plattformen, - Hosts, -Diensten und -Anwendungen zu definieren.
  • Edge-Computing, MEC und verwandte Technologien streben an, eine geringere Latenz, ein erhöhtes Ansprechverhalten und mehr verfügbare Rechenleistung bereitzustellen, als sie bei traditionellen Cloud-Netzdiensten und Weitbereichsnetzverbindungen angeboten werden. Die Integration von Mobilität und dynamisch gestarteten Diensten in einige mobile Verwendungs- und Vorrichtungsverarbeitungs-Anwendungsfälle hat jedoch zu Beschränkungen und Bedenken in Bezug auf die Orchestrierung, funktionelle Koordination und das Ressourcenmanagement geführt, insbesondere in komplexen Mobilitätsumgebungen, bei denen viele Teilnehmer (beispielsweise Vorrichtungen, Hosts, Mandanten, Dienstanbieter, Betreiber usw.) beteiligt sind.
  • Ähnlich sollen Internet-der-Dinge(IoT)-Netze und -Vorrichtungen eine verteilte Rechenanordnung anhand einer Vielzahl von Endpunkten bieten. IoT-Vorrichtungen können physische oder virtualisierte Objekte sein, die auf einem Netz kommunizieren können und Sensoren, Stellglieder und andere Ein-/Ausgabekomponenten aufweisen können, die verwendet werden können, um Daten zu sammeln oder Aktionen in einer realen Umgebung auszuführen. Beispielsweise können IoT-Vorrichtungen Endpunktvorrichtungen mit geringer Leistungsaufnahme aufweisen, die in alltägliche Dinge in der Art von Gebäuden, Fahrzeugen, Paketen usw. eingebettet oder daran angebracht sind, um eine zusätzliche Ebene einer künstlichen sensorischen Wahrnehmung dieser Dinge bereitzustellen. In den letzten Jahren sind IoT-Vorrichtungen beliebter geworden, und es haben sich demgemäß diese Vorrichtungen verwendende Anwendungen verbreitet.
  • Bei einigen Beispielen kann eine Edge-Umgebung einen Unternehmens-Edge aufweisen, worin eine Kommunikation mit und/oder innerhalb des Unternehmens-Edges durch drahtlose und/oder festverdrahtete Konnektivität erleichtert werden kann. Durch die Einrichtung verschiedener Edge-, Fog-, MEC- und IoT-Netze, -Vorrichtungen und -Dienste wurde eine Anzahl fortgeschrittener Verwendungsfälle und Szenarien eingeleitet, die am Rand des Netzes und zu diesem hin auftreten. Diese fortgeschrittenen Verwendungsfälle haben jedoch zu einer Anzahl entsprechender technischer Herausforderungen in Bezug auf Sicherheit, Verarbeitungs- und Netzressourcen, Dienstverfügbarkeit und Effizienz, unter vielen anderen Problemen, geführt. Eine solche Herausforderung bezieht sich auf Edge-, Fog- , MEC- und IoT-Netze, -Vorrichtungen und -Dienste, die Arbeitslasten im Auftrag von Endpunktvorrichtungen ausführen.
  • Die vorliegenden Techniken und Konfigurationen können in Zusammenhang mit vielen Aspekten aktueller Netzwerksysteme verwendet werden, werden jedoch mit Bezug auf Edge-Cloud, IoT, Mehrfachzugriffs-Edge-Computing (MEC) und andere verteilte Berechnungseinrichtungen bereitgestellt. Die folgenden Systeme und Techniken können in einer Vielzahl verteilter, virtualisierter oder gemanagter Edge-Berechnungssysteme implementiert werden oder diese erweitern. Diese umfassen Umgebungen, in denen Netzdienste unter Verwendung von Mehrfachzugriffs-Edge-Computing(MEC)-, Vierte-Generation(4G)- oder Fünfte-Generation(5G)-Drahtlosnetzkonfigurationen oder in festverdrahteten Netzkonfigurationen, die Faser-, Kupfer- und andere Verbindungen aufweisen, implementiert oder behandelt werden. Ferner können Aspekte der Verarbeitung durch die jeweiligen Rechenkomponenten Rechenelemente betreffen, die in geographischer Nähe zu einem Benutzergerät oder anderen Endpunktstellen stehen, wie ein Smartphone, eine Fahrzeugkommunikationskomponente, eine IoT-Vorrichtung usw. Ferner können sich die gegenwärtig offenbarten Techniken auf andere Edge/MEC/IoT-Netzkommunikationsstandards und -konfigurationen und andere Zwischenverarbeitungsentitäten und -architekturen beziehen.
  • Edge-Computing ist ein Entwicklungsparadigma, bei dem eine Berechnung am „Rand“ eines Netzes oder näher zu diesem ausgeführt wird, typischerweise durch die Verwendung einer Rechenplattform, die an Basisstationen, Gateways, Netz-Routern oder anderen Vorrichtungen implementiert ist, die sich viel näher zu Daten erzeugenden und verbrauchenden Endpunktvorrichtungen befinden. Beispielsweise können Edge-Gateway-Server mit Pools von Speicher- und Massenspeicherressourcen zur Ausführung von Berechnungen in Echtzeit für Verwendungsfälle mit geringer Latenz (beispielsweise autonomes Fahren oder Videoüberwachung) für angeschlossene Client-Vorrichtungen ausgerüstet sein. Bei einem weiteren Beispiel können Basisstationen durch Rechen- und Beschleunigungsressourcen erweitert werden, um Dienstarbeitslasten für ein angeschlossenes Benutzergerät direkt zu verarbeiten, ohne Daten über Backhaul-Netze weiter zu kommunizieren. Bei einem anderen Beispiel kann Zentralbüro-Netzverwaltungshardware durch Rechenhardware ersetzt werden, die virtualisierte Netzfunktionen ausführt und Rechenressourcen für die Ausführung von Diensten und Endverbraucherfunktionen für angeschlossene Vorrichtungen bietet.
  • Edge-Umgebungen weisen Netze und/oder Teile von Netzen auf, die sich zwischen einer Cloud-Umgebung und einer Endpunktumgebung befinden. Edge-Umgebungen ermöglichen Berechnungen von Arbeitslasten an Rändern eines Netzes. Beispielsweise kann eine Endpunktvorrichtung eine nahe gelegene Basisstation an Stelle eines zentralen Servers in einer Cloud-Umgebung auffordern, eine Arbeitslast zu berechnen. Edge-Umgebungen weisen Edge-Dienste auf, die Pools von Speicher-, Massenspeicherressourcen und Verarbeitungsressourcen aufweisen. Edge-Dienste führen Berechnungen in der Art einer Ausführung einer Arbeitslast im Auftrag anderer Edge-Dienste und/oder Edge-Knoten aus. Edge-Umgebungen erleichtern Verbindungen zwischen Erzeugern (beispielsweise Arbeitslastexekutoren, Edge-Diensten) und Verbrauchern (beispielsweise anderen Edge-Diensten, Endpunktvorrichtungen).
  • Weil sich Edge-Dienste näher an Endpunktvorrichtungen als zentralisierte Server in Cloud-Umgebungen befinden können, ermöglichen Edge-Dienste Berechnungen von Arbeitslasten mit einer geringeren Latenz (beispielsweise Antwortzeit) als Cloud-Umgebungen. Edge-Dienste können auch eine lokalisierte Ausführung einer Arbeitslast auf der Grundlage geographischer Orte oder Netztopographien ermöglichen. Beispielsweise kann eine Endpunktvorrichtung fordern, dass eine Arbeitslast in einem ersten geographischen Bereich ausgeführt wird, ein zentralisierter Server kann sich jedoch in einem zweiten geographischen Bereich befinden. Die Endpunktvorrichtung kann eine Arbeitslastausführung durch einen Edge-Dienst fordern, der sich im ersten geographischen Bereich befindet, um Firmen- oder regulatorischen Vorschriften zu genügen.
  • Beispiele von Arbeitslasten, die in einer Edge-Umgebung auszuführen sind, umfassen Berechnungen in Bezug auf das autonome Fahren, Videoüberwachung, Maschinenlernmodell-Ausführungen und Echtzeit-Datenanalytik. Zusätzliche Beispiele von Arbeitslasten umfassen die Übertragung und/oder die Codierung von Medien-Streams, das Messen von Werbungsbeeindruckungsraten, Objekterkennung in Medien-Streams, Sprachanalytik, Asset- und/oder Inventarmanagement und Verarbeitungen in Bezug auf Augmented Reality.
  • Edge-Dienste ermöglichen sowohl die Ausführung von Arbeitslasten als auch eine Rückgabe eines Ergebnisses einer ausgeführten Arbeitslast zu Endpunktvorrichtungen mit einer Antwortzeit, die niedriger ist als die Antwortzeit eines Servers in einer Cloud-Umgebung. Falls sich ein Edge-Dienst beispielsweise näher an einer Endpunktvorrichtung auf einem Netz befindet als ein Cloud-Server, kann der Edge-Dienst schneller als der Cloud-Server auf Arbeitslastausführungsanforderungen von der Endpunktvorrichtung antworten. Eine Endpunktvorrichtung kann eine Ausführung einer zeitlich begrenzten Arbeitslast von einem Edge-Dienst statt einem Cloud-Server fordern.
  • Zusätzlich ermöglichen Edge-Dienste die Verteilung und die Dezentralisierung von Arbeitslastausführungen. Beispielsweise kann eine Endpunktvorrichtung eine erste Arbeitslastausführung und eine zweite Arbeitslastausführung anfordern. Bei einigen Beispielen kann ein Cloud-Server auf beide Arbeitslastausführungsanforderungen antworten. Bei einer Edge-Umgebung kann ein erster Edge-Dienst jedoch die erste Arbeitslastausführungsanforderung bearbeiten und kann ein zweiter Edge-Dienst die zweite Arbeitslastausführungsanforderung bearbeiten.
  • Um den Bedarf an geringer Latenz und hoher Bandbreite von Endpunktvorrichtungen zu erfüllen, muss auf der Grundlage zeitgerechter Ressourcenauslastungsinformationen über die Auslastung vieler Ressourcen (beispielsweise Hardware-Ressourcen, Software-Ressourcen, virtueller Hardware- und/oder Software-Ressourcen usw.) und der Effizienz, mit der diese Ressourcen die ihnen auferlegten Anforderungen erfüllen können, eine Orchestrierung in Edge-Clouds ausgeführt werden. Bei hier offenbarten Beispielen werden solche Ressourcenauslastungsinformationen im Allgemeinen als Telemetrie (beispielsweise Telemetriedaten, Telemetrieinformationen usw.) bezeichnet.
  • Telemetrie kann für mehrere Quellen, einschließlich individueller Hardwarekomponenten und/oder Teile davon, virtueller Maschinen (VMs), Betriebssysteme (OS), Anwendungen und/oder Orchestratoren, erzeugt werden. Telemetrie kann von Orchestratoren, Planem usw. verwendet werden, um den Umfang und/oder die Typen von Rechenaufgaben, deren Ausführung zu planen ist, und an welcher Ressource oder an welchem Teil bzw. welchen Teilen sie auszuführen sind, zu bestimmen. Telemetrie kann auch zur Bestimmung für den Abschluss solcher Rechenaufgaben erwarteter Zeiten auf der Grundlage historischer und/oder aktueller (beispielsweise instantaner oder nahezu instantaner) Telemetrie verwendet werden. Beispielsweise kann ein Kern einer Mehrkern-Zentralverarbeitungseinheit (CPU) unter Verwendung einer Leistungsüberwachungseinheit (PMU), die den Kern und/oder allgemeiner die Mehrkern-CPU überwacht, in jedem Sekundenbruchteil über tausend verschiedene Informationsspielarten erzeugen. Die periodische Aggregation und Verarbeitung all dieser Telemetrie in einer gegebenen Edge-Plattform, einem gegebenen Edge-Dienst usw. kann ein zäher und mühsamer Prozess sein. Die Priorisierung herausragender interessierender Merkmale und die Extraktion solcher herausragender Merkmale aus Telemetrie zur Identifikation aktueller oder künftiger Probleme, Stressoren usw. in Zusammenhang mit einer Ressource ist schwierig. Ferner ist die Identifikation einer anderen Ressource zur Auslagerung von Arbeitslasten aus der belasteten Ressource ein komplexes Unterfangen.
  • Einige EDGE-Umgebungen wünschen, Telemetriedaten in Zusammenhang mit Ressourcen, die eine Vielzahl von Funktionen oder Diensten in der Art von Datenverarbeitungs- oder Videoanalytikfunktionen ausführen (beispielsweise Maschinensicht, Bildverarbeitung für autonome Fahrzeuge, Gesichtserkennung, Sichtobjekterkennung usw.), zu erhalten. Viele Arbeitslasten mit hohem Durchsatz, einschließlich einer oder mehrerer Videoanalytikfunktionen, mit hohem Durchsatz können jedoch während weniger als einer Millisekunde ausgeführt werden (beispielsweise eine feine Granularität des Zeitintervalls). Solche Edge-Umgebungen weisen keine verteilten Überwachungssoftware- oder -hardwarelösungen oder eine Kombination davon auf, die in der Lage sind, solche zustandslosen Funktionen feiner Granularität, die auf einer Plattform ausgeführt werden (beispielsweise einer Ressourcenplattform, einer Hardwareplattform, einer Softwareplattform, einer virtualisierten Plattform usw.) zu überwachen.
  • Hier offenbarte Beispiele verbessern die Verteilung von Rechenaufgaben auf Edge-Dienste auf der Grundlage der Aggregation von Telemetriedaten in einer Edge-Umgebung. Bei einigen offenbarten Beispielen virtualisiert eine Telemetrie-Steuereinrichtung Hardware- und/oder Software-Ressourcen in der Edge-Umgebung, um Telemetriedaten unter Verwendung Ressourcen-agnostischer Befehle (beispielsweise maschinenlesbarer Befehle), Anweisungen (maschinenlesbarer Anweisungen), Instruktionen (beispielsweise maschinenlesbarer Instruktionen) usw. zu sammeln. Beispielsweise kann die Telemetrie-Steuereinrichtung Modelle (beispielsweise maschinenlesbare Modelle) von Hardware- und/oder Software-Ressourcen erzeugen, die zu einer oder mehreren Kompositionen von Modellen aggregiert werden können. Bei solchen Beispielen kann eine anfordernde oder subskribierende Vorrichtung oder ein anfordernder oder subskribierender Dienst (beispielsweise ein Softwaredienst) Telemetriedaten von einem Hardwaresystem und/oder Software-Ressourcen durch Abfragen der entsprechenden Modellkomposition anfordern. Vorteilhafterweise kann die Vorrichtung oder der Dienst die Telemetrie unter Verwendung maschinenlesbarer Befehle anfordern, die für die zugrunde liegenden Hardware- und/oder virtuellen Ressourcen generisch statt spezifisch sein können.
  • Hier offenbarte Beispiele verbessern die Verteilung von Rechenaufgaben auf Edge-Dienste auf der Grundlage von Telemetriedaten. Die Telemetriedaten werden durch ein oder mehrere Objekte in Zusammenhang mit einer oder mehreren Ressourcen (beispielsweise einer oder mehreren Hardware-Ressourcen, Software-Ressourcen usw. und/oder einer Kombination davon) erzeugt. Hier bezieht sich der Begriff „Objekt“ auf einen logischen Block maschinenlesbarer Definitionen, Datenstrukturen, Befehle usw. und/oder einen physischen Block (beispielsweise einen Block oder einen Abschnitt eines Speichers und/oder Massenspeichers), der den logischen Block aufweist. Der logische Block kann eine Funktion, eine Schnittstelle und/oder andernfalls ein maschinenlesbares Modell oder eine Repräsentation einer Ressource implementieren. Ein logischer Block kann sich auf Code (beispielsweise von Menschen lesbaren Code, maschinenlesbaren Code usw.) beziehen, der so geschrieben sein kann, dass das Objekt eine Partition, einen Abschnitt, einen Slice usw. der Ressource überwachen kann. Beispielsweise kann ein Objekt unter Verwendung eines kompilierten Objektcodes, Quellcodes usw. implementiert werden, der, wenn er ausgeführt wird, eine oder mehrere Objektschnittstellen einem Softwarestapel (beispielsweise einem Plattformsoftwarestapel, einem Systemsoftwarestapel usw.) darbieten kann. Bei solchen Beispielen können die eine oder die mehreren Objektschnittstellen, wenn sie aufgerufen werden, Telemetriedaten, die von einer Ressource erzeugt wurden und/oder ihr auf andere Weise zugeordnet sind, bereitstellen und/oder auf andere Weise darbieten. Beispielsweise können die Telemetriedaten eine Verfolgung der Ausführung eines oder mehrerer Prozesse, Dienste usw. der Ressource aufweisen.
  • Hier offenbarte beispielhafte Objekte können als Ressourcenobjekt oder als Telemetrieobjekt organisiert werden. Beispielsweise kann das Ressourcenobjekt ein Objekt auf der Grundlage einer Hardware- und/oder einer Software-Ressource sein. Bei anderen Beispielen kann das Telemetrieobjekt ein Objekt auf der Grundlage einer Schnittstelle zur Hardware- und/oder Software-Ressource sein.
  • Bei einigen offenbarten Beispielen virtualisiert die Telemetrie-Steuereinrichtung eine Hardware-Ressource in der Art eines Kerns (beispielsweise eines Rechenkerns, eines Prozessorkerns usw.) einer Mehrkern-CPU zu einem Ressourcenobjekt. Das Ressourcenobjekt kann ein Ressourceninformationsobjekt (RIO) und eine RIO-Schnittstelle aufweisen. Bei solchen Beispielen kann die Telemetrie-Steuereinrichtung das RIO durch Einkapseln beschreibender oder identifizierender Informationen über Fähigkeiten oder Funktionen des Kerns und/oder allgemeiner über den Kern in eine virtuelle objektorientierte Datenstruktur, die den Kern repräsentiert, erzeugen. Die beispielhafte Telemetrie-Steuereinrichtung kann die RIO-Schnittstelle durch Einkapseln von Befehlen, Anweisungen usw., die, wenn sie ausgeführt oder aufgerufen werden, den Kern veranlassen können, eine Aufgabe (beispielsweise eine Rechenaufgabe) auszuführen, wie das Bestimmen, Messen und/oder anderweitiges Erzeugen von interessierenden Telemetriedaten, erzeugen.
  • Bei einigen offenbarten Beispielen virtualisiert die Telemetrie-Steuereinrichtung eine Telemetrie-Ressource in der Art einer Datenschnittstelle für den Kern der Mehrkern-CPU in ein Telemetrieobjekt. Das Telemetrieobjekt kann ein Telemetrieinformationsobjekt (TIO) und eine TIO-Schnittstelle aufweisen. Bei solchen Beispielen kann die Telemetrie-Steuereinrichtung das TIO durch Einkapseln beschreibender oder identifizierender Informationen über Fähigkeiten oder Funktionen der Datenschnittstelle und/oder allgemeiner die Datenschnittstelle in eine virtuelle objektorientierte Datenstruktur, welche die Datenschnittstelle repräsentiert, erzeugen. Die beispielhafte Telemetrie-Steuereinrichtung kann die TIO-Schnittstelle durch Einkapseln von Befehlen, Anweisungen usw., die, wenn sie ausgeführt oder aufgerufen werden, die Datenschnittstelle veranlassen können, eine Aufgabe in der Art des Anforderns interessierender Telemetriedaten vom Kern auszuführen, erzeugen.
  • Bei einigen offenbarten Beispielen erzeugt die Telemetrie-Steuereinrichtung RIOs und entsprechende RIO-Schnittstellen für eine oder mehrere Edge-Dienstressourcen. Die beispielhafte Telemetrie-Steuereinrichtung kann eine Edge-Dienstkomposition erzeugen, die Datenteilungsbeziehungen, Funktionsbeziehungen usw. zwischen einigen der RIOs und/oder der RIO-Schnittstellen des einen oder der mehreren Edge-Dienste repräsentieren kann. Beispielsweise kann die Komposition eine oder mehrere Schnittstellen für das Erhalten von Telemetriedaten in Zusammenhang mit Ressourcen eines Edge-Dienstes repräsentieren. Bei einigen offenbarten Beispielen erzeugt die Telemetrie-Steuereinrichtung eine Edge-Umgebungskomposition, die Datenteilungsbeziehungen, Funktionsbeziehungen usw. zwischen einigen der Edge-Dienstkompositionen repräsentieren kann. Bei einigen offenbarten Beispielen kann die Telemetrie-Steuereinrichtung die verschiedenen Kompositionen ansprechend darauf, dass sich eine Ressource mit der Edge-Umgebung verbindet oder davon getrennt wird, adaptiv und dynamisch anpassen.
  • Bei einigen offenbarten Beispielen orchestriert die Telemetrie-Steuereinrichtung die Erzeugung und das Abrufen von Telemetriedaten in verschiedenen hierarchischen Schichten einer Rechenumgebung (beispielsweise einer ersten Schicht, die eine Ressource repräsentiert, einer zweiten Schicht, die einen mehrere Ressourcen aufweisenden Edge-Dienst repräsentiert, einer dritten Schicht, die eine einen oder mehrere Edge-Dienste aufweisende Edge-Umgebung repräsentiert, usw.). Vorteilhafterweise kann die beispielhafte Telemetrie-Steuereinrichtung die Erzeugung und/oder das Erhalten von Telemetriedaten in verschiedenen Granularitätsbereichen, von einem Hardwarezähler, einem Softwarezähler usw. eines Kerns einer Mehrkern-CPU eines Edge-Dienstes für einen Durchsatz mehrerer vom Edge-Dienst behandelter Ressourcen bewirken. Bei einigen offenbarten Beispielen kann die Telemetrie-Steuereinrichtung die Verteilung und Effizienz durch Ressourcen einer Edge-Umgebung auszuführender Rechenaufgaben auf der Grundlage einer gewünschten Granularität von Telemetriedaten verbessern.
  • 1 zeigt eine beispielhafte Umgebung (beispielsweise eine Rechenumgebung) 100, die eine beispielhafte Cloud-Umgebung 105, eine beispielhafte Edge-Umgebung 110 und eine beispielhafte Endpunktumgebung 115 zum Planen, Verteilen und/oder Ausführen einer Arbeitslast (beispielsweise einer oder mehrerer Rechen- oder Verarbeitungsaufgaben) aufweist. Beim Beispiel aus 1 weist die Cloud-Umgebung 105 einen ersten beispielhaften Server 112, einen zweiten beispielhaften Server 114, einen dritten beispielhaften Server 116, eine erste Instanz einer beispielhaften Telemetrie-Steuereinrichtung 130A und eine beispielhafte Datenbank (beispielsweise eine Cloud-Datenbank, eine Cloud-Umgebungs-Datenbank usw.) 135 auf. Alternativ kann die beispielhafte Cloud-Umgebung 105 weniger oder mehr Server als die in 1 dargestellten Server 112, 114, 116 aufweisen. Die beispielhaften Server 112, 114, 116 können zentralisierte Anwendungen ausführen (beispielsweise Webseiten-Hosting, Datenmanagement, Maschinenlernmodell-Anwendungen, das Antworten auf Anforderungen von Client-Vorrichtungen usw.).
  • Beim in 1 dargestellten Beispiel erleichtert die Telemetrie-Steuereinrichtung 130A die Erzeugung und/oder das Abrufen beispielhafter Telemetriedaten 136A-C in Zusammenhang mit zumindest einer von der Cloud-Umgebung 105, der Edge-Umgebung 110 oder der Endpunktumgebung 115. Beim Beispiel aus 1 speichert die Datenbank 135 die Telemetriedaten 136A-C und beispielhafte ausführbare Programme 137, 139, einschließlich zumindest eines ersten beispielhaften ausführbaren Programms 137 und eines zweiten beispielhaften ausführbaren Programms 139. Alternativ kann die Datenbank 135 weniger oder mehr ausführbare Programme als das erste ausführbare Programm 137 und das zweite ausführbare Programm 139 aufweisen. Beispielsweise können die ausführbaren Programme 137, 139 telemetrieerzeugende ausführbare Programme sein, die, wenn sie ausgeführt werden, die Telemetriedaten 136A-C erzeugen können.
  • Beim in 1 dargestellten Beispiel weisen die Telemetriedaten 136A-C erste beispielhafte Telemetriedaten 136A, zweite beispielhafte Telemetriedaten 136B und dritte beispielhafte Telemetriedaten 136C auf. In 1 können die ersten Telemetriedaten 136A und die zweiten Telemetriedaten 136B durch die Edge-Umgebung 110 erzeugt werden. Beim Beispiel aus 1 können die dritten Telemetriedaten 136C durch einen oder mehrere der Server 112, 114, 116, die Datenbank 135 usw. und/oder allgemeiner die Cloud-Umgebung 105 erzeugt werden.
  • Beim in 1 dargestellten Beispiel weist die Cloud-Umgebung 105 die Datenbank 135 zur Aufzeichnung von Daten (beispielsweise der Telemetriedaten 136A-C, der ausführbaren Programme 137, 139 usw.) auf. Bei einigen Beispielen speichert die Datenbank 135 Informationen einschließlich Datenbankaufzeichnungen, Webseitenanforderungen, Maschinenlernmodellen und Ergebnissen der Ausführung von Maschinenlernmodellen. Die beispielhafte Datenbank 135 kann durch einen flüchtigen Speicher (beispielsweise einen synchronen dynamischen Direktzugriffsspeicher (SDRAM), einen dynamischen Direktzugriffsspeicher (DRAM), einen dynamischen RAMBUS-Direktzugriffsspeicher (RDRAM) usw.) und/oder einen nichtflüchtigen Speicher (beispielsweise einen Flash-Speicher) implementiert werden. Die Datenbank 135 kann zusätzlich oder alternativ durch einen oder mehrere Speicher mit doppelter Datenrate (DDR) in der Art von DDR, DDR2, DDR3, DDR4, mobiles DDR (mDDR) usw. implementiert werden. Die beispielhafte Datenbank 135 kann zusätzlich oder alternativ durch eine oder mehrere Massenspeichervorrichtungen in der Art eines oder mehrerer Festplattenlaufwerke, eines oder mehrerer CD-Laufwerke, eines oder mehrerer DVD-Laufwerke, eines oder mehrerer SSD-Laufwerke usw. implementiert werden. Wenngleich die Datenbank 135 beim dargestellten Beispiel als einzelne Datenbank dargestellt ist, kann sie durch eine beliebige Anzahl und/oder durch beliebige Typen von Datenbanken implementiert werden. Ferner können die in der Datenbank 135 gespeicherten Daten ein beliebiges Datenformat annehmen, beispielsweise Binärdaten, kommabegrenzte Daten, tabulatorbegrenzte Daten, Strukturierte-Abfragesprache(SQL)-Strukturen usw.
  • Beim in 1 dargestellten Beispiel kommunizieren die Server 112, 114, 116 über ein Netz in der Art des Internets mit Vorrichtungen in der Edge-Umgebung 110 und/oder der Endpunktumgebung 115. Ebenso kann die beispielhafte Datenbank 135 Datensätze ansprechend auf Anforderungen von Vorrichtungen in der Cloud-Umgebung 105, der Edge-Umgebung 110 und/oder der Endpunktumgebung 115 bereitstellen und/oder speichern.
  • Beim in 1 dargestellten Beispiel weist die Edge-Umgebung 110 einen ersten beispielhaften Edge-Dienst 140 und einen zweiten beispielhaften Edge-Dienst 150 auf. In 1 sind die Edge-Dienste 140, 150 Edge-Rechenplattformen oder -Plattformdienste. Beispielsweise können die Edge-Dienste 140, 150 Hardware- und/oder Software-Ressourcen, Virtualisierungen der Hardware- und/oder Software-Ressourcen usw. und/oder eine Kombination davon aufweisen. Bei solchen Beispielen können die Edge-Dienste 140, 150 eine von einer Edge- oder Endpunktvorrichtung erhaltene Arbeitslast ausführen, wie beim Beispiel aus 1 dargestellt ist.
  • Beim in 1 dargestellten Beispiel weist der erste Edge-Dienst 140 eine zweite Instanz der Telemetrie-Steuereinrichtung 130B, des ersten ausführbaren Programms 137, eines ersten beispielhaften Orchestrators 142, eines ersten beispielhaften Planers 144, einer oder mehrerer erster beispielhafter Kompositionen 146, einer ersten beispielhaften Edge-Dienst(ES)-Datenbank 148 und einer oder mehrerer erster beispielhafter Ressourcen 149 auf. Beim in 1 dargestellten Beispiel weist das erste ausführbare Programm 137 die eine oder die mehreren ersten Kompositionen 146 auf und/oder implementiert sie auf andere Weise. Alternativ können die eine oder die mehreren ersten beispielhaften Kompositionen 146 nicht im ersten ausführbaren Programm 137 enthalten sein. Beispielsweise können die eine oder die mehreren ersten Kompositionen 146 durch den ersten Edge-Dienst 140 als Dienst (beispielsweise Funktion-als-ein-Dienst (FaaS), Software-als-ein-Dienst (SaaS) usw.) bereitgestellt werden, und/oder es kann auf andere Weise als Dienst auf sie zugegriffen werden. Bei solchen Beispielen können die eine oder die mehreren ersten Kompositionen 146 von einem oder mehreren der Server 112, 114, 116 gehostet werden. In 1 weist die erste ES-Datenbank 148 die ersten Telemetriedaten 136A auf.
  • Beim in 1 dargestellten Beispiel weist der zweite Edge-Dienst 150 eine dritte Instanz der Telemetrie-Steuereinrichtung 130C, des zweiten ausführbaren Programms 139, eines zweiten beispielhaften Orchestrators 152, eines zweiten beispielhaften Planers 154, einer oder mehrerer zweiter beispielhafter Kompositionen, einer zweiten beispielhaften ES-Datenbank 158 und einer oder mehrerer zweiter beispielhafter Ressourcen 159 auf. Beim in 1 dargestellten Beispiel weist das zweite ausführbare Programm 139 die eine oder die mehreren zweiten Kompositionen 156 auf und/oder implementiert sie auf andere Weise. Alternativ können die eine oder die mehreren zweiten beispielhaften Kompositionen 156 nicht im zweiten ausführbaren Programm 139 enthalten sein. Beispielsweise können die eine oder die mehreren zweiten Kompositionen 156 durch den zweiten Edge-Dienst 150 als Dienst (beispielsweise FaaS, SaaS usw.) bereitgestellt werden, und/oder es kann auf andere Weise als Dienst auf sie zugegriffen werden. Bei solchen Beispielen können die eine oder die mehreren zweiten Kompositionen 156 von einem oder mehreren der Server 112, 114, 116 gehostet werden. In 1 weist die zweite ES-Datenbank 158 die zweiten Telemetriedaten 136B auf.
  • Beim in 1 dargestellten Beispiel weisen die Edge-Dienste 140, 150 die ES-Datenbanken 148, 158 zum Aufzeichnen von Daten (beispielsweise der ersten Telemetriedaten 136A, der zweiten Telemetriedaten 136B usw.) auf. Die beispielhaften ES-Datenbanken 148, 158 können durch einen flüchtigen Speicher (beispielsweise einen SDRAM, DRAM, RDRAM usw.) und/oder einen nichtflüchtigen Speicher (beispielsweise einen Flash-Speicher) implementiert werden. Die beispielhaften ES-Datenbanken 148, 158 können zusätzlich oder alternativ durch einen oder mehrere DDR-Speicher wie DDR, DDR2, DDR3, DDR4, mDDR usw. implementiert werden. Die beispielhaften ES-Datenbanken 148, 158 können zusätzlich oder alternativ durch eine oder mehrere Massenspeichervorrichtungen in der Art eines oder mehrerer Festplattenlaufwerke, eines oder mehrerer CD-Laufwerke, eines oder mehrerer DVD-Laufwerke, eines oder mehrerer SSD-Laufwerke usw. implementiert werden. Wenngleich die ES-Datenbanken 148, 158 beim dargestellten Beispiel als einzelne Datenbanken dargestellt sind, können sie durch eine beliebige Anzahl und/oder durch beliebige Typen von Datenbanken implementiert werden. Zusätzlich können die in den beispielhaften ES-Datenbanken 148, 158 gespeicherten Daten ein beliebiges Datenformat annehmen, wie beispielsweise Binärdaten, kommabegrenzte Daten, tabulatorbegrenzte Daten, SQL-Strukturen usw.
  • Bei einigen Beispielen kann der erste Edge-Dienst 140 durch eine einzelne Edge-Rechenplattform (beispielsweise eine Einzelprozessorplattform) ausgeführt und/oder auf andere Weise implementiert werden. Bei anderen Beispielen kann der erste Edge-Dienst 140 durch zwei oder mehr Edge-Rechenplattformen ausgeführt und/oder auf andere Weise implementiert werden. Beispielsweise können der erste Edge-Dienst 140 und/oder Teile davon zwischen zwei oder mehr in 1 dargestellten beispielhaften Endpunktvorrichtungen 160, 165, 170, 175, 180, 185 verteilt werden. Bei anderen Beispielen können der erste Edge-Dienst 140 und/oder Teile davon zwischen zwei oder mehr Edge-Rechenplattformen verteilt werden. Beispielsweise können, wie in 1 dargestellt, ein oder mehrere Teile und/oder allgemeiner der gesamte erste Edge-Dienst 140 durch den zweiten Edge-Dienst 150 ausgeführt und/oder auf andere Weise dadurch implementiert werden. Bei solchen Beispielen können eine oder mehrere von der zweiten Instanz der Telemetrie-Steuereinrichtung 130B, des ersten Orchestrators 142, des ersten Planers 144, des ersten ausführbaren Programms 137, der einen oder der mehreren ersten Kompositionen 146, der einen oder der mehreren ersten Ressourcen 149, der ersten ES-Datenbank 148 und/oder der ersten Telemetriedaten 136A zur Ausführung, Implementation, Speicherung usw. und/oder eine Kombination davon durch einen oder mehrere verschiedene Edge-Dienste in der Art des zweiten Edge-Dienstes 150 aus 1 verteilt werden.
  • Bei einigen Beispielen kann der zweite Edge-Dienst 150 durch eine einzelne Edge-Rechenplattform (beispielsweise eine Einzelprozessorplattform) ausgeführt und/oder auf andere Weise implementiert werden. Bei anderen Beispielen kann der zweite Edge-Dienst 150 durch zwei oder mehr Edge-Rechenplattformen ausgeführt und/oder auf andere Weise implementiert werden. Beispielsweise können der zweite Edge-Dienst 150 und/oder Teile davon zwischen zwei oder mehr in 1 dargestellten Endpunktvorrichtungen 160, 165, 170, 175, 180, 185 verteilt werden. Bei anderen Beispielen können der zweite Edge-Dienst 150 und/oder Teile davon zwischen zwei oder mehr Edge-Rechenplattformen verteilt werden. Beispielsweise können, wie in 1 dargestellt, ein oder mehrere Teile und/oder allgemeiner der gesamte zweite Edge-Dienst 150 durch den ersten Edge-Dienst 150 ausgeführt und/oder auf andere Weise dadurch implementiert werden. Bei solchen Beispielen können eine oder mehrere von der dritten Instanz der Telemetrie-Steuereinrichtung 130C, des zweiten Orchestrators 152, des zweiten Planers 154, des zweiten ausführbaren Programms 139, der einen oder der mehreren zweiten Kompositionen 156, der einen oder der mehreren zweiten Ressourcen 159, der zweiten ES-Datenbank 158 und/oder der zweiten Telemetriedaten 136B zur Ausführung, Implementation, Speicherung usw. und/oder eine Kombination davon durch einen oder mehrere verschiedene Edge-Dienste in der Art des ersten Edge-Dienstes 140 aus 1 verteilt werden.
  • Beim in 1 dargestellten Beispiel sind die Telemetrie-Steuereinrichtung 130B, der erste Orchestrator 142, der erste Planer 144, die eine oder die mehreren ersten Kompositionen 146 und die eine oder die mehreren ersten Ressourcen 149 im ersten Edge-Dienst 140 enthalten, entsprechen diesem und/oder repräsentieren diesen auf andere Weise. Bei einigen Beispielen können eine oder mehrere von der Telemetrie-Steuereinrichtung 130B, dem ersten Orchestrator, dem ersten Planer 144, der einen oder der mehreren ersten Kompositionen 146 und/oder der einen oder der mehreren ersten Ressourcen 149 in der Edge-Umgebung 110 enthalten sein, jedoch extern oder außerhalb des ersten Edge-Dienstes 140. Beispielsweise kann der erste Orchestrator 142 mit der Cloud-Umgebung 105 und/oder der Endpunktumgebung 115 verbunden sein, sich jedoch außerhalb des ersten Edge-Dienstes 140 befinden. Bei anderen Beispielen ist/sind eine oder mehrere von der Telemetrie-Steuereinrichtung 130B, dem ersten Orchestrator 142, dem ersten Planer 144, der einen oder der mehreren ersten Kompositionen 146 und/oder der einen oder der mehreren ersten Ressourcen 149 in der Edge-Umgebung 110 enthaltene getrennte Vorrichtungen. Bei einigen Beispielen können eine oder mehrere von der Telemetrie-Steuereinrichtung 130B, dem ersten Orchestrator 142, dem ersten Planer 144, der einen oder der mehreren ersten Kompositionen 146 und/oder der einen oder der mehreren ersten Ressourcen 149 in der Cloud-Umgebung 105 oder der Endpunktumgebung 115 enthalten sein. Beispielsweise kann der erste Orchestrator 142 in der Endpunktumgebung 115 enthalten sein oder können die eine oder die mehreren ersten Kompositionen 146 im ersten Server 112 in der Cloud-Umgebung 105 enthalten sein. Bei einigen Beispielen kann der erste Planer 144 im ersten Orchestrator 142 enthalten sein und/oder auf andere Weise darin integriert oder damit kombiniert sein.
  • Beim in 1 dargestellten Beispiel sind die Telemetrie-Steuereinrichtung 130C, der zweite Orchestrator 152, der zweite Planer 154, die eine oder die mehreren zweiten Kompositionen 156 und die eine oder die mehreren zweiten Ressourcen 159 im zweiten Edge-Dienst 150 enthalten. Bei einigen Beispielen können die eine oder die mehreren von der Telemetrie-Steuereinrichtung 130C, dem zweiten Orchestrator 152, dem zweiten Planer 154, der einen oder der mehreren zweiten Kompositionen 156 und/oder der einen oder der mehreren zweiten Ressourcen 159 in der Edge-Umgebung 110 enthalten sein, statt im zweiten Edge-Dienst 150 enthalten zu sein. Beispielsweise kann der zweite Orchestrator 152 mit der Cloud-Umgebung 105 und/oder der Endpunktumgebung 115 verbunden sein, sich jedoch außerhalb des zweiten Edge-Dienstes 150 befinden. Bei anderen Beispielen ist/sind eine oder mehrere von der Telemetrie-Steuereinrichtung 130C, dem zweiten Orchestrator 152, dem zweiten Planer 154, der einen oder der mehreren zweiten Kompositionen 156 und/oder der einen oder der mehreren zweiten Ressourcen 159 in der Edge-Umgebung 110 enthaltene getrennte Vorrichtungen. Bei einigen Beispielen können eine oder mehrere von der Telemetrie-Steuereinrichtung 130C, dem zweiten Orchestrator 152, dem zweiten Planer 154, der zweiten Edge-Dienstkomposition 156 und/oder der einen oder der mehreren zweiten Ressourcen 159 in der Cloud-Umgebung 105 oder der Endpunktumgebung 115 enthalten sein. Beispielsweise kann der zweite Orchestrator 152 in der Endpunktumgebung 115 enthalten sein oder können die eine oder die mehreren zweiten Kompositionen 156 im zweiten Server 114 in der Cloud-Umgebung 105 enthalten sein. Bei einigen Beispielen kann der zweite Planer 154 im zweiten Orchestrator 152 enthalten sein und/oder auf andere Weise darin integriert oder damit kombiniert sein.
  • Beim in 1 dargestellten Beispiel werden die Ressourcen 149, 159 aufgerufen, um eine von der Endpunktumgebung 115 erhaltene Arbeitslast (beispielsweise eine Edge-Rechenarbeitslast) auszuführen. Beispielsweise können die Ressourcen 149, 159 einem Edge-Knoten oder einem oder mehreren Teilen davon entsprechen und/oder diesen auf andere Weise repräsentieren. Beispielsweise können die Telemetrie-Steuereinrichtung 130B-C, das ausführbare Programm 137, 139, der Orchestrator 142, 152, der Planer 144, 154 und/oder allgemeiner der Edge-Dienst 140, 150 eine jeweilige der Ressourcen 149, 159 aufrufen, um eine oder mehrere Edge-Rechenarbeitslasten auszuführen.
  • Bei einigen Beispielen repräsentieren die Ressourcen 149, 159 Hardware-Ressourcen, Virtualisierungen der Hardware-Ressourcen, Software-Ressourcen, Virtualisierungen der Software-Ressourcen usw. und/oder eine Kombination davon. Beispielsweise können die Ressourcen 149, 159 eine oder mehrere CPUs (beispielsweise Mehrkern-CPUs), ein oder mehrere FPGAs, eine oder mehrere GPUs, eine oder mehrere Netzschnittstellenkarten (NICs), eine oder mehrere Sichtverarbeitungseinheiten (VPUs) usw. und/oder einen anderen Typ von Hardware oder Hardwarebeschleuniger aufweisen, diesen entsprechen und/oder diese auf andere Weise repräsentieren. Bei solchen Beispielen können die Ressourcen 149, 159 eine oder mehrere Virtualisierungen der einen oder der mehreren CPUs, des einen oder der mehreren FPGAs, der einen oder der mehreren GPUs, der einen oder der mehreren NICs usw. aufweisen, diesen entsprechend und/oder diese auf andere Weise repräsentieren. Bei anderen Beispielen können die Orchestratoren 142, 152, die Planer 144, 154, die Ressourcen 149, 159 und/oder allgemeiner die Edge-Dienste 140, 150 eine oder mehrere Software-Ressourcen, Virtualisierungen der Software-Ressourcen usw. in der Art von Hypervisoren, Lastausgleichem, OS, VMs usw. und/oder eine Kombination davon aufweisen, diesen entsprechen und/oder diese auf andere Weise repräsentieren.
  • Beim in 1 dargestellten Beispiel sind die Edge-Dienste 140, 150 miteinander und mit den Servern 112, 114, 116 in der Cloud-Umgebung 105 verbunden und/oder stehen auf andere Weise in Kommunikation damit. Die beispielhaften Edge-Dienste können Arbeitslasten im Auftrag von Vorrichtungen in Zusammenhang mit der Cloud-Umgebung 105, der Edge-Umgebung 110 oder der Endpunktumgebung 115 ausführen. Die beispielhaften Edge-Dienste 140, 150 können über ein Netz in der Art des Internets mit Vorrichtungen in den Umgebungen 105, 110, 115 (beispielsweise dem ersten Server 112, der Datenbank 135 usw.) verbunden sein und/oder auf andere Weise in Kommunikation damit stehen. Zusätzlich oder alternativ können die beispielhaften Edge-Dienste 140, 150 unter Verwendung eines geeigneten Drahtlosnetzes einschließlich beispielsweise eines oder mehrerer drahtloser lokaler Netze (WLANs) (beispielsweise Wireless-Fidelity(WiFi)-Netze, Langstrecken-Drahtlosnetze usw.), eines oder mehrerer zellenbasierter oder mobiler Trägernetze (beispielsweise Global-System-for-Mobile-Communications(GSM)-Netze, Long-Term-Evolution(LTE)-Netze, 5G/6G-Netze usw.), eines oder mehrerer Peer-to-Peer-Netze (beispielsweise Bluetooth-Netz, WiFi-Direct-Netz, Vehicles-to-everything(V2X)-Netz usw.), eines oder mehrerer privater Netze, eines oder mehrerer öffentlicher Netze usw. mit Vorrichtungen in den Umgebungen 105, 110, 115 kommunizieren. Beispielsweise können die Edge-Dienste 140, 150 mit einem oder mehreren Zellenmasten, die in der Cloud-Umgebung 105 enthalten sind, verbunden sein und über den einen oder die mehreren Zellenmasten mit dem ersten Server 112 verbunden sein.
  • Beim in 1 dargestellten Beispiel weist die Endpunktumgebung 115 die Endpunktvorrichtungen 160, 165, 170, 175, 180, 185 auf, welche eine erste beispielhafte Endpunktvorrichtung 160, eine zweite beispielhafte Endpunktvorrichtung 165, eine dritte beispielhafte Endpunktvorrichtung 170, eine vierte beispielhafte Endpunktvorrichtung 175, eine fünfte beispielhafte Endpunktvorrichtung 180 und eine sechste beispielhafte Endpunktvorrichtung 185 umfassen. Alternativ kann es weniger oder mehr als die in der Endpunktumgebung 115 aus 1 dargestellten Endpunktvorrichtungen 160, 165, 170, 175, 180, 185 geben.
  • Beim in 1 dargestellten Beispiel sind die Endpunktvorrichtungen 160, 165, 170, 175, 180, 185 Rechenvorrichtungen. Beispielsweise können eine oder mehrere der Endpunktvorrichtungen 160, 165, 170, 175, 180, 185 ein internetfähiges Tablet, ein mobiles Handset (beispielsweise ein Smartphone), eine Uhr (beispielsweise eine Smartwatch), ein Fitness-Tracker, ein Headset, eine Fahrzeugsteuereinheit (beispielsweise eine Motorsteuereinheit, eine elektronische Steuereinheit usw.), eine IoT-Vorrichtung usw. sein. Bei anderen Beispielen können eine oder mehrere der Endpunktvorrichtungen 160, 165, 170, 175, 180, 185 ein physischer Server (beispielsweise ein Rack-mounted-Server, ein Blade-Server usw.) sein. Bei wieder anderen Beispielen können eine oder mehrere der Endpunktvorrichtungen 160, 165, 170, 175, 180, 185 eine Vorrichtung (beispielsweise eine Vorrichtung, die einen oder mehrere Prozessoren aufweist, eine Rechenvorrichtung usw.) mit einer oder mehreren festverdrahteten Schnittstellen (beispielsweise einer Lokales-Netz(LAN)-Schnittstelle, einer faseroptischen Schnittstelle, einer High-Definition-Multimedia-Schnittstelle (HDMI), einer Video-Graphics-Array(VGA)-Schnittstelle, einer Digital-Visual-Schnittstelle (DVI) usw.) sein. Beispielsweise können eine oder mehrere der Endpunktvorrichtungen 160, 165, 170, 175, 180, 185 ein Desktop Computer, ein Internetgerät, eine Spielkonsole, ein Laptopcomputer, ein Online-Medienabspielgerät (beispielsweise eine Vorrichtung, die einen Over-the-top-Mediendienst bereitstellen kann), eine Settop-Box, ein Fernsehgerät usw. sein. Bei zusätzlichen oder alternativen Beispielen können eine oder mehrere der Endpunktvorrichtungen 160, 165, 170, 175, 180, 185 eine Kamera, einen Sensor usw. aufweisen.
  • Beim in 1 dargestellten Beispiel sind die erste bis dritte Endpunktvorrichtung 160, 165, 170 mit dem ersten Edge-Dienst 140 verbunden. Auch sind beim Beispiel aus 1 die vierte bis sechste Endpunktvorrichtung 175, 180, 185 mit dem zweiten Edge-Dienst 150 verbunden. Zusätzlich oder alternativ können eine oder mehrere der beispielhaften Endpunktvorrichtungen 160, 165, 170, 175, 180, 185 mit einer Anzahl von Edge-Diensten (beispielsweise den Edge-Diensten 140, 150), Servern (beispielsweise den Servern 112, 114, 116) oder irgendwelchen anderen geeigneten Vorrichtungen, die in den Umgebungen 105, 110, 115 aus 1 enthalten und/oder diesen auf andere Weise zugeordnet sind, verbunden sein. Beispielsweise kann die erste Endpunktvorrichtung 160 mit den Edge-Diensten 140, 150 und dem zweiten Server 114 verbunden sein.
  • Beim in 1 dargestellten Beispiel können sich eine oder mehrere der Endpunktvorrichtungen 160, 165, 170, 175, 180, 185 über ein Netz in der Art des Internets mit einer oder mehreren Vorrichtungen in den Umgebungen 105, 110, 115 verbinden. Zusätzlich oder alternativ können eine oder mehrere der Endpunktvorrichtungen 160, 165, 170, 175, 180, 185 unter Verwendung eines geeigneten Drahtlosnetzes, einschließlich beispielsweise eines oder mehrerer WLANs, eines oder mehrerer zellenbasierter Netze, eines oder mehrerer Peer-to-Peer-Netze, eines oder mehrerer privater Netze, eines oder mehrerer öffentlicher Netze usw. mit Vorrichtungen in den Umgebungen 105, 110, 115 kommunizieren. Bei einigen Beispielen können die Endpunktvorrichtungen 160, 165, 170, 175, 180, 185 mit einem oder mehreren in einer oder mehreren der Umgebungen 105, 110, 115 enthaltenen Zellenmasten verbunden sein. Beispielsweise kann die erste Endpunktvorrichtung 160 mit einem in der Edge-Umgebung 110 enthaltenen Zellenmast verbunden sein und kann der Zellenmast mit dem ersten Edge-Dienst 140 verbunden sein.
  • Bei einigen Beispielen können eine oder mehrere der Endpunktvorrichtungen 160, 165, 170, 175, 180, 185 unter Verwendung eines geeigneten festverdrahteten Netzes, einschließlich beispielsweise eines oder mehrerer LANs, eines oder mehrerer faseroptischer Netze, eines oder mehrerer Koaxialnetze usw. mit Vorrichtungen in den Umgebungen 105, 110, 115 kommunizieren. Beispielsweise kann die erste Rechenvorrichtung 160 ein Fernsehgerät sein, das über eine HDMI-Schnittstelle, eine faseroptische Schnittstelle, eine LAN-Schnittstelle usw. und/oder eine Kombination davon mit dem ersten Edge-Dienst 140 verbunden ist (beispielsweise einem Edge-Dienst, der auf einer Settop-Box, einer Online-Streaming-Vorrichtung, einem Gateway usw. ausgeführt und/oder auf andere Weise dadurch implementiert wird). Bei anderen Beispielen kann die zweite Rechenvorrichtung 165 eine Spielkonsole sein, die über eine HDMI-Schnittstelle, eine LAN-Schnittstelle usw. und/oder eine Kombination davon mit dem ersten Edge-Dienst 140 verbunden ist (beispielsweise einem Edge-Dienst, der auf einem Fernsehgerät, einem Gateway, einem Internetgerät usw. ausgeführt wird und/oder auf andere Weise dadurch implementiert wird).
  • Bei einigen Beispielen kann ein Orchestrator (beispielsweise der erste Orchestrator 142) ansprechend auf eine Anforderung zur Ausführung einer Arbeitslast von einer Endpunktvorrichtung (beispielsweise der ersten Endpunktvorrichtung 160) mit wenigstens einer Ressource (beispielsweise der einen oder den mehreren ersten Ressourcen 149) und einer Endpunktvorrichtung (beispielsweise der zweiten Endpunktvorrichtung 165) kommunizieren, um einen Kontrakt (beispielsweise einen Arbeitslastkontrakt) in Zusammenhang mit einer Beschreibung der auszuführenden Arbeitslast zu erzeugen. Die erste beispielhafte Endpunktvorrichtung 160 kann eine Aufgabe in Zusammenhang mit dem Kontrakt und der Beschreibung der Arbeitslast dem ersten Orchestrator 142 bereitstellen, und der erste Orchestrator 142 kann die Aufgabe einem Planer (beispielsweise dem ersten Planer 144) bereitstellen. Die Aufgabe kann den Kontrakt und die Beschreibung der auszuführenden Arbeitslast aufweisen. Bei einigen Beispielen kann die Aufgabe Anforderungen zum Erhalten und/oder anderweitigen Zuordnen von Ressourcen, die zur Ausführung der Arbeitslast verwendet werden, aufweisen.
  • Bei einigen Beispielen halten die Orchestratoren 142, 152 Aufzeichnungen und/oder Protokolle von in den Umgebungen 105, 110, 115 auftretenden Aktionen. Beispielsweise können die eine oder die mehreren ersten Ressourcen 149 dem ersten Orchestrator 142 den Empfang einer Arbeitslastbeschreibung mitteilen. Einer oder mehrere der Orchestratoren 142, 152, der Planer 144, 154 und/oder der einen oder der mehreren Ressourcen 149, 159 können den Orchestratoren 142, 152 Aufzeichnungen von Aktionen und/oder Zuweisungen von Ressourcen bereitstellen. Beispielsweise kann der erste Orchestrator 142 eine Aufzeichnung des Empfangs einer Anforderung zur Ausführung einer Arbeitslast (beispielsweise einer von der ersten Endpunktvorrichtung 160 bereitgestellten Kontraktanforderung) halten oder speichern.
  • Bei einigen Beispielen können die Planer 144, 154 auf eine Aufgabe zugreifen, die von den Orchestratoren 142, 152 empfangen und/oder auf andere Weise erhalten wurde, und die Aufgabe einer oder mehreren der Ressourcen 149, 159 bereitstellen, um sie auszuführen oder abzuschließen. Die eine oder die mehreren Ressourcen 149, 159 können eine Arbeitslast auf der Grundlage einer Beschreibung der in der Aufgabe enthaltenen Arbeitslast ausführen. Die beispielhaften Planer 144, 154 können auf das Ergebnis der Ausführung der Arbeitslast von einer oder mehreren der Ressourcen 149, 159, welche die Arbeitslast ausgeführt haben, zugreifen. Die Planer 144, 154 können das Ergebnis der Vorrichtung bereitstellen, welche die auszuführende Arbeitslast angefordert hat, beispielsweise der ersten Endpunktvorrichtung 160.
  • Vorteilhafterweise kann eine Ausführung einer Arbeitslast in der beispielhaften Edge-Umgebung 110 Kosten (beispielsweise Rechen- oder Berechnungskosten, Netzkosten, Speicherkosten usw. und/oder eine Kombination davon) und/oder die zur Ausführung der Arbeitslast verwendete Verarbeitungszeit verringern. Beispielsweise kann die erste Endpunktvorrichtung 160 den ersten Edge-Dienst 140 auffordern, eine Arbeitslast zu ersten Kosten unterhalb zweiter Kosten in Zusammenhang mit der Ausführung der Arbeitslast in der Cloud-Umgebung 105 auszuführen. Bei anderen Beispielen kann sich eine Endpunktvorrichtung in der Art der ersten bis dritten Endpunktvorrichtungen 160, 165, 170 näher (beispielsweise räumlich oder geographisch näher) und/oder auf andere Weise nahe bei einem Edge-Dienst in der Art des ersten Edge-Dienstes 140 als ein zentralisierter Server (beispielsweise die Server 112, 114, 116) in der Cloud-Umgebung 105 befinden. Beispielsweise befindet sich der erste Edge-Dienst 140 räumlich näher zur ersten Endpunktvorrichtung 160 als der erste Server 112. Daher kann die erste beispielhafte Endpunktvorrichtung 160 den ersten Edge-Dienst 140 auffordern, eine Arbeitslast auszuführen, und ist die Antwortzeit des ersten Edge-Dienstes 140 für die Auslieferung des Ergebnisses der ausgeführten Arbeitslast geringer als jene, die vom ersten Server 112 in der Cloud-Umgebung 105 bereitgestellt werden kann.
  • Beim in 1 dargestellten Beispiel verbessert die Telemetrie-Steuereinrichtung 130A-C die Verteilung und Ausführung von Edge-Rechenarbeitslasten (beispielsweise zwischen den Edge-Diensten 140, 150) auf der Grundlage der Telemetriedaten 136A-C in Zusammenhang mit wenigstens einer von der Cloud-Umgebung 105, der Edge-Umgebung 110 oder der Endpunktumgebung 115. Beispielsweise kann die Telemetrie-Steuereinrichtung 130A-C auf der Grundlage der Telemetriedaten 136A-C, anhand derer Edge-Rechenarbeitslasten ausgeführt werden können, feststellen, dass der erste Edge-Dienst 140 und/oder der zweite Edge-Dienst 150 eine oder mehrere der Ressourcen 149, 159 in der Art von Hardware-Ressourcen (beispielsweise Rechenressourcen, Netzressourcen, Sicherheitsressourcen, Massenspeicherressourcen usw.), Software-Ressourcen (beispielsweise eine Firewall, einen Lastausgleicher, eine virtuelle Maschine (VM), ein Gastbetriebssystem (OS), eine Anwendung, die Orchestratoren 142, 152, einen Hypervisor usw.) usw. und/oder eine Kombination davon verfügbar hat. Bei solchen Beispielen können die Telemetriedaten 136A-C eine Auslastung (beispielsweise einen Prozentsatz einer Ressource, die verwendet oder nicht verwendet wird), eine Verzögerung (beispielsweise eine durchschnittliche Verzögerung) beim Empfang eines Dienstes (beispielsweise Latenz), eine Rate (beispielsweise eine durchschnittliche Rate), mit der eine Ressource verfügbar ist (beispielsweise Bandbreite, Durchsatz usw.), den Energieverbrauch usw. in Zusammenhang mit einer oder mehreren der Ressourcen 149, 159 wenigstens einer vom ersten Edge-Dienst 140 oder vom zweiten Edge-Dienst 150 aufweisen.
  • Bei einigen Beispielen erzeugt das erste ausführbare Telemetrieprogramm 137, wenn es ausgeführt wird, die ersten Telemetriedaten 136A. Bei einigen Beispielen erzeugt das zweite ausführbare Telemetrieprogramm 139, wenn es ausgeführt wird, die zweiten Telemetriedaten 136B. Bei einigen Beispielen können die ausführbaren Telemetrieprogramme 137, 139, wenn sie ausgeführt werden, die Telemetriedaten 136A-B durch Aufrufen einer entsprechenden von der einen oder den mehreren Kompositionen 146, 156 erzeugen.
  • Bei einigen Beispielen können die eine oder die mehreren Kompositionen 146, 156 in Zusammenhang mit einer Software-Ressource (beispielsweise einer oder mehreren der Ressourcen 149, 159) allgemein durch eine Manifeststruktur beschrieben werden, die einem oder mehreren Tags in der Art eines oder mehrerer Softwareidentifikations(SWID)-Tags, eines oder mehrerer kurzer SWID(CoSWID)-Tags usw. und/oder einer Kombination davon entspricht. SWID-Tags, CoSWID-Tags usw. können eine erweiterbare XML-basierte Struktur zur Identifikation und Beschreibung individueller Softwarekomponenten, Patches und Installationsbündel bereitstellen. Beispielsweise kann ein SWID- und/oder ein CoSWID-Tag einen Softwarenamen, eine Ausgabe, eine Version usw. der entsprechenden Software-Ressource aufweisen. Bei einigen Beispielen kann ein SWID- und/oder ein CoSWID-Tag eine oder mehrere verfügbare Ressourcen des einen oder der mehreren Edge-Dienste 140, 150 und eine Mitgliedschaft einer subskribierenden Vorrichtung am einen oder an den mehreren Edge-Diensten 140, 150 angeben. Beispielsweise kann eine subskribierende Vorrichtung einen oder mehrere der Server 112, 114, 116, eine oder mehrere der Endpunktvorrichtungen 160, 165, 170, 175, 180, 185 usw. sein, welche auf Telemetriedaten vom einen oder von den mehreren Edge-Diensten 140, 150 zugreifen können, diese anfordern können, diese abfragen können usw. Verschiedene Softwarekomponenten und sogar verschiedene Ausgaben einer bestimmten Softwarekomponente können jeweils einen anderen zugeordneten SWID-Tag-Datensatz aufweisen. SWID-Tags, CoSWID-Tags usw. sind flexible Datenstrukturen, die einen breiten Satz von Metadaten in Zusammenhang mit einer Softwarekomponente, einem ausführbaren Programm, einen Satz maschinenlesbarer Befehle usw. definieren und/oder auf andere Weise repräsentieren können. Bei einigen Beispielen werden die eine oder die mehreren Kompositionen 146, 156 durch SWID-Tags beschrieben, wie sie in der International-Organization-for-Standardization(ISO)-Norm ISO-19770-2 definiert sind (beispielsweise Informationstechnologie - Software-Asset-Management - Teil 2: Softwareidentifikationstag, ISO-19770-2:2015; 2015).
  • Bei einigen Beispielen können die eine oder die mehreren Kompositionen 146, 156 in Zusammenhang mit einer Hardware-Ressource (beispielsweise einer oder mehreren der Ressourcen 149, 159) allgemein durch eine Ontologie (beispielsweise eine Hardware-Ressourcenontologie), eine Taxonomie (beispielsweise eine Hardware-Ressourcentaxonomie), ein Manifest (beispielsweise ein Hardware-Ressourcenmanifest) oder ein Plattformattributzertifikat (beispielsweise ein Hardware-Ressourcen-Plattformattributzertifikat, ein Trusted-Computing-Group(TCG)-Plattformattributzertifikat oder einen entsprechenden Berechtigungsnachweis usw.) beschrieben werden.
  • Bei einigen Beispielen kann eine Komposition von Hardware oder Software (beispielsweise eine Hardwarekomposition, eine Softwarekomposition, eine oder mehrere der Kompositionen 146, 156 usw.) unter Benutzung und/oder auf andere Weise auf der Grundlage von Referenzintegritätsmessungen (RIMs) behandelt oder verfolgt werden. Bei einigen Beispielen können die eine oder die mehreren Kompositionen 146, 156 durch Protokollieren von Änderungen an einem zentralen Protokollierungsdienst oder einem dezentralisierten Protokollierungsdienst in der Art eines Blockchain-basierten Protokollierungssystems behandelt oder verfolgt werden. Beispielsweise können die eine oder die mehreren Kompositionen 146, 156 einen oder mehrere der Server 112, 114, 116, der Datenbank 135 usw. ansprechend auf die Erkennung einer Änderung in einem aktuellen oder zuletzt bekannten Zustand der einen oder der mehreren Kompositionen 146, 156 aktualisieren. Bei solchen Beispielen kann die Datenbank 135 den einen oder die mehreren zuletzt bekannten Zustände der einen oder der mehreren Kompositionen 146, 156 speichern. Ansprechend auf eine Änderung des Zustands der einen oder der mehreren Kompositionen 146, 156 können die eine oder die mehreren geänderten Kompositionen 146, 156 den einen oder die mehreren Server 112, 114, 116 auffordern, den einen oder die mehreren in der Datenbank 135 gespeicherten zuletzt bekannten Zustände zu aktualisieren. Bei anderen Beispielen können die Telemetrie-Steuereinrichtung 130B-C, der Orchestrator 152, 162, der Planer 154, 164 usw. und/oder allgemeiner der eine oder die mehreren Edge-Dienste 140, 150 den einen oder die mehreren Server 112, 114, 116 veranlassen, den einen oder die mehreren zuletzt bekannten Zustände zum einen oder zu den mehreren aktuell bekannten Zuständen der einen oder der mehreren Kompositionen 146, 156 zu aktualisieren.
  • Beim in 1 dargestellten Beispiel können die eine oder die mehreren Kompositionen 146, 156 eine oder mehrere Ressourcenkompositionen in Zusammenhang mit einer oder mehreren von den Ressourcen 149, 159, eine oder mehrere Edge-Dienstkompositionen in Zusammenhang mit den Edge-Diensten 140, 150 usw. sein. In 1 weisen die eine oder die mehreren Kompositionen 146, 156 Datenmodelle, Informationsmodelle, maschinenlesbare Ressourcenmodelle usw., die Virtualisierungen von Hardware-Ressourcen, Software-Ressourcen usw. der einen oder der mehreren Ressourcen 149, 159 und/oder allgemeiner der Edge-Dienste 140, 150, welche die Aggregation von Edge-Rechentelemetrie erleichtern können, repräsentieren, auf, entsprechen ihnen und/oder repräsentieren sie auf andere Weise. Beispielsweise können die eine oder die mehreren Kompositionen 146, 156 eine oder mehrere Schnittstellen zur Erzeugung und/oder zum anderweitigen Erhalten der Telemetriedaten 136A-C in Zusammenhang mit der einen oder den mehreren Ressourcen 149, 159 der Edge-Dienste 140, 150 repräsentieren. Bei einigen Beispielen weisen die eine oder die mehreren Kompositionen 146, 156 eine oder mehrere Ressourcenkompositionen auf, die jeweils ein oder mehrere Ressourcenmodelle aufweisen können. Beispielsweise kann ein Ressourcenmodell eine Virtualisierung einer Hardware-Ressource oder einer Software-Ressource aufweisen, dieser entsprechen und/oder diese auf andere Weise repräsentieren.
  • Bei einigen Beispielen weisen die eine oder die mehreren ersten Kompositionen 146 wenigstens ein erstes Ressourcenmodell auf, das einer Virtualisierung einer Rechenressource (beispielsweise einer CPU, eines FPGAs, einer GPU, einer NIC usw.) entspricht. Bei solchen Beispielen kann das erste Ressourcenmodell ein Ressourcenobjekt und ein Telemetrieobjekt aufweisen. Das Ressourcenobjekt kann eine Fähigkeit und/oder eine Funktion eines Kerns einer Mehrkern-CPU, eines oder mehrerer Hardwareabschnitte eines FPGAs, eines oder mehrerer Threads einer GPU usw. sein und/oder diesen auf andere Weise entsprechen. Das Telemetrieobjekt kann eine Schnittstelle (beispielsweise eine Telemetrieschnittstelle) zum Kern der Mehrkern-CPU, zum einen oder zu mehreren Hardwareabschnitten des FPGAs, zum einen oder zu mehreren Threads der GPU usw. sein und/oder ihr auf andere Weise entsprechen. Bei einigen Beispielen kann das Telemetrieobjekt eine oder mehrere Anwendungsprogrammierschnittstellen (APIs), Aufrufe (beispielsweise Hardwareaufrufe, Systemaufrufe usw.), Hooks usw. aufweisen, ihnen entsprechen und/oder sie auf andere Weise repräsentieren, die, wenn sie ausgeführt werden, Telemetriedaten von der Rechenressource erhalten können.
  • Bei einem beispielhaften Betrieb kann der erste Edge-Dienst 140 die eine oder die mehreren ersten Kompositionen 146 und/oder allgemeiner das erste ausführbare Telemetrieprogramm 137 aufrufen, um die ersten Telemetriedaten 136A zu bestimmen, zu erzeugen und/oder zu erhalten. Beispielsweise können die eine oder die mehreren ersten Ressourcen 149 Hardware-Ressourcen aufweisen, die von den Endpunktvorrichtungen 160, 165, 170, 175, 180, 185 für Edge-Rechenaufgaben verwendet werden können, wobei die Hardware-Ressourcen zumindest eine Mehrkern-CPU und ein Halbleiter(SSD)-Laufwerk aufweisen können. Bei solchen Beispielen können die ersten Kompositionen 146 zumindest ein erstes Ressourcenmodell, das einem Kern der Mehrkern-CPU entspricht, und ein zweites Ressourcenmodell, das einer Partition des SSD-Laufwerks entspricht, aufweisen. Die ersten Kompositionen 146 können die ersten Telemetriedaten 136A bestimmen, wie die Anzahl der Gigahertz (GHz), mit denen der Kern ausführen kann, die Auslastung des Kerns (beispielsweise wird der Kern zu 25 %, 50 %, 75 % usw. ausgelastet), die Anzahl der Gigabytes (GB) der SSD-Partition, die Auslastung der SSD-Partition usw. und/oder eine Kombination davon bestimmen.
  • Bei einem beispielhaften Betrieb kann der erste Edge-Dienst 140 ansprechend darauf, dass die eine oder die mehreren ersten Kompositionen 146 die Telemetriedaten 136 bestimmen und/oder auf andere Weise erhalten, die ersten Telemetriedaten 136A zu einem oder mehreren der Server 112, 114, 116 übertragen. Der eine oder die mehreren beispielhaften Server 112, 114, 116 können die ersten Telemetriedaten 136A in der Datenbank 135 speichern. Bei einigen Beispielen können der eine oder die mehreren Server 112, 114, 116 einen oder beide Orchestratoren 142, 152 auffordern, die Verteilung von den Endpunktvorrichtungen 160, 165, 170, 175, 180, 185 erhaltener Arbeitslasten auf die Edge-Dienste 140, 150 anzupassen. Vorteilhafterweise können die beispielhaften Orchestratoren 142, 152 und/oder allgemeiner die beispielhaften Edge-Dienste 140, 150 die Effizienz und Auslastung der Edge-Dienste 140, 150 durch Zuordnen oder Zuweisen von Edge-Rechenarbeitslasten zu der einen oder den mehreren Ressourcen 149, 159 der Edge-Dienste 140, 150, die auf der Grundlage der Telemetriedaten 136A-C als verfügbar identifiziert wurden, verbessern. Vorteilhafterweise können die beispielhaften Edge-Dienste 140, 150 durch Zuordnen von Edge-Rechenarbeitslasten zu einer oder mehreren der verfügbaren Ressourcen 149, 159 den Durchsatz der von der Edge-Umgebung 110 ausgeführten Arbeitslasten erhöhen und ihre Latenz verringern.
  • 2 zeigt ein beispielhaftes Blockdiagramm der Telemetrie-Steuereinrichtung 130A-C aus 1. Beim Beispiel aus 2 weist die Telemetrie-Steuereinrichtung 130A eine beispielhafte Netzschnittstelle 210, eine beispielhafte Ressourcenabfrage-Steuereinrichtung 220, eine beispielhafte Kompositionssteuereinrichtung 230, eine beispielhafte Leistungsmetrik-Bestimmungseinrichtung 232, einen beispielhaften Objekterzeuger 234, einen beispielhaften Schnittstellenerzeuger 236, einen beispielhaften Kompositionserzeuger 238, eine beispielhafte Ressourcenverfügbarkeits-Steuereinrichtung 240 und eine beispielhafte Steuereinrichtung 250 für ausführbare Programme auf. Wenngleich das Blockdiagramm aus 2 eine einzige Telemetrie-Steuereinrichtung repräsentiert, können mehrere Instanzen des Blockdiagramms aus 2 verwendet werden, um mehrere Telemetrie-Steuereinrichtungen in der Art der Telemetrie-Steuereinrichtungen 130A-C aus 1 zu implementieren.
  • Beim in 2 dargestellten Beispiel weist die Telemetrie-Steuereinrichtung 130A-C die Netzschnittstelle 210 zum Erhalten von Informationen von einem Netz (beispielsweise dem Internet, einem zellenbasierten Netz, einem Edge-Netz, einem V2X-Netz usw.), einer Umgebung (beispielsweise der Cloud-Umgebung 105, der Edge-Umgebung 110, der Endpunktumgebung 115 usw. aus 1) usw. und/oder einer Kombination davon und/oder zum Übertragen der Informationen zu diesen auf. Bei einigen Beispielen implementiert die Netzschnittstelle 210 einen Webserver, der (1) Arbeitslasten von den Endpunktvorrichtungen 160, 165, 170, 175, 180, 185 empfängt, (2) die Telemetriedaten 136A-C zu den Servern 112, 114, 116 überträgt usw. Bei einigen Beispielen werden die Arbeitslasten, die Telemetriedaten 136A-C usw. als eine oder mehrere HyperText-Transfer-Protocol-(HTTP)-Nachrichten formatiert. Es kann jedoch jedes beliebige andere Nachrichtenformat und/oder Protokoll zusätzlich oder alternativ verwendet werden, wie beispielsweise das Dateiübertragungsprotokoll (FTP), ein einfaches Nachrichtenübertragungsprotokoll (SMTP), ein sicheres HTTP(HTTPS)-Protokoll, ein V2X-Protokoll, ein Mobilkommunikationsprotokoll usw.
  • Beim in 2 dargestellten Beispiel weist die Telemetrie-Steuereinrichtung 130A-C die Ressourcenabfrage-Steuereinrichtung 220 zum Auffordern und/oder Abfragen einer Umgebung (beispielsweise der Cloud-Umgebung 105, der Edge-Umgebung 110, der Endpunktumgebung 115 usw. aus 1) für Ressourcen in Zusammenhang mit der Umgebung auf. Bei einigen Beispielen kann die Ressourcenabfrage-Steuereinrichtung 220 ein Entdeckungs- oder Abfragedatenpaket (beispielsweise ein Adressauflösungsprotokoll-(ARP)-Paket, ein HTTP-Paket, ein HTTPS-Paket usw.) für eine interessierende Umgebung erzeugen. Beispielsweise kann die Ressourcenabfrage-Steuereinrichtung 220 ein oder mehrere Entdeckungsdatenpakete zu einem oder mehreren der Server 112, 114, 116 aus 1, einem oder mehreren der Edge-Dienste 140, 150 aus 1, einer oder mehreren der Endpunktvorrichtungen 160, 165, 170, 175, 180, 185 aus 1 usw. und/oder einer Kombination davon übertragen.
  • Bei einigen Beispielen erhält die Ressourcenabfrage-Steuereinrichtung 220 ein oder mehrere Antwortdatenpakete ansprechend auf ein oder mehrere übertragene Entdeckungsdatenpakete. Beispielsweise kann die Ressourcenabfrage-Steuereinrichtung 220 ein Entdeckungsdatenpaket zum ersten Edge-Dienst 140 übertragen. Bei solchen Beispielen kann der erste Edge-Dienst 140 ein oder mehrere Antwortdatenpakete zur Ressourcenabfrage-Steuereinrichtung 220 übertragen. Die beispielhafte Ressourcenabfrage-Steuereinrichtung 220 kann durch Extrahieren von Ressourcendaten oder -informationen aus dem einen oder den mehreren Antwortdatenpaketen feststellen, dass der erste Edge-Dienst 140 eine oder mehrere der Ressourcen 149 aufweist. Beispielsweise kann die Ressourcenabfrage-Steuereinrichtung 220 auf der Grundlage der extrahierten Ressourcendaten feststellen, dass die eine oder die mehreren Ressourcen 149 eine oder mehrere CPUs, eine oder mehrere GPUs, ein oder mehrere FPGAs, eine oder mehrere VMs, einen oder mehrere Hypervisoren usw. aufweist. Bei solchen Beispielen kann die Ressourcenabfrage-Steuereinrichtung 220 feststellen, dass die eine oder die mehreren CPUs, die eine oder die mehreren GPUs, das eine oder die mehreren FPGAs usw. von einer bestimmten Bauart, einem Modell, einer Version usw. eines Herstellers sind oder irgendeinen anderen Typ identifizierender Informationen aufweisen. Bei anderen Beispielen kann die Ressourcenabfrage-Steuereinrichtung 220 feststellen, dass die eine oder die mehreren VMs, der eine oder die mehreren Hypervisoren usw. von einem bestimmten Softwareverkäufer, einer bestimmten Softwareversion usw. stammen.
  • Beim in 2 dargestellten Beispiel weist die Telemetrie-Steuereinrichtung 130A-C die Kompositionssteuereinrichtung 230 zum adaptiven und/oder dynamischen Erzeugen eines maschinenlesbaren Modells (beispielsweise eines Ressourcenmodells, eines Telemetriemodells usw.) für eine interessierende Ressource auf. Beim Beispiel aus 2 weist die Kompositionssteuereinrichtung 230 die Leistungsmetrik-Bestimmungseinrichtung 232, den Objekterzeuger 234, den Schnittstellenerzeuger 236 und den Kompositionserzeuger 238 auf.
  • Beim in 2 dargestellten Beispiel weist die Kompositionssteuereinrichtung 230 die Leistungsmetrik-Bestimmungseinrichtung 232 zum Bestimmen, Identifizieren und/oder Auswählen einer für die Verarbeitung interessierenden Leistungsmetrik auf. Bei einigen Beispielen stellt die Leistungsmetrik-Bestimmungseinrichtung 232 fest, dass eine Ressource in der Art eines Kerns einer Mehrkern-CPU eine oder mehrere interessierende Leistungsmetriken aufweist, die für die Erzeugung der Telemetriedaten 136A-C aus 1 verwendet werden können. Beispielsweise kann der Kern der Mehrkern-CPU eine erste Leistungsmetrik, welche die Anzahl der verfügbaren Threads repräsentiert, eine zweite Leistungsmetrik, welche einen Beschleuniger repräsentiert, welchen der Kern unterstützt, eine dritte Leistungsmetrik, welche die Kernlatenz repräsentiert, usw. aufweisen. Bei einigen Beispielen wählt die Leistungsmetrik-Bestimmungseinrichtung 232 eine für die Verarbeitung interessierende Leistungsmetrik aus. Beispielsweise kann die Leistungsmetrik-Bestimmungseinrichtung 232 die erste, die zweite, die dritte usw. Leistungsmetrik auswählen, um ein Objekt (beispielsweise ein Ressourcenobjekt, ein Telemetrieobjekt usw.) und/oder eine Schnittstelle (beispielsweise eine RIO-Schnittstelle, eine TIO-Schnittstelle usw.) zu erzeugen.
  • Beim in 2 dargestellten Beispiel weist die Kompositionssteuereinrichtung 230 den Objekterzeuger 234 zum Erzeugen, Kompilieren und/oder anderweitigen Instanziieren eines Objekts (beispielsweise eines Ressourcenobjekts, eines Telemetrieobjekts usw.) auf der Grundlage einer Ressource auf. Bei einigen Beispielen erzeugt der Objekterzeuger 234 ein Ressourcenobjekt durch Virtualisieren einer Hardware-Ressource oder einer Software-Ressource. Bei einigen Beispielen erzeugt der Objekterzeuger 234 ein Ressourcenobjekt auf der Grundlage einer Hardware-Ressource. Beispielsweise kann der Objekterzeuger 234 ein Ressourcenobjekt für eine Hardware-Ressource in der Art einer Partition des Massenspeichers erzeugen. Bei solchen Beispielen kann der Objekterzeuger 234 ein RIO auf der Grundlage der Massenspeicherpartition erzeugen, wobei das RIO einer der Massenspeicherpartition zugeordneten Leistungsmetrik entspricht. Beispielsweise kann das RIO eine Leistungsmetrik der Massenspeicherpartition in der Art der Anzahl der von der Massenspeicherpartition ausgeführten Lese-/Schreibzyklen, der Latenz der Massenspeicherpartition, des Prozentsatzes oder Anteils der Massenspeicherpartition, der für die Ausführung einer Edge-Rechenarbeitslast verfügbar ist, usw. repräsentieren.
  • Bei einigen Beispielen erzeugt der Objekterzeuger 234 ein Telemetrieobjekt auf der Grundlage der Hardware-Ressource. Beispielsweise kann der Objekterzeuger 234 ein Telemetrieobjekt für die Massenspeicherpartition erzeugen. Bei solchen Beispielen kann der Objekterzeuger 234 ein TIO auf der Grundlage der Massenspeicherpartition erzeugen, wobei das TIO einer der Massenspeicherpartition zugeordneten Leistungsmetrik entspricht. Beispielsweise kann das TIO eine Leistungsmetrik der Massenspeicherpartition in der Art der Anzahl der von der Massenspeicherpartition ausgeführten Lese-/Schreibzyklen, der Latenz der Massenspeicherpartition, des Anteils der Massenspeicherpartition, der für die Ausführung einer Edge-Rechenarbeitslast verfügbar ist, usw. repräsentieren.
  • Bei einigen Beispielen erzeugt der Objekterzeuger 234 ein Ressourcenobjekt auf der Grundlage einer Software-Ressource. Beispielsweise kann der Objekterzeuger 234 ein Ressourcenobjekt für eine Software-Ressource in der Art eines virtualisierten Lastausgleichers erzeugen. Bei solchen Beispielen kann der Objekterzeuger 234 ein Ressourceninformationsobjekt auf der Grundlage des Lastausgleichers erzeugen, wobei das Ressourceninformationsobjekt einer Leistungsmetrik in Zusammenhang mit dem Lastausgleicher entspricht. Beispielsweise kann das Ressourceninformationsobjekt eine Leistungsmetrik des Lastausgleichers in der Art eines aktuellen oder historischen Durchsatzes des Lastausgleichers, der Latenz des Lastausgleichers, ob der Lastausgleicher für die Ausführung einer Edge-Rechenarbeitslast verfügbar ist, usw. repräsentieren.
  • Bei einigen Beispielen erzeugt der Objekterzeuger 234 ein Telemetrieobjekt auf der Grundlage der Software-Ressource. Beispielsweise kann der Objekterzeuger 234 ein Telemetrieobjekt für den Lastausgleicher erzeugen. Bei solchen Beispielen kann der Objekterzeuger 234 ein TIO auf der Grundlage des Lastausgleichers erzeugen, wobei das TIO einer Leistungsmetrik in Zusammenhang mit dem Lastausgleicher entspricht. Beispielsweise kann das TIO eine Leistungsmetrik des Lastausgleichers in der Art eines aktuellen oder historischen Durchsatzes des Lastausgleichers, der Latenz des Lastausgleichers, ob der Lastausgleicher für die Ausführung einer Edge-Rechenarbeitslast verfügbar ist, usw. repräsentieren.
  • Beim in 2 dargestellten Beispiel weist die Kompositionssteuereinrichtung 230 den Schnittstellenerzeuger 236 zum Erzeugen, Kompilieren und/oder anderweitigen Instanziieren einer Schnittstelle (beispielsweise einer RIO-Schnittstelle, einer TIO-Schnittstelle usw.) auf der Grundlage eines RIO, eines TIO usw. auf. Bei einigen Beispielen erzeugt der Schnittstellenerzeuger 236 eine RIO-Schnittstelle auf der Grundlage eines RIOs. Beispielsweise kann der Schnittstellenerzeuger 236 eine RIO-Schnittstelle für ein einer Massenspeicherpartition entsprechendes RIO erzeugen. Bei solchen Beispielen kann der Schnittstellenerzeuger 236 eine RIO-Schnittstelle auf der Grundlage der Massenspeicherpartition erzeugen, wobei die RIO-Schnittstelle maschinenlesbare Befehle (beispielsweise einen Hardwareaufruf, einen Systemaufruf usw.), die, wenn sie ausgeführt werden, die Massenspeicherpartition veranlassen, Telemetriedaten in Zusammenhang mit einer Leistungsmetrik, die der Massenspeicherpartition zugeordnet ist, zu erhalten und/oder zu erzeugen, repräsentiert und/oder ihnen auf andere Weise entspricht. Beispielsweise kann die RIO-Schnittstelle eine Telemetrieschnittstelle sein und demgemäß einen Befehl, eine Anweisung usw. repräsentieren, die, wenn sie ausgeführt werden, die Massenspeicherpartition für interessierende Telemetriedaten in Zusammenhang mit der Massenspeicherpartition abfragen können.
  • Bei einigen Beispielen erzeugt der Schnittstellenerzeuger 236 eine TIO-Schnittstelle auf der Grundlage eines TIO. Beispielsweise kann der Schnittstellenerzeuger 236 eine TIO-Schnittstelle für ein einer Massenspeicherpartition entsprechendes TIO erzeugen. Bei solchen Beispielen kann der Schnittstellenerzeuger 236 eine TIO-Schnittstelle auf der Grundlage der Massenspeicherpartition erzeugen, wobei die TIO-Schnittstelle maschinenlesbare Befehle (beispielsweise eine API, einen Aufruf, einen Hook usw.), die, wenn sie ausgeführt werden, das RIO veranlassen, Telemetriedaten in Zusammenhang mit einer Leistungsmetrik, die der Massenspeicherpartition zugeordnet ist, zu erhalten und/oder zu erzeugen, repräsentiert und/oder ihnen auf andere Weise entspricht. Beispielsweise kann die TIO-Schnittstelle einen Befehl, eine Anweisung usw. repräsentieren, die, wenn sie ausgeführt wird, das RIO aufrufen kann, das RIO-Objekt aufzurufen, die Massenspeicherpartition auf interessierende Telemetriedaten in Zusammenhang mit der Massenspeicherpartition abzufragen.
  • Beim in 2 dargestellten Beispiel weist die Kompositionssteuereinrichtung 230 den Kompositionserzeuger 238 zum Erzeugen, Kompilieren und/oder anderweitigen Instanziieren einer Komposition (beispielsweise einer Ressourcenkomposition, einer Telemetriekomposition usw.) in Zusammenhang mit der einen oder den mehreren Ressourcen 149, 159 aus 1 und/oder allgemeiner dem Edge-Dienst 140, 150 aus 1 auf. Beispielsweise kann die Kompositionssteuereinrichtung 230 die eine oder die mehreren Kompositionen 146, 156 aus 1 erzeugen. Bei solchen Beispielen kann die Kompositionssteuereinrichtung 230 die eine oder die mehreren Kompositionen 146, 156 durch Zusammenstellen isomorpher Graphen auf der Grundlage einer oder mehrerer Beziehungen zwischen verschiedenen Ressourcenobjekten, Telemetrieobjekten usw. erzeugen. Vorteilhafterweise kann die Kompositionssteuereinrichtung 230 bei einigen Beispielen die eine oder die mehreren Kompositionen 146, 156 erzeugen, um Telemetriedaten in Zusammenhang mit einer oder mehreren der Ressourcen 149, 159 insgesamt (beispielsweise einer Hardwareplattform, die eine Mehrkern-CPU und ein FPGA aufweist) an Stelle von Telemetriedaten in Zusammenhang mit einem Teil der einen oder der mehreren Ressourcen 149, 159 (beispielsweise einem Kern der Mehrkern-CPU, einem Hardwareabschnitt des FPGAs usw.) zu erzeugen.
  • Bei einigen Beispielen erzeugt der Kompositionserzeuger 238 eine Ressourcenkomposition, die ein oder mehrere Ressourcenobjekte oder Systeme von Objekten aufweist. Bei solchen Beispielen kann der Kompositionserzeuger 238 mehrere Ressourcenobjekte aggregieren, eines oder mehrere der mehreren Ressourcenobjekte unter Verwendung eines azyklischen und/oder eines zyklischen Graphen oder Teilgraphen verknüpfen und auf der Grundlage der einen oder der mehreren Verknüpfungen feststellen, ob eines oder mehrere der mehreren Ressourcenobjekte untergeordnete Objekte, Peer-to-Peer-gekoppelte Objekte usw. sind. Die Ressourcenkomposition wird nachstehend weiter in Zusammenhang mit den 6A-6C beschrieben.
  • Bei einigen Beispielen erzeugt der Kompositionserzeuger 238 eine Telemetriekomposition, die ein oder mehrere Telemetrieobjekte aufweist. Bei solchen Beispielen kann der Kompositionserzeuger 238 mehrere Telemetrieobjekte aggregieren, eines oder mehrere der mehreren Telemetrieobjekte unter Verwendung eines azyklischen und/oder eines zyklischen Graphen oder Teilgraphen verknüpfen und auf der Grundlage der einen oder der mehreren Verknüpfungen feststellen, ob eines oder mehrere der mehreren Telemetrieobjekte untergeordnete Objekte, Peer-to-Peer-gekoppelte Objekte usw. sind. Die Telemetriekomposition wird nachstehend weiter in Zusammenhang mit den 7A-7C beschrieben.
  • Beim in 2 dargestellten Beispiel weist die Telemetrie-Steuereinrichtung 130A-C die Ressourcenverfügbarkeits-Steuereinrichtung 240 zum auf der Grundlage der Telemetriedaten 136A-C erfolgenden Feststellen und/oder anderweitigen Identifizieren, ob eine oder mehrere der Ressourcen 149, 159 verfügbar sind, um eine Edge-Rechenarbeitslast auszuführen, auf. Bei einigen Beispielen kann die Ressourcenverfügbarkeits-Steuereinrichtung 240 auf der Grundlage der ersten Telemetriedaten 136A feststellen, dass die eine oder die mehreren ersten Ressourcen 149 aus 1 für die Ausführung einer Arbeitslast von der ersten Endpunktvorrichtung 160 verfügbar sind. Beispielsweise kann die Arbeitslast zur Ausführung ein FPGA anfordern. Bei solchen Beispielen kann die Ressourcenverfiigbarkeits-Steuereinrichtung 240 auf der Grundlage davon, ob die eine oder die mehreren ersten Kompositionen 146 eine Ressourcenkomposition, eine Telemetriekomposition usw., die einem FPGA entsprechen, aufweisen, feststellen, dass die eine oder die mehreren ersten Ressourcen 149 des ersten Edge-Dienstes 140 ein FPGA auf der Grundlage der einen oder der mehreren ersten Kompositionen 146 aufweisen. Vorteilhafterweise kann die Ressourcenverfiigbarkeits-Steuereinrichtung 240 auf der Grundlage der ersten Telemetriedaten 136A feststellen, dass das FPGA in Zusammenhang mit dem ersten Edge-Dienst 140 verfügbar ist. Beispielsweise geben die ersten Telemetriedaten 136A an, dass das FPGA einen oder mehrere Hardwareabschnitte aufweist, die im Bereitschaftszustand, unterausgelastet und/oder auf andere Weise verfügbar sind, um eine Arbeitslast auszufiihren. Bei solchen Beispielen kann die Ressourcenverfügbarkeits-Steuereinrichtung 240 die Arbeitslast für die Ausführung auf die eine oder die mehreren ersten Ressourcen 149 verteilen und/oder diesen auf andere Weise zuordnen.
  • Beim in 2 dargestellten Beispiel weist die Telemetrie-Steuereinrichtung 130A-C die Steuereinrichtung 250 für ausführbare Programme zum Kompilieren und/oder anderweitigen Erzeugen der ausführbaren Programme 137, 139 aus 1 auf der Grundlage der einen oder der mehreren Kompositionen 146, 156 aus 1 auf. Bei einigen Beispielen kann die Steuereinrichtung 250 für ausführbare Programme ansprechend darauf, dass der Kompositionserzeuger 238 und/oder allgemeiner die Kompositionssteuereinrichtung 230 eine oder mehrere Ressourcenkompositionen (beispielsweise Hardware-Ressourcenkompositionen, Software-Ressourcenkompositionen usw.) erzeugt, die eine oder die mehreren Ressourcenkompositionen zu einem oder mehreren maschinenlesbaren ausführbaren Programmen kompilieren.
  • Bei einigen Beispielen können der eine oder die mehreren Server 112, 114, 116 ansprechend darauf, dass die Steuereinrichtung 250 für ausführbare Programme der ersten Telemetrie-Steuereinrichtung 130A die ausführbaren Programme 137, 139 kompiliert, die ausführbaren Programme 137, 139 an einen entsprechenden der Edge-Dienste 140, 150 ausliefern. Beispielsweise kann die Steuereinrichtung 250 für ausführbare Programme (1) das erste ausführbare Programm 137 zum ersten Edge-Dienst 140, (2) das zweite ausführbare Programm 139 zum zweiten Edge-Dienst 150 usw. übertragen und/oder auf andere Weise daran ausliefern. Bei einigen Beispielen kann die Steuereinrichtung 250 für ausführbare Programme ansprechend darauf, dass die Steuereinrichtung 250 für ausführbare Programme eines der Edge-Dienste 140, 150 ein entsprechendes der ausführbaren Programme 137, 139 kompiliert, das entsprechende der ausführbaren Programme 137, 139 zu einem oder mehreren der Server 112, 114, 116 zur Speicherung in der Datenbank 135 übertragen.
  • Wenngleich in 2 eine beispielhafte Art der Implementation der Telemetrie-Steuereinrichtung 130A-C aus 1 dargestellt ist, können eines oder mehrere der Elemente, Prozesse und/oder Vorrichtungen, die in 2 dargestellt sind, kombiniert, unterteilt, neu angeordnet, fortgelassen, beseitigt und/oder auf andere Weise implementiert werden. Ferner können die beispielhafte Netzschnittstelle 210, die beispielhafte Ressourcenabfrage-Steuereinrichtung 220, die beispielhafte Kompositionssteuereinrichtung 230, die beispielhafte Leistungsmetrik-Bestimmungseinrichtung 232, der beispielhafte Objekterzeuger 234, der beispielhafte Schnittstellenerzeuger 236, der beispielhafte Kompositionserzeuger 238, die beispielhafte Ressourcenverfügbarkeits-Steuereinrichtung 240, die beispielhafte Steuereinrichtung 250 für ausführbare Programme und/oder allgemeiner die beispielhafte Telemetrie-Steuereinrichtung 130A-C aus 1 durch Hardware, Software, Firmware und/oder eine Kombination von Hardware, Software und/oder Firmware implementiert werden. Demgemäß könnten beispielsweise jegliche von der beispielhaften Netzschnittstelle 210, der beispielhaften Ressourcenabfrage-Steuereinrichtung 220, der beispielhaften Kompositionssteuereinrichtung 230, der beispielhaften Leistungsmetrik-Bestimmungseinrichtung 232, vom beispielhaften Objekterzeuger 234, vom beispielhaften Schnittstellenerzeuger 236, vom beispielhaften Kompositionserzeuger 238, von der beispielhaften Ressourcenverfügbarkeits-Steuereinrichtung 240, von der beispielhaften Steuereinrichtung 250 für ausführbare Programme und/oder allgemeiner von der beispielhaften Telemetrie-Steuereinrichtung 130A-C durch eine oder mehrere analoge oder digitale Schaltungen, Logikschaltungen, programmierbare Prozessoren, programmierbare Steuereinrichtungen, Graphikverarbeitungseinheiten (GPUs), digitale Signalprozessoren (DSPs), anwendungsspezifische integrierte Schaltungen (ASICs), programmierbare Logikvorrichtungen (PLDs) und/oder feldprogrammierbare Logikvorrichtungen (FPLDs) implementiert werden. Wenn jegliche der Vorrichtungs- oder Systemansprüche dieses Patents zur Abdeckung einer reinen Software- und/oder Firmwareimplementation gelesen werden, wird hier ausdrücklich definiert, dass wenigstens eine von der beispielhaften Netzschnittstelle 210, der beispielhaften Ressourcenabfrage-Steuereinrichtung 220, der beispielhaften Kompositionssteuereinrichtung 230, der beispielhaften Leistungsmetrik-Bestimmungseinrichtung 232, dem beispielhaften Objekterzeuger 234, dem beispielhaften Schnittstellenerzeuger 236, dem beispielhaften Kompositionserzeuger 238, der beispielhaften Ressourcenverfügbarkeits-Steuereinrichtung 240 und/oder der beispielhaften Steuereinrichtung 250 für ausführbare Programme eine nichtflüchtige computerlesbare Speichervorrichtung oder Speicherplatte in der Art eines Speichers, einer Digital Versatile Disk (DVD), einer Compact Disk (CD), einer Bluray-Disk usw., einschließlich der Software und/oder Firmware, aufweist. Überdies kann die beispielhafte Telemetrie-Steuereinrichtung 130A-C aus 1 ein oder mehrere Elemente, Prozesse und/oder Vorrichtungen zusätzlich zu jenen, die in 2 dargestellt sind, oder an Stelle dieser aufweisen und/oder mehr als eines von einigen oder allen der dargestellten Elemente, Prozesse und Vorrichtungen aufweisen. Hier umfasst der Ausdruck „in Kommunikation“, einschließlich Variationen davon, eine direkte Kommunikation und/oder eine indirekte Kommunikation durch eine oder mehrere Zwischenkomponenten und erfordert keine direkte physische (beispielsweise drahtgestützte) Kommunikation und/oder konstante Kommunikation, sondern schließt vielmehr zusätzlich eine selektive Kommunikation in periodischen Intervallen, geplanten Intervallen, aperiodischen Intervallen und/oder einmaligen Ereignissen ein.
  • Beim in 2 dargestellten Beispiel weist die Telemetrie-Steuereinrichtung 130A-C Mittel zur Zusammenstellung einer Komposition (beispielsweise der einen oder der mehreren Kompositionen 146, 156) für einen Edge-Dienst (beispielsweise den einen oder die mehreren Edge-Dienste 140, 150) in einer Edge-Umgebung (beispielsweise der Edge-Umgebung 110) auf, wobei die Komposition eine erste Schnittstelle zum Erhalten von Telemetriedaten (beispielsweise der Telemetriedaten 136A-C) in Zusammenhang mit Ressourcen (beispielsweise der einen oder der mehreren Ressourcen 149, 159) des Edge-Dienstes repräsentieren kann und wobei die Telemetriedaten eine Leistungsmetrik aufweisen.
  • Bei einigen Beispielen können die Mittel zur Zusammenstellung feststellen, dass ein zweites Ressourcenobjekt (beispielsweise ein zweites der Ressourcenobjekte 302) von einem ersten Ressourcenobjekt (beispielsweise einem ersten der Ressourcenobjekte 302) abhängig ist, und ansprechend auf die Feststellung ein zweites Telemetrieobjekt (beispielsweise ein zweites der Telemetrieobjekte 304) als vom ersten Telemetrieobjekt (beispielsweise einem ersten der Telemetrieobjekte 304) abhängig zuweisen, wobei das zweite Telemetrieobjekt dem zweiten Ressourcenobjekt entspricht.
  • Bei einigen Beispielen können die Mittel zum Zusammenstellen ansprechend auf die Feststellung, dass das zweite Ressourcenobjekt vom ersten Ressourcenobjekt abhängt, eine neue Komposition (beispielsweise die eine oder die mehreren Kompositionen 146, 156 aus 1) durch Zuweisen des zweiten Ressourcenobjekts als vom ersten Ressourcenobjekt abhängig, und Zuweisen des zweiten Telemetrieobjekts als vom ersten Telemetrieobjekt abhängig, erzeugen. Bei einigen Beispielen implementiert der Kompositionserzeuger 238 die Mittel zur Zusammenstellung.
  • Beim in 2 dargestellten Beispiel weist die Telemetrie-Steuereinrichtung 130A-C Mittel zur Erzeugung eines Ressourcenobjekts (beispielsweise des Ressourcenobjekts 302) auf der Grundlage einer Leistungsmetrik auf, wobei das Ressourcenobjekt eine erste Schnittstelle repräsentiert, welche die Leistungsmetrik von einer Ressource (beispielsweise einer oder mehrerer der Ressourcen 149, 159 aus 1) erhalten kann. Bei einigen Beispielen erzeugen die Mittel zur Erzeugung ein Telemetrieobjekt auf der Grundlage der Leistungsmetrik, wobei das Telemetrieobjekt eine zweite Schnittstelle repräsentiert, welche die Leistungsmetrik vom Ressourcenobjekt erhalten kann.
  • Bei einigen Beispielen erzeugen die Mittel zur Erzeugung eine RIO-Schnittstelle (beispielsweise die RIO-Schnittstelle 308 aus 3) auf der Grundlage eines Ereignisses (beispielsweise eines Hardwareereignisses, eines Ressourcenereignisses usw.), wobei die RIO-Schnittstelle einen ersten Befehl zum Erhalten der Leistungsmetrik von einer Ressource (beispielsweise der Ressource 310 aus 3) repräsentieren kann. Bei einigen Beispielen erzeugen die Mittel zur Erzeugung ein RIO (beispielsweise das RIO 306 aus 3) auf der Grundlage einer Funktion der Ressource, wobei das RIO einen zweiten Befehl zum Erhalten der Leistungsmetrik von der RIO-Schnittstelle repräsentieren kann.
  • Bei einigen Beispielen können die Mittel zur Erzeugung eine TIO-Schnittstelle (beispielsweise die TIO-Schnittstelle 314 aus 3) auf der Grundlage eines Telemetrieaufrufs (beispielsweise einer API) erzeugen, wobei die TIO-Schnittstelle einen ersten Befehl zum Erhalten einer Anforderung der Telemetriedaten (beispielsweise der Telemetriedaten 136A-C aus 1) von einer Endpunktumgebung (beispielsweise der Endpunktumgebung 115 aus 1) repräsentieren kann. Bei einigen Beispielen erzeugen die Mittel zur Erzeugung ein TIO (beispielsweise das TIO 312 aus 3) auf der Grundlage des ersten Befehls, wobei das TIO einen zweiten Befehl zum Erhalten der Leistungsmetrik vom Ressourcenobjekt repräsentieren kann.
  • Bei einigen Beispielen erzeugen die Mittel zur Erzeugung ein erstes Ressourcenobjekt (beispielsweise ein erstes der Ressourcenobjekte 302 aus 3) durch Virtualisieren einer Hardware-Ressource oder einer Software-Ressource (beispielsweise der einen oder der mehreren Ressourcen 149, 159 aus 1). Bei einigen Beispielen erzeugen die Mittel zur Erzeugung ein erstes Telemetrieobjekt (beispielsweise ein erstes der Telemetrieobjekte 304 aus 3), das einen oder mehrere Befehle zum Auffordern des ersten Ressourcenobjekts, eine Leistungsmetrik in Zusammenhang mit der Hardware-Ressource oder der Software-Ressource zu erhalten, repräsentiert. Bei einigen Beispielen erzeugen die Mittel zur Erzeugung ein zweites Ressourcenobjekt und ein zweites Telemetrieobjekt auf der Grundlage einer zweiten Ressource, wobei die zweite Ressource von der ersten Ressource verschieden sein kann. Bei solchen Beispielen kann das zweite Ressourcenobjekt vom ersten Ressourcenobjekt abhängen und kann das zweite Telemetrieobjekt vom ersten Telemetrieobjekt abhängen. Bei einigen Beispielen implementieren der Objekterzeuger 234 und/oder der Schnittstellenerzeuger 236 die Mittel zur Erzeugung.
  • Beim in 2 dargestellten Beispiel weist die Telemetrie-Steuereinrichtung 130A-C erste Mittel zur Abbildung einer Leistungsmetrik auf eine Funktion einer Ressource (beispielsweise der einen oder der mehreren Ressourcen 149, 159 aus 1) auf, wobei die Leistungsmetrik auf der Grundlage der die Funktion ausführenden Ressource bestimmt werden kann.
  • Bei einigen Beispielen bilden die ersten Mittel zur Abbildung die Leistungsmetrik auf eine Funktion einer Telemetrie-Ressource ab, wobei die Telemetrie-Ressource einen Befehl zum Erhalten von Telemetriedaten (beispielsweise der Telemetriedaten 136A-C aus 1) von einem Ressourcenobjekt (beispielsweise dem Ressourcenobjekt 302 aus 3) repräsentieren kann, wobei die Leistungsmetrik auf der Grundlage der eine Rechenaufgabe ausführenden Ressource bestimmt werden kann. Bei einigen Beispielen implementiert der Objekterzeuger 234 die ersten Mittel zur Abbildung.
  • Beim in 2 dargestellten Beispiel weist die Telemetrie-Steuereinrichtung 130A-C zweite Mittel zur Abbildung einer Leistungsmetrik auf ein von einer Ressource (beispielsweise der einen oder der mehreren Ressourcen 149, 159) erzeugtes Ereignis auf, wobei das Ereignis wenigstens einem von einem Hardwarezähler oder einem Softwarezähler in Zusammenhang mit der Ressource entsprechen kann. Bei einigen Beispielen bilden die zweiten Mittel zur Abbildung die Leistungsmetrik auf einen Telemetrieaufruf (beispielsweise eine API) ab. Bei einigen Beispielen implementiert der Schnittstellenerzeuger 236 die zweiten Mittel zur Abbildung.
  • Beim in 2 dargestellten Beispiel weist die Telemetrie-Steuereinrichtung 130A-C Mittel zum Kompilieren eines ausführbaren Telemetrieprogramms (beispielsweise des einen oder der mehreren ausführbaren Programme 137, 147 aus 1) auf der Grundlage einer Komposition (beispielsweise der einen oder der mehreren Kompositionen 146, 156 aus 1) auf, wobei die Komposition wenigstens eines von einem Ressourcenobjekt (beispielsweise das Ressourcenobjekt 302 aus 3) oder einem Telemetrieobjekt (beispielsweise das Telemetrieobjekt 304 aus 3) aufweisen kann. Bei solchen Beispielen kann das ausführbare Telemetrieprogramm Telemetriedaten (beispielsweise die Telemetriedaten 136A-C aus 1) ansprechend darauf erzeugen, dass ein Edge-Dienst (beispielsweise der Edge-Dienst 140, 150 aus 1) eine Rechenaufgabe ausführt, wobei die Rechenaufgabe auf der Grundlage der Telemetriedaten an den Edge-Dienst übergeben werden kann. Bei einigen Beispielen implementiert die Steuereinrichtung 250 für ausführbare Programme die Mittel zum Kompilieren.
  • Beim in 2 dargestellten Beispiel weisen der eine oder die mehreren Edge-Dienste 140, 150 aus 1 erste Mittel zum Aufrufen auf, wobei die ersten Mittel zum Aufrufen ansprechend auf das Erhalten eines ersten Befehls zum Erhalten von Telemetriedaten (beispielsweise der Telemetriedaten 136A-C aus 1) von einer Komposition (beispielsweise der einen oder der mehreren Kompositionen 146, 156 aus 1) ein erstes Telemetrieobjekt (beispielsweise ein erstes der Telemetrieobjekte 304 aus 3) auffordern, einen zweiten Befehl zum Erhalten der Telemetriedaten von einem ersten Ressourcenobjekt (beispielsweise einem ersten der Ressourcenobjekte 302 aus 3) zu erzeugen. In 2 weist die Telemetrie-Steuereinrichtung 130A-C zweite Mittel zum Aufrufen auf, wobei die zweiten Mittel zum Aufrufen ansprechend auf das Erhalten eines dritten Befehls das erste Ressourcenobjekt auffordern, die Telemetriedaten von der Hardware-Ressource oder der Software-Ressource zu erhalten. Bei einigen Beispielen implementieren die eine oder die mehreren Kompositionen 146, 156 aus 1 und/oder allgemeiner das ausführbare Telemetrieprogramm 137, 147 aus 1 die ersten Mittel zum Aufrufen und/oder die zweiten Mittel zum Aufrufen.
  • Beim in 2 dargestellten Beispiel weisen der eine oder die mehreren Edge-Dienste 140, 150 zweite Mittel zum Erzeugen zweiter Telemetriedaten (beispielsweise der Telemetriedaten 136A-C aus 1) durch Aufrufen eines zweiten Telemetrieobjekts (beispielsweise eines zweiten der Telemetrieobjekte 304 aus 3), das vom ersten Telemetrieobjekt abhängt, auf. Bei einigen Beispielen erzeugen die zweiten Mittel zum Erzeugen ansprechend auf die Erzeugung der zweiten Telemetriedaten erste Telemetriedaten durch Aufrufen des ersten Telemetrieobjekts (beispielsweise eines ersten der Telemetrieobjekte 304 aus 3) und Bestimmen dritte Telemetriedaten (beispielsweise die Telemetriedaten 136A-C aus 1) auf der Grundlage der ersten Telemetriedaten und der zweiten Telemetriedaten.
  • Bei einigen Beispielen bestimmen die zweiten Mittel zum Erzeugen einen Erste-Leistungsmetrik-Code auf der Grundlage einer ersten Leistungsmetrik, einen Zweite-Leistungsmetrik-Code auf der Grundlage einer zweiten Leistungsmetrik und einen Dritte-Leistungsmetrik-Code auf der Grundlage einer dritten Leistungsmetrik. Bei einigen Beispielen sollen die zweiten Mittel zum Erzeugen ansprechend auf das Aufrufen eines Auslösers, der angibt, dass die erste Leistungsmetrik und die zweite Leistungsmetrik erzeugt werden, den Erste-Leistungsmetrik-Code auf eine die erste Leistungsmetrik speichernde erste Speicherstelle abbilden, den Zweite-Leistungsmetrik-Code auf eine die zweite Leistungsmetrik speichernde zweite Speicherstelle abbilden, die dritte Leistungsmetrik auf der Grundlage der ersten Leistungsmetrik und der zweiten Leistungsmetrik bestimmen und ansprechend auf die Abbildung des Dritte-Leistungsmetrik-Codes auf eine dritte Speicherstelle die dritte Leistungsmetrik an der dritten Speicherstelle speichern. Bei einigen Beispielen implementieren die eine oder die mehreren Kompositionen 146, 156 aus 1 und/oder allgemeiner das eine oder die mehreren ausführbaren Telemetrieprogramme 137, 147 aus 1 die zweiten Mittel zum Erzeugen.
  • Bei einigen Beispielen werden eines oder mehrere der Mittel zum Zusammenstellen, der Mittel zum Erzeugen (beispielsweise der ersten Mittel zum Erzeugen), der zweiten Mittel zum Erzeugen, der Mittel zum Kompilieren, der ersten Mittel zum Abbilden, der zweiten Mittel zum Abbilden, der ersten Mittel zum Aufrufen und/oder der zweiten Mittel zum Aufrufen durch einen Prozessor, der aufgebaut ist, um eine entsprechende Operation durch Ausführen von Software oder Firmware auszuführen, oder eine Hardwareschaltung (beispielsweise eine diskrete und/oder integrierte Analog- und/oder Digitalschaltungsanordnung, ein FPGA, eine PLD, eine FPLD, ein ASIC, ein Vergleicher, ein Operationsverstärker (op-amp), eine Logikschaltung usw.), die aufgebaut ist, um die entsprechende Operation ohne Ausführung von Software oder Firmware auszuführen, implementiert, andere Strukturen sind jedoch gleichermaßen geeignet.
  • 3 zeigt ein beispielhaftes Ressourcenmodell 300, das ein beispielhaftes Ressourcenobjekt 302 und ein beispielhaftes Telemetrieobjekt 304 aufweist. In 3 kann das Ressourcenmodell 300 ein Telemetriemodell sein, das, wenn es ausgeführt wird, Telemetriedaten auf der Grundlage einer oder mehrerer Partitionen, Abschnitte, Slices usw. einer oder mehrerer Ressourcen, die eine oder mehrere Rechenaufgaben ausführen, erzeugen kann. Beispielsweise kann das Ressourcenmodell 300 aus 3 verwendet werden, um die eine oder die mehreren Kompositionen 146, 156 aus 1 zu implementieren. Beim Beispiel aus 3 kann das Ressourcenmodell 300 ein maschinenausführbares Modell oder eine maschinenausführbare Repräsentation einer der Ressourcen 149, 159 sein, d. h., wenn es ausgeführt wird, Telemetriedaten für den Verbrauch durch einen Datenverbraucher erzeugen und/oder auf andere Weise verfügbar machen. Beim Beispiel aus 3 kann das Ressourcenmodell 300 einer oder mehreren Virtualisierungen einer oder mehrerer der Ressourcen 149, 159 aus 1 entsprechen. Beispielsweise kann das Ressourcenmodell 300 unter Verwendung maschinenlesbarer Befehle implementiert werden, die, wenn sie ausgeführt werden, Telemetriedaten für eine interessierende Leistungsmetrik in Zusammenhang mit der einen oder den mehreren der Ressourcen 149, 159 erhalten und/oder erzeugen.
  • Bei einigen Beispielen entspricht das Ressourcenmodell 300 aus 3 einer Leistungsmetrik einer Hardware-Ressource in der Art eines Kerns einer Mehrkern-CPU. Beispielsweise kann die Leistungsmetrik die Kernauslastung (beispielsweise die Auslastung für den gesamten Kern oder einen spezifischen durch den Kern ausgeführten Prozess), die Anzahl der privaten Bytes (beispielsweise zugewiesener Prozessspeicher (sowohl gemanagt als auch nativ)), die Anzahl der virtuellen Bytes (beispielsweise einem Prozess zugeordneter virtueller Speicher), die Anzahl der Ein-/Ausgabe(E/A)-Datenbytes pro Sekunde (beispielsweise die Anzahl der Bytes, die ein Prozess sendet oder empfängt), die Anzahl der Ausnahmen, die pro Sekunde erzeugt werden, usw. sein. Beispielsweise kann das Ressourcenmodell 300 zumindest der Auslastung des Kerns der Mehrkern-CPU entsprechen.
  • Beim in 3 dargestellten Beispiel weist das Ressourcenmodell 300 das Ressourcenobjekt 302 zum Erzeugen, Zugreifen auf und/oder anderweitigen Erhalten von Werten einer interessierenden Leistungsmetrik auf. In 3 kann das Ressourcenobjekt 302 eine Schnittstelle zum Erhalten einer Leistungsmetrik, eines Werts einer Leistungsmetrik usw. von einer beispielhaften Ressource 310 (beispielsweise einer oder mehrerer der Ressourcen 149, 159 aus 1) sein. In 3 weist das Ressourcenobjekt 302 ein beispielhaftes Ressourceninformationsobjekt (RIO) 306 und eine beispielhafte RIO-Schnittstelle 308 auf.
  • Beim in 3 dargestellten Beispiel weist das Ressourcenobjekt 302 das RIO 306 zum Definieren und/oder anderweitigen Spezifizieren einer Leistungsmetrik und/oder von Befehlen zum Erhalten der Leistungsmetrik auf. Beispielsweise kann das RIO 306 eine Datenstruktur, eine Datendefinition usw., einschließlich einer Kennung (beispielsweise einer Variable, einer alphanumerischen Kennung usw.) für die Leistungsmetrik, eines Datentyps der Leistungsmetrik (beispielsweise eines Array-Datentyps, eines Gleitkomma-Datentyps, eines Integer-Datentyps, eines String-Datentyps usw.), einer Datengenauigkeitsinformation (beispielsweise der Anzahl der Stellen, die Anzahl der signifikanten Zahlen usw.) usw. und/oder einer Kombination davon sein.
  • Bei einigen Beispielen erzeugt der Objekterzeuger 234 aus 2 und/oder allgemeiner die Telemetrie-Steuereinrichtung 130A-C (1 und 2) das RIO 306 durch Abbilden einer interessierenden Leistungsmetrik in Zusammenhang mit der Ressource 310 auf eine Funktion der Ressource 310. Beispielsweise kann die Ressource 310 ein Kern einer Mehrkern-CPU sein, und kann die Funktion ein Befehl ausführen oder zurückziehen, einen Logikzyklus ausführen, einen Referenzzyklus ausführen, einen Aufruf ausführen, einen direkten Aufruf ausführen usw. Bei solchen Beispielen kann der Objekterzeuger 234 eine der Anzahl der ausgeführten Befehle entsprechende Leistungsmetrik auf die Funktion der Ausführung eines Befehls abbilden. Der beispielhafte Objekterzeuger 234 kann das RIO 306 auf der Grundlage der Funktion erzeugen, wobei das RIO 306 einen oder mehrere Befehle zum Erhalten der Leistungsmetrik von der RIO-Schnittstelle 308 repräsentieren kann.
  • Beim in 3 dargestellten Beispiel weist das Ressourcenobjekt 302 die RIO-Schnittstelle 308 zum Definieren und/oder anderweitigen Spezifizieren eines oder mehrerer Befehle, Anweisungen usw. zum Aufrufen der Ressource 310, einen Wert für die dem RIO 306 entsprechende Leistungsmetrik und/oder allgemeiner das Ressourcenmodell 300 zu erhalten, auf. Beispielsweise kann die RIO-Schnittstelle 308 ein oder mehrere Hardware- oder Systemaufrufe (beispielsweise einen Linux-Performance(PERF)-Befehl oder eine entsprechende Anweisung, einen Nigel's-Monitor(NMON)-Befehl oder eine entsprechende Anweisung, einen System-Activity-Report(SAR)-Werkzeug-Befehl oder eine entsprechende Anweisung usw.) usw. aufweisen, diesen entsprechen und/oder diese auf andere Weise repräsentieren. Beim Beispiel aus 3 kann die Ressource 310 eine Hardware-Ressource, eine Software-Ressource usw. sein. Beispielsweise kann die Ressource 310 ein Kern einer Mehrkern-CPU, ein Lastausgleicher (beispielsweise ein virtualisierter Lastausgleicher) usw. sein. Bei solchen Beispielen kann die RIO-Schnittstelle 308, wenn sie aufgerufen wird, einen Befehl zur Ressource 310 übertragen, welche wiederum einen dem Befehl entsprechenden Leistungsmetrikwert erhalten und/oder erzeugen kann.
  • Bei einigen Beispielen erzeugt der Schnittstellenerzeuger 236 aus 2 und/oder allgemeiner die Telemetrie-Steuereinrichtung 130A-C die RIO-Schnittstelle 308 durch Abbilden einer interessierenden Leistungsmetrik in Zusammenhang mit der Ressource 310 auf ein oder mehrere von der Ressource 310 erzeugte Ereignisse (beispielsweise ein oder mehrere Ressourcenereignisse). Beispielsweise kann die Ressource 310 ein Kern einer Mehrkern-CPU sein und kann das Ergebnis eine Aktualisierung von wenigstens einem von einem Hardwarezähler (beispielsweise einem Hardwareleistungszähler) oder einem Softwarezähler (beispielsweise einem Softwareleistungszähler), der in der Mehrkern-CPU enthalten ist und eine Funktion des Kerns überwacht, sein. Beispielsweise kann die Funktion dem einen Befehl ausführenden Kern entsprechen. Bei solchen Beispielen kann der Schnittstellenerzeuger 236 eine Leistungsmetrik, die der Anzahl der ausgeführten Befehle entspricht, auf die Funktion zur Ausführung eines Befehls abbilden. Der beispielhafte Schnittstellenerzeuger 236 kann die RIO-Schnittstelle 308 auf der Grundlage des Ereignisses erzeugen, wobei die RIO-Schnittstelle 308 einen oder mehrere Befehle zum Erhalten der Leistungsmetrik von wenigstens einem vom Hardwarezähler oder vom Softwarezähler der Ressource 310 repräsentieren kann.
  • Beim in 3 dargestellten Beispiel weist das Ressourcenmodell 300 das Telemetrieobjekt 304 zum Erzeugen, Zugreifen auf und/oder anderweitigen Erhalten von Werten für eine interessierende Leistungsmetrik vom Ressourcenobjekt 302 auf. Beim Beispiel aus 3 kann das Telemetrieobjekt 304 eine Schnittstelle zum Erhalten einer Leistungsmetrik, eines Werts der Leistungsmetrik usw. vom Ressourcenobjekt 302 repräsentieren. Beim Beispiel aus 3 weist das Telemetrieobjekt 304 ein beispielhaftes Telemetrieinformationsobjekt (TIO) 312 und eine beispielhafte TIO-Schnittstelle 314 auf. In 3 sind das TIO 312 und/oder allgemeiner das Telemetrieobjekt 304 kommunikativ und/oder funktionell mit dem RIO 306 und/oder allgemeiner dem Ressourcenobjekt 302 gekoppelt.
  • Beim in 3 dargestellten Beispiel weist das Telemetrieobjekt 304 das TIO 312 zum Definieren und/oder anderweitigen Spezifizieren einer Leistungsmetrik und/oder von Befehlen zum Erhalten der Leistungsmetrik von der Ressource 310 über das Ressourcenobjekt 302 auf. Beispielsweise kann das TIO 312 eine Datenstruktur oder - definition einschließlich Befehlen zum Aufrufen des RIOs 306, einer Kennung (beispielsweise einer Variable, einer alphanumerischen Kennung usw.) für die Leistungsmetrik, eines Datentyps der Leistungsmetrik (beispielsweise eines Array-Datentyps, eines Gleitkomma-Datentyps, eines Integer-Datentyps, eines String-Datentyps usw.), einer Datengenauigkeitsinformation (beispielsweise der Anzahl der Stellen, die Anzahl der signifikanten Zahlen usw.) usw. und/oder einer Kombination davon sein.
  • Bei einigen Beispielen erzeugt der Objekterzeuger 234 aus 2 und/oder allgemeiner die Telemetrie-Steuereinrichtung 130A-C das TIO 312 durch Abbilden einer interessierenden Leistungsmetrik in Zusammenhang mit der Ressource 310 auf eine Funktion einer Telemetrie-Ressource. Beispielsweise kann die Funktion das Erhalten von Telemetriedaten vom RIO 306 sein und kann die Telemetrie-Ressource ein Aufrufbefehl, ein Sprungbefehl, ein maschinenlesbarer Befehl usw. sein, der, wenn er ausgeführt wird, das RIO 306 veranlasst, Telemetriedaten von der Ressource 310 zu erhalten. Der beispielhafte Objekterzeuger 234 kann das TIO 312 auf der Grundlage der Funktion erzeugen, wobei das TIO 312 einen oder mehrere Befehle zum Erhalten der Leistungsmetrik vom RIO 306 repräsentieren kann.
  • Beim in 3 dargestellten Beispiel weist das Telemetrieobjekt 304 die TIO-Schnittstelle 314 zum Definieren und/oder anderweitigen Spezifizieren eines oder mehrerer Befehle, Anweisungen usw. zum Aufrufen des Ressourcenobjekts 302, einen Wert für die dem Ressourcenmodell 300 entsprechende Leistungsmetrik zu erhalten, auf. Beispielsweise kann die TIO-Schnittstelle 314 eine oder mehrere Netzschnittstellen, einen oder mehrere Webserver, eine oder mehrere APIs (beispielsweise eine Representational-State-Transfer(REST)-API, eine Simple-Object-Access-Protocol(SOAP)-API usw.) usw. aufweisen, diesen entsprechen und/oder diese auf andere Weise repräsentieren.
  • Bei einigen Beispielen erzeugt der Schnittstellenerzeuger 236 aus 2 und/oder allgemeiner die Telemetrie-Steuereinrichtung 130A-C die TIO-Schnittstelle 314 durch Abbilden einer interessierenden Leistungsmetrik in Zusammenhang mit der Ressource 310 auf einen Telemetrieaufruf. Beispielsweise kann der Telemetrieaufruf ein Aufruf oder eine Anforderung einer Netzschnittstelle, eines Webservers, einer API usw. sein, der, wenn er ausgeführt wird, das TIO 312 veranlasst, Telemetriedaten vom RIO 306 zu erhalten. Der beispielhafte Schnittstellenerzeuger 236 kann die TIO-Schnittstelle 314 auf der Grundlage des Telemetrieaufrufs erzeugen, wobei die TIO-Schnittstelle 314 einen oder mehrere Befehle zum Erhalten der Leistungsmetrik von der Ressource 310 über das RIO 306 repräsentieren kann.
  • Beim in 3 dargestellten Beispiel stehen die TIO-Schnittstelle 314 und/oder allgemeiner das Telemetrieobjekt 304 und/oder allgemeiner das Ressourcenmodell 300 in Kommunikation mit einem beispielhaften Orchestrator 316 und einem beispielhaften Planer 318. Beim Beispiel aus 3 kann der Orchestrator 316 durch wenigstens einen vom ersten Orchestrator 142 oder vom zweiten Orchestrator 152 aus 1 implementiert sein und/oder diesem auf andere Weise entsprechen. Beim Beispiel aus 3 kann der Planer 318 durch wenigstens einen vom ersten Planer 144 oder vom zweiten Planer 154 aus 1 implementiert sein und/oder diesem auf andere Weise entsprechen.
  • Beim in 3 dargestellten Beispiel wird das Ressourcenmodell 300 in Zusammenhang mit mehreren beispielhaften logischen Schichten 320, 322, 324 ausgeführt. Beim Beispiel aus 3 weisen die logischen Schichten 320, 322, 324 eine beispielhafte Planungs- und Orchestrierungsschicht 320, eine beispielhafte Kompositionsschicht 322 und eine beispielhafte Atomare-Ressourcen-Schicht 324 auf. Beim Beispiel aus 3 weist die Planungs- und Orchestrierungsschicht 320 den Orchestrator 316 und den Planer 318 zum Erleichtern der Aggregation von Telemetriedaten und der Planung und/oder Ausführung von Arbeitslasten auf. Beim Beispiel aus 3 weist die Kompositionsschicht 322 das Ressourcenmodell 300 zum Erzeugen und/oder anderweitigen Aggregieren interessierender Telemetriedaten in Zusammenhang mit der Ressource 310 auf. Beim Beispiel aus 3 weist die Atomare-Ressourcen-Schicht 324 Hardware-Ressourcen, Software-Ressourcen usw. in der Art der Ressource 310 auf. Beispielsweise kann die Ressource 310 der einen oder den mehreren ersten Ressourcen 149 und/oder der einen oder den mehreren zweiten Ressourcen 159 aus 1 entsprechen und/oder diese auf andere Weise implementieren.
  • Beim beispielhaften Betrieb können der Orchestrator 316 und/oder der Planer 318 eine Anforderung zu einer API der TIO-Schnittstelle 314 übertragen und/oder diese auf andere Weise aufrufen. Beispielsweise kann die Anforderung dem Erhalten einer Leistungsmetrik, eines Leistungsmetrikwerts usw. in Zusammenhang mit der Ressource 310 entsprechen. Bei solchen Beispielen kann die TIO-Schnittstelle 314 ansprechend auf das Aufrufen der Anforderung und/oder der API das TIO 312 veranlassen oder diesem auf andere Weise befehlen, die Anforderung auszuführen. Beispielsweise kann die TIO-Schnittstelle 314 die in der Anforderung enthaltene Leistungsmetrik auf eine Definition der Leistungsmetrik TIO 312 abbilden. Ansprechend darauf, dass das beispielhafte TIO 312 die Anforderung von der TIO-Schnittstelle 314 erhält, kann das TIO 312 das RIO 306 veranlassen und/oder auf andere Weise anweisen, die Anforderung auszuführen. Ansprechend darauf, dass das beispielhafte RIO 306 die Anforderung vom TIO 312 erhält, kann das RIO 306 die RIO-Schnittstelle 308 auffordern, die Leistungsmetrik von der Ressource 310 anzufordern. Beispielsweise kann die RIO-Schnittstelle 308 einen Befehl zur Ressource 310 übertragen, die interessierenden Telemetriedaten zu erzeugen.
  • Vorteilhafterweise kann das beispielhafte Ressourcenmodell 300 einen Ressourcen-agnostischen API-Befehl, -Hook, -Aufruf usw. vom Orchestrator 316 und/oder vom Planer 318 in einen Hardware- und/oder Softwaresystemaufruf übersetzen, der für die entsprechende Ressource 310 ausgelegt ist und/oder dieser auf andere Weise entspricht. Beispielsweise kann die Anforderung vom Orchestrator 316 und/oder vom Planer 318 eine Anforderung interessierender Telemetriedaten sein, und die Anforderung braucht keinem spezifischen Hersteller, keiner spezifischen Modellnummer, keinem spezifischen Typ, keiner spezifischen Version usw. der Ressource 310 zu entsprechen. Bei solchen Beispielen kann der Hardware- oder Softwaresystemaufruf einem spezifischen Hersteller, einer spezifischen Modellnummer, einem spezifischen Typ, einer spezifischen Version usw. der Ressource 310 entsprechen und/oder auf andere Weise damit kompatibel sein. Vorteilhafterweise kann eine anfordernde Vorrichtung oder ein anfordernder Dienst (beispielsweise ein Server, ein Edge-Dienst usw.) interessierende Telemetriedaten für die Ressource 310 anfordern, ohne sich spezifischen Einzelheiten über die Ressource 310 bewusst zu sein und/oder diese auf andere Weise zu kennen.
  • 4 zeigt ein Blockdiagramm des beispielhaften Telemetrieobjekts 304 aus 3. Beim in 4 dargestellten Beispiel ist das Telemetrieobjekt 304 durch eine beispielhafte Steuerebene 410, eine beispielhafte Datenebene 420, eine beispielhafte Kompositionsebene 450 und eine beispielhafte Ausgabeebene 460 implementiert. Beispielsweise können die Steuereinrichtung 250 für ausführbare Programme aus 2 und/oder allgemeiner die Telemetrie-Steuereinrichtung 130A-C (1 und 2) das Telemetrieobjekt 304 durch Erzeugen der Steuerebene 410, der Datenebene 420, der Kompositionsebene 450 und der Ausgabeebene 460 erzeugen. Bei solchen Beispielen kann die Steuereinrichtung 250 für ausführbare Programme das eine oder die mehreren ausführbaren Programme 137, 147 aus 1 durch Kompilieren maschinenlesbarer Befehle erzeugen, die, wenn sie ausgeführt werden, die Steuerebene 410, die Datenebene 420, die Kompositionsebene 450 und die Ausgabeebene 460 und/oder allgemeiner das Telemetrieobjekt 304, das in der einen oder den mehreren Kompositionen 146, 156 aus 1 enthalten ist, implementieren.
  • Beim in 4 dargestellten Beispiel weist das Telemetrieobjekt 304 die Steuerebene 410 zum Steuern der Planung der Telemetrieaggregations- und/oder Sammeloperationen auf. Beispielsweise kann die Steuerebene 410 des Telemetrieobjekts 304 interessierende Telemetriedaten ansprechend auf einen oder mehrere beispielhafte Auslöser 412, 414, 416, 418 erhalten. Beispielsweise können die Auslöser 412, 414, 416, 418 den Typ der zu sammelnden Telemetriedaten und/oder den Zeitraum, während dessen die Telemetriedaten zu sammeln sind, steuern. In 4 weisen die Auslöser 412, 414, 416, 418 einen oder mehrere beispielhafte Erzeugungsauslöser 412, Sammelauslöser 414, Verbrauchsauslöser 416 und Kompositionsauslöser 418 auf.
  • Beim in 4 dargestellten Beispiel weist die Steuerebene 410 den einen oder die mehreren Erzeugungsauslöser 412 auf, um das Telemetrieobjekt 304 anzuweisen, Telemetriedaten zu einem Datenverbraucher in der Art einer oder mehrerer der Endpunktvorrichtungen 160, 165, 170, 175, 180, 185 aus 1, eines oder mehrerer der Server 112, 114, 116 aus 1 usw. zu übertragen und/oder auf andere Weise verfügbar zu machen. Der eine oder die mehreren beispielhaften Erzeugungsauslöser 412 können asynchron oder synchron sein. Beispielsweise können der eine oder die mehreren Erzeugungsauslöser 412 einen ersten Erzeugungsauslöser aufweisen, der, wenn er aufgerufen wird, nach dem Aufruf Telemetriedaten übertragen kann. Bei anderen Beispielen können der eine oder die mehreren Erzeugungsauslöser 412 einen zweiten Erzeugungsauslöser aufweisen, der, wenn er aufgerufen wird, Telemetriedaten jede Minute, jede Stunde, jeden Tag usw. übertragen kann. Beispielsweise kann der zweite Erzeugungsauslöser einem Zeitgeber entsprechen. Bei solchen Beispielen kann das Telemetrieobjekt 304 ansprechend auf die Erzeugung eines ersten der Erzeugungsauslöser 412 Telemetriedaten jede Minute zur ersten Endpunktvorrichtung 160 aus 1 übertragen.
  • Beim in 4 dargestellten Beispiel weist die Steuerebene 410 den einen oder die mehreren Sammelauslöser 414 zum Aggregieren und/oder Sammeln von Telemetriedaten auf. Der eine oder die mehreren beispielhaften Sammelauslöser 414 können asynchron oder synchron sein. Beispielsweise können der eine oder die mehreren Sammelauslöser 414 einen ersten Sammelauslöser aufweisen, der, wenn er aufgerufen wird, das TIO 312 auffordern kann, Telemetriedaten von der Ressource 310 aus 3 über das Ressourcenobjekt 302 aus 3 zu erhalten. Bei anderen Beispielen können der eine oder die mehreren Sammelauslöser einen zweiten Sammelauslöser aufweisen, der, wenn er aufgerufen wird, Telemetriedaten jede Minute, jede Stunde, jeden Tag usw. sammeln kann. Beispielsweise kann das Telemetrieobjekt 304 ansprechend auf die Ausführung eines ersten der Sammelauslöser 414 Telemetriedaten jede Minute über das RIO 306 aus 3 von der Ressource 310 erhalten.
  • Beim in 4 dargestellten Beispiel weist die Steuerebene 410 den einen oder die mehreren Verbrauchsauslöser 416 zum Sammeln einer Klasse oder eines Typs von Telemetriedaten auf der Grundlage eines zeitlichen Parameters auf. Bei einigen Beispielen sammeln der eine oder die mehreren Verbrauchsauslöser 416, wenn sie aufgerufen werden, Telemetriedaten ansprechend darauf, dass eine oder mehrere Bedingungen erfüllt werden. Beispielsweise kann das TIO 312 ansprechend auf das Aufrufen eines ersten der Verbrauchsauslöser 416 das RIO 306 auf in einem ersten Speicherregister gespeicherte Daten abfragen, nachdem dem TIO 312 mitgeteilt wurde, dass die Daten im ersten Speicherregister gespeichert wurden. Bei solchen Beispielen kann das TIO 312 die Daten erhalten, nachdem sie von einer anderen Ressource (beispielsweise einer anderen Ressource als der Ressource 310) berechnet worden sind.
  • Beim in 4 dargestellten Beispiel weist die Steuerebene 410 den einen oder die mehreren Kompositionsauslöser 418 zum Sammeln abgeleiteter, berechneter und/oder auf andere Weise bestimmter Telemetriedaten auf. Bei einigen Beispielen erhält das Telemetrieobjekt 304 gemessene Telemetriedaten, die Daten (beispielsweise Roh- oder unverarbeitete Daten) repräsentieren, die von einem Hardwarezähler, einem Softwarezähler, einem Speicherregister usw. erhalten (beispielsweise direkt erhalten) wurden. Bei einigen Beispielen erhält das Telemetrieobjekt 304 berechnete oder bestimmte Telemetriedaten, die Daten repräsentieren, die auf der Grundlage der gemessenen Telemetriedaten berechnet wurden. Beispielsweise können die bestimmten Telemetriedaten durch Ausführen eines Algorithmus an von einem Hardwarezähler erhaltenen ersten Daten erzeugt werden, um zweite Daten zu erzeugen, wobei die zweiten Daten auf der Grundlage der ersten Daten bestimmt werden. Beispielsweise können die gemessenen Telemetriedaten Rohzählwerte sein und können die bestimmten Telemetriedaten ein Durchschnitt oder ein gleitender Durchschnitt dieser Zählwerte sein. Bei solchen Beispielen sind die bestimmten Telemetriedaten von der Ressource 310 aus 3 nicht direkt beobachtbar und/oder messbar. Dementsprechend können der eine oder die mehreren beispielhaften Kompositionsauslöser 418, wenn sie aufgerufen werden, das Telemetrieobjekt 304 anweisen, die berechneten oder bestimmten interessierenden Telemetriedaten zu erhalten.
  • Beim in 4 dargestellten Beispiel weist das Telemetrieobjekt 304 die Datenebene 420 zum Steuern und/oder anderweitigen Erleichtern des Speicherns von Telemetriedaten für den Zugriff durch einen Datenverbraucher auf. Beim Beispiel aus 4 weist die Datenebene 420 beispielhafte Codes 430 auf, die Kennungen von Leistungsmetriken entsprechen. Beim Beispiel aus 4 weist die Datenebene 420 beispielhafte Leistungsmetrikdaten (METRIKDATEN) 440 auf, die Werten der Leistungsmetriken entsprechen. Beispielsweise können die Codes 430 jede Leistungsmetrik durch einen spezifischen Code, eine spezifische Kennung usw. identifizieren, und können die Leistungsmetrikdaten 440 die Leistungsmetrikdaten, Werte der Leistungsmetrik usw. aufweisen. Bei solchen Beispielen können die Codes 430 einen ersten Code aufweisen, der eine erste Leistungsmetrik für die Ressource 310 aus 3 identifiziert, und können die Leistungsmetrikdaten 440 einen Wert für die erste Leistungsmetrik aufweisen, wobei die erste Leistungsmetrik durch den ersten Code identifiziert wird. Bei anderen Beispielen können die Leistungsmetrikdaten 440 Register- oder Speicherstellen zum Speichern der Werte der entsprechenden Leistungsmetriken sein. Beispielsweise können die Leistungsmetrikdaten 440 Zeiger (beispielsweise Datenzeiger, Leistungsmetrikzeiger usw.), Datenstellen (beispielsweise Leistungsmetrikstellen, Leistungsmetrikdaten-Stellen usw.) usw. aufweisen.
  • Beim in 4 dargestellten Beispiel weisen die Codes 430 beispielhafte Roh-Leistungsmetrikcodes (ROHMETRIKCODES) 432 und beispielhafte bestimmte Leistungsmetrikcodes (BESTIMMTE METRIKCODES) 434 auf. Beim Beispiel aus 4 weisen die Roh-Leistungsmetrikcodes 432 einen oder mehrere Codes, Kennungen, Werte usw. auf, die Leistungsmetriken repräsentieren, die von einem Hardwarezähler, einem Softwarezähler, einer Speicherstelle, einer Registerstelle usw., die der Ressource 310 aus 3 zugeordnet ist, gemessen, abgerufen und/oder auf andere Weise erhalten werden. Beim Beispiel aus 4 weisen die bestimmten Leistungsmetrikcodes 434 einen oder mehrere Codes, Kennungen, Werte usw. auf, die Leistungsmetriken repräsentieren, welche auf der Grundlage einer oder mehrerer der gemessenen Leistungsmetriken festgelegt sind.
  • Beim in 4 dargestellten Beispiel weisen die Leistungsmetrikdaten 440 beispielhafte Roh-Leistungsmetrikdaten (ROHMETRIKDATEN) 442 und bestimmte Leistungsmetrikdaten (BESTIMMTE METRIKDATEN) 444 auf. Beispielsweise können die Roh-Leistungsmetrikdaten 442, die bestimmten Leistungsmetrikdaten 444 und/oder allgemeiner die Leistungsmetrikdaten 440 den ersten, zweiten und/oder dritten Telemetriedaten 136A-C aus 1 und/oder Teilen davon entsprechen.
  • Beim in 4 dargestellten Beispiel weisen die Roh-Leistungsmetrikdaten 442 Daten oder Werte einer oder mehrerer Leistungsmetriken auf, die von einem Hardwarezähler, einem Softwarezähler, einer Speicherstelle, einer Registerstelle usw., die der Ressource 310 aus 3 zugeordnet ist, gemessen, abgerufen und/oder auf andere Weise erhalten wurden. Beispielsweise können die ersten Daten oder die Speicherstelle in den Roh-Leistungsmetrikdaten 442 einem ersten Code der Pro-Leistungsmetrikcodes 432 entsprechen und/oder auf andere Weise dadurch identifiziert werden. Bei solchen Beispielen können zweite Daten oder eine zweite Speicherstelle in den bestimmten Leistungsmetrikdaten 444 einem zweiten Code der bestimmten Leistungsmetrikcodes 434 entsprechen und/oder auf andere Weise dadurch identifiziert werden.
  • Beim in 4 dargestellten Beispiel weisen die bestimmten Leistungsmetrikdaten 444 Daten oder Werte von Leistungsmetriken auf, die auf der Grundlage eines oder mehrerer gemessener Leistungsmetrikwerte, die in den Roh-Leistungsmetrikdaten 442 enthalten sind, bestimmt wurden. Beim beispielhaften Betrieb kann die Datenebene 420 eine oder mehrere interessierende Leistungsmetriken identifizieren, um auf der Grundlage im TIO 312 aus 3 enthaltener Informationen zu erhalten und/oder zu bestimmen. Bei solchen Beispielen kann die Datenebene 420 die Roh-Leistungsmetrikcodes 432 und/oder die bestimmten Leistungsmetrikcodes 434 auf der Grundlage einer Definition, eines online oder öffentlich verfügbaren Telemetriewörterbuchs, eines Produktentwurfsdokuments, einer Spezifikation (beispielsweise einer formalen Spezifikation), einer Anforderung usw., die verwendet werden, um das Telemetrieobjekt 304 zu erzeugen und/oder auf andere Weise zu instanziieren, erzeugen.
  • Beim in 4 dargestellten Beispiel weist das Telemetrieobjekt 304 die Kompositionsebene 450 zum Erzeugen, Berechnen und/oder anderweitigen Bestimmen der bestimmten Leistungsmetrikdaten 444 zum Zugriff durch einen Datenverbraucher auf. In 4 weist die Kompositionsebene 450 beispielhafte Formeln 452, beispielhafte Prädikate 454, beispielhafte Filter 456 und eine beispielhafte Importsteuereinrichtung 458 auf.
  • Beim in 4 dargestellten Beispiel weisen die Formeln 452 Algorithmen, Formeln, mathematische Operationen usw. auf, entsprechen diesen und/oder repräsentieren diese auf andere Weise, die ausgeführt, durchgeführt und/oder auf andere Weise auf die Roh-Leistungsmetrikdaten 442 angewendet werden können. Beim Beispiel aus 4 weisen die Prädikate 454 konditionelle Operationen auf, entsprechen diesen und/oder repräsentieren diese auf andere Weise, welche vor und/oder nach dem Aufrufen der Formeln 452 an den Roh-Leistungsmetrikdaten 442 ausgeführt werden können. Beispielsweise können die Prädikate 454 eine Bedingung in der Art einer Sättigungsoperation, einer Schwellenwertbildungsoperation, einer Ereignisbedingung usw. aufweisen, die, wenn sie erfüllt oder befriedigt wird, die Formeln 452 aufruft. Bei solchen Beispielen kann ansprechend darauf, dass eine erste Bedingung der Prädikate 454 erfüllt wird, ein erster Wert der Roh-Leistungsmetrikdaten 442 in einen ersten Algorithmus der Formeln 452 eingegeben werden, um einen Wert der bestimmten Leistungsmetrikdaten 444 zu erzeugen.
  • Beim in 4 dargestellten Beispiel weisen die Filter 456 ein oder mehrere Filter auf, entsprechen diesen und/oder repräsentieren diese auf andere Weise, die verwendet werden können, um zu bestimmen, wann neue Leistungsmetrikwerte in den bestimmten Leistungsmetrikdaten 444 zu speichern sind. Beispielsweise kann ein erster der Filter 456 einen neuen vorgegebenen Leistungsmetrikwert vom Speichern ausschließen und/oder das Speichern auf andere Weise verhindern, weil der neue Wert unterhalb einer Filterschwelle, oberhalb einer Filterschwelle, nicht gleich einer Filterschwelle usw. ist. Bei solchen Beispielen können die Filter 456 zusätzliche bedingte Operationen repräsentieren, die, wenn sie aufgerufen werden, das Speichern unwesentlicher oder redundanter Leistungsmetrikdaten und/oder das Übertragen von ihnen zu einem Datenverbraucher verringern und/oder dies auf andere Weise verhindern können.
  • Beim in 4 dargestellten Beispiel weist die Kompositionsebene 450 die Importsteuereinrichtung 458 zum Zugreifen auf Leistungsmetrikdaten von einem anderen Telemetrieobjekt 304 auf. Bei einigen Beispielen kann die Importsteuereinrichtung 458 des Telemetrieobjekts 304 eine Anforderung an eine andere TIO-Schnittstelle 314 eines anderen Telemetrieobjekts 304 entsprechend einer anderen der Ressourcen 310 übertragen, um auf interessierende Leistungsmetrikdaten zuzugreifen. Bei solchen Beispielen kann die Importsteuereinrichtung 458 die Leistungsmetrikdaten, auf die zugegriffen wurde, zu wenigstens einer der Formeln 452, der Prädikate 454 oder der Filter 456 übertragen, um die bestimmten Leistungsmetrikdaten 444 zu erzeugen. Bei einigen Beispielen kann die Importsteuereinrichtung 458 des der Ressource 310 entsprechenden Telemetrieobjekts 304 eine Anforderung zu einer anderen TIO-Schnittstelle 314 eines anderen Telemetrieobjekts 304, das derselben Ressource 310 entspricht, übertragen, um auf andere interessierende Leistungsmetrikdaten zuzugreifen.
  • Beim in 4 dargestellten Beispiel weist das Telemetrieobjekt 304 die Ausgabeebene 460 zum Aggregieren, Kompilieren und/oder anderweitigen Präparieren von Telemetriedaten in der Art der Leistungsmetrikdaten 440 zum Zugriff durch einen Datenverbraucher oder zum Abruf durch diesen auf. Bei einigen Beispielen überträgt die Ausgabeebene 460 einen oder mehrere Teile der Leistungsmetrikdaten 440 zu einem Datenverbraucher. Bei einigen Beispielen kann es die Ausgabeebene 460 einem Datenverbraucher ermöglichen, den einen oder die mehreren Teile der Leistungsmetrikdaten 440 durch Aufrufen einer API, durch Zugreifen auf einen Webserver usw., die oder der von der Ausgabeebene 460 instanziiert und/oder auf andere Weise behandelt wird, abzurufen. In 4 weist die Ausgabeebene 460 beispielhafte TIO-Ereignisse 462 und beispielhafte Datenverbraucherdaten 464 auf.
  • Beim in 4 dargestellten Beispiel weisen die TIO-Ereignisse 462 Alarme, Angaben usw. auf, entsprechen diesen und/oder repräsentieren diese auf andere Weise, die von einem Datenverbraucher oder vom Telemetrieobjekt 304 erzeugt werden und angeben, dass die Datenverbraucherdaten 464 für den Zugriff bereit oder verfügbar sind. Bei einigen Beispielen kann ansprechend auf die Erzeugung eines ersten der TIO-Ereignisse 462 eine Datennachricht (beispielsweise eine HTTP-Nachricht, eine V2X-Nachricht usw.) zu einem Datenverbraucher übertragen werden, um den Datenverbraucher darauf hinzuweisen, dass die von ihm angeforderten Datenverbraucherdaten 464 für den Zugriff, den Abruf usw. bereit sind. Bei einigen Beispielen kann der Datenverbraucher eine Anforderung der Datenverbraucherdaten 464 übertragen. Bei solchen Beispielen kann die Ausgabeebene 460 ein zweites der TIO-Ereignisse 462 auf der Grundlage der Anforderung erzeugen. Ansprechend darauf, dass das zweite der TIO-Ereignisse 462 erzeugt wird, kann das beispielhafte Telemetrieobjekt 304 vom Datenverbraucher zur Speicherung in den Datenverbraucherdaten 464 angeforderte Telemetriedaten erzeugen. Beim Beispiel aus 4 weisen die Datenverbraucherdaten 464 vom Ressourcenmodell 300 aus 3 erzeugte Telemetriedaten auf, entsprechen diesen und/oder repräsentieren diese auf andere Weise, welche zu einem Datenverbraucher übertragen werden können und/oder worauf er auf andere Weise zugreifen kann. Die beispielhaften Datenverbraucherdaten 464 können einen oder mehrere Teile der Roh-Leistungsmetrikdaten 442, der bestimmten Leistungsmetrikdaten 444 und/oder allgemeiner der Leistungsmetrikdaten 440 aufweisen.
  • Bei einigen Beispielen kann zumindest eine von der Steuerebene 410, der Datenebene 420, der Kompositionsebene 450 oder der Ausgabeebene 460 Cache- oder Speicherlogik der einen oder der mehreren Ressourcen 149, 159 und/oder allgemeiner der Edge-Dienste 140, 150 implementieren und/oder diesen auf andere Weise entsprechen, die, wenn sie ausgeführt werden, die Sammlung und Übertragung von Telemetriedaten erleichtern können. Beispielsweise kann wenigstens eine von der Steuerebene 410, der Datenebene 420, der Kompositionsebene 450 oder der Ausgabeebene 460 in einer Schaltung mit Cache oder Speicher sein (beispielsweise Cache oder Speicher, der in der einen oder den mehreren Ressourcen 149, 159, dem einen oder den mehreren Edge-Diensten 140, 150 usw. enthalten ist). Beispielsweise kann das Telemetrieobjekt 304 eine neue Schnittstelle (beispielsweise die TIO-Schnittstelle 314) einem Softwarestapel der Ressource 310 eine neue Schnittstelle exponieren oder instanziieren, die verwendet werden kann, um das TIO 312 zu benachrichtigen, dass eine Leistungsmetrik durch eine bestimmte Prozessadressraumkennung (PASID) repräsentiert wird. Die neue PASID kann von der Cache-Logik verfolgt werden. Beispielsweise kann die Ressource 310 die TIO-Schnittstelle 314 auffordern, festzustellen, wie lange die Daten in Zusammenhang mit der Leistungsmetrik im Cache gespeichert werden müssen. Bei solchen Beispielen können nach Verstreichen einer von der TIO-Schnittstelle 314 spezifizierten Zeit alle Daten, die sich auf die Leistungsmetrik beziehen, aus dem Cache ausgeschlossen oder entfernt werden. Vorteilhafterweise kann der Softwarestapel die TIO-Schnittstelle 314 aufrufen, (1) zu entdecken und herauszufinden, wie viele Objekte (beispielsweise TIO 312 und/oder allgemeiner das Telemetrieobjekt 304) im Cache gespeichert wurden, wobei jedes der Objekte durch eine eindeutige PASID repräsentiert werden kann, und/oder (2) auf ein interessierendes Objekt durch Bereitstellen der PASID und einer Kennung des Objekts zuzugreifen.
  • Beim beispielhaften Betrieb können die ersten Telemetriedaten 136A aus 1 einen ersten Teil (beispielsweise einen ersten Telemetriedatenteil, einen ersten Teil der ersten Telemetriedaten 136A usw.), der eine erste Leistungsmetrik aufweist, einen zweiten Teil, der eine zweite Leistungsmetrik aufweist, und einen dritten Teil, der eine dritte Leistungsmetrik aufweist, aufweisen. Die beispielhafte Datenebene 420 und/oder allgemeiner das Telemetrieobjekt 304 können einen Erste-Leistungsmetrik-Code auf der Grundlage der ersten Leistungsmetrik, einen Zweite-Leistungsmetrik-Code auf der Grundlage der zweiten Leistungsmetrik und einen Dritte-Leistungsmetrik-Code auf der Grundlage der dritten Leistungsmetrik bestimmen. Der Erste-Leistungsmetrik-Code und der Zweite-Leistungsmetrik-Code können in den Roh-Leistungsmetrikcodes 432 gespeichert werden, und der Dritte-Leistungsmetrik-Code kann in den bestimmten Leistungsmetrikcodes 434 gespeichert werden.
  • Beim beispielhaften Betrieb kann die Datenebene 420 ansprechend auf den Aufruf eines Auslösers (beispielsweise eines von dem einen oder den mehreren Erzeugungsauslösern 412, eines von dem einen oder den mehreren Sammelauslösern 414, eines von dem einen oder den mehreren Verbrauchsauslösern 416, eines von dem einen oder den mehreren Kompositionsauslösern 418 usw.), der angibt, dass die erste Leistungsmetrik und die zweite Leistungsmetrik erzeugt werden (beispielsweise in den Roh-Leistungsmetrikdaten 442 gespeichert werden), (1) den Erste-Leistungsmetrik-Code auf eine erste Speicherstelle in den Roh-Leistungsmetrikdaten 442 abbilden, welche die erste Leistungsmetrik speichert, und (2) den Zweite-Leistungsmetrik-Code auf die zweite Speicherstelle in den Roh-Leistungsmetrikdaten 442 abbilden, welche die zweite Leistungsmetrik speichert. Beim beispielhaften Betrieb kann die Datenebene 420 die dritte Leistungsmetrik auf der Grundlage der ersten Leistungsmetrik und der zweiten Leistungsmetrik bestimmen. Beim beispielhaften Betrieb kann die Datenebene 420 ansprechend auf die Abbildung des Dritte-Leistungsmetrik-Codes auf eine dritte Speicherstelle, die sich in den vorgegebenen Leistungsmetrikdaten 444 befindet, die dritte Leistungsmetrik an der dritten Speicherstelle speichern. Beim beispielhaften Betrieb kann die Ausgabeebene 460 eines der TIO-Ereignisse 462 erzeugen, die angeben, dass die dritte Leistungsmetrik bestimmt wurde. Beim beispielhaften Betrieb kann die Ausgabeebene 460 die dritte Leistungsmetrik von der dritten Speicherstelle erhalten und die dritte Leistungsmetrik als Datenverbraucherdaten 464 identifizieren und/oder die dritte Leistungsmetrik als Datenverbraucherdaten 464 speichern.
  • 5A zeigt eine andere beispielhafte Implementation des Ressourcenmodells 300 aus 3. In 5A weist ein beispielhaftes Ressourcenmodell 500 ein beispielhaftes Ressourcen-Objekt/System 510, das einer Objekt-/Systemschnittstelle (I/F) und einer Implementation (IMPL) der Ressource 310 aus 3 entspricht, die eine oder die mehreren Ressourcen 149, 159 aus 1 usw. und ein beispielhaftes TelemetrieObjekt/System 520, das einer Telemetrieschnittstelle und einer Implementation einer Schnittstelle der Ressource 310 entspricht, die eine oder die mehreren Ressourcen 149, 159 usw. auf. In 5 kann das Ressourcen-Objekt/System 510 einem Objekt in der Art des Ressourcenobjekts 302 aus 3 oder einem System von Objekten, welches das Ressourcenobjekt 302 aufweist, entsprechen. In 5A kann der Objekt-/Systemimplementationsabschnitt des Ressourcen-Objekts/Systems 510 dem RIO 306 aus 3 entsprechen und kann der Objekt-/Systemschnittstellenabschnitt des RessourcenObjekts/Systems 510 der RIO-Schnittstelle 308 aus 5A entsprechen.
  • Beim in 5A dargestellten Beispiel kann das TelemetrieObjekt/System 520 einem Objekt in der Art des TIOs 312 aus 3 oder einem System von Objekten, welches das TIO 312 aufweist, entsprechen. In 5A kann der Telemetrieimplementationsabschnitt des Telemetrie-Objekts/Systems 520 dem TIO 312 aus 3 entsprechen und kann der Telemetrieschnittstellenabschnitt des Telemetrie-Objekts/Systems 520 der TIO-Schnittstelle 314 aus 3 entsprechen.
  • Beim in 5A dargestellten Beispiel ist die Beziehung zwischen dem Ressourcen-Objekt/System 510 und dem Telemetrie-Objekt/System 520 nicht als gleich und/oder auf andere Weise nicht streng als eins-zu-eins dargestellt. Beispielsweise kann das Ressourcen-Objekt/System 510 einer Virtualisierung von zwei oder mehr Leistungsmetriken und entsprechenden Schnittstellen zum Erhalten und/oder anderweitigen Anfordern der Erzeugung von zwei oder mehr Leistungsmetriken entsprechen. Bei solchen Beispielen kann das Telemetrie-Objekt/System 520 einer Virtualisierung einer Schnittstelle zum Erhalten der zwei oder mehr Leistungsmetriken vom Ressourcen-Objekt/System 510 entsprechen. Alternativ kann, wie beim in 5B dargestellten Beispiel gezeigt ist, eine erste beispielhafte Beziehung 530 zwischen dem Ressourcen-Objekt/System 510 und dem TelemetrieObjekt/System 520 eine Eins-zu-eins-Beziehung sein. Beispielsweise kann das RessourcenObjekt/System 510 eine Leistungsmetrik repräsentieren und kann das TelemetrieObjekt/System 520 eine Schnittstelle zum Erhalten der einen Leistungsmetrik repräsentieren.
  • Bei einigen Beispielen kann das Ressourcenmodell 500 aus 5A ein computerlesbares Modell eines komplexen Objekts oder eines Objekts, das mehrere Funktionen oder mehrere Leistungsmetriken aufweist, in der Art einer CPU, wobei für die CPU viele verschiedene Leistungsmetriken verfügbar sein können, sein und/oder dieses auf andere Weise repräsentieren. Vorteilhafterweise kann das Ressourcen-Objekt/System 510 die verschiedenen für die CPU verfügbaren Leistungsmetriken repräsentieren, während das Telemetrie-Objekt/System 520 eine Schnittstelle zum Erhalten der verschiedenen Leistungsmetriken repräsentieren kann. Beispielsweise kann es vorteilhaft sein, die verschiedene Leistungsmetriken in mehrere verschiedene Gruppen oder mehrere verschiedene TIOs und entsprechende TIO-Schnittstellen zu gruppieren, wie in einer beim Beispiel aus 5C dargestellten zweiten beispielhaften Beziehung 540 gezeigt ist. In 5C kann ein einzelnes Objekt (beispielsweise eines vom Ressourcen-Objekt/System 510) in der Art einer CPU eine RIO 306 aufweisen, die mehrere Leistungsmetriken definiert, wobei jede der Leistungsmetriken ein anderes TIO und eine entsprechende TIO-Schnittstelle aufweisen kann (beispielsweise mehrere vom Telemetrie-Objekt/System 520).
  • Bei einigen Beispielen kann eine einzige Ressource in der Art einer Mehrkern-CPU eine bestimmte TIO-Gruppe aufweisen (beispielsweise eine Gruppe, welche die verfügbare PCI-e-Bandbreite der Mehrkern-CPU beschreibt), die auf alle Kerne der Mehrkern-CPU, wenn sie gemeinsam betrachtet werden, angewendet werden kann. Eine beim in 5D dargestellten Beispiel gezeigte dritte beispielhafte Beziehung 550 kann solchen Beispielen entsprechen. Beispielsweise kann in 5D eine erste Leistungsmetrik in Zusammenhang mit einem ersten Kern der Mehrkern-CPU einem ersten 510A vom Ressourcen-Objekt/System 510 entsprechen und kann eine zweite Leistungsmetrik in Zusammenhang mit einem zweiten Kern der Mehrkern-CPU einem zweiten 510B vom Ressourcen-Objekt/System 510 entsprechen. Beim Beispiel aus 5D kann das Telemetrie-Objekt/System 520 ein TIO-Objekt repräsentieren und einer Schnittstelle zum Erhalten der ersten und der zweiten Leistungsmetrik und zum Bestimmen einer dritten Leistungsmetrik auf der Grundlage der ersten und der zweiten Leistungsmetrik entsprechen. Bei einigen Beispielen kann, wie durch die vierte beispielhafte Beziehung 560 beim in 5E dargestellten Beispiel gezeigt ist, eine Leistungsmetrik eine Beziehung mit einem oder mehreren Telemetrieobjekten und entsprechenden Schnittstellen aufweisen.
  • Die 6A - 6C sind schematische Darstellungen beispielhafter Ressourcenkompositionen 600, 610, 620, einschließlich einer ersten beispielhaften Ressourcenkomposition 600, einer zweiten beispielhaften Ressourcenkomposition 610 und einer dritten beispielhaften Ressourcenkomposition 620. Beispielsweise können der Kompositionserzeuger 238 und/oder allgemeiner die Kompositionssteuereinrichtung 230 aus 2 wenigstens eine von der ersten Ressourcenkomposition 600, der zweiten Ressourcenkomposition 610 oder der dritten Ressourcenkomposition 620 erzeugen. Bei solchen Beispielen kann der Kompositionserzeuger 238 die Ressourcenkompositionen 600, 610, 620 durch Verknüpfen und/oder anderweitiges Zuweisen von Ressourcen-Objekten/Systemen auf der Grundlage von Abhängigkeiten (beispielsweise inneren Abhängigkeiten) miteinander erzeugen. In den 6A - 6C können die Ressourcenkompositionen 600, 610, 620 Telemetriemodelle sein, die, wenn sie ausgeführt werden, Telemetriedaten auf der Grundlage einer oder mehrerer zugrunde liegender Ressourcen, die eine oder mehrere Rechenaufgaben ausführen, erzeugen können.
  • Beim in 6A dargestellten Beispiel weisen die Ressourcenkompositionen 600, 610, 620 eine Mischung azyklischer und zyklischer Teilgraphen auf. In 6A weist die erste Ressourcenkomposition 600 erste beispielhafte RessourcenObjekte/Systeme 510P, 510Q, 510R, 510S auf, die Implementationen des RessourcenObjekts/Systems 510 aus 5A entsprechen. In 6A weist die zweite Ressourcenkomposition 610 zweite beispielhafte Ressourcen-Objekte/Systeme 510T, 510U auf, die Implementationen des Ressourcen-Objekts/Systems 510 aus 5A entsprechen.
  • Beim in 6A dargestellten Beispiel weisen die ersten RessourcenObjekte/Systeme 510P, 510Q, 510R, 510S ein erstes beispielhaftes RessourcenObjekt/System 510P, das ein Ressourcenobjekt oder ein System von Ressourcenobjekten repräsentiert, auf. Beispielsweise kann der Kompositionserzeuger 238 feststellen, dass das erste Ressourcen-Objekt/System 510P nicht von einem anderen Ressourcen-Objekt/System abhängt. In 6A weist das erste Ressourcen-Objekt/System 510P zwei untergeordnete Ressourcen-Objekte/Systeme auf, die ein zweites beispielhaftes Ressourcen-Objekt/System 510Q und ein drittes beispielhaftes Ressourcen-Objekt/System 510R aufweisen. In 6A weist die erste Ressourcenkomposition 600 ein viertes beispielhaftes RessourcenObjekt/System 510S auf, das dem zweiten Ressourcen-Objekt/System 510Q untergeordnet ist.
  • Beim in 6A dargestellten Beispiel kann der Kompositionserzeuger 238 die erste Ressourcenkomposition 600 durch Verknüpfen und/oder anderweitiges Zuweisen von Ressourcen-Objekten/Systemen zu einem oder mehreren verschiedenen der Ressourcen-Objekte/Systeme auf der Grundlage der Abhängigkeiten miteinander erzeugen. Beispielsweise kann der Kompositionserzeuger 238 das zweite Ressourcen-Objekt/System 510Q und das dritte Ressourcen-Objekt/System 510R auf der Grundlage der Abhängigkeiten der zweiten und dritten Ressourcen-Objekte/Systeme 510Q, 510R vom ersten Objekt/System 510P mit dem ersten Ressourcen-Objekt/System 510P verknüpfen und/oder diesem auf andere Weise zuweisen.
  • Hier bezieht sich ein untergeordnetes Ressourcen-Objekt/System (beispielsweise ein untergeordnetes Ressourcenobjekt, ein untergeordnetes Ressourcensystem usw.) auf ein Ressourcenobjekt und/oder -system, das unter der Steuerung, Anleitung oder engen Kopplung mit einem anderen Ressourcenobjekt und/oder -system, dem es untergeordnet ist, arbeitet. Beispielsweise hängt für Anforderer oder Subskribenten eines Dienstes vom ersten Ressourcen-Objekt/System 510P die Gesamtleistung der ersten Ressourcenkomposition 600 von verschiedenen Leistungsgraden von Unterkomponenten (beispielsweise der zweiten bis vierten Ressourcen-Objekte/Systeme 510Q, 510R, 510S) des ersten Ressourcen-Objekts/Systems 510P ab.
  • Beim in 6A dargestellten Beispiel weisen die zweiten Ressourcen-Objekte/Systeme 510T, 510U der zweiten Ressourcenkomposition 610 ein fünftes beispielhaftes Ressourcen-Objekt/System 510T auf, das einem sechsten beispielhaften Ressourcen-Objekt/System 510U untergeordnet ist. Beispielsweise kann der Kompositionserzeuger 238 das fünfte Ressourcen-Objekt/System 510T mit dem sechsten RessourcenObjekt/System 510U ansprechend auf die Feststellung, dass das fünfte RessourcenObjekt/System 510T vom sechsten Ressourcen-Objekt/System 510U abhängt, verknüpfen und/oder diesem auf andere Weise zuweisen.
  • Beim in 6A dargestellten Beispiel ist die erste Ressourcenkomposition 600 mit der zweiten Ressourcenkomposition 610 gekoppelt. Beispielsweise kann das dritte Ressourcen-Objekt/System 510R der ersten Ressourcenkomposition 600 mit dem fünften Ressourcen-Objekt/System 510T der zweiten Ressourcenkomposition 610 Peer-to-Peer-gekoppelt sein. Bei solchen Beispielen bewirkt die Peer-to-Peer-Kopplung des dritten Ressourcen-Objekts/Systems 510R und des fünften Ressourcen-Objekts/Systems 510T, dass zusammengesetzte Ressourcen-Objekte/Systeme (beispielsweise ein Ressourcenobjekt, ein - system usw. der Ressourcenkompositionen 600, 610), die dem ersten RessourcenObjekt/System 510P und dem sechsten Ressourcen-Objekt/System 510U untergeordnet sind, Peer-to-Peer-gekoppelt werden, wie beim Beispiel aus 6B dargestellt ist.
  • Beim in 6B dargestellten Beispiel sind die inneren Beziehungen jedes zusammengesetzten Ressourcen-Objekts/Systems (wie in 6A dargestellt) nicht gezeigt und kann sich ein Anforderer oder Subskribent eines Dienstes der ersten und der zweiten Ressourcenkomposition 600, 610 nur auf die Funktionsweise der jeweiligen Ressourcenkompositionen 600, 610 statt auf die Funktionsweise der zugrunde liegenden zusammengesetzten Ressourcen-Objekte/Systeme verlassen.
  • Beispielsweise können die 6A und/oder 6B ein computerlesbares Modell eines Inter-Socket-Links oder einer Ultra-Path-Zwischenverbindung (UPI) in einer Mehr-Socket-CPU repräsentieren. Bei solchen Beispielen kann die erste Ressourcenkomposition 600 ein computerlesbares Modell eines ersten Kerns einer Mehrkern-CPU sein und/oder diesen auf andere Weise repräsentieren und kann die zweite Ressourcenkomposition 610 ein computerlesbares Modell eines zweiten Kerns der Mehrkern-CPU sein und/oder diesen auf andere Weise repräsentieren. Das dritte Ressourcen-Objekt/System 510R kann einem ersten Socket des ersten Kerns entsprechen, und das sechste RessourcenObjekt/System 510T kann einem zweiten Socket des zweiten Kerns entsprechen. Bei solchen Beispielen kann die Peer-to-Peer-Kopplung zwischen dem dritten Ressourcen-Objekt/System 510R und dem sechsten Ressourcen-Objekt/System 510T dem UPI-Link zwischen dem ersten und dem zweiten Socket der Mehrkern-CPU entsprechen. Vorteilhafterweise kann ein anfordernder oder subskribierender Dienst Telemetriedaten von den verschiedenen Kernen der Mehrkern-CPU durch Abfragen einer oder beider Ressourcenkompositionen 600, 610 statt durch Abfragen eines zugrunde liegenden Ressourcen-Objekts/Systems erhalten.
  • 6C ist eine beispielhafte schematische Darstellung der dritten Ressourcenkomposition 620, welche die erste Ressourcenkomposition 600 und die zweite Ressourcenkomposition 610 aufweist. Die dritte beispielhafte Ressourcenkomposition 620 ist eine vereinfachte Darstellung der zugrunde liegenden Ressourcenkompositionen 600, 610. Beispielsweise wird die zugrunde liegende Kombination azyklischer und zyklischer Teilgraphen der ersten Ressourcenkomposition 600 und der zweiten Ressourcenkomposition 620 durch eine erste Ressourcenkomposition „PQRS“, die der ersten Ressourcenkomposition 600 entspricht, und eine zweite Ressourcenkomposition „TU“, die der zweiten Ressourcenkomposition 610 entspricht, ersetzt, wobei die erste Ressourcenkomposition und die zweite Ressourcenkomposition Peer-to-Peer-gekoppelt sind. Vorteilhafterweise kann ein Anforderer oder Subskribent des Dienstes Telemetriedaten auf der beispielhaften Kompositionsschicht 322 aus 3 statt auf der Atomare-Ressourcen-Schicht 324 aus 3 durch Anfordern von Telemetriedaten von der dritten Ressourcenkomposition 620 statt vom einen oder von den mehreren zugrunde liegenden Ressourcenobjekten und/oder -systemen erhalten.
  • Die 7A - 7C sind schematische Darstellungen beispielhafter Telemetriekompositionen 700, 710, 720, die eine erste beispielhafte Telemetriekomposition 700, eine zweite beispielhafte Telemetriekomposition 710 und eine dritte beispielhafte Telemetriekomposition 720 aufweisen. Beispielsweise können der Kompositionserzeuger 238 und/oder allgemeiner die Kompositionssteuereinrichtung 230 aus 2 wenigstens eine von der ersten Telemetriekomposition 700, der zweiten Telemetriekomposition 710 oder der dritten Telemetriekomposition 720 erzeugen. Bei solchen Beispielen kann der Kompositionserzeuger 238 die Telemetriekompositionen 700, 710, 720 durch Verknüpfen und/oder anderweitiges Zuweisen von Telemetrie-Objekten/Systemen auf der Grundlage von Abhängigkeiten (beispielsweise inneren Abhängigkeiten) miteinander erzeugen.
  • Beim in 7A dargestellten Beispiel weisen die Telemetriekompositionen 700, 710, 720 eine Mischung azyklischer und zyklischer Teilgraphen auf. In 7A weist die erste Telemetriekomposition 700 erste beispielhafte TelemetrieObjekte/Systeme 520P, 520Q, 520R, 520S auf, die Implementationen des TelemetrieObjekts/Systems 520 aus 5A entsprechen. In 7A weist die zweite Telemetriekomposition 610 zweite beispielhafte Telemetrie-Objekte/Systeme 520T, 520U auf, die Implementationen des Telemetrie-Objekts/Systems 520 aus 5A entsprechen.
  • Beim in 7A dargestellten Beispiel werden die Telemetriekompositionen 700, 710, 720 auf der Grundlage der Ressourcenkompositionen 600, 610, 620 aus den 6A - 6C zusammengesetzt. Beispielsweise können die Telemetriekompositionen 700, 710, 720 ansprechend auf eine Änderung der Ressourcenkompositionen 600, 610, 620 angepasst, geändert usw. werden. Bei solchen Beispielen kann der Kompositionserzeuger 238 ansprechend darauf, dass eine oder mehrere der Ressourcen 149, 159 aus 1 offline gehen oder online kommen, eine oder mehrere Aktualisierungen der Ressourcenkompositionen 600, 610, 620 erzeugen. Vorteilhafterweise kann der beispielhafte Kompositionserzeuger 238 eine oder mehrere Aktualisierungen der Telemetriekompositionen 700, 710, 720 erzeugen, um Telemetrieaggregationsoperationen in Zusammenhang mit einer oder mehreren Änderungen in der einen oder den mehreren Ressourcen 149, 159 hochzuskalieren oder herunterzuskalieren.
  • Beim in 7A dargestellten Beispiel weisen die ersten TelemetrieObjekte/Systeme 520P, 520Q, 520R, 520S ein erstes beispielhaftes TelemetrieObjekt/System 520P, das ein Telemetrieobjekt oder ein System von Telemetrieobjekten repräsentiert, auf. Beispielsweise kann der Kompositionserzeuger 238 auf der Grundlage davon, dass das erste Ressourcen-Objekt/System 510P nicht von einem anderen RessourcenObjekt/System abhängt, wie in den 6A - 6B dargestellt, feststellen, dass das erste Telemetrie-Objekt/System 520P nicht von einem anderen Telemetrie-Objekt/System abhängt. In 7A weist das erste Telemetrie-Objekt/System 520P zwei untergeordnete TelemetrieObjekte/Systeme auf, die ein zweites beispielhaftes Telemetrie-Objekt/System 520Q und ein drittes beispielhaftes Telemetrie-Objekt/System 520R aufweisen. In 7A weist die erste Telemetriekomposition 700 ein viertes beispielhaftes Telemetrie-Objekt/System 520S auf, das dem zweiten Telemetrie-Objekt/System 520Q untergeordnet ist.
  • Beim in 7A dargestellten Beispiel kann der Kompositionserzeuger 238 die erste Telemetriekomposition 700 durch Verknüpfen und/oder anderweitiges Zuweisen von Telemetrie-Objekten/Systemen zu einem oder mehreren verschiedenen der Telemetrie-Objekte/Systeme auf der Grundlage der Abhängigkeiten miteinander erzeugen. Beispielsweise kann der Kompositionserzeuger 238 das zweite Telemetrie-Objekt/System 520Q und das dritte Telemetrie-Objekt/System 520R auf der Grundlage der Abhängigkeiten der zweiten und dritten Ressourcen-Objekte/Systeme 510Q, 510R vom ersten Objekt/System 510P mit dem ersten Telemetrie-Objekt/System 520P verknüpfen und/oder diesem auf andere Weise zuweisen, wie in den 6A - 6B dargestellt ist.
  • Hier kann ein untergeordnetes Telemetrie-Objekt/System (beispielsweise ein untergeordnetes Telemetrieobjekt, ein untergeordnetes Telemetriesystem usw.) ein Telemetrieobjekt und/oder -system bezeichnen, das unter der Steuerung, Anleitung oder engen Kopplung mit einem anderen Telemetrieobjekt und/oder -system, dem es untergeordnet ist, arbeitet. Beispielsweise hängen für Anforderer oder Subskribenten eines Dienstes vom ersten Telemetrie-Objekt/System 520P Telemetriedaten in Zusammenhang mit der Gesamtleistung der ersten Ressourcenkomposition 600 aus den 6A - 6C in verschiedenen Leistungsgraden von Unterkomponenten (beispielsweise der zweiten bis vierten Ressourcen-Objekte/Systeme 510Q, 510R, 510S) des ersten RessourcenObjekts/Systems 510P ab und können anhand der ersten Telemetriekomposition 700 erhalten werden.
  • Beim in 7A dargestellten Beispiel weisen die zweiten Telemetrie-Objekte/Systeme 520T, 520U der zweiten Telemetriekomposition 710 ein fünftes beispielhaftes Telemetrie-Objekt/System 520T auf, das einem sechsten beispielhaften Telemetrie-Objekt/System 520U untergeordnet ist. Beispielsweise kann der Kompositionserzeuger 238 das fünfte Telemetrie-Objekt/System 520T ansprechend auf die Feststellung, dass das fünfte Ressourcen-Objekt/System 510T vom sechsten Ressourcen-Objekt/System 510U abhängt, wie in den 6A - 6B dargestellt, mit dem sechsten TelemetrieObjekt/System 520U verknüpfen und/oder diesem auf andere Weise zuweisen.
  • Beim in 7A dargestellten Beispiel wird die erste Telemetriekomposition 700 auf der Grundlage davon, dass die erste Ressourcenkomposition 600 aus den 6A - 6C mit der zweiten Ressourcenkomposition 610 aus den 6A - 6C gekoppelt wird, mit der zweiten Telemetriekomposition 710 gekoppelt. Beispielsweise kann das dritte Telemetrie-Objekt/System 520R der ersten Telemetriekomposition 700 mit dem fünften Telemetrie-Objekt/System 520T der zweiten Telemetriekomposition 710 Peer-to-Peer-gekoppelt sein. Bei solchen Beispielen bewirkt die Peer-to-Peer-Kopplung des dritten Telemetrie-Objekts/Systems 520R und des fünften Telemetrie-Objekts/Systems 520T, dass zusammengesetzte Telemetrie-Objekte/Systeme (beispielsweise ein Objekt, ein System usw. der Telemetriekompositionen 700, 710), die dem ersten Telemetrie-Objekt/System 520P und dem sechsten Telemetrie-Objekt/System 520U untergeordnet sind, Peer-to-Peer-gekoppelt werden, wie beim Beispiel aus 7B dargestellt ist.
  • Beim in 7B dargestellten Beispiel sind die inneren Beziehungen jedes zusammengesetzten Telemetrie-Objekts/Systems (wie in 7A dargestellt) nicht gezeigt und kann sich ein Anforderer oder Subskribent eines Dienstes der ersten und der zweiten Telemetriekomposition 700, 710 nur auf die Funktionsweise der jeweiligen Telemetriekompositionen 700, 710 statt auf die Funktionsweise der zugrunde liegenden zusammengesetzten Telemetrie-Objekte/Systeme verlassen.
  • 7C ist eine schematische Darstellung der dritten Telemetriekomposition 720, welche die erste Telemetriekomposition 700 und die zweite Telemetriekomposition 710 aufweist. Die dritte beispielhafte Telemetriekomposition 720 ist eine vereinfachte Darstellung der zugrunde liegenden Telemetriekompositionen 700, 710. Beispielsweise wird die zugrunde liegende Kombination azyklischer und zyklischer Teilgraphen der ersten Telemetriekomposition 700 und der zweiten Telemetriekomposition 720 durch eine erste Telemetriekomposition „PQRS“, die der ersten Telemetriekomposition 700 entspricht, und eine zweite Telemetriekomposition „TU“, die der zweiten Telemetriekomposition 710 entspricht, ersetzt, wobei die erste Telemetriekomposition und die zweite Telemetriekomposition Peer-to-Peer-gekoppelt sind. Vorteilhafterweise kann ein Anforderer oder Subskribent des Dienstes Telemetriedaten auf der beispielhaften Kompositionsschicht 322 aus 3 statt auf der Atomare-Ressourcen-Schicht 324 aus 3 durch Anfordern von Telemetriedaten von der dritten Telemetriekomposition 720 statt vom einen oder von den mehreren zugrunde liegenden Telemetrieobjekten und/oder -systemen erhalten.
  • Flussdiagramme, die beispielhafte Hardwarelogik, maschinenlesbare Befehle, hardwareimplementierte Zustandsmaschinen und/oder eine Kombination davon zur Implementation der einen oder der mehreren beispielhaften Kompositionen 146, 156 und/oder allgemeiner der beispielhaften ausführbaren Programme 137, 149 aus 1 und/oder der beispielhaften Telemetrie-Steuereinrichtung 130A-C aus den 1 - 2 repräsentieren, sind in den 8 - 12 dargestellt. Die maschinenlesbaren Befehle können ein oder mehrere ausführbare Programme oder Teile eines ausführbaren Programms zur Ausführung durch einen Computerprozessor in der Art des Prozessors 1312, der in der nachstehend in Verbindung mit 13 erörterten beispielhaften Prozessorplattform 1300 dargestellt ist, und/oder des Prozessors 1412, der in der nachstehend in Verbindung mit 14 erörterten beispielhaften Prozessorplattform 1400 dargestellt ist, sein. Das Programm kann in Software, die auf einem nichtflüchtigen computerlesbaren Speichermedium in der Art einer CD-ROM, einer Diskette, einer Festplatte, einer DVD, einer Bluray-Disk oder einem Speicher in Zusammenhang mit dem Prozessor 1312 aus 13 und/oder dem Prozessor 1412 aus 14 gespeichert ist, verwirklicht werden, das gesamte Programm und/oder Teile davon könnten jedoch alternativ durch eine andere Vorrichtung als den Prozessor 1312 aus 13 und/oder den Prozessor 1412 aus 14 ausgeführt werden und/oder in Firmware oder dedizierter Hardware verwirklicht werden. Ferner können, wenngleich das beispielhafte Programm mit Bezug auf die in den 8 - 12 dargestellten Flussdiagramme beschrieben wird, viele andere Verfahren zur Implementation der einen oder der mehreren beispielhaften Kompositionen 146, 156 und/oder allgemeiner der beispielhaften ausführbaren Programme 137, 149 und/oder der beispielhaften Telemetrie-Steuereinrichtung 130A-C alternativ verwendet werden. Beispielsweise kann die Reihenfolge der Ausführung der Blöcke geändert werden und/oder können einige der beschriebenen Blöcke geändert, fortgelassen oder kombiniert werden. Zusätzlich oder alternativ können einige oder alle der Blöcke durch eine oder mehrere Hardwareschaltungen (beispielsweise eine diskrete und/oder integrierte analoge und/oder digitale Schaltungsanordnung, einen FPGA, einen ASIC, einen Vergleicher, einen Operationsverstärker (op-amp), eine Logikschaltung usw.) implementiert werden, die strukturiert sind, um die entsprechende Operation ohne Ausführung von Software oder Firmware durchzuführen.
  • Die hier beschriebenen maschinenlesbaren Befehle können in einem oder mehreren von einem komprimierten Format, einem verschlüsselten Format, einem fragmentierten Format, einem kompilierten Format, einem ausführbaren Format, einem paketierten Format usw. gespeichert werden. Hier beschriebene maschinenlesbare Befehle können als Daten (beispielsweise Abschnitte von Befehlen, Code, Repräsentationen von Code usw.) gespeichert werden, die für die Erzeugung, Herstellung und/oder Produktion maschinenausführbarer Befehle verwendet werden können. Beispielsweise können die maschinenlesbaren Befehle fragmentiert und auf einer oder mehreren Speichervorrichtungen und/oder Rechenvorrichtungen (beispielsweise Servern) gespeichert werden. Die maschinenlesbaren Befehle können eines oder mehrere von Installation, Modifikation, Anpassung, Aktualisierung, Kombination, Ergänzung, Konfigurierung, Entschlüsselung, Dekompression, Entpackung, Verteilung, Neuzuweisung, Kompilierung usw. erfordern, um sie von einer Rechenvorrichtung und/oder einer anderen Maschine direkt lesbar, interpretierbar und/oder ausführbar zu machen. Beispielsweise können die maschinenlesbaren Befehle in mehreren Teilen gespeichert werden, die einzeln komprimiert, verschlüsselt und auf getrennten Rechenvorrichtungen gespeichert werden, wobei die Teile, wenn sie entschlüsselt, dekomprimiert und kombiniert werden, einen Satz ausführbarer Befehle bilden, die ein Programm in der Art des hier beschriebenen implementieren.
  • Bei einem anderen Beispiel können die maschinenlesbaren Befehle in einem Zustand gespeichert werden, in dem sie von einem Computer gelesen werden können, jedoch zusätzlich eine Bibliothek (beispielsweise eine Dynamic Link Library (DLL)), einen Softwareentwicklungskit (SDK), eine Anwendungsprogrammierschnittstelle (API) usw. erfordern, um die Befehle auf einer bestimmten Rechenvorrichtung oder einer anderen Vorrichtung auszuführen. Bei einem anderen Beispiel können die maschinenlesbaren Befehle konfiguriert werden müssen (beispielsweise Einstellungen gespeichert, Daten eingegeben, Netzwerkadressen aufgezeichnet usw.), bevor die maschinenlesbaren Befehle und/oder das eine oder die mehreren entsprechenden Programme ganz oder teilweise ausgeführt werden können. Demgemäß sollen die offenbarten maschinenlesbaren Befehle und/oder das eine oder die mehreren entsprechenden Programme solche maschinenlesbaren Befehle und/oder Programme unabhängig vom bestimmten Format oder Zustand der maschinenlesbaren Befehle und/oder Programme, wenn gespeichert oder auf andere Weise in Ruhe oder in Übertragung, umfassen.
  • Die hier beschriebenen maschinenlesbaren Befehle können durch eine frühere, gegenwärtige oder künftige Befehlssprache, Skriptsprache, Programmiersprache usw. repräsentiert werden. Beispielsweise können die maschinenlesbaren Befehle unter Verwendung jeglicher der folgenden Sprachen repräsentiert werden: C, C++, Java, C#, Perl, Python, JavaScript, HyperText Markup Language (HTML), Structured Query Language (SQL), Swift usw.
  • Wie vorstehend erwähnt, können die beispielhaften Prozesse aus den 8 - 12 unter Verwendung ausführbarer Befehle (beispielsweise computer- und/oder maschinenlesbarer Befehle) implementiert werden, die auf einem nichtflüchtigen computer- und/oder maschinenlesbaren Medium in der Art eines Festplattenlaufwerks, eines Flash-Speichers, eines Nurlesespeichers, einer Compact Disk, einer Digital Versatile Disk, eines Caches, eines Direktzugriffsspeichers und/oder einer anderen Speichervorrichtung oder Speicherplatte, worin Informationen für eine Zeitdauer gespeichert werden (beispielsweise während längerer Zeiträume, permanent, für kurze Momente, für ein Zwischenpuffern und/oder für das Caching der Informationen), gespeichert werden. Wie hier verwendet, wird der Begriff nichtflüchtiges computerlesbares Medium ausdrücklich so definiert, dass er einen beliebigen Typ einer computerlesbaren Speichervorrichtung und/oder Speicherplatte einschließt und sich ausbreitende Signale und Übertragungsmedien ausschließt.
  • „Aufweisend“ und „umfassend“ (und alle Formen und Tempi davon) werden hier als einschließende Begriffe verwendet. Wenn ein Anspruch demgemäß eine Form von „aufweisen“ oder „umfassen“ als Oberbegriff oder innerhalb eines Anspruchszitats irgendeiner Art verwendet (beispielsweise umfasst, weist auf, umfassend, aufweisend, habend usw.), ist zu verstehen, dass zusätzliche Elemente, Begriffe usw. vorhanden sein können, ohne den Schutzumfang des entsprechenden Anspruchs oder Zitats zu verlassen. Wenn hier der Ausdruck „wenigstens“ als Übergangsbegriff beispielsweise in einem Oberbegriff eines Anspruchs verwendet wird, ist er in der gleichen Weise wie die Begriffe „umfassend“ und „aufweisend“ einschließend. Wenn der Begriff „und/oder“ beispielsweise in einer Form in der Art von A, B und/oder C verwendet wird, bezieht er sich auf eine Kombination oder Teilmenge von A, B, C in der Art von (1) A allein, (2) B allein, (3) C allein, (4) A mit B, (5) A mit C, (6) B mit C und (7) A mit B und mit C. Wenn er hier in Zusammenhang mit beschreibenden Strukturen, Komponenten, Elementen, Objekten und/oder Dingen verwendet wird, soll sich der Ausdruck „wenigstens einer von A und B“ auf Implementationen beziehen, die jegliche von (1) wenigstens ein A, (2) wenigstens ein B und (3) wenigstens ein A und wenigstens ein B aufweisen. Ähnlich soll sich der Ausdruck „wenigstens einer von A oder B“, wenn er hier in Zusammenhang mit beschreibenden Strukturen, Komponenten, Elementen, Objekten und/oder Dingen verwendet wird, auf Implementationen beziehen, die jegliche von (1) wenigstens ein A, (2) wenigstens ein B und (3) wenigstens ein A und wenigstens ein B aufweisen. Wenn er hier in Zusammenhang mit der Beschreibung der Funktionsweise oder Ausführung von Prozessen, Befehlen, Aktionen, Aktivitäten und/oder Schritten verwendet wird, soll sich der Ausdruck „wenigstens einer von A und B“ auf Implementationen beziehen, die jegliche von (1) wenigstens ein A, (2) wenigstens ein B und (3) wenigstens ein A und wenigstens ein B aufweisen. Ähnlich soll sich der Ausdruck „wenigstens einer von A oder B“, wenn er hier in Zusammenhang mit der Beschreibung der Funktionsweise oder Ausführung von Prozessen, Befehlen, Aktionen, Aktivitäten und/oder Schritten verwendet wird, auf Implementationen beziehen, die jegliche von (1) wenigstens ein A, (2) wenigstens ein B und (3) wenigstens ein A und wenigstens ein B aufweisen.
  • Hier schließen Singularreferenzen (beispielsweise „ein/eine/eines“, „erster/erste/erstes“, „zweiter/zweite/zweites“ usw.) den Plural nicht aus. Der Begriff „eine“ Entität bezieht sich hier auf eine oder mehrere dieser Entitäten. Die Begriffe „ein/eine/eines“, „ein/eine/eines oder mehrere“ und „wenigstens ein/eine/eines“ können hier austauschbar verwendet werden. Ferner können, wenngleich sie individuell aufgelistet werden, mehrere Mittel, Elemente oder Verfahrensschritte beispielsweise durch eine einzige Einheit oder einen einzigen Prozessor implementiert werden. Zusätzlich können, wenngleich individuelle Merkmale in verschiedenen Beispielen oder Ansprüchen aufgenommen sein können, diese möglicherweise kombiniert werden, und impliziert die Aufnahme in verschiedenen Beispielen oder Ansprüchen nicht, dass eine Kombination von Merkmalen nicht möglich und/oder vorteilhaft ist.
  • 8 ist ein Flussdiagramm, das beispielhafte maschinenlesbare Befehle 800 repräsentiert, die ausgeführt werden können, um die beispielhafte Telemetrie-Steuereinrichtung 130A-C aus den 1 und/oder 2 zu implementieren, um auf der Grundlage der Telemetriedaten 136A-C aus 1 Rechenaufgaben auf den ersten Edge-Dienst 140 und/oder den zweiten Edge-Dienst 150 zu verteilen. Die beispielhaften maschinenlesbaren Befehle 800 aus 8 beginnen in Block 802, wo die Telemetrie-Steuereinrichtung 130A-C eine oder mehrere Edge-Dienstressourcen in einer Edge-Umgebung entdeckt. Beispielsweise kann die Ressourcenabfrage-Steuereinrichtung 220 (2) den ersten Edge-Dienst 140 aus 1 abfragen. Bei solchen Beispielen kann die Ressourcenabfrage-Steuereinrichtung 220 die eine oder die mehreren Ressourcen 149 ( 1) des ersten Edge-Dienstes 140 auf der Grundlage der Abfrage identifizieren.
  • In Block 804 stellt die beispielhafte Telemetrie-Steuereinrichtung 130A-C fest, ob eine oder mehrere neue Kompositionen zu erzeugen sind. Beispielsweise kann die Kompositionssteuereinrichtung 230 (2) feststellen, dass eine der einen oder der mehreren Ressourcen 149 online gekommen ist und nicht in der ersten Ressourcenkomposition 600 enthalten ist. Bei solchen Beispielen kann die Kompositionssteuereinrichtung 230 feststellen, dass eine neue Komposition auf der Grundlage der entdeckten einen der einen oder der mehreren Ressourcen 149 zu erzeugen ist.
  • Falls die beispielhafte Telemetrie-Steuereinrichtung 130A-C in Block 804 feststellt, dass keine neuen Kompositionen zu erzeugen sind, wird die Steuerung in Block 814 fortgesetzt, um Telemetriedaten ansprechend darauf zu erhalten, dass der eine oder die mehreren Edge-Dienste das eine oder die mehreren ausführbaren Telemetrieprogramme ausführen. Falls die beispielhafte Telemetrie-Steuereinrichtung 130A-C in Block 804 feststellt, dass eine oder mehrere neue Kompositionen zu erzeugen sind, erzeugt sie in Block 806 eine oder mehrere Kompositionen für einen Edge-Dienst. Beispielsweise kann die Kompositionssteuereinrichtung 230 die eine oder die mehreren ersten Kompositionen 146 (1) durch Erzeugen eines Ressourcenobjekts, eines Telemetrieobjekts usw. auf der Grundlage der entdeckten einen der einen oder der mehreren Ressourcen 149 erzeugen. Beispielhafte Befehle, die zur Implementation von Block 806 ausgeführt werden können, werden nachstehend in Verbindung mit 9 beschrieben.
  • In Block 808 erzeugt die beispielhafte Telemetrie-Steuereinrichtung 130A-C eine oder mehrere Umgebungskompositionen auf der Grundlage der einen oder der mehreren Edge-Dienstkompositionen. Beispielsweise kann die Kompositionssteuereinrichtung 230 eine Komposition erzeugen, welche die eine oder die mehreren Kompositionen 146, 156 der Edge-Umgebung 110 aus 1 aufweist, diesen entspricht und/oder diesen auf andere Weise zugeordnet ist.
  • In Block 810 erzeugt die beispielhafte Telemetrie-Steuereinrichtung 130A-C ein oder mehrere ausführbare Telemetrieprogramme auf der Grundlage des Edge-Dienstes und/oder der einen oder der mehreren Umgebungskompositionen. Beispielsweise kann die Steuereinrichtung 250 für ausführbare Programme (2) das erste ausführbare Programm 137 (1) auf der Grundlage zumindest einer von der einen oder den mehreren ersten Kompositionen 146 oder der einen oder den mehreren zweiten Kompositionen 156 kompilieren.
  • In Block 812 installiert die beispielhafte Telemetrie-Steuereinrichtung 130A-C das eine oder die mehreren ausführbaren Telemetrieprogramme im einen oder den mehreren Edge-Diensten. Beispielsweise kann der erste Server 112 ansprechend darauf, dass die erste Telemetrie-Steuereinrichtung 130A des ersten Servers 112 (1) das erste ausführbare Programm 137 erzeugt, das erste ausführbare Programm 137 zum ersten Edge-Dienst 140 übertragen. Bei anderen Beispielen kann der erste Edge-Dienst 140 ansprechend darauf, dass die zweite Telemetrie-Steuereinrichtung 130B des ersten Edge-Dienstes 140 das erste ausführbare Programm 137 erzeugt, das erste ausführbare Programm 137 am ersten Edge-Dienst 140 installieren. Beispielsweise kann der erste Edge-Dienst 140 das erste ausführbare Programm 137 in einen Speicher (beispielsweise einen flüchtigen oder nichtflüchtigen Speicher, der in der einen oder den mehreren Ressourcen 149 enthalten ist), die erste ES-Datenbank 148 aus 1 usw. zur Ausführung durch den ersten Edge-Dienst 140 laden.
  • In Block 814 erhält die beispielhafte Telemetrie-Steuereinrichtung 130A-C Telemetriedaten ansprechend darauf, dass der eine oder die mehreren Edge-Dienste das eine oder die mehreren ausführbaren Telemetrieprogramme ausführt. Beispielsweise kann die zweite Telemetrie-Steuereinrichtung 130B des ersten Edge-Dienstes 140 die ersten Telemetriedaten 136A von der einen oder den mehreren ersten Kompositionen 146 erhalten und die ersten Telemetriedaten 136A in der ersten ES-Datenbank 148 speichern. Bei anderen Beispielen kann die erste Telemetrie-Steuereinrichtung 130A des einen oder der mehreren Server 110, 112, 114 die ersten Telemetriedaten 136A ansprechend darauf, dass der erste Edge-Dienst 140 die eine oder die mehreren ersten Kompositionen 146 und/oder allgemeiner das erste ausführbare Programm 137 ausführt, vom ersten Edge-Dienst 140 erhalten.
  • In Block 816 verteilt die beispielhafte Telemetrie-Steuereinrichtung 130A-C die eine oder die mehreren Arbeitslasten auf der Grundlage der Telemetriedaten auf den einen oder die mehreren Edge-Dienste. Beispielsweise kann die Netzschnittstelle 210 (2) eine Arbeitslast von der ersten Endpunktvorrichtung 160 erhalten. Die beispielhafte Ressourcenverfiigbarkeits-Steuereinrichtung 240 (2) kann auf der Grundlage der ersten Telemetriedaten 136A feststellen, dass eine oder mehrere der Ressourcen 149 des ersten Edge-Dienstes 140 verfügbar sind, um die Arbeitslast auszuführen. Die beispielhafte Ressourcenverfügbarkeits-Steuereinrichtung 240 kann die Arbeitslast zur Ausführung an den ersten Edge-Dienst 140 übergeben. Ansprechend darauf, dass der erste beispielhafte Edge-Dienst 140 die Arbeitslast ausführt, kann der erste Edge-Dienst 140 verarbeitete Daten, ein Ergebnis der Arbeitslast usw. zur ersten Endpunktvorrichtung 160 übertragen. Ansprechend auf die Verteilung der einen oder der mehreren Arbeitslasten auf den einen oder die mehreren Edge-Dienste auf der Grundlage der Telemetriedaten in Block 816 wird die Steuerung in Block 818 fortgesetzt, um festzustellen, ob eine oder mehrere Edge-Dienstressourcen in der Edge-Umgebung zu entdecken sind. Beispielsweise kann die Ressourcenabfrage-Steuereinrichtung 220 feststellen, dass eine andere Abfrageoperation auszuführen ist, um festzustellen, ob eine neue Ressource verfügbar geworden ist, online gekommen ist usw. oder ob eine zuvor entdeckte Ressource nicht mehr verfügbar ist, offline gegangen ist usw. Falls die beispielhafte Telemetrie-Steuereinrichtung 130A-C in Block 818 feststellt, dass eine oder mehrere Edge-Dienstressourcen in der Edge-Umgebung zu entdecken sind, kehrt die Steuerung zu Block 802 zurück, und andernfalls werden die beispielhaften maschinenlesbaren Befehle 800 aus 8 abgeschlossen.
  • 9 ist ein Flussdiagramm, das beispielhafte maschinenlesbare Befehle 900 repräsentiert, die ausgeführt werden können, um die Telemetrie-Steuereinrichtung 130A-C aus den 1 und/oder 2 zu implementieren, um eine oder mehrere Kompositionen (beispielsweise die eine oder die mehreren Kompositionen 146, 156 aus 1) für einen Edge-Dienst (beispielsweise den einen oder die mehreren Edge-Dienste 140, 150 aus 1) zu erzeugen. Die beispielhaften maschinenlesbaren Befehle 900 aus 9 können ausgeführt werden, um Block 806 aus 8 zu implementieren. Die maschinenlesbaren Befehle 900 aus 9 beginnen in Block 902, wo die beispielhafte Telemetrie-Steuereinrichtung 130A-C einen Edge-Dienst für die Verarbeitung auswählt. Beispielsweise kann die Kompositionssteuereinrichtung 230 (2) den ersten Edge-Dienst 140 aus 1 für die Verarbeitung auswählen.
  • In Block 904 bestimmt die beispielhafte Telemetrie-Steuereinrichtung 130A-C eine oder mehrere interessierende Leistungsmetriken, die vom Edge-Dienst zu erhalten sind. Beispielsweise kann die Leistungsmetrik-Bestimmungseinrichtung 232 ( 2) feststellen, dass eine erste Ressource von der einen oder den mehreren Ressourcen 149 eine Mehrkern-CPU ist. Bei solchen Beispielen kann die Leistungsmetrik-Bestimmungseinrichtung 232 die Mehrkern-CPU auf eine erste Leistungsmetrik, eine zweite Leistungsmetrik, eine dritte Leistungsmetrik usw. abbilden. Beispielsweise kann die erste Leistungsmetrik die Anzahl der Befehle messen, die ein Kern der Mehrkern-CPU ausgeführt hat.
  • In Block 906 erzeugt die beispielhafte Telemetrie-Steuereinrichtung 130A-C ein oder mehrere Ressourcenobjekte auf der Grundlage der einen oder der mehreren Leistungsmetriken. Beispielsweise kann der Objekterzeuger 234 (2) das Ressourcenobjekt 302 aus 3 auf der Grundlage der ersten Leistungsmetrik erzeugen. Beispielhafte Befehle, die zur Implementation von Block 906 ausgeführt werden können, werden nachstehend in Verbindung mit 10 beschrieben.
  • In Block 908 erzeugt die beispielhafte Telemetrie-Steuereinrichtung 130A-C ein oder mehrere Telemetrieobjekte auf der Grundlage der einen oder der mehreren Leistungsmetriken. Beispielsweise kann der Schnittstellenerzeuger 236 (2) das Telemetrieobjekt 304 aus 3 auf der Grundlage der ersten Leistungsmetrik erzeugen. Beispielhafte Befehle, die zur Implementation von Block 908 ausgeführt werden können, werden nachstehend in Verbindung mit 11 beschrieben.
  • In Block 910 erzeugt die beispielhafte Telemetrie-Steuereinrichtung 130A-C eine oder mehrere Ressourcenkompositionen auf der Grundlage des einen oder der mehreren Ressourcenobjekte. Beispielsweise kann der Kompositionserzeuger 238 (2) die erste Ressourcenkomposition 600 aus den 6A - 6C auf der Grundlage der ersten Ressourcen-Objekte/Systeme 510P, 510Q, 510R, 510S aus den 6A - 6B erzeugen. Bei solchen Beispielen kann das Ressourcenobjekt 302 einem von den ersten RessourcenObjekten/Systemen 510P, 510Q, 510R, 510S aus den 6A - 6B entsprechen.
  • In Block 912 erzeugt die beispielhafte Telemetrie-Steuereinrichtung 130A-C eine oder mehrere Telemetriekompositionen auf der Grundlage des einen oder der mehreren Telemetrieobjekte. Beispielsweise kann der Kompositionserzeuger 238 die erste Telemetriekomposition 700 aus den 7A - 7C auf der Grundlage der ersten Telemetrie-Objekte/Systeme 520P, 520Q, 520R, 520S aus den 7A - 7B erzeugen. Bei solchen Beispielen kann das Telemetrieobjekt 304 einem von den ersten TelemetrieObjekten/Systemen 520P, 520Q, 520R, 520S aus den 7A - 7B entsprechen.
  • In Block 914 erzeugt die beispielhafte Telemetrie-Steuereinrichtung 130A-C eine Edge-Dienstkomposition auf der Grundlage der Ressourcen- und Telemetriekompositionen. Beispielsweise kann der Kompositionserzeuger 238 die dritte Ressourcenkomposition 620 aus 6C und die dritte Telemetriekomposition 720 aus 7C erzeugen. Bei solchen Beispielen kann der Kompositionserzeuger 238 die eine oder die mehreren ersten Kompositionen 146 aus 1 auf der Grundlage wenigstens einer von der dritten Ressourcenkomposition 620 oder der dritten Telemetriekomposition 720 erzeugen. Beispielsweise können die eine oder die mehreren ersten Kompositionen 146 einer Edge-Dienstkomposition des ersten Edge-Dienstes 140 entsprechen.
  • In Block 916 stellt die beispielhafte Telemetrie-Steuereinrichtung 130A-C fest, ob ein anderer Edge-Dienst für die Verarbeitung auszuwählen ist. Beispielsweise kann die Kompositionssteuereinrichtung 230 feststellen, ob der zweite Edge-Dienst 150 aus 2 für die Verarbeitung auszuwählen ist. Falls die beispielhafte Telemetrie-Steuereinrichtung 130A-C in Block 916 feststellt, dass ein anderer Edge-Dienst für die Verarbeitung auszuwählen ist, kehrt die Steuerung zu Block 902 zurück, um einen anderen Edge-Dienst für die Verarbeitung auszuwählen. Falls in Block 916 die beispielhafte Telemetrie-Steuereinrichtung 130A-C feststellt, dass kein anderer Edge-Dienst für die Verarbeitung auszuwählen ist, kehrt die Steuerung zu Block 808 der beispielhaften maschinenlesbaren Befehle 800 aus 8 zurück, um eine oder mehrere Umgebungskompositionen auf der Grundlage der einen oder der mehreren Edge-Dienstkompositionen zu erzeugen.
  • 10 ist ein Flussdiagramm, das beispielhafte maschinenlesbare Befehle 1000 repräsentiert, die ausgeführt werden können, um die Telemetrie-Steuereinrichtung 130A-C aus den 1 und/oder 2 zu implementieren, um ein oder mehrere Ressourcenobjekte auf der Grundlage einer oder mehrerer Leistungsmetriken zu erzeugen. Die beispielhaften maschinenlesbaren Befehle 1000 aus 10 können ausgeführt werden, um Block 906 der beispielhaften maschinenlesbaren Befehle 900 aus 9 zu implementieren. Die beispielhaften maschinenlesbaren Befehle 1000 aus 10 beginnen in Block 1002, wo die beispielhafte Telemetrie-Steuereinrichtung 130A-C eine Ressource auf eine oder mehrere Leistungsmetriken abbildet. Beispielsweise kann die Leistungsmetrik-Bestimmungseinrichtung 232 (2) ein FPGA, das in der einen oder den mehreren Ressourcen 149 aus 1 enthalten ist, auf eine oder mehrere Leistungsmetriken abbilden, die eine erste Leistungsmetrik aufweisen, welche die Anzahl der Threads (beispielsweise Verarbeitungs-Threads), die Anzahl der Kernels usw., die verwendet werden, repräsentiert.
  • In Block 1004 wählt die beispielhafte Telemetrie-Steuereinrichtung 130A-C eine Leistungsmetrik für die Verarbeitung aus. Beispielsweise kann die Leistungsmetrik-Bestimmungseinrichtung 232 die erste Leistungsmetrik des FPGAs für die Verarbeitung auswählen.
  • In Block 1006 bildet die beispielhafte Telemetrie-Steuereinrichtung 130A-C die Leistungsmetrik auf eine Funktion der Ressource ab. Beispielsweise kann der Objekterzeuger 234 (2) die Anzahl der verwendeten Threads auf eine Thread-Ausführungsfunktion abbilden, die, wenn sie vom FPGA aufgerufen oder ausgeführt wird, einen oder mehrere Threads des FPGAs zur Ausführung einer Arbeitslast verwendet.
  • In Block 1008 erzeugt die beispielhafte Telemetrie-Steuereinrichtung 130A-C auf der Grundlage der Funktion ein Ressourceninformationsobjekt (RIO). Beispielsweise kann der Objekterzeuger 234 das RIO 306 aus 3 auf der Grundlage der Thread-Ausführungsfunktion erzeugen. Bei solchen Beispielen kann der Objekterzeuger 234 das RIO 306 durch Erzeugen einer Datenstruktur auf der Grundlage der Thread-Ausfiihrungsfunktion erzeugen, wobei die Datenstruktur Befehle zum Aufrufen der RIO-Schnittstelle 308, um die erste Leistungsmetrik zu erhalten, eine Kennung der ersten Leistungsmetrik, einen Datentyp der ersten Leistungsmetrik, Datengenauigkeitsinformationen der ersten Leistungsmetrik usw. und/oder eine Kombination davon aufweisen kann.
  • In Block 1010 bildet die beispielhafte Telemetrie-Steuereinrichtung 130A-C die Leistungsmetrik auf ein Ressourcenereignis ab. Beispielsweise kann der Schnittstellenerzeuger 236 (2) die erste Leistungsmetrik auf ein Ereignis abbilden, das einem Zähler (beispielsweise einem Hardwarezähler, einem Softwarezähler) des FPGAs entspricht.
  • In Block 1012 erzeugt die beispielhafte Telemetrie-Steuereinrichtung 130A-C eine RIO-Schnittstelle auf der Grundlage des Ressourcenereignisses. Beispielsweise kann der Schnittstellenerzeuger 236 die RIO-Schnittstelle 308 aus 3 auf der Grundlage des Zählers erzeugen. Bei solchen Beispielen kann der Schnittstellenerzeuger 236 die RIO-Schnittstelle 308 durch Einkapseln von Befehlen (beispielsweise NMON-Befehlen, PERF-Befehlen, SAR-Befehlen usw.) zum Abrufen eines Werts vom Zähler erzeugen.
  • In Block 1014 stellt die beispielhafte Telemetrie-Steuereinrichtung 130A-C fest, ob eine andere Leistungsmetrik zur Verarbeitung auszuwählen ist. Beispielsweise kann die Leistungsmetrik-Bestimmungseinrichtung 232 eine zweite Leistungsmetrik des FPGAs für die Verarbeitung auswählen. Falls die Telemetrie-Steuereinrichtung 130A-C in Block 1012 feststellt, dass eine andere Leistungsmetrik zur Verarbeitung auszuwählen ist, kehrt die Steuerung zu Block 1004 zurück, um eine andere Leistungsmetrik für die Verarbeitung auszuwählen. Falls die Telemetrie-Steuereinrichtung 130A-C in Block 1012 feststellt, dass keine andere Leistungsmetrik für die Verarbeitung auszuwählen ist, kehrt die Steuerung zu Block 908 der beispielhaften maschinenlesbaren Befehle 900 aus 9 zurück, um ein oder mehrere Telemetrieobjekte auf der Grundlage der einen oder der mehreren Leistungsmetriken zu erzeugen.
  • 11 ist ein Flussdiagramm, das beispielhafte maschinenlesbare Befehle 1100 repräsentiert, die ausgeführt werden können, um die Telemetrie-Steuereinrichtung 130A-C aus den 1 und/oder 2 zu implementieren, um ein oder mehrere Telemetrieobjekte auf der Grundlage einer oder mehrerer Leistungsmetriken zu erzeugen. Die beispielhaften maschinenlesbaren Befehle 1100 aus 11 können ausgeführt werden, um Block 908 der beispielhaften maschinenlesbaren Befehle 900 aus 9 zu implementieren. Die beispielhaften maschinenlesbaren Befehle 1100 aus 11 beginnen in Block 1102, wo die beispielhafte Telemetrie-Steuereinrichtung 130A-C eine oder mehrere Leistungsmetriken auf eine oder mehrere Funktionen einer Telemetrie-Ressource abbildet. Beispielsweise kann die Leistungsmetrik-Bestimmungseinrichtung 232 (2) eine erste Leistungsmetrik einer GPU auf eine Funktion einer Telemetrie-Ressource abbilden. Bei solchen Beispielen kann die Telemetrie-Ressource ein maschinenlesbarer Befehl sein, um das RIO 306 aus 3 aufzurufen, Telemetriedaten von der Ressource 310 aus 3 zu erhalten.
  • In Block 1104 wählt die beispielhafte Telemetrie-Steuereinrichtung 130A-C eine Leistungsmetrik für die Verarbeitung aus. Beispielsweise kann die Leistungsmetrik-Bestimmungseinrichtung 232 die erste Leistungsmetrik der GPU für die Verarbeitung auswählen.
  • In Block 1106 erzeugt die beispielhafte Telemetrie-Steuereinrichtung 130A-C ein Telemetrieinformationsobjekt (TIO) auf der Grundlage der Telemetrie-Ressource. Beispielsweise kann der Objekterzeuger 234 (2) das TIO 312 aus 3 auf der Grundlage der ersten Leistungsmetrik erzeugen. Bei solchen Beispielen kann der Objekterzeuger 234 das TIO 312 durch Erzeugen einer Datenstruktur auf der Grundlage der ersten Leistungsmetrik erzeugen, wobei die Datenstruktur Befehle zum Aufrufen des RIOs 306, eine Kennung der ersten Leistungsmetrik, einen Datentyp der ersten Leistungsmetrik, Datengenauigkeitsinformationen der ersten Leistungsmetrik usw. und/oder eine Kombination davon aufweisen kann.
  • In Block 1108 bildet die beispielhafte Telemetrie-Steuereinrichtung 130A-C die Leistungsmetrik auf einen Telemetrieaufruf ab. Beispielsweise kann der Schnittstellenerzeuger 236 (2) die erste Leistungsmetrik auf einen Aufruf einer Netzschnittstelle, eines Webservers, einer API usw. abbilden.
  • In Block 1110 erzeugt die beispielhafte Telemetrie-Steuereinrichtung 130A-C eine Telemetrieinformationsobjekt-Schnittstelle (TIO) auf der Grundlage des Telemetrieaufrufs. Beispielsweise kann der Schnittstellenerzeuger 236 die TIO-Schnittstelle 314 aus 3 auf der Grundlage der Netzschnittstelle, des Webservers, der API usw. und/oder einer Kombination davon erzeugen. Bei solchen Beispielen kann der Schnittstellenerzeuger 236 die TIO-Schnittstelle 314 durch Einkapseln maschinenlesbarer Befehle erzeugen, die, wenn sie ausgeführt oder aufgerufen werden, das TIO 312 aufrufen können, Telemetriedaten vom RIO 306 zu erhalten.
  • In Block 1112 stellt die beispielhafte Telemetrie-Steuereinrichtung 130A-C fest, ob eine andere Leistungsmetrik zur Verarbeitung auszuwählen ist. Beispielsweise kann die Leistungsmetrik-Bestimmungseinrichtung 232 eine zweite Leistungsmetrik der GPU für die Verarbeitung auswählen. Falls die Telemetrie-Steuereinrichtung 130A-C in Block 1112 feststellt, dass eine andere Leistungsmetrik zur Verarbeitung auszuwählen ist, kehrt die Steuerung zu Block 1104 zurück, um eine andere Leistungsmetrik für die Verarbeitung auszuwählen. Falls die beispielhafte Telemetrie-Steuereinrichtung 130A-C in Block 1112 feststellt, dass keine andere Leistungsmetrik für die Verarbeitung auszuwählen ist, kehrt die Steuerung zu Block 910 der beispielhaften maschinenlesbaren Befehle 900 aus 9 zurück, um eine oder mehrere Ressourcenkompositionen auf der Grundlage des einen oder der mehreren Ressourcenobjekte zu erzeugen.
  • 12 ist ein Flussdiagramm, das beispielhafte maschinenlesbare Befehle 1200 repräsentiert, die ausgeführt werden können, um das Telemetrieobjekt 304 aus den 3, 4 und/oder 5 und/oder allgemeiner das eine oder die mehreren ausführbaren Programme 137, 147 aus 1 zu implementieren, um die Telemetriedaten 136A-C aus 1 zu erzeugen. Die beispielhaften maschinenlesbaren Befehle 1200 aus 12 beginnen in Block 1202, wo das beispielhafte Telemetrieobjekt 304 feststellt, ob ein oder mehrere Auslöser aufgerufen wurden. Beispielsweise kann die Steuerebene 410 (4) feststellen, ob wenigstens einer von den einen oder den mehreren Erzeugungsauslösern 412, den einen oder den mehreren Sammelauslösern 414, den einen oder den mehreren Verbrauchsauslösern 416 oder den einen oder den mehreren Kompositionsauslösern 418 aufgerufen und/oder auf andere Weise ausgelöst wurde.
  • Falls das beispielhafte Telemetrieobjekt 304 in Block 1202 feststellt, dass kein Auslöser aufgerufen wurde, wartet die Steuerung in Block 1202 (beispielsweise bis ein Auslöser aufgerufen wurde). Falls das beispielhafte Telemetrieobjekt 304 in Block 1202 feststellt, dass ein oder mehrere Auslöser aufgerufen wurden, stellt das Telemetrieobjekt 304 in Block 1204 fest, ob der eine oder die mehreren aufgerufenen Auslöser ein oder mehrere Sammelauslöser sind. Beispielsweise kann die Steuerebene 410 feststellen, dass einer von den einen oder den mehreren Sammelauslösern 414 aus 4 ausgelöst worden ist.
  • Falls das beispielhafte Telemetrieobjekt 304 in Block 1204 feststellt, dass der eine oder die mehreren aufgerufenen Auslöser keine Sammelauslöser sind, wird die Steuerung in Block 1208 fortgesetzt, um festzustellen, ob der eine oder die mehreren aufgerufenen Auslöser Verbrauchsauslöser sind. Falls das beispielhafte Telemetrieobjekt 304 in Block 1204 feststellt, dass der eine oder die mehreren aufgerufenen Auslöser Sammelauslöser sind, liest das Telemetrieobjekt 304 in Block 1206 durch direkte Messungen erzeugte Telemetriedaten. Beispielsweise kann die Datenebene 420 Pro-Leistungsmetrikdaten von einem Zähler der Ressource 310 über das Ressourcenobjekt 302 aus 3 erhalten. Bei solchen Beispielen kann die Datenebene 420 die Roh-Leistungsmetrikdaten in den Roh-Leistungsmetrikdaten 442 der Leistungsmetrikdaten 440 aus 4 speichern.
  • In Block 1208 stellt das beispielhafte Telemetrieobjekt 304 fest, ob der eine oder die mehreren aufgerufenen Auslöser Verbrauchsauslöser sind. Beispielsweise kann die Steuerebene 410 feststellen, dass einer von den einen oder den mehreren Verbrauchsauslösern 416 aus 4 ausgelöst worden ist.
  • Falls das beispielhafte Telemetrieobjekt 304 in Block 1208 feststellt, dass der eine oder die mehreren aufgerufenen Auslöser keine Verbrauchsauslöser sind, wird die Steuerung in Block 1212 fortgesetzt, um festzustellen, ob der eine oder die mehreren aufgerufenen Auslöser Kompositionsauslöser sind. Falls das beispielhafte Telemetrieobjekt 304 in Block 1208 feststellt, dass der eine oder die mehreren aufgerufenen Auslöser keine Verbrauchsauslöser sind, liest das Telemetrieobjekt 304 in Block 1210 auf der Grundlage zeitsynchronisierter Ereignisse erzeugte Telemetriedaten. Beispielsweise kann die Datenebene 420 zu einer ersten Zeit erste Roh-Leistungsmetrikdaten vom vierten RessourcenObjekt/System 510S aus den 6A - 6B erhalten, zu einer zweiten Zeit nach der ersten Zeit zweite Roh-Leistungsmetrikdaten vom zweiten Ressourcen-Objekt/System 510Q aus den 6A - 6B erhalten und/oder zu einer dritten Zeit nach der zweiten Zeit dritte Roh-Leistungsmetrikdaten vom ersten Ressourcen-Objekt/System 510P aus den 6A - 6B erhalten. Bei solchen Beispielen kann die Datenebene 420 die ersten bis dritten Roh-Leistungsmetrikdaten in den Roh-Leistungsmetrikdaten 442 der Leistungsmetrikdaten 440 aus 4 speichern.
  • In Block 1212 stellt das beispielhafte Telemetrieobjekt 304 fest, ob der eine oder die mehreren aufgerufenen Auslöser Kompositionsauslöser sind. Beispielsweise kann die Steuerebene 410 feststellen, dass einer von den einen oder den mehreren Kompositionsauslösern 418 aus 4 ausgelöst worden ist.
  • Falls das beispielhafte Telemetrieobjekt 304 in Block 1212 feststellt, dass der eine oder die mehreren aufgerufenen Auslöser keine Kompositionsauslöser sind, wird die Steuerung in Block 1216 fortgesetzt, um festzustellen, ob der eine oder die mehreren aufgerufenen Auslöser Erzeugungsauslöser sind. Falls das beispielhafte Telemetrieobjekt 304 in Block 1212 feststellt, dass der eine oder die mehreren aufgerufenen Auslöser Kompositionsauslöser sind, liest das Telemetrieobjekt 304 in Block 1214 auf der Grundlage bestimmter Leistungsmetriken erzeugte Telemetriedaten. Beispielsweise kann die Kompositionsebene 450 einen Teil der bestimmten Leistungsmetrikdaten 444 auf der Grundlage eines Teils der Roh-Leistungsmetrikdaten 442 durch Ausführen und/oder anderweitiges Anwenden einer oder mehrerer der Formeln 452, der Prädikate 454 und/oder der Filter 456 auf den Teil der Roh-Leistungsmetrikdaten 442 erzeugen.
  • In Block 1216 stellt das beispielhafte Telemetrieobjekt 304 fest, ob der eine oder die mehreren aufgerufenen Auslöser Erzeugungsauslöser sind. Beispielsweise kann die Steuerebene 410 feststellen, dass einer von den einen oder den mehreren Erzeugungsauslösern 412 aus 4 ausgelöst worden ist.
  • Falls das beispielhafte Telemetrieobjekt 304 in Block 1216 feststellt, dass der eine oder die mehreren aufgerufenen Auslöser keine Erzeugungsauslöser sind, kehrt die Steuerung zu Block 1202 zurück, um festzustellen, ob ein Auslöser aufgerufen wurde. Falls das beispielhafte Telemetrieobjekt 304 in Block 1216 feststellt, dass der eine oder die mehreren aufgerufenen Auslöser Erzeugungsauslöser sind, liest das Telemetrieobjekt 304 in Block 1218 durch das TIO eines Edge-Dienstes erzeugte Telemetriedaten. Beispielsweise kann die Ausgabeebene 460 (4) eines oder mehrere der TIO-Ereignisse 462 aus 4 erzeugen, die angeben, ob ein oder mehrere Teile der Roh-Leistungsmetrikdaten 442, der bestimmten Leistungsmetrikdaten 444 usw. für den Zugriff, das Abrufen usw. durch einen Datenverbraucher verfügbar sind.
  • In Block 1220 sendet das beispielhafte Telemetrieobjekt 304 Telemetriedaten zu einem Datenverbraucher. Die Ausgabeebene 460 kann die Datenverbraucherdaten 464 beispielsweise zu einem oder mehreren der Server 112, 114, 116 der Cloud-Umgebung 105 aus 1, einer oder mehreren der Endpunktvorrichtungen 160, 165, 170, 175, 180, 185 der Endpunktumgebung 115 aus 1 usw. und/oder einer Kombination davon übertragen. Bei anderen Beispielen kann die Ausgabeebene 460 die Datenverbraucherdaten 464 dem ersten Edge-Dienst 140 zur Speicherung in der ersten ES-Datenbank 148 aus 1 bereitstellen. Ansprechend auf die Übertragung der Telemetriedaten zum Datenverbraucher in Block 1220 stellt das beispielhafte Telemetrieobjekt 304 fest, ob zu identifizieren ist, dass ein oder mehrere Auslöser aufgerufen wurden. Beispielsweise kann die Steuerebene 410 (4) feststellen, dass eine Feststellung oder Analyse neu auszuführen ist, ob zumindest einer von dem einen oder den mehreren Erzeugungsauslösern 412, dem einen oder den mehreren Sammelauslösern 414, dem einen oder den mehreren Verbrauchsauslösern 416 oder dem einen oder den mehreren Kompositionsauslösern 418 aufgerufen worden ist.
  • Falls das Telemetrieobjekt 304 in Block 1222 feststellt, dass zu identifizieren ist, ob ein oder mehrere Auslöser aufgerufen wurden, kehrt die Steuerung zu Block 1202 zurück, um festzustellen, ob ein oder mehrere Auslöser aufgerufen worden sind, und andernfalls werden die beispielhaften maschinenlesbaren Befehle 1200 aus 12 abgeschlossen.
  • 13 ist ein Blockdiagramm einer beispielhaften Prozessorplattform 1300, die aufgebaut ist, um die Befehle aus den 8 - 12 auszuführen, um die beispielhafte Telemetrie-Steuereinrichtung 130A-C aus den 1 und/oder 2 zu implementieren. Die Prozessorplattform 1300 kann beispielsweise ein Server, ein Personalcomputer, eine Workstation, eine selbstlernende Maschine (beispielsweise ein neuronales Netz), eine mobile Vorrichtung (beispielsweise ein Mobiltelefon, ein Smartphone, ein Tablet in der Art eines iPads™), ein Internetgerät, eine Spielkonsole, eine Settop-Box, ein Headset oder eine andere tragbare Vorrichtung oder ein anderer Typ einer Rechenvorrichtung sein.
  • Die Prozessorplattform 1300 des erläuterten Beispiels weist einen Prozessor 1312 auf. Der Prozessor 1312 des erläuterten Beispiels ist Hardware. Beispielsweise kann der Prozessor 1312 durch eine oder mehrere integrierte Schaltungen, Logikschaltungen, Mikroprozessoren, GPU, DSP oder Steuereinrichtungen aus einer gewünschten Familie oder von einem gewünschten Hersteller implementiert sein. Der Hardwareprozessor kann eine halbleiterbasierte (beispielsweise siliciumbasierte) Vorrichtung sein. Bei diesem Beispiel implementiert der Prozessor 1312 die beispielhafte Ressourcenabfrage-Steuereinrichtung 220, die beispielhafte Kompositionssteuereinrichtung 230, die beispielhafte Leistungsmetrik-Bestimmungseinrichtung 232, den beispielhaften Objekterzeuger 234, den beispielhaften Schnittstellenerzeuger 236, den beispielhaften Kompositionserzeuger 238, die beispielhafte Ressourcenverfügbarkeits-Steuereinrichtung 240 und die beispielhafte Steuereinrichtung 250 für ausführbare Programme aus 2.
  • Der Prozessor 1312 aus dem erläuterten Beispiel weist einen lokalen Speicher 1313 (beispielsweise einen Cache) auf. Der Prozessor 1312 aus dem erläuterten Beispiel steht über einen Bus 1318 in Kommunikation mit einem Hauptspeicher einschließlich eines flüchtigen Speichers 1314 und eines nichtflüchtigen Speichers 1316. Der flüchtige Speicher 1314 kann durch einen synchronen dynamischen Direktzugriffsspeicher (SDRAM), einen dynamischen Direktzugriffsspeicher (DRAM), einen dynamischen RAMBUS®-Direktzugriffsspeicher (RDRAM®) und/oder einen anderen Typ einer Direktzugriffsspeichervorrichtung implementiert sein. Der nichtflüchtige Speicher 1316 kann durch einen Flash-Speicher und/oder einen anderen gewünschten Typ einer Speichervorrichtung implementiert sein. Der Zugriff auf den Hauptspeicher 1314, 1316 wird durch eine Speichersteuereinrichtung gesteuert.
  • Die Prozessorplattform 1300 aus dem erläuterten Beispiel weist auch eine Schnittstellenschaltung 1320 auf. Die Schnittstellenschaltung 1320 kann durch einen beliebigen Schnittstellenstandardtyp in der Art einer Ethernetschnittstelle, eines universellen seriellen Busses (USB), einer Bluetooth®-Schnittstelle, einer Nahfeldkommunikations(NFC)-Schnittstelle und/oder einer PCI-Expressschnittstelle implementiert sein. Bei diesem Beispiel implementiert die Schnittstellenschaltung 1320 die beispielhafte Netzschnittstelle 210 aus 2.
  • Beim erläuterten Beispiel sind eine oder mehrere Eingabevorrichtungen 1322 mit der Schnittstellenschaltung 1320 verbunden. Die eine oder die mehreren Eingabevorrichtungen 1322 ermöglichen es einem Benutzer, Daten und/oder Befehle in den Prozessor 1312 einzugeben. Die eine oder die mehreren Eingabevorrichtungen 1322 können beispielsweise durch einen Audiosensor, ein Mikrofon, eine Kamera (Fotokamera oder Videokamera), eine Tastatur, eine Taste, eine Maus, einen Touchscreen, ein Trackpad, einen Trackball, eine Isopoint-Vorrichtung und/oder ein Spracherkennungssystem implementiert sein.
  • Eine oder mehrere Ausgabevorrichtungen 1324 sind auch mit der Schnittstellenschaltung 1320 des erläuterten Beispiels verbunden. Die Ausgabevorrichtungen 1324 können beispielsweise durch Anzeigevorrichtungen (beispielsweise eine Leuchtdiode (LED), eine organische Leuchtdiode (OLED), eine Flüssigkristallanzeige (LCD), eine Kathodenstrahlröhrenanzeige (CRT), eine In-Place-Switching(IPS)-Anzeige, einen Touchscreen usw.), eine Berührungsausgabevorrichtung, einen Drucker und/oder einen Lautsprecher implementiert sein. Die Schnittstellenschaltung 1320 des erläuterten Beispiels weist demgemäß typischerweise eine Graphiktreiberkarte, einen Graphiktreiberchip und/oder einen Graphiktreiberprozessor auf.
  • Die Schnittstellenschaltung 1320 des erläuterten Beispiels weist auch eine Kommunikationsvorrichtung in der Art eines Senders, eines Empfängers, eines Sendeempfängers, eines Modems, eines Heim-Gateways, eines Drahtloszugangspunkts und/oder einer Netzschnittstelle zur Erleichterung des Datenaustausches mit externen Maschinen (beispielsweise Rechenvorrichtungen irgendeiner Art) über ein Netz 1326 auf. Die Kommunikation kann beispielsweise über eine Ethernetverbindung, eine Digitale-Teilnehmerleitung-(DSL)-Verbindung, eine Telefonleitungsverbindung, ein Koaxialkabelsystem, ein Satellitensystem, ein Sichtlinien-Drahtlossystem, ein Mobiltelefonsystem usw. erfolgen.
  • Die Prozessorplattform 1300 aus dem erläuterten Beispiel weist auch eine oder mehrere Massenspeichervorrichtungen 1328 zum Speichern von Software und/oder Daten auf. Beispiele solcher Massenspeichervorrichtungen 1328 umfassen Diskettenlaufwerke, Festplattenlaufwerke, CD-Laufwerke, Blu-ray-Laufwerke, Redundant-Array-of-Independent-Disk(RAID)-Systeme und Digital-Versatile-Disk(DVD)-Laufwerke.
  • In den 8 - 12 dargestellte beispielhafte maschinenausführbare Befehle 1332 können in der Massenspeichervorrichtung 1328, im flüchtigen Speicher 1314, im nichtflüchtigen Speicher 1316 und/oder auf einem entfernbaren nichtflüchtigen computerlesbaren Speichermedium in der Art einer CD oder DVD gespeichert werden.
  • 14 ist ein Blockdiagramm einer beispielhaften Prozessorplattform 1400, die aufgebaut ist, um die Befehle aus den 8 - 12 auszuführen, um den einen oder die mehreren Edge-Dienste 140, 150 aus 1 zu implementieren. Die Prozessorplattform 1400 kann beispielsweise ein Server, ein Personalcomputer, eine Workstation, eine selbstlernende Maschine (beispielsweise ein neuronales Netz), eine mobile Vorrichtung (beispielsweise ein Mobiltelefon, ein Smartphone, ein Tablet in der Art eines iPads™), ein Internetgerät, eine Spielkonsole, eine Settop-Box, ein Headset oder eine andere tragbare Vorrichtung oder ein anderer Typ einer Rechenvorrichtung sein.
  • Die Prozessorplattform 1400 des erläuterten Beispiels weist einen Prozessor 1412 auf. Der Prozessor 1412 des erläuterten Beispiels ist Hardware. Beispielsweise kann der Prozessor 1412 durch eine oder mehrere integrierte Schaltungen, Logikschaltungen, Mikroprozessoren, GPU, DSP oder Steuereinrichtungen aus einer gewünschten Familie oder von einem gewünschten Hersteller implementiert sein. Der Hardwareprozessor kann eine halbleiterbasierte (beispielsweise siliciumbasierte) Vorrichtung sein. Bei diesem Beispiel implementiert der Prozessor 1012 die beispielhafte Telemetrie-Steuereinrichtung 130B, 130C aus den 1 und/oder 2, den beispielhaften Orchestrator 142, 152, den beispielhaften Planer 144, 154, das beispielhafte ausführbare Programm 137, 139, die eine oder die mehreren beispielhaften Kompositionen 146, 156 und die eine oder die mehreren beispielhaften Ressourcen 149, 159 aus 1.
  • Der Prozessor 1412 aus dem erläuterten Beispiel weist einen lokalen Speicher 1413 (beispielsweise einen Cache) auf. Der Prozessor 1412 aus dem erläuterten Beispiel steht über einen Bus 1418 in Kommunikation mit einem Hauptspeicher einschließlich eines flüchtigen Speichers 1414 und eines nichtflüchtigen Speichers 1416. Der flüchtige Speicher 1414 kann durch SDRAM, DRAM, RDRAM® und/oder einen anderen Typ einer Direktzugriffsspeichervorrichtung implementiert werden. Der nichtflüchtige Speicher 1416 kann durch einen Flash-Speicher und/oder einen anderen gewünschten Typ einer Speichervorrichtung implementiert sein. Der Zugriff auf den Hauptspeicher 1414, 1416 wird durch eine Speichersteuereinrichtung gesteuert.
  • Die Prozessorplattform 1400 aus dem erläuterten Beispiel weist auch eine Schnittstellenschaltung 1420 auf. Die Schnittstellenschaltung 1420 kann durch einen beliebigen Schnittstellenstandardtyp in der Art einer Ethernetschnittstelle, einer USB-Schnittstelle, einer Bluetooth®-Schnittstelle, einer NFC-Schnittstelle und/oder einer PCI-Expressschnittstelle implementiert sein.
  • Beim erläuterten Beispiel sind eine oder mehrere Eingabevorrichtungen 1422 mit der Schnittstellenschaltung 1420 verbunden. Die eine oder die mehreren Eingabevorrichtungen 1422 ermöglichen es einem Benutzer, Daten und/oder Befehle in den Prozessor 1412 einzugeben. Die eine oder die mehreren Eingabevorrichtungen 1422 können beispielsweise durch einen Audiosensor, ein Mikrofon, eine Kamera (Photokamera oder Videokamera), eine Tastatur, eine Taste, eine Maus, einen Touchscreen, ein Trackpad, einen Trackball, eine Isopoint-Vorrichtung und/oder ein Spracherkennungssystem implementiert sein.
  • Eine oder mehrere Ausgabevorrichtungen 1424 sind auch mit der Schnittstellenschaltung 1420 des erläuterten Beispiels verbunden. Die Ausgabevorrichtungen 1424 können beispielsweise durch Anzeigevorrichtungen (beispielsweise eine LED-, OLED-, LCD-, CRT-Anzeige, IPS-Anzeige, einen Touchscreen usw.), eine Berührungsausgabevorrichtung, einen Drucker und/oder einen Lautsprecher implementiert werden. Die Schnittstellenschaltung 1420 des erläuterten Beispiels weist demgemäß typischerweise eine Graphiktreiberkarte, einen Graphiktreiberchip und/oder einen Graphiktreiberprozessor auf.
  • Die Schnittstellenschaltung 1420 des erläuterten Beispiels weist auch eine Kommunikationsvorrichtung in der Art eines Senders, eines Empfängers, eines Sendeempfängers, eines Modems, eines Heim-Gateways, eines Drahtloszugangspunkts und/oder einer Netzschnittstelle zur Erleichterung des Datenaustausches mit externen Maschinen (beispielsweise Rechenvorrichtungen irgendeiner Art) über ein Netz 1426 auf. Die Kommunikation kann beispielsweise über eine Ethernetverbindung, eine DSL-Verbindung, eine Telefonleitungsverbindung, ein Koaxialkabelsystem, ein Satellitensystem, ein Sichtlinien-Drahtlossystem, ein Mobiltelefonsystem usw. erfolgen.
  • Die Prozessorplattform 1400 aus dem erläuterten Beispiel weist auch eine oder mehrere Massenspeichervorrichtungen 1428 zum Speichern von Software und/oder Daten auf. Beispiele dieser Massenspeichervorrichtungen 1428 umfassen Diskettenlaufwerke, Festplattenlaufwerke, Compact-Disk-Laufwerke, Blu-ray-Disk-Laufwerke, RAID Systeme und DVD-Laufwerke. Bei diesem Beispiel implementieren die eine oder die mehreren Massenspeichervorrichtungen 1428 die ES-Datenbanken 148, 158 und die Telemetriedaten 136B, 136C aus 1.
  • In den 8 - 12 dargestellte beispielhafte maschinenausführbare Befehle 1432 können in der Massenspeichervorrichtung 1428, im flüchtigen Speicher 1414, im nichtflüchtigen Speicher 1416 und/oder auf einem entfernbaren nichtflüchtigen computerlesbaren Speichermedium in der Art einer CD oder DVD gespeichert werden. Zusätzlich oder alternativ können die Ressourcen 149, 159 wenigstens einen vom lokalen Speicher 1413, vom flüchtigen Speicher 1414, vom nichtflüchtigen Speicher 1416, vom Bus 1418, von der Schnittstelle 1420, von der einen oder den mehreren Eingabevorrichtungen 1422, von der einen oder den mehreren Ausgabevorrichtungen 1424 oder von der einen oder den mehreren Massenspeichervorrichtungen 1428 aufweisen und/oder diesen auf andere Weise entsprechen.
  • Anhand des vorstehend Erwähnten wird verständlich geworden sein, das beispielhafte Verfahren, Vorrichtungen und Herstellungsartikel offenbart wurden, welche die Verteilung von Edge-Rechenarbeitslasten auf der Grundlage aggregierter Telemetriedaten in Zusammenhang mit Edge-Diensten einer Edge-Umgebung verbessern. Die offenbarten Verfahren, Vorrichtungen und Herstellungsartikel verbessern die Orchestrierung in Edge-Clouds, Edge-Umgebungen usw. durch Erzeugen und/oder anderweitiges Bestimmen zeitlich festgelegter Telemetriedaten entsprechend wenigstens einer von (1) einer Auslastung einer oder mehrerer Ressourcen in Zusammenhang mit einem Edge-Dienst oder (2) einer Effizienz, mit der diese eine oder diese mehreren Ressourcen die ihnen auferlegten Anforderungen erfüllen können. Vorteilhafterweise verbessern die offenbarten Verfahren, Vorrichtungen und Herstellungsartikel die Art, in der Edge-Dienste die Anforderungen geringer Latenz und hoher Bandbreite von Endpunktvorrichtungen durch Verteilen von Edge-Rechenarbeitslasten auf Edge-Dienste, die eine oder mehrere verfügbare Ressourcen aufweisen, erfüllen können, wobei die eine oder die mehreren verfügbaren Ressourcen auf der Grundlage hier offenbarter Telemetriedatenaggregationstechniken identifiziert werden können. Die offenbarten Verfahren, Vorrichtungen und Herstellungsartikel verbessern die Effizienz der Verwendung einer Rechenvorrichtung durch Zuordnen von Edge-Rechenarbeitslasten zu einer oder mehreren verfügbaren Ressourcen der Rechenvorrichtung oder durch Leiten von Edge-Rechenarbeitslasten von einer stark belasteten oder zu stark ausgelasteten Rechenvorrichtung fort. Die offenbarten Verfahren, Vorrichtungen und Herstellungsartikel betreffen demgemäß eine oder mehrere Verbesserungen der Funktionsweise eines Computers.
  • Hier sind beispielhafte Verfahren, Vorrichtungen, Systeme und Herstellungsartikel zum Aggregieren von Telemetriedaten in einer Edge-Umgebung offenbart. Weitere Beispiele und Kombinationen davon werden nachstehend angegeben.
  • Beispiel 1 weist eine Vorrichtung zum Aggregieren von Telemetriedaten in einer Edge-Umgebung auf, wobei die Vorrichtung Folgendes umfasst: wenigstens einen Prozessor und einen Speicher, der Befehle aufweist, die, wenn sie ausgeführt werden, den wenigstens einen Prozessor veranlassen, wenigstens Folgendes auszuführen: Erzeugen einer Komposition für einen Edge-Dienst in der Edge-Umgebung, wobei die Komposition eine erste Schnittstelle zum Erhalten der Telemetriedaten repräsentiert, die Telemetriedaten Ressourcen des Edge-Dienstes zugeordnet sind und die Telemetriedaten eine Leistungsmetrik aufweisen, Erzeugen eines Ressourcenobjekts auf der Grundlage der Leistungsmetrik, wobei das Ressourcenobjekt eine zweite Schnittstelle repräsentiert und die zweite Schnittstelle die Leistungsmetrik von einer ersten der Ressourcen erhalten soll, Erzeugen eines Telemetrieobjekts auf der Grundlage der Leistungsmetrik, wobei das Telemetrieobjekt eine dritte Schnittstelle repräsentiert und die dritte Schnittstelle die Leistungsmetrik vom Ressourcenobjekt erhalten soll, und Erzeugen eines ausführbaren Telemetrieprogramms auf der Grundlage der Komposition, wobei die Komposition wenigstens eines vom Ressourcenobjekt oder vom Telemetrieobjekt aufweist, das ausführbare Telemetrieprogramm die Telemetriedaten ansprechend darauf erzeugen soll, dass der Edge-Dienst eine Rechenaufgabe ausführt, und die Rechenaufgabe auf der Grundlage der Telemetriedaten auf den Edge-Dienst verteilt wird.
  • Beispiel 2 weist die Vorrichtung nach Beispiel 1 auf, wobei die erste Ressource eine Hardware-Ressource ist und der wenigstens eine Prozessor Folgendes ausführen soll: Abbilden der Leistungsmetrik auf eine Funktion der Hardware-Ressource, wobei die Leistungsmetrik auf der Grundlage der die Funktion ausführenden Hardware-Ressource bestimmt wird, Abbilden der Leistungsmetrik auf ein von der Hardware-Ressource erzeugtes Ereignis, wobei das Ereignis wenigstens einem von einem Hardwarezähler oder einem Softwarezähler entspricht, Erzeugen einer Ressourceninformationsobjekt(RIO)-Schnittstelle auf der Grundlage des Ereignisses, wobei die RIO-Schnittstelle einen ersten Befehl zum Erhalten der Leistungsmetrik von der Hardware-Ressource repräsentiert, und Erzeugen eines RIOs auf der Grundlage der Funktion, wobei das RIO einen zweiten Befehl zum Erhalten der Leistungsmetrik von der RIO-Schnittstelle repräsentiert.
  • Beispiel 3 weist die Vorrichtung nach Beispiel 1 auf, wobei die erste Ressource eine Hardware-Ressource ist und der wenigstens eine Prozessor Folgendes ausführen soll: Abbilden der Leistungsmetrik auf eine Funktion einer Telemetrie-Ressource, wobei die Telemetrie-Ressource einen ersten Befehl zum Erhalten von Telemetriedaten vom Ressourcenobjekt repräsentiert und die Leistungsmetrik auf der Grundlage der eine Rechenaufgabe ausführenden Hardware-Ressource bestimmt wird, Abbilden der Leistungsmetrik auf eine Anwendungsprogrammierschnittstelle (API), Erzeugen einer Telemetrieinformationsobjekt(TIO)-Schnittstelle auf der Grundlage der API, wobei die TIO-Schnittstelle einen zweiten Befehl zum Erhalten einer Anforderung der Telemetriedaten von einer Endpunktumgebung repräsentiert, und Erzeugen eines TIOs auf der Grundlage des ersten Befehls, wobei das TIO einen dritten Befehl zum Erhalten der Leistungsmetrik vom Ressourcenobjekt repräsentiert.
  • Beispiel 4 weist die Vorrichtung nach Beispiel 1 auf, wobei die erste Ressource eine Hardware-Ressource oder eine Software-Ressource ist, die Komposition ein oder mehrere Ressourcenmodelle, einschließlich eines ersten Ressourcenmodells, aufweist und der wenigstens eine Prozessor Folgendes ausführen soll: Erzeugen eines ersten Ressourcenobjekts durch Virtualisieren der Hardware-Ressource oder der Software-Ressource, Erzeugen eines ersten Telemetrieobjekts, das einen oder mehrere Befehle zum Aufrufen des ersten Ressourcenobjekts repräsentiert, um eine der Hardware-Ressource oder der Software-Ressource zugeordnete Leistungsmetrik zu erhalten, Feststellen, dass ein zweites Ressourcenobjekt vom ersten Ressourcenobjekt abhängt, und, ansprechend auf die Feststellung, Zuweisen eines zweiten Telemetrieobjekts als vom ersten Telemetrieobjekt abhängig, wobei das zweite Telemetrieobjekt dem zweiten Ressourcenobjekt entspricht.
  • Beispiel 5 weist die Vorrichtung nach Beispiel 4 auf, wobei der eine oder die mehreren Befehle einen ersten Befehl aufweisen und der wenigstens eine Prozessor Folgendes ausführen soll: ansprechend auf das Erhalten eines zweiten Befehls zum Erhalten der Telemetriedaten von der Komposition, Aufrufen des ersten Telemetrieobjekts, um einen dritten Befehl zum Erhalten der Telemetriedaten vom ersten Ressourcenobjekt zu erzeugen, und, ansprechend auf das Erhalten des ersten Befehls, Aufrufen des ersten Ressourcenobjekts, die Telemetriedaten von der Hardware-Ressource oder der Software-Ressource zu erhalten.
  • Beispiel 6 weist die Vorrichtung nach Beispiel 1 auf, wobei die Komposition eine erste Komposition ist, das Ressourcenobjekt ein erstes Ressourcenobjekt ist, das Telemetrieobjekt ein erstes Telemetrieobjekt ist, die Ressourcen eine zweite Ressource aufweisen, das ausführbare Telemetrieprogramm ein erstes ausführbares Programm ist und der wenigstens eine Prozessor Folgendes ausführen soll: Erzeugen eines zweiten Ressourcenobjekts und eines zweiten Telemetrieobjekts auf der Grundlage der zweiten Ressource, ansprechend auf die Feststellung, dass das zweite Ressourcenobjekt vom ersten Ressourcenobjekt abhängig ist, Erzeugen einer zweiten Komposition durch Zuweisen des zweiten Ressourcenobjekts als vom ersten Ressourcenobjekt abhängig, und Zuweisen des zweiten Telemetrieobjekts als vom ersten Telemetrieobjekt abhängig, und Erzeugen eines zweiten ausführbaren Programms auf der Grundlage der ersten Komposition, wobei das zweite ausführbare Programm die Telemetriedaten erzeugen soll.
  • Beispiel 7 weist die Vorrichtung nach Beispiel 1 auf, wobei das Ressourcenobjekt ein erstes Ressourcenobjekt ist, das Telemetrieobjekt ein erstes Telemetrieobjekt ist, die Ressourcen eine zweite Ressource aufweisen, die Telemetriedaten erste Telemetriedaten, zweite Telemetriedaten und dritte Telemetriedaten aufweisen und der wenigstens eine Prozessor Folgendes ausführen soll: Erzeugen eines zweiten Ressourcenobjekts und eines zweiten Telemetrieobjekts auf der Grundlage der zweiten Ressource, wobei das zweite Ressourcenobjekt vom ersten Ressourcenobjekt abhängig ist und das zweite Telemetrieobjekt vom ersten Telemetrieobjekt abhängig ist, Erzeugen der zweiten Telemetriedaten durch Aufrufen des zweiten Telemetrieobjekts, ansprechend auf die Erzeugung der zweiten Telemetriedaten, Erzeugen der ersten Telemetriedaten durch Aufrufen des ersten Telemetrieobjekts, und Bestimmen der dritten Telemetriedaten auf der Grundlage der ersten Telemetriedaten und der zweiten Telemetriedaten.
  • Beispiel 8 weist die Vorrichtung nach Beispiel 7 auf, wobei die Leistungsmetrik eine erste Leistungsmetrik ist, die ersten Telemetriedaten die erste Leistungsmetrik aufweisen, die zweiten Telemetriedaten eine zweite Leistungsmetrik aufweisen und die dritten Telemetriedaten eine dritte Leistungsmetrik aufweisen und der wenigstens eine Prozessor Folgendes ausführen soll: Bestimmen eines Erste-Leistungsmetrik-Codes auf der Grundlage der ersten Leistungsmetrik, eines Zweite-Leistungsmetrik-Codes auf der Grundlage der zweiten Leistungsmetrik und eines Dritte-Leistungsmetrik-Codes auf der Grundlage der dritten Leistungsmetrik und, ansprechend auf das Aufrufen eines Auslösers, der angibt, dass die erste Leistungsmetrik und die zweite Leistungsmetrik erzeugt werden, Abbilden des Erste-Leistungsmetrik-Codes auf eine erste Speicherstelle, welche die erste Leistungsmetrik speichert, Abbilden des Zweite-Leistungsmetrik-Codes auf eine zweite Speicherstelle, welche die zweite Leistungsmetrik speichert, Bestimmen der dritten Leistungsmetrik auf der Grundlage der ersten Leistungsmetrik und der zweiten Leistungsmetrik, und, ansprechend auf die Abbildung des Dritte-Leistungsmetrik-Codes auf eine dritte Speicherstelle, Speichern der dritten Leistungsmetrik an der dritten Speicherstelle.
  • Beispiel 9 weist ein nichtflüchtiges computerlesbares Speichermedium auf, das Befehle umfasst, die, wenn sie ausgeführt werden, eine Maschine veranlassen, wenigstens Folgendes auszuführen: Erzeugen einer Komposition für einen Edge-Dienst in einer Edge-Umgebung, wobei die Komposition eine erste Schnittstelle zum Erhalten von Telemetriedaten repräsentiert, die Telemetriedaten Ressourcen des Edge-Dienstes zugeordnet werden und die Telemetriedaten eine Leistungsmetrik aufweisen, wobei die Befehle die Komposition durch Folgendes erzeugen sollen: Erzeugen eines Ressourcenobjekts auf der Grundlage der Leistungsmetrik, wobei das Ressourcenobjekt eine zweite Schnittstelle repräsentiert und die zweite Schnittstelle die Leistungsmetrik von einer ersten der Ressourcen erhalten soll, und Erzeugen eines Telemetrieobjekts auf der Grundlage der Leistungsmetrik, wobei das Telemetrieobjekt eine dritte Schnittstelle repräsentiert und die dritte Schnittstelle die Leistungsmetrik vom Ressourcenobjekt erhalten soll, und Erzeugen eines ausführbaren Telemetrieprogramms auf der Grundlage der Komposition, wobei die Komposition wenigstens eines vom Ressourcenobjekt oder vom Telemetrieobjekt aufweist, Ausführen des ausführbaren Telemetrieprogramms zur Erzeugung der Telemetriedaten und, ansprechend auf die Verteilung einer Rechenaufgabe auf den Edge-Dienst auf der Grundlage der Telemetriedaten, Ausführen der Rechenaufgabe.
  • Beispiel 10 weist das nichtflüchtige computerlesbare Speichermedium nach Beispiel 9 auf, wobei die erste Ressource eine Hardware-Ressource ist und die Befehle, wenn sie ausgeführt werden, die Maschine veranlassen, Folgendes auszuführen: Abbilden der Leistungsmetrik auf eine Funktion der Hardware-Ressource, wobei die Leistungsmetrik auf der Grundlage der die Funktion ausführenden Hardware-Ressource bestimmt wird, Abbilden der Leistungsmetrik auf ein von der Hardware-Ressource erzeugtes Ereignis, wobei das Ereignis wenigstens einem von einem Hardwarezähler oder einem Softwarezähler entspricht, Erzeugen einer Ressourceninformationsobjekt(RIO)-Schnittstelle auf der Grundlage des Ereignisses, wobei die RIO-Schnittstelle einen ersten Befehl zum Erhalten der Leistungsmetrik von der Hardware-Ressource repräsentiert, und Erzeugen eines RIOs auf der Grundlage der Funktion, wobei das RIO einen zweiten Befehl zum Erhalten der Leistungsmetrik von der RIO-Schnittstelle repräsentiert.
  • Beispiel 11 weist das nichtflüchtige computerlesbare Speichermedium nach Beispiel 9 auf, wobei die erste Ressource eine Hardware-Ressource ist und die Befehle, wenn sie ausgeführt werden, die Maschine veranlassen, Folgendes auszuführen: Abbilden der Leistungsmetrik auf eine Funktion einer Telemetrie-Ressource, wobei die Telemetrie-Ressource einen ersten Befehl zum Erhalten von Telemetriedaten vom Ressourcenobjekt repräsentiert und die Leistungsmetrik auf der Grundlage der eine Rechenaufgabe ausführenden Hardware-Ressource bestimmt wird, Abbilden der Leistungsmetrik auf eine Anwendungsprogrammierschnittstelle (API), Erzeugen einer Telemetrieinformationsobjekt-(TIO)-Schnittstelle auf der Grundlage der API, wobei die TIO-Schnittstelle einen zweiten Befehl zum Erhalten einer Anforderung der Telemetriedaten von einer Endpunktumgebung repräsentiert, und Erzeugen eines TIOs auf der Grundlage des ersten Befehls, wobei das TIO einen dritten Befehl zum Erhalten der Leistungsmetrik vom Ressourcenobjekt repräsentiert.
  • Beispiel 12 weist das nichtflüchtige computerlesbare Speichermedium nach Beispiel 9 auf, wobei die erste Ressource eine Hardware-Ressource oder eine Software-Ressource ist, wobei die Komposition ein oder mehrere Ressourcenmodelle, einschließlich eines ersten Ressourcenmodells, aufweist und die Befehle, wenn sie ausgeführt werden, die Maschine veranlassen, das erste Ressourcenmodell durch Folgendes zu erzeugen: Erzeugen eines ersten Ressourcenobjekts durch Virtualisieren der Hardware-Ressource oder der Software-Ressource, Erzeugen eines ersten Telemetrieobjekts, das einen oder mehrere Befehle zum Aufrufen des ersten Ressourcenobjekts repräsentiert, um eine der Hardware-Ressource oder der Software-Ressource zugeordnete Leistungsmetrik zu erhalten, Feststellen, dass ein zweites Ressourcenobjekt vom ersten Ressourcenobjekt abhängt, und, ansprechend auf die Feststellung, Zuweisen eines zweiten Telemetrieobjekts als vom ersten Telemetrieobjekt abhängig, wobei das zweite Telemetrieobjekt dem zweiten Ressourcenobjekt entspricht.
  • Beispiel 13 weist das nichtflüchtige computerlesbare Speichermedium nach Beispiel 12 auf, wobei der eine oder die mehreren Befehle einen ersten Befehl aufweisen und die Befehle, wenn sie ausgeführt werden, die Maschine veranlassen, Folgendes auszuführen: ansprechend auf das Erhalten eines zweiten Befehls zum Erhalten der Telemetriedaten von der Komposition, Aufrufen des ersten Telemetrieobjekts, um einen dritten Befehl zum Erhalten der Telemetriedaten vom ersten Ressourcenobjekt zu erzeugen, und, ansprechend auf das Erhalten des ersten Befehls, Aufrufen des ersten Ressourcenobjekts, die Telemetriedaten von der Hardware-Ressource oder der Software-Ressource zu erhalten.
  • Beispiel 14 weist das nichtflüchtige computerlesbare Speichermedium nach Beispiel 9 auf, wobei die Komposition eine erste Komposition ist, das Ressourcenobjekt ein erstes Ressourcenobjekt ist, das Telemetrieobjekt ein erstes Telemetrieobjekt ist, die Ressourcen eine zweite Ressource aufweisen, das ausführbare Telemetrieprogramm ein erstes ausführbares Programm ist und die Befehle, wenn sie ausgeführt werden, die Maschine veranlassen, Folgendes auszuführen: Erzeugen eines zweiten Ressourcenobjekts und eines zweiten Telemetrieobjekts auf der Grundlage der zweiten Ressource, ansprechend auf die Feststellung, dass das zweite Ressourcenobjekt vom ersten Ressourcenobjekt abhängig ist, Erzeugen einer zweiten Komposition durch: Zuweisen des zweiten Ressourcenobjekts als vom ersten Ressourcenobjekt abhängig, und Zuweisen des zweiten Telemetrieobjekts als vom ersten Telemetrieobjekt abhängig, Erzeugen eines zweiten ausführbaren Programms auf der Grundlage der ersten Komposition und Erzeugen der Telemetriedaten auf der Grundlage des zweiten ausführbaren Programms.
  • Beispiel 15 weist das nichtflüchtige computerlesbare Speichermedium nach Beispiel 9 auf, wobei das Ressourcenobjekt ein erstes Ressourcenobjekt ist, das Telemetrieobjekt ein erstes Telemetrieobjekt ist, die Ressourcen eine zweite Ressource aufweisen, die Telemetriedaten erste Telemetriedaten, zweite Telemetriedaten und dritte Telemetriedaten aufweisen und die Befehle, wenn sie ausgeführt werden, die Maschine veranlassen, Folgendes auszuführen: Erzeugen eines zweiten Ressourcenobjekts und eines zweiten Telemetrieobjekts auf der Grundlage der zweiten Ressource, wobei das zweite Ressourcenobjekt vom ersten Ressourcenobjekt abhängig ist und das zweite Telemetrieobjekt vom ersten Telemetrieobjekt abhängig ist, Erzeugen der zweiten Telemetriedaten durch Aufrufen des zweiten Telemetrieobjekts, ansprechend auf die Erzeugung der zweiten Telemetriedaten, Erzeugen der ersten Telemetriedaten durch Aufrufen des ersten Telemetrieobjekts, und Bestimmen der dritten Telemetriedaten auf der Grundlage der ersten Telemetriedaten und der zweiten Telemetriedaten.
  • Beispiel 16 weist das nichtflüchtige computerlesbare Speichermedium nach Beispiel 15 auf, wobei die Leistungsmetrik eine erste Leistungsmetrik ist, die ersten Telemetriedaten die erste Leistungsmetrik aufweisen, die zweiten Telemetriedaten eine zweite Leistungsmetrik aufweisen und die dritten Telemetriedaten eine dritte Leistungsmetrik aufweisen und die Befehle, wenn sie ausgeführt werden, die Maschine veranlassen, Folgendes auszuführen: Bestimmen eines Erste-Leistungsmetrik-Codes auf der Grundlage der ersten Leistungsmetrik, eines Zweite-Leistungsmetrik-Codes auf der Grundlage der zweiten Leistungsmetrik und eines Dritte-Leistungsmetrik-Codes auf der Grundlage der dritten Leistungsmetrik und, ansprechend auf das Aufrufen eines Auslösers, der angibt, dass die erste Leistungsmetrik und die zweite Leistungsmetrik erzeugt werden, Abbilden des Erste-Leistungsmetrik-Codes auf eine erste Speicherstelle, welche die erste Leistungsmetrik speichert, Abbilden des Zweite-Leistungsmetrik-Codes auf eine zweite Speicherstelle, welche die zweite Leistungsmetrik speichert, Bestimmen der dritten Leistungsmetrik auf der Grundlage der ersten Leistungsmetrik und der zweiten Leistungsmetrik, und, ansprechend auf die Abbildung des Dritte-Leistungsmetrik-Codes auf eine dritte Speicherstelle, Speichern der dritten Leistungsmetrik an der dritten Speicherstelle.
  • Beispiel 17 weist eine Vorrichtung zum Aggregieren von Telemetriedaten in einer Edge-Umgebung auf, wobei die Vorrichtung Folgendes umfasst: Mittel zum Zusammenstellen einer Komposition für einen Edge-Dienst in der Edge-Umgebung, wobei die Komposition eine erste Schnittstelle zum Erhalten der Telemetriedaten repräsentiert, die Telemetriedaten Ressourcen des Edge-Dienstes zugeordnet sind und die Telemetriedaten eine Leistungsmetrik aufweisen, Mittel, um Folgendes zu erzeugen: ein Ressourcenobjekt auf der Grundlage der Leistungsmetrik, wobei das Ressourcenobjekt eine zweite Schnittstelle repräsentiert und die zweite Schnittstelle die Leistungsmetrik von einer ersten der Ressourcen erhalten soll, und ein Telemetrieobjekt auf der Grundlage der Leistungsmetrik, wobei das Telemetrieobjekt eine dritte Schnittstelle repräsentiert und die dritte Schnittstelle die Leistungsmetrik vom Ressourcenobjekt erhalten soll, und Mittel zum Kompilieren eines ausführbaren Telemetrieprogramms auf der Grundlage der Komposition, wobei die Komposition wenigstens eines vom Ressourcenobjekt oder vom Telemetrieobjekt aufweist, das ausführbare Telemetrieprogramm die Telemetriedaten ansprechend darauf erzeugen soll, dass der Edge-Dienst eine Rechenaufgabe ausführt, und die Rechenaufgabe auf der Grundlage der Telemetriedaten auf den Edge-Dienst verteilt wird.
  • Beispiel 18 weist die Vorrichtung nach Beispiel 17 auf, wobei die erste Ressource eine Hardware-Ressource ist, und wobei sie ferner Folgendes aufweist: erste Mittel zum Abbilden der Leistungsmetrik auf eine Funktion der Hardware-Ressource, wobei die Leistungsmetrik auf der Grundlage der die Funktion ausführenden Hardware-Ressource bestimmt wird, zweite Mittel zum Abbilden der Leistungsmetrik auf ein von der Hardware-Ressource erzeugtes Ereignis, wobei das Ereignis wenigstens einem von einem Hardwarezähler oder einem Softwarezähler entspricht, und die Mittel zum Erzeugen einer Ressourceninformationsobjekt(RIO)-Schnittstelle auf der Grundlage des Ereignisses, wobei die RIO-Schnittstelle einen ersten Befehl zum Erhalten der Leistungsmetrik von der Hardware-Ressource repräsentiert, und zum Erzeugen eines RIOs auf der Grundlage der Funktion, wobei das RIO einen zweiten Befehl zum Erhalten der Leistungsmetrik von der RIO-Schnittstelle repräsentiert.
  • Beispiel 19 weist die Vorrichtung nach Beispiel 17 auf, wobei die erste Ressource eine Hardware-Ressource ist, welche ferner Folgendes aufweist: erste Mittel zum Abbilden der Leistungsmetrik auf eine Funktion einer Telemetrie-Ressource, wobei die Telemetrie-Ressource einen ersten Befehl zum Erhalten von Telemetriedaten vom Ressourcenobjekt repräsentiert und die Leistungsmetrik auf der Grundlage der eine Rechenaufgabe ausführenden Hardware-Ressource bestimmt wird, zweite Mittel zum Abbilden der Leistungsmetrik auf eine Anwendungsprogrammierschnittstelle (API), wobei die Mittel zur Erzeugung Folgendes ausführen sollen: Erzeugen einer Telemetrieinformationsobjekt(TIO)-Schnittstelle auf der Grundlage der API, wobei die TIO-Schnittstelle einen zweiten Befehl zum Erhalten einer Anforderung der Telemetriedaten von einer Endpunktumgebung repräsentiert, und Erzeugen eines TIOs auf der Grundlage des ersten Befehls, wobei das TIO einen dritten Befehl zum Erhalten der Leistungsmetrik vom Ressourcenobjekt repräsentiert.
  • Beispiel 20 weist die Vorrichtung nach Beispiel 17 auf, wobei die erste Ressource eine Hardware-Ressource oder eine Software-Ressource ist und die Komposition ein oder mehrere Ressourcenmodelle, einschließlich eines ersten Ressourcenmodells, aufweist, welche ferner Folgendes aufweist: die Mittel zur Erzeugung, um Folgendes auszuführen: Erzeugen eines ersten Ressourcenobjekts durch Virtualisieren der Hardware-Ressource oder der Software-Ressource und Erzeugen eines ersten Telemetrieobjekts, das einen oder mehrere Befehle zum Aufrufen des ersten Ressourcenobjekts repräsentiert, um eine der Hardware-Ressource oder der Software-Ressource zugeordnete Leistungsmetrik zu erhalten, und die Mittel zum Zusammenstellen, um Folgendes auszuführen: Feststellen, dass ein zweites Ressourcenobjekt vom ersten Ressourcenobjekt abhängt, und, ansprechend auf die Feststellung, Zuweisen eines zweiten Telemetrieobjekts als vom ersten Telemetrieobjekt abhängig, wobei das zweite Telemetrieobjekt dem zweiten Ressourcenobjekt entspricht.
  • Beispiel 21 weist die Vorrichtung nach Beispiel 20 auf, wobei der eine oder die mehreren Befehle einen ersten Befehl aufweisen, wobei sie ferner Folgendes aufweist: erste Mittel, um ansprechend auf das Erhalten eines zweiten Befehls zum Erhalten der Telemetriedaten von der Komposition das erste Telemetrieobjekt aufzurufen, einen dritten Befehl zum Erhalten der Telemetriedaten vom ersten Ressourcenobjekt zu erzeugen, und zweite Mittel, um ansprechend auf das Erhalten des ersten Befehls das erste Ressourcenobjekt aufzurufen, die Telemetriedaten von der Hardware-Ressource oder der Software-Ressource zu erhalten.
  • Beispiel 22 weist die Vorrichtung nach Beispiel 17 auf, wobei die Komposition eine erste Komposition ist, das Ressourcenobjekt ein erstes Ressourcenobjekt ist, das Telemetrieobjekt ein erstes Telemetrieobjekt ist, die Ressourcen eine zweite Ressource aufweisen und das ausführbare Telemetrieprogramm ein erstes ausführbares Programm ist, wobei sie ferner Folgendes aufweist: die Mittel zum Erzeugen, um ein zweites Ressourcenobjekt und ein zweites Telemetrieobjekt auf der Grundlage der zweiten Ressource zu erzeugen, die Mittel zum Zusammenstellen, um ansprechend auf die Feststellung, dass das zweite Ressourcenobjekt vom ersten Ressourcenobjekt abhängig ist, eine zweite Komposition zu erzeugen, indem sie Folgendes ausführen: Zuweisen des zweiten Ressourcenobjekts als vom ersten Ressourcenobjekt abhängig, und Zuweisen des zweiten Telemetrieobjekts als vom ersten Telemetrieobjekt abhängig, und die Mittel zum Kompilieren, um auf der Grundlage der ersten Komposition ein zweites ausführbares Programm zu erzeugen, wobei das zweite ausführbare Programm die Telemetriedaten erzeugen soll.
  • Beispiel 23 weist die Vorrichtung nach Beispiel 17 auf, wobei das Ressourcenobjekt ein erstes Ressourcenobjekt ist, das Telemetrieobjekt ein erstes Telemetrieobjekt ist, die Ressourcen eine zweite Ressource aufweisen, die Telemetriedaten erste Telemetriedaten, zweite Telemetriedaten und dritte Telemetriedaten aufweisen und die Mittel zum Erzeugen erste Mittel zum Erzeugen sind, welche ferner Folgendes aufweist: die ersten Mittel zum Erzeugen, um ein zweites Ressourcenobjekt und ein zweites Telemetrieobjekt auf der Grundlage der zweiten Ressource zu erzeugen, wobei das zweite Ressourcenobjekt vom ersten Ressourcenobjekt abhängig ist und das zweite Telemetrieobjekt vom ersten Telemetrieobjekt abhängig ist, und zweite Mittel zum Erzeugen, um Folgendes auszuführen: Erzeugen der zweiten Telemetriedaten durch Aufrufen des zweiten Telemetrieobjekts, ansprechend auf die Erzeugung der zweiten Telemetriedaten, Erzeugen der ersten Telemetriedaten durch Aufrufen des ersten Telemetrieobjekts, und Bestimmen der dritten Telemetriedaten auf der Grundlage der ersten Telemetriedaten und der zweiten Telemetriedaten.
  • Beispiel 24 weist die Vorrichtung nach Beispiel 23 auf, wobei die Leistungsmetrik eine erste Leistungsmetrik ist, die ersten Telemetriedaten die erste Leistungsmetrik aufweisen, die zweiten Telemetriedaten eine zweite Leistungsmetrik aufweisen und die dritten Telemetriedaten eine dritte Leistungsmetrik aufweisen und die zweiten Mittel zur Erzeugung Folgendes ausführen sollen: Bestimmen eines Erste-Leistungsmetrik-Codes auf der Grundlage der ersten Leistungsmetrik, eines Zweite-Leistungsmetrik-Codes auf der Grundlage der zweiten Leistungsmetrik und eines Dritte-Leistungsmetrik-Codes auf der Grundlage der dritten Leistungsmetrik und, ansprechend auf das Aufrufen eines Auslösers, der angibt, dass die erste Leistungsmetrik und die zweite Leistungsmetrik erzeugt werden, Abbilden des Erste-Leistungsmetrik-Codes auf eine erste Speicherstelle, welche die erste Leistungsmetrik speichert, Abbilden des Zweite-Leistungsmetrik-Codes auf eine zweite Speicherstelle, welche die zweite Leistungsmetrik speichert, Bestimmen der dritten Leistungsmetrik auf der Grundlage der ersten Leistungsmetrik und der zweiten Leistungsmetrik, und, ansprechend auf die Abbildung des Dritte-Leistungsmetrik-Codes auf eine dritte Speicherstelle, Speichern der dritten Leistungsmetrik an der dritten Speicherstelle.
  • Beispiel 25 weist ein nichtflüchtiges computerlesbares Speichermedium auf, das Befehle umfasst, die, wenn sie ausgeführt werden, wenigstens einen Prozessor veranlassen, wenigstens Folgendes auszuführen: ansprechend auf das Erhalten einer Anforderung zur Ausführung einer Arbeitslast von einer Edge-Vorrichtung, Entdecken mehrerer Edge-Dienstressourcen in Zusammenhang mit wenigstens einem Edge-Dienst in einer Edge-Umgebung, wobei der wenigstens eine Edge-Dienst erste Edge-Dienstressourcen von den mehreren Edge-Dienstressourcen aufweist, Identifizieren des wenigstens einen Edge-Dienstes auf der Grundlage vom wenigstens einen Edge-Dienst erhaltener erster Telemetriedaten, wobei die ersten Telemetriedaten eine Leistungsmetrik aufweisen, welche die Verfügbarkeit der ersten Edge-Dienstressourcen für die Ausführung der Arbeitslast angeben, Verteilen der Arbeitslast auf den wenigstens einen Edge-Dienst zur Ausführung und, ansprechend darauf, dass der wenigstens eine Edge-Dienst ein Telemetriemodell ausführt, Erhalten zweiter Telemetriedaten vom wenigstens einen Edge-Dienst auf der Grundlage der Ausführung der Arbeitslast durch den wenigstens einen Edge-Dienst, wobei das Telemetriemodell eine erste Schnittstelle zum Erhalten der von den ersten Edge-Dienstressourcen erzeugten zweiten Telemetriedaten aufweist.
  • Beispiel 26 weist das nichtflüchtige computerlesbare Speichermedium nach Beispiel 25 auf, wobei die zweiten Telemetriedaten die Leistungsmetrik aufweisen, die ersten Edge-Dienstressourcen eine erste Hardware-Ressource aufweisen und die Befehle, wenn sie ausgeführt werden, den wenigstens einen Prozessor veranlassen, Folgendes auszuführen: Erzeugen eines Ressourcenobjekts auf der Grundlage der Leistungsmetrik, wobei das Ressourcenobjekt eine zweite Schnittstelle repräsentiert, wobei die zweite Schnittstelle die Leistungsmetrik anhand der ersten Hardware-Ressource erhalten soll, und Erzeugen eines Telemetrieobjekts auf der Grundlage der Leistungsmetrik, wobei das Telemetrieobjekt eine dritte Schnittstelle repräsentiert, wobei die dritte Schnittstelle die Leistungsmetrik anhand des Ressourcenobjekts erhalten soll.
  • Beispiel 27 weist das nichtflüchtige computerlesbare Speichermedium nach Beispiel 26 auf, wobei die ersten Edge-Dienstressourcen eine Hardware-Ressource aufweisen und die Befehle, wenn sie ausgeführt werden, den wenigstens einen Prozessor veranlassen, Folgendes auszuführen: Abbilden der Leistungsmetrik auf eine Funktion einer Telemetrie-Ressource, wobei die Telemetrie-Ressource einen ersten Befehl zum Erhalten von Telemetriedaten vom Ressourcenobjekt repräsentiert und die Leistungsmetrik auf der Grundlage der eine Rechenaufgabe ausführenden Hardware-Ressource bestimmt wird, Abbilden der Leistungsmetrik auf eine Anwendungsprogrammierschnittstelle (API), Erzeugen einer Telemetrieinformationsobjekt(TIO)-Schnittstelle auf der Grundlage der API, wobei die TIO-Schnittstelle einen zweiten Befehl zum Erhalten einer Anforderung der Telemetriedaten von einer Endpunktumgebung repräsentiert, und Erzeugen eines TIOs auf der Grundlage des ersten Befehls, wobei das TIO einen dritten Befehl zum Erhalten der Leistungsmetrik vom Ressourcenobjekt repräsentiert.
  • Beispiel 28 weist das nichtflüchtige computerlesbare Speichermedium nach Beispiel 25 auf, wobei die ersten Edge-Dienstressourcen eine Hardware-Ressource aufweisen und die Befehle, wenn sie ausgeführt werden, den wenigstens einen Prozessor veranlassen, Folgendes auszuführen: Abbilden der Leistungsmetrik auf eine Funktion der Hardware-Ressource, wobei die Leistungsmetrik auf der Grundlage der die Funktion ausführenden Hardware-Ressource bestimmt wird, Abbilden der Leistungsmetrik auf ein von der Hardware-Ressource erzeugtes Ereignis, wobei das Ereignis wenigstens einem von einem Hardwarezähler oder einem Softwarezähler entspricht, Erzeugen einer Ressourceninformationsobjekt(RIO)-Schnittstelle auf der Grundlage des Ereignisses, wobei die RIO-Schnittstelle einen ersten Befehl zum Erhalten der Leistungsmetrik von der Hardware-Ressource repräsentiert, und Erzeugen eines RIOs auf der Grundlage der Funktion, wobei das RIO einen zweiten Befehl zum Erhalten der Leistungsmetrik von der RIO-Schnittstelle repräsentiert.
  • Beispiel 29 weist ein Verfahren zum Aggregieren von Telemetriedaten in einer Edge-Umgebung auf, wobei das Verfahren Folgendes umfasst: Erzeugen einer Komposition für einen Edge-Dienst in der Edge-Umgebung, wobei die Komposition eine erste Schnittstelle zum Erhalten der Telemetriedaten repräsentiert, die Telemetriedaten Ressourcen des Edge-Dienstes zugeordnet werden und die Telemetriedaten eine Leistungsmetrik aufweisen, Erzeugen eines Ressourcenobjekts auf der Grundlage der Leistungsmetrik, wobei das Ressourcenobjekt eine zweite Schnittstelle repräsentiert und die zweite Schnittstelle die Leistungsmetrik von einer ersten der Ressourcen erhalten soll, und Erzeugen eines Telemetrieobjekts auf der Grundlage der Leistungsmetrik, wobei das Telemetrieobjekt eine dritte Schnittstelle repräsentiert und die dritte Schnittstelle die Leistungsmetrik vom Ressourcenobjekt erhalten soll, Erzeugen eines ausführbaren Telemetrieprogramms auf der Grundlage der Komposition, wobei die Komposition wenigstens eines vom Ressourcenobjekt oder vom Telemetrieobjekt aufweist, Ausführen des ausführbaren Telemetrieprogramms zur Erzeugung der Telemetriedaten und, ansprechend auf die Verteilung einer Rechenaufgabe auf den Edge-Dienst auf der Grundlage der Telemetriedaten, Ausführen der Rechenaufgabe.
  • Beispiel 30 weist das Verfahren nach Beispiel 29 auf, wobei die erste Ressource eine Hardware-Ressource ist, wobei es ferner Folgendes aufweist: Abbilden der Leistungsmetrik auf eine Funktion der Hardware-Ressource, wobei die Leistungsmetrik auf der Grundlage der die Funktion ausführenden Hardware-Ressource bestimmt wird, Abbilden der Leistungsmetrik auf ein von der Hardware-Ressource erzeugtes Ereignis, wobei das Ereignis wenigstens einem von einem Hardwarezähler oder einem Softwarezähler entspricht, Erzeugen einer Ressourceninformationsobjekt(RIO)-Schnittstelle auf der Grundlage des Ereignisses, wobei die RIO-Schnittstelle einen ersten Befehl zum Erhalten der Leistungsmetrik von der Hardware-Ressource repräsentiert, und Erzeugen eines RIOs auf der Grundlage der Funktion, wobei das RIO einen zweiten Befehl zum Erhalten der Leistungsmetrik von der RIO-Schnittstelle repräsentiert.
  • Beispiel 31 weist das Verfahren nach Beispiel 29 auf, wobei die erste Ressource eine Hardware-Ressource ist, wobei es ferner Folgendes aufweist: Abbilden der Leistungsmetrik auf eine Funktion einer Telemetrie-Ressource, wobei die Telemetrie-Ressource einen ersten Befehl zum Erhalten von Telemetriedaten vom Ressourcenobjekt repräsentiert und die Leistungsmetrik auf der Grundlage der eine Rechenaufgabe ausführenden Hardware-Ressource bestimmt wird, Abbilden der Leistungsmetrik auf eine Anwendungsprogrammierschnittstelle (API), Erzeugen einer Telemetrieinformationsobjekt(TIO)-Schnittstelle auf der Grundlage der API, wobei die TIO-Schnittstelle einen zweiten Befehl zum Erhalten einer Anforderung der Telemetriedaten von einer Endpunktumgebung repräsentiert, und Erzeugen eines TIOs auf der Grundlage des ersten Befehls, wobei das TIO einen dritten Befehl zum Erhalten der Leistungsmetrik vom Ressourcenobjekt repräsentiert.
  • Beispiel 32 weist das Verfahren nach Beispiel 29 auf, wobei die erste Ressource eine Hardware-Ressource oder eine Software-Ressource ist und die Komposition ein oder mehrere Ressourcenmodelle, einschließlich eines ersten Ressourcenmodells, aufweist, wobei es ferner Folgendes aufweist: Erzeugen des ersten Ressourcenmodells durch Erzeugen eines ersten Ressourcenobjekts durch Virtualisieren der Hardware-Ressource oder der Software-Ressource, Erzeugen eines ersten Telemetrieobjekts, das einen oder mehrere Befehle zum Aufrufen des ersten Ressourcenobjekts repräsentiert, um eine der Hardware-Ressource oder der Software-Ressource zugeordnete Leistungsmetrik zu erhalten, Feststellen, dass ein zweites Ressourcenobjekt vom ersten Ressourcenobjekt abhängt, und, ansprechend auf die Feststellung, Zuweisen eines zweiten Telemetrieobjekts als vom ersten Telemetrieobjekt abhängig, wobei das zweite Telemetrieobjekt dem zweiten Ressourcenobjekt entspricht.
  • Beispiel 33 weist das Verfahren nach Beispiel 32 auf, wobei der eine oder die mehreren Befehle einen ersten Befehl aufweisen, wobei es ferner Folgendes aufweist: ansprechend auf das Erhalten eines zweiten Befehls zum Erhalten der Telemetriedaten von der Komposition, Aufrufen des ersten Telemetrieobjekts, um einen dritten Befehl zum Erhalten der Telemetriedaten vom ersten Ressourcenobjekt zu erzeugen, und, ansprechend auf das Erhalten des ersten Befehls, Aufrufen des ersten Ressourcenobjekts, die Telemetriedaten von der Hardware-Ressource oder der Software-Ressource zu erhalten.
  • Beispiel 34 weist das Verfahren nach Beispiel 29 auf, wobei die Komposition eine erste Komposition ist, das Ressourcenobjekt ein erstes Ressourcenobjekt ist, das Telemetrieobjekt ein erstes Telemetrieobjekt ist, die Ressourcen eine zweite Ressource aufweisen und das ausführbare Telemetrieprogramm ein erstes ausführbares Programm ist, wobei es ferner Folgendes aufweist: Erzeugen eines zweiten Ressourcenobjekts und eines zweiten Telemetrieobjekts auf der Grundlage der zweiten Ressource, ansprechend auf die Feststellung, dass das zweite Ressourcenobjekt vom ersten Ressourcenobjekt abhängig ist, Erzeugen einer zweiten Komposition durch Zuweisen des zweiten Ressourcenobjekts als vom ersten Ressourcenobjekt abhängig und Zuweisen des zweiten Telemetrieobjekts als vom ersten Telemetrieobjekt abhängig, Erzeugen eines zweiten ausführbaren Programms auf der Grundlage der ersten Komposition und Erzeugen der Telemetriedaten auf der Grundlage des zweiten ausführbaren Programms.
  • Beispiel 35 weist das Verfahren nach Beispiel 29 auf, wobei das Ressourcenobjekt ein erstes Ressourcenobjekt ist, das Telemetrieobjekt ein erstes Telemetrieobjekt ist, die Ressourcen eine zweite Ressource aufweisen, die Telemetriedaten erste Telemetriedaten, zweite Telemetriedaten und dritte Telemetriedaten aufweisen, wobei es ferner Folgendes aufweist: Erzeugen eines zweiten Ressourcenobjekts und eines zweiten Telemetrieobjekts auf der Grundlage der zweiten Ressource, wobei das zweite Ressourcenobjekt vom ersten Ressourcenobjekt abhängig ist und das zweite Telemetrieobjekt vom ersten Telemetrieobjekt abhängig ist, Erzeugen der zweiten Telemetriedaten durch Aufrufen des zweiten Telemetrieobjekts, ansprechend auf die Erzeugung der zweiten Telemetriedaten, Erzeugen der ersten Telemetriedaten durch Aufrufen des ersten Telemetrieobjekts, und Bestimmen der dritten Telemetriedaten auf der Grundlage der ersten Telemetriedaten und der zweiten Telemetriedaten.
  • Beispiel 36 weist das Verfahren nach Beispiel 35 auf, wobei die Leistungsmetrik eine erste Leistungsmetrik ist, die ersten Telemetriedaten die erste Leistungsmetrik aufweisen, die zweiten Telemetriedaten eine zweite Leistungsmetrik aufweisen und die dritten Telemetriedaten eine dritte Leistungsmetrik aufweisen, wobei es ferner Folgendes aufweist: Bestimmen eines Erste-Leistungsmetrik-Codes auf der Grundlage der ersten Leistungsmetrik, eines Zweite-Leistungsmetrik-Codes auf der Grundlage der zweiten Leistungsmetrik und eines Dritte-Leistungsmetrik-Codes auf der Grundlage der dritten Leistungsmetrik und, ansprechend auf das Aufrufen eines Auslösers, der angibt, dass die erste Leistungsmetrik und die zweite Leistungsmetrik erzeugt werden, Abbilden des Erste-Leistungsmetrik-Codes auf eine erste Speicherstelle, welche die erste Leistungsmetrik speichert, Abbilden des Zweite-Leistungsmetrik-Codes auf eine zweite Speicherstelle, welche die zweite Leistungsmetrik speichert, Bestimmen der dritten Leistungsmetrik auf der Grundlage der ersten Leistungsmetrik und der zweiten Leistungsmetrik, und, ansprechend auf die Abbildung des Dritte-Leistungsmetrik-Codes auf eine dritte Speicherstelle, Speichern der dritten Leistungsmetrik an der dritten Speicherstelle.
  • Beispiel 37 weist eine Vorrichtung zum Aggregieren von Telemetriedaten in einer Edge-Umgebung auf, wobei die Vorrichtung Folgendes umfasst: einen Kompositionserzeuger zum Erzeugen einer Komposition für einen Edge-Dienst in der Edge-Umgebung, wobei die Komposition eine erste Schnittstelle zum Erhalten der Telemetriedaten repräsentiert, die Telemetriedaten Ressourcen des Edge-Dienstes zugeordnet sind und die Telemetriedaten eine Leistungsmetrik aufweisen, einen Objekterzeuger zum Erzeugen eines Ressourcenobjekts auf der Grundlage der Leistungsmetrik, wobei das Ressourcenobjekt eine zweite Schnittstelle repräsentiert und die zweite Schnittstelle die Leistungsmetrik von einer ersten der Ressourcen erhalten soll, und Erzeugen eines Telemetrieobjekts auf der Grundlage der Leistungsmetrik, wobei das Telemetrieobjekt eine dritte Schnittstelle repräsentiert und die dritte Schnittstelle die Leistungsmetrik vom Ressourcenobjekt erhalten soll, und eine Steuereinrichtung für ausführbare Programme zum Erzeugen eines ausführbaren Telemetrieprogramms auf der Grundlage der Komposition, wobei die Komposition wenigstens eines vom Ressourcenobjekt oder vom Telemetrieobjekt aufweist und das ausführbare Telemetrieprogramm die Telemetriedaten ansprechend darauf erzeugen soll, dass der Edge-Dienst eine Rechenaufgabe ausführt, wobei die Rechenaufgabe auf der Grundlage der Telemetriedaten auf den Edge-Dienst verteilt wird.
  • Beispiel 38 weist die Vorrichtung nach Beispiel 37 auf, wobei die erste Ressource eine Hardware-Ressource ist, wobei sie ferner Folgendes aufweist: den Objekterzeuger zum Abbilden der Leistungsmetrik auf eine Funktion der Hardware-Ressource, wobei die Leistungsmetrik auf der Grundlage der die Funktion ausführenden Hardware-Ressource bestimmt wird, einen Schnittstellenerzeuger zum Abbilden der Leistungsmetrik auf ein von der Hardware-Ressource erzeugtes Ereignis, wobei das Ereignis wenigstens einem von einem Hardwarezähler oder einem Softwarezähler entspricht, und Erzeugen einer Ressourceninformationsobjekt(RIO)-Schnittstelle auf der Grundlage des Ereignisses, wobei die RIO-Schnittstelle einen ersten Befehl zum Erhalten der Leistungsmetrik von der Hardware-Ressource repräsentiert, und den Objekterzeuger zum Erzeugen eines RIOs auf der Grundlage der Funktion, wobei das RIO einen zweiten Befehl zum Erhalten der Leistungsmetrik von der RIO-Schnittstelle repräsentiert.
  • Beispiel 39 weist die Vorrichtung nach Beispiel 37 auf, wobei die erste Ressource eine Hardware-Ressource ist, wobei sie ferner Folgendes aufweist: den Objekterzeuger zum Abbilden der Leistungsmetrik auf eine Funktion einer Telemetrie-Ressource, wobei die Telemetrie-Ressource einen ersten Befehl zum Erhalten von Telemetriedaten vom Ressourcenobjekt repräsentiert, wobei die Leistungsmetrik auf der Grundlage der eine Rechenaufgabe ausführenden Hardware-Ressource bestimmt wird, einen Schnittstellenerzeuger zum Abbilden der Leistungsmetrik auf eine Anwendungsprogrammierschnittstelle (API) und zum Erzeugen einer Telemetrieinformationsobjekt(TIO)-Schnittstelle auf der Grundlage der API, wobei die TIO-Schnittstelle einen zweiten Befehl zum Erhalten einer Anforderung der Telemetriedaten von einer Endpunktumgebung repräsentiert, und den Objekterzeuger zum Erzeugen eines TIOs auf der Grundlage des ersten Befehls, wobei das TIO einen dritten Befehl zum Erhalten der Leistungsmetrik vom Ressourcenobjekt repräsentiert.
  • Beispiel 40 weist die Vorrichtung nach Beispiel 37 auf, wobei die erste Ressource eine Hardware-Ressource oder eine Software-Ressource ist und die Komposition ein oder mehrere Ressourcenmodelle, einschließlich eines ersten Ressourcenmodells, aufweist, wobei sie ferner Folgendes aufweist: den Objekterzeuger zum Erzeugen eines ersten Ressourcenobjekts durch Virtualisieren der Hardware-Ressource oder der Software-Ressource und zum Erzeugen eines ersten Telemetrieobjekts, das einen oder mehrere Befehle zum Aufrufen des ersten Ressourcenobjekts repräsentiert, um eine der Hardware-Ressource oder der Software-Ressource zugeordnete Leistungsmetrik zu erhalten, und den Kompositionserzeuger zum Feststellen, dass ein zweites Ressourcenobjekt vom ersten Ressourcenobjekt abhängt, und, ansprechend auf die Feststellung, Zuweisen eines zweiten Telemetrieobjekts als vom ersten Telemetrieobjekt abhängig, wobei das zweite Telemetrieobjekt dem zweiten Ressourcenobjekt entspricht.
  • Beispiel 41 weist die Vorrichtung nach Beispiel 40 auf, wobei der eine oder die mehreren Befehle einen ersten Befehl aufweisen und das ausführbare Telemetrieprogramm Folgendes ausführen soll: ansprechend auf das Erhalten eines zweiten Befehls zum Erhalten der Telemetriedaten von der Komposition, Aufrufen des ersten Telemetrieobjekts, um einen dritten Befehl zum Erhalten der Telemetriedaten vom ersten Ressourcenobjekt zu erzeugen, und, ansprechend auf das Erhalten des ersten Befehls, Aufrufen des ersten Ressourcenobjekts, die Telemetriedaten von der Hardware-Ressource oder der Software-Ressource zu erhalten.
  • Beispiel 42 weist die Vorrichtung nach Beispiel 37 auf, wobei die Komposition eine erste Komposition ist, das Ressourcenobjekt ein erstes Ressourcenobjekt ist, das Telemetrieobjekt ein erstes Telemetrieobjekt ist, die Ressourcen eine zweite Ressource aufweisen und das ausführbare Telemetrieprogramm ein erstes ausführbares Programm ist, wobei sie ferner Folgendes aufweist: den Objekterzeuger zum Erzeugen eines zweiten Ressourcenobjekts und eines zweiten Telemetrieobjekts auf der Grundlage der zweiten Ressource, ansprechend auf die Feststellung, dass das zweite Ressourcenobjekt vom ersten Ressourcenobjekt abhängig ist, den Kompositionserzeuger zum Erzeugen einer zweiten Komposition durch Zuweisen des zweiten Ressourcenobjekts als vom ersten Ressourcenobjekt abhängig und zum Zuweisen des zweiten Telemetrieobjekts als vom ersten Telemetrieobjekt abhängig, und die Steuereinrichtung für ausführbare Programme zum Erzeugen eines zweiten ausführbaren Programms auf der Grundlage der ersten Komposition, wobei das zweite ausführbare Programm die Telemetriedaten erzeugen soll.
  • Beispiel 43 weist die Vorrichtung nach Beispiel 37 auf, wobei das Ressourcenobjekt ein erstes Ressourcenobjekt ist, das Telemetrieobjekt ein erstes Telemetrieobjekt ist, die Ressourcen eine zweite Ressource aufweisen und die Telemetriedaten erste Telemetriedaten, zweite Telemetriedaten und dritte Telemetriedaten aufweisen, wobei sie ferner Folgendes aufweist: den Objekterzeuger zum Erzeugen eines zweiten Ressourcenobjekts und eines zweiten Telemetrieobjekts auf der Grundlage der zweiten Ressource, wobei das zweite Ressourcenobjekt vom ersten Ressourcenobjekt abhängig ist und das zweite Telemetrieobjekt vom ersten Telemetrieobjekt abhängig ist, und das ausführbare Telemetrieprogramm zum Erzeugen der zweiten Telemetriedaten durch Aufrufen des zweiten Telemetrieobjekts, ansprechend auf die Erzeugung der zweiten Telemetriedaten, Erzeugen der ersten Telemetriedaten durch Aufrufen des ersten Telemetrieobjekts und Bestimmen der dritten Telemetriedaten auf der Grundlage der ersten Telemetriedaten und der zweiten Telemetriedaten.
  • Beispiel 44 weist die Vorrichtung nach Beispiel 43 auf, wobei die Leistungsmetrik eine erste Leistungsmetrik ist, die ersten Telemetriedaten die erste Leistungsmetrik aufweisen, die zweiten Telemetriedaten eine zweite Leistungsmetrik aufweisen und die dritten Telemetriedaten eine dritte Leistungsmetrik aufweisen, wobei das ausführbare Telemetrieprogramm Folgendes ausführen soll: Bestimmen eines Erste-Leistungsmetrik-Codes auf der Grundlage der ersten Leistungsmetrik, eines Zweite-Leistungsmetrik-Codes auf der Grundlage der zweiten Leistungsmetrik und eines Dritte-Leistungsmetrik-Codes auf der Grundlage der dritten Leistungsmetrik und, ansprechend auf das Aufrufen eines Auslösers, der angibt, dass die erste Leistungsmetrik und die zweite Leistungsmetrik erzeugt werden, Abbilden des Erste-Leistungsmetrik-Codes auf eine erste Speicherstelle, welche die erste Leistungsmetrik speichert, Abbilden des Zweite-Leistungsmetrik-Codes auf eine zweite Speicherstelle, welche die zweite Leistungsmetrik speichert, Bestimmen der dritten Leistungsmetrik auf der Grundlage der ersten Leistungsmetrik und der zweiten Leistungsmetrik, und, ansprechend auf die Abbildung des Dritte-Leistungsmetrik-Codes auf eine dritte Speicherstelle, Speichern der dritten Leistungsmetrik an der dritten Speicherstelle.
  • Wenngleich hier bestimmte beispielhafte Verfahren, Vorrichtungen und Herstellungsartikel offenbart wurden, ist der Abdeckungsbereich dieses Patents nicht darauf beschränkt. Dieses Patent deckt dagegen alle Verfahren, Vorrichtungen und Herstellungsartikel ab, die grob in den Schutzumfang der Ansprüche dieses Patents fallen.
  • Die folgenden Ansprüche werden hiermit durch diese Bezugnahme in diese Detaillierte Beschreibung aufgenommen, wobei jeder Anspruch für sich als eine getrennte Ausführungsform der vorliegenden Offenbarung steht.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • US 62/939303 [0001]
    • US 62/907597 [0001]

Claims (25)

  1. Vorrichtung zum Aggregieren von Telemetriedaten in einer Edge-Umgebung, wobei die Vorrichtung Folgendes umfasst: wenigstens einen Prozessor und einen Speicher, der Befehle aufweist, die, wenn sie ausgeführt werden, den wenigstens einen Prozessor veranlassen, wenigstens Folgendes auszuführen: Erzeugen einer Komposition für einen Edge-Dienst in der Edge-Umgebung, wobei die Komposition eine erste Schnittstelle zum Erhalten der Telemetriedaten repräsentiert, die Telemetriedaten Ressourcen des Edge-Dienstes zugeordnet sind und die Telemetriedaten eine Leistungsmetrik aufweisen, Erzeugen eines Ressourcenobjekts auf der Grundlage der Leistungsmetrik, wobei das Ressourcenobjekt eine zweite Schnittstelle repräsentiert und die zweite Schnittstelle die Leistungsmetrik von einer ersten der Ressourcen erhalten soll, Erzeugen eines Telemetrieobjekts auf der Grundlage der Leistungsmetrik, wobei das Telemetrieobjekt eine dritte Schnittstelle repräsentiert und die dritte Schnittstelle die Leistungsmetrik vom Ressourcenobjekt erhalten soll, und Erzeugen eines ausführbaren Telemetrieprogramms auf der Grundlage der Komposition, wobei die Komposition wenigstens eines vom Ressourcenobjekt oder vom Telemetrieobjekt aufweist, das ausführbare Telemetrieprogramm die Telemetriedaten ansprechend darauf erzeugen soll, dass der Edge-Dienst eine Rechenaufgabe ausführt, und die Rechenaufgabe auf der Grundlage der Telemetriedaten auf den Edge-Dienst verteilt wird.
  2. Vorrichtung nach Anspruch 1, wobei die erste Ressource eine Hardware-Ressource ist und der wenigstens eine Prozessor Folgendes ausführen soll: Abbilden der Leistungsmetrik auf eine Funktion der Hardware-Ressource, wobei die Leistungsmetrik auf der Grundlage der die Funktion ausführenden Hardware-Ressource bestimmt wird, Zuordnen der Leistungsmetrik auf ein von der Hardware-Ressource erzeugtes Ereignis, wobei das Ereignis wenigstens einem von einem Hardwarezähler oder einem Softwarezähler entspricht, Erzeugen einer Ressourceninformationsobjekt(RIO)-Schnittstelle auf der Grundlage des Ereignisses, wobei die RIO-Schnittstelle einen ersten Befehl zum Erhalten der Leistungsmetrik von der Hardware-Ressource repräsentiert, und Erzeugen eines RIOs auf der Grundlage der Funktion, wobei das RIO einen zweiten Befehl zum Erhalten der Leistungsmetrik von der RIO-Schnittstelle repräsentiert.
  3. Vorrichtung nach einem der Ansprüche 1-2, wobei die erste Ressource eine Hardware-Ressource oder eine Software-Ressource ist, die Komposition ein oder mehrere Ressourcenmodelle, einschließlich eines ersten Ressourcenmodells, aufweist und der wenigstens eine Prozessor Folgendes ausführen soll: Erzeugen eines ersten Ressourcenobjekts durch Virtualisieren der Hardware-Ressource oder der Software-Ressource, Erzeugen eines ersten Telemetrieobjekts, das einen oder mehrere Befehle zum Aufrufen des ersten Ressourcenobjekts repräsentiert, um eine der Hardware-Ressource oder der Software-Ressource zugeordnete Leistungsmetrik zu erhalten, Feststellen, dass ein zweites Ressourcenobjekt vom ersten Ressourcenobjekt abhängt, und, ansprechend auf die Feststellung, Zuweisen eines zweiten Telemetrieobjekts als vom ersten Telemetrieobjekt abhängig, wobei das zweite Telemetrieobjekt dem zweiten Ressourcenobjekt entspricht.
  4. Vorrichtung nach Anspruch 3, wobei der eine oder die mehreren Befehle einen ersten Befehl aufweisen und der wenigstens eine Prozessor Folgendes ausführen soll: ansprechend auf das Erhalten eines zweiten Befehls zum Erhalten der Telemetriedaten von der Komposition, Aufrufen des ersten Telemetrieobjekts, um einen dritten Befehl zum Erhalten der Telemetriedaten vom ersten Ressourcenobjekt zu erzeugen, und, ansprechend auf das Erhalten des ersten Befehls, Aufrufen des ersten Ressourcenobjekts, die Telemetriedaten von der Hardware-Ressource oder der Software-Ressource zu erhalten.
  5. Vorrichtung nach einem der Ansprüche 1-2, wobei die Komposition eine erste Komposition ist, das Ressourcenobjekt ein erstes Ressourcenobjekt ist, das Telemetrieobjekt ein erstes Telemetrieobjekt ist, die Ressourcen eine zweite Ressource aufweisen, das ausführbare Telemetrieprogramm ein erstes ausführbares Programm ist und der wenigstens eine Prozessor Folgendes ausführen soll: Erzeugen eines zweiten Ressourcenobjekts und eines zweiten Telemetrieobjekts auf der Grundlage der zweiten Ressource, ansprechend auf die Feststellung, dass das zweite Ressourcenobjekt vom ersten Ressourcenobjekt abhängig ist, Erzeugen einer zweiten Komposition durch: Zuweisen des zweiten Ressourcenobjekts als vom ersten Ressourcenobjekt abhängig, und Zuweisen des zweiten Telemetrieobjekts als vom ersten Telemetrieobjekt abhängig, und Erzeugen eines zweiten ausführbaren Programms auf der Grundlage der ersten Komposition, wobei das zweite ausführbare Programm die Telemetriedaten erzeugen soll.
  6. Vorrichtung nach einem der Ansprüche 1-2, wobei das Ressourcenobjekt ein erstes Ressourcenobjekt ist, das Telemetrieobjekt ein erstes Telemetrieobjekt ist, die Ressourcen eine zweite Ressource aufweisen, die Telemetriedaten erste Telemetriedaten, zweite Telemetriedaten und dritte Telemetriedaten aufweisen und der wenigstens eine Prozessor Folgendes ausführen soll: Erzeugen eines zweiten Ressourcenobjekts und eines zweiten Telemetrieobjekts auf der Grundlage der zweiten Ressource, wobei das zweite Ressourcenobjekt vom ersten Ressourcenobjekt abhängig ist und das zweite Telemetrieobjekt vom ersten Telemetrieobjekt abhängig ist, Erzeugen der zweiten Telemetriedaten durch Aufrufen des zweiten Telemetrieobjekts, ansprechend auf die Erzeugung der zweiten Telemetriedaten, Erzeugen der ersten Telemetriedaten durch Aufrufen des ersten Telemetrieobjekts, und Bestimmen der dritten Telemetriedaten auf der Grundlage der ersten Telemetriedaten und der zweiten Telemetriedaten.
  7. Vorrichtung nach Anspruch 6, wobei die Leistungsmetrik eine erste Leistungsmetrik ist, die ersten Telemetriedaten die erste Leistungsmetrik aufweisen, die zweiten Telemetriedaten eine zweite Leistungsmetrik aufweisen und die dritten Telemetriedaten eine dritte Leistungsmetrik aufweisen und der wenigstens eine Prozessor Folgendes ausführen soll: Bestimmen eines Erste-Leistungsmetrik-Codes auf der Grundlage der ersten Leistungsmetrik, eines Zweite-Leistungsmetrik-Codes auf der Grundlage der zweiten Leistungsmetrik und eines Dritte-Leistungsmetrik-Codes auf der Grundlage der dritten Leistungsmetrik und, ansprechend auf das Aufrufen eines Auslösers, der angibt, dass die erste Leistungsmetrik und die zweite Leistungsmetrik erzeugt werden: Abbilden des Erste-Leistungsmetrik-Codes auf eine erste Speicherstelle, welche die erste Leistungsmetrik speichert, Abbilden des Zweite-Leistungsmetrik-Codes auf eine zweite Speicherstelle, welche die zweite Leistungsmetrik speichert, Bestimmen der dritten Leistungsmetrik auf der Grundlage der ersten Leistungsmetrik und der zweiten Leistungsmetrik, und, ansprechend auf die Abbildung des Dritte-Leistungsmetrik-Codes auf eine dritte Speicherstelle, Speichern der dritten Leistungsmetrik an der dritten Speicherstelle.
  8. Nichtflüchtiges computerlesbares Speichermedium, das Befehle umfasst, die, wenn sie ausgeführt werden, eine Maschine veranlassen, wenigstens Folgendes auszuführen: Erzeugen einer Komposition für einen Edge-Dienst in einer Edge-Umgebung, wobei die Komposition eine erste Schnittstelle zum Erhalten von Telemetriedaten repräsentiert, die Telemetriedaten Ressourcen des Edge-Dienstes zugeordnet werden und die Telemetriedaten eine Leistungsmetrik aufweisen, wobei die Befehle die Komposition durch Folgendes erzeugen sollen: Erzeugen eines Ressourcenobjekts auf der Grundlage der Leistungsmetrik, wobei das Ressourcenobjekt eine zweite Schnittstelle repräsentiert und die zweite Schnittstelle die Leistungsmetrik von einer ersten der Ressourcen erhalten soll, und Erzeugen eines Telemetrieobjekts auf der Grundlage der Leistungsmetrik, wobei das Telemetrieobjekt eine dritte Schnittstelle repräsentiert und die dritte Schnittstelle die Leistungsmetrik vom Ressourcenobjekt erhalten soll, und Erzeugen eines ausführbaren Telemetrieprogramms auf der Grundlage der Komposition, wobei die Komposition wenigstens eines vom Ressourcenobjekt oder vom Telemetrieobjekt aufweist, Ausführen des ausführbaren Telemetrieprogramms zur Erzeugung der Telemetriedaten und, ansprechend auf die Verteilung einer Rechenaufgabe auf den Edge-Dienst auf der Grundlage der Telemetriedaten, Ausführen der Rechenaufgabe.
  9. Nichtflüchtiges computerlesbares Speichermedium nach Anspruch 8, wobei die erste Ressource eine Hardware-Ressource ist und die Befehle, wenn sie ausgeführt werden, die Maschine veranlassen, Folgendes auszuführen: Abbilden der Leistungsmetrik auf eine Funktion der Hardware-Ressource, wobei die Leistungsmetrik auf der Grundlage der die Funktion ausführenden Hardware-Ressource bestimmt wird, Zuordnen der Leistungsmetrik auf ein von der Hardware-Ressource erzeugtes Ereignis, wobei das Ereignis wenigstens einem von einem Hardwarezähler oder einem Softwarezähler entspricht, Erzeugen einer Ressourceninformationsobjekt(RIO)-Schnittstelle auf der Grundlage des Ereignisses, wobei die RIO-Schnittstelle einen ersten Befehl zum Erhalten der Leistungsmetrik von der Hardware-Ressource repräsentiert, und Erzeugen eines RIOs auf der Grundlage der Funktion, wobei das RIO einen zweiten Befehl zum Erhalten der Leistungsmetrik von der RIO-Schnittstelle repräsentiert.
  10. Nichtflüchtiges computerlesbares Speichermedium nach Anspruch 8, wobei die erste Ressource eine Hardware-Ressource ist und die Befehle, wenn sie ausgeführt werden, die Maschine veranlassen, Folgendes auszuführen: Abbilden der Leistungsmetrik auf eine Funktion einer Telemetrie-Ressource, wobei die Telemetrie-Ressource einen ersten Befehl zum Erhalten von Telemetriedaten vom Ressourcenobjekt repräsentiert und die Leistungsmetrik auf der Grundlage der eine Rechenaufgabe ausführenden Hardware-Ressource bestimmt wird, Abbilden der Leistungsmetrik auf eine Anwendungsprogrammierschnittstelle (API), Erzeugen einer Telemetrieinformationsobjekt(TIO)-Schnittstelle auf der Grundlage der API, wobei die TIO-Schnittstelle einen zweiten Befehl zum Erhalten einer Anforderung der Telemetriedaten von einer Endpunktumgebung repräsentiert, und Erzeugen eines TIOs auf der Grundlage des ersten Befehls, wobei das TIO einen dritten Befehl zum Erhalten der Leistungsmetrik vom Ressourcenobjekt repräsentiert.
  11. Nichtflüchtiges computerlesbares Speichermedium nach einem der Ansprüche 8-10, wobei die erste Ressource eine Hardware-Ressource oder eine Software-Ressource ist, wobei die Komposition ein oder mehrere Ressourcenmodelle, einschließlich eines ersten Ressourcenmodells, aufweist und die Befehle, wenn sie ausgeführt werden, die Maschine veranlassen, das erste Ressourcenmodell durch Folgendes zu erzeugen: Erzeugen eines ersten Ressourcenobjekts durch Virtualisieren der Hardware-Ressource oder der Software-Ressource, Erzeugen eines ersten Telemetrieobjekts, das einen oder mehrere Befehle zum Aufrufen des ersten Ressourcenobjekts repräsentiert, um eine der Hardware-Ressource oder der Software-Ressource zugeordnete Leistungsmetrik zu erhalten, Feststellen, dass ein zweites Ressourcenobjekt vom ersten Ressourcenobjekt abhängt, und, ansprechend auf die Feststellung, Zuweisen eines zweiten Telemetrieobjekts als vom ersten Telemetrieobjekt abhängig, wobei das zweite Telemetrieobjekt dem zweiten Ressourcenobjekt entspricht.
  12. Nichtflüchtiges computerlesbares Speichermedium nach Anspruch 11, wobei der eine oder die mehreren Befehle einen ersten Befehl aufweisen und die Befehle, wenn sie ausgeführt werden, die Maschine veranlassen, Folgendes auszuführen: ansprechend auf das Erhalten eines zweiten Befehls zum Erhalten der Telemetriedaten von der Komposition, Aufrufen des ersten Telemetrieobjekts, um einen dritten Befehl zum Erhalten der Telemetriedaten vom ersten Ressourcenobjekt zu erzeugen, und, ansprechend auf das Erhalten des ersten Befehls, Aufrufen des ersten Ressourcenobjekts, die Telemetriedaten von der Hardware-Ressource oder der Software-Ressource zu erhalten.
  13. Nichtflüchtiges computerlesbares Speichermedium nach einem der Ansprüche 8-10, wobei die Komposition eine erste Komposition ist, das Ressourcenobjekt ein erstes Ressourcenobjekt ist, das Telemetrieobjekt ein erstes Telemetrieobjekt ist, die Ressourcen eine zweite Ressource aufweisen, das ausführbare Telemetrieprogramm ein erstes ausführbares Programm ist und die Befehle, wenn sie ausgeführt werden, die Maschine veranlassen, Folgendes auszuführen: Erzeugen eines zweiten Ressourcenobjekts und eines zweiten Telemetrieobjekts auf der Grundlage der zweiten Ressource, ansprechend auf die Feststellung, dass das zweite Ressourcenobjekt vom ersten Ressourcenobjekt abhängig ist, Erzeugen einer zweiten Komposition durch: Zuweisen des zweiten Ressourcenobjekts als vom ersten Ressourcenobjekt abhängig, und Zuweisen des zweiten Telemetrieobjekts als vom ersten Telemetrie- objekt abhängig, Erzeugen eines zweiten ausführbaren Programms auf der Grundlage der ersten Komposition und Erzeugen der Telemetriedaten auf der Grundlage des zweiten ausführbaren Programms.
  14. Nichtflüchtiges computerlesbares Speichermedium nach einem der Ansprüche 8-10, wobei das Ressourcenobjekt ein erstes Ressourcenobjekt ist, das Telemetrieobjekt ein erstes Telemetrieobjekt ist, die Ressourcen eine zweite Ressource aufweisen, die Telemetriedaten erste Telemetriedaten, zweite Telemetriedaten und dritte Telemetriedaten aufweisen und die Befehle, wenn sie ausgeführt werden, die Maschine veranlassen, Folgendes auszuführen: Erzeugen eines zweiten Ressourcenobjekts und eines zweiten Telemetrieobjekts auf der Grundlage der zweiten Ressource, wobei das zweite Ressourcenobjekt vom ersten Ressourcenobjekt abhängig ist und das zweite Telemetrieobjekt vom ersten Telemetrieobjekt abhängig ist, Erzeugen der zweiten Telemetriedaten durch Aufrufen des zweiten Telemetrieobjekts, ansprechend auf die Erzeugung der zweiten Telemetriedaten, Erzeugen der ersten Telemetriedaten durch Aufrufen des ersten Telemetrieobjekts, und Bestimmen der dritten Telemetriedaten auf der Grundlage der ersten Telemetriedaten und der zweiten Telemetriedaten.
  15. Nichtflüchtiges computerlesbares Speichermedium nach Anspruch 14, wobei die Leistungsmetrik eine erste Leistungsmetrik ist, die ersten Telemetriedaten die erste Leistungsmetrik aufweisen, die zweiten Telemetriedaten eine zweite Leistungsmetrik aufweisen und die dritten Telemetriedaten eine dritte Leistungsmetrik aufweisen und die Befehle, wenn sie ausgeführt werden, die Maschine veranlassen, Folgendes auszuführen: Bestimmen eines Erste-Leistungsmetrik-Codes auf der Grundlage der ersten Leistungsmetrik, eines Zweite-Leistungsmetrik-Codes auf der Grundlage der zweiten Leistungsmetrik und eines Dritte-Leistungsmetrik-Codes auf der Grundlage der dritten Leistungsmetrik und, ansprechend auf das Aufrufen eines Auslösers, der angibt, dass die erste Leistungsmetrik und die zweite Leistungsmetrik erzeugt werden: Abbilden des Erste-Leistungsmetrik-Codes auf eine erste Speicherstelle, welche die erste Leistungsmetrik speichert, Abbilden des Zweite-Leistungsmetrik-Codes auf eine zweite Speicherstelle, welche die zweite Leistungsmetrik speichert, Bestimmen der dritten Leistungsmetrik auf der Grundlage der ersten Leistungsmetrik und der zweiten Leistungsmetrik, und, ansprechend auf die Abbildung des Dritte-Leistungsmetrik-Codes auf eine dritte Speicherstelle, Speichern der dritten Leistungsmetrik an der dritten Speicherstelle.
  16. Vorrichtung zum Aggregieren von Telemetriedaten in einer Edge-Umgebung, wobei die Vorrichtung Folgendes umfasst: Mittel zum Zusammenstellen einer Komposition für einen Edge-Dienst in der Edge-Umgebung, wobei die Komposition eine erste Schnittstelle zum Erhalten der Telemetriedaten repräsentiert, die Telemetriedaten Ressourcen des Edge-Dienstes zugeordnet sind und die Telemetriedaten eine Leistungsmetrik aufweisen, Mittel, um Folgendes zu erzeugen: ein Ressourcenobjekt auf der Grundlage der Leistungsmetrik, wobei das Ressourcenobjekt eine zweite Schnittstelle repräsentiert und die zweite Schnittstelle die Leistungsmetrik von einer ersten der Ressourcen erhalten soll, und ein Telemetrieobjekt auf der Grundlage der Leistungsmetrik, wobei das Telemetrieobjekt eine dritte Schnittstelle repräsentiert und die dritte Schnittstelle die Leistungsmetrik vom Ressourcenobjekt erhalten soll, und Mittel zum Kompilieren eines ausführbaren Telemetrieprogramms auf der Grundlage der Komposition, wobei die Komposition wenigstens eines vom Ressourcenobjekt oder vom Telemetrieobjekt aufweist, das ausführbare Telemetrieprogramm die Telemetriedaten ansprechend darauf erzeugen soll, dass der Edge-Dienst eine Rechenaufgabe ausführt, und die Rechenaufgabe auf der Grundlage der Telemetriedaten auf den Edge-Dienst verteilt wird.
  17. Vorrichtung nach Anspruch 16, wobei die erste Ressource eine Hardware-Ressource ist, welche ferner Folgendes aufweist: erste Mittel zum Abbilden der Leistungsmetrik auf eine Funktion einer Telemetrie-Ressource, wobei die Telemetrie-Ressource einen ersten Befehl zum Erhalten von Telemetriedaten vom Ressourcenobjekt repräsentiert und die Leistungsmetrik auf der Grundlage der eine Rechenaufgabe ausführenden Hardware-Ressource bestimmt wird, zweite Mittel zum Abbilden der Leistungsmetrik auf eine Anwendungsprogrammierschnittstelle (API), wobei die Mittel zur Erzeugung Folgendes ausführen sollen: Erzeugen einer Telemetrieinformationsobjekt(TIO)-Schnittstelle auf der Grundlage der API, wobei die TIO-Schnittstelle einen zweiten Befehl zum Erhalten einer Anforderung der Telemetriedaten von einer Endpunktumgebung repräsentiert, und Erzeugen eines TIOs auf der Grundlage des ersten Befehls, wobei das TIO einen dritten Befehl zum Erhalten der Leistungsmetrik vom Ressourcenobjekt repräsentiert.
  18. Vorrichtung nach einem der Ansprüche 16-17, wobei die erste Ressource eine Hardware-Ressource oder eine Software-Ressource ist und die Komposition ein oder mehrere Ressourcenmodelle, einschließlich eines ersten Ressourcenmodells, aufweist, welche ferner Folgendes aufweist: die Mittel zur Erzeugung, um Folgendes auszuführen: Erzeugen eines ersten Ressourcenobjekts durch Virtualisieren der Hardware-Ressource oder der Software-Ressource und Erzeugen eines ersten Telemetrieobjekts, das einen oder mehrere Befehle zum Aufrufen des ersten Ressourcenobjekts repräsentiert, um eine der Hardware-Ressource oder der Software-Ressource zugeordnete Leistungsmetrik zu erhalten, und die Mittel zum Zusammenstellen, um Folgendes auszuführen: Feststellen, dass ein zweites Ressourcenobjekt vom ersten Ressourcenobjekt abhängt, und, ansprechend auf die Feststellung, Zuweisen eines zweiten Telemetrieobjekts als vom ersten Telemetrieobjekt abhängig, wobei das zweite Telemetrieobjekt dem zweiten Ressourcenobjekt entspricht.
  19. Vorrichtung nach Anspruch 18, wobei der eine oder die mehreren Befehle einen ersten Befehl aufweisen, wobei sie ferner Folgendes aufweist: erste Mittel, um ansprechend auf das Erhalten eines zweiten Befehls zum Erhalten der Telemetriedaten von der Komposition das erste Telemetrieobjekt aufzurufen, einen dritten Befehl zum Erhalten der Telemetriedaten vom ersten Ressourcenobjekt zu erzeugen, und zweite Mittel, um ansprechend auf das Erhalten des ersten Befehls das erste Ressourcenobjekt aufzurufen, die Telemetriedaten von der Hardware-Ressource oder der Software-Ressource zu erhalten.
  20. Vorrichtung nach einem der Ansprüche 16-17, wobei die Komposition eine erste Komposition ist, das Ressourcenobjekt ein erstes Ressourcenobjekt ist, das Telemetrieobjekt ein erstes Telemetrieobjekt ist, die Ressourcen eine zweite Ressource aufweisen und das ausführbare Telemetrieprogramm ein erstes ausführbares Programm ist, wobei sie ferner Folgendes aufweist: die Mittel zum Erzeugen, um ein zweites Ressourcenobjekt und ein zweites Telemetrieobjekt auf der Grundlage der zweiten Ressource zu erzeugen, die Mittel zum Zusammenstellen, um ansprechend auf die Feststellung, dass das zweite Ressourcenobjekt vom ersten Ressourcenobjekt abhängig ist, eine zweite Komposition zu erzeugen, indem sie Folgendes ausführen: Zuweisen des zweiten Ressourcenobjekts als vom ersten Ressourcenobjekt abhängig, und Zuweisen des zweiten Telemetrieobjekts als vom ersten Telemetrieobjekt abhängig, und die Mittel zum Kompilieren, um auf der Grundlage der ersten Komposition ein zweites ausführbares Programm zu erzeugen, wobei das zweite ausführbare Programm die Telemetriedaten erzeugen soll.
  21. Vorrichtung nach einem der Ansprüche 16-17, wobei das Ressourcenobjekt ein erstes Ressourcenobjekt ist, das Telemetrieobjekt ein erstes Telemetrieobjekt ist, die Ressourcen eine zweite Ressource aufweisen, die Telemetriedaten erste Telemetriedaten, zweite Telemetriedaten und dritte Telemetriedaten aufweisen und die Mittel zum Erzeugen erste Mittel zum Erzeugen sind, welche ferner Folgendes aufweist: die ersten Mittel zum Erzeugen, um ein zweites Ressourcenobjekt und ein zweites Telemetrieobjekt auf der Grundlage der zweiten Ressource zu erzeugen, wobei das zweite Ressourcenobjekt vom ersten Ressourcenobjekt abhängig ist und das zweite Telemetrieobjekt vom ersten Telemetrieobjekt abhängig ist, und zweite Mittel zum Erzeugen, um Folgendes auszuführen: Erzeugen der zweiten Telemetriedaten durch Aufrufen des zweiten Telemetrieobjekts, ansprechend auf die Erzeugung der zweiten Telemetriedaten, Erzeugen der ersten Telemetriedaten durch Aufrufen des ersten Telemetrieobjekts, und Bestimmen der dritten Telemetriedaten auf der Grundlage der ersten Telemetriedaten und der zweiten Telemetriedaten.
  22. Nichtflüchtiges computerlesbares Speichermedium, das Befehle umfasst, die, wenn sie ausgeführt werden, wenigstens einen Prozessor veranlassen, wenigstens Folgendes auszuführen: ansprechend auf das Erhalten einer Anforderung zur Ausführung einer Arbeitslast von einer Edge-Vorrichtung, Entdecken mehrerer Edge-Dienstressourcen in Zusammenhang mit wenigstens einem Edge-Dienst in einer Edge-Umgebung, wobei der wenigstens eine Edge-Dienst erste Edge-Dienstressourcen von den mehreren Edge-Dienstressourcen aufweist, Identifizieren des wenigstens einen Edge-Dienstes auf der Grundlage vom wenigstens einen Edge-Dienst erhaltener erster Telemetriedaten, wobei die ersten Telemetriedaten eine Leistungsmetrik aufweisen, welche die Verfügbarkeit der ersten Edge-Dienstressourcen für die Ausführung der Arbeitslast angeben, Verteilen der Arbeitslast auf den wenigstens einen Edge-Dienst zur Ausführung und, ansprechend darauf, dass der wenigstens eine Edge-Dienst ein Telemetriemodell ausführt, Erhalten zweiter Telemetriedaten vom wenigstens einen Edge-Dienst auf der Grundlage der Ausführung der Arbeitslast durch den wenigstens einen Edge-Dienst, wobei das Telemetriemodell eine erste Schnittstelle zum Erhalten der von den ersten Edge-Dienstressourcen erzeugten zweiten Telemetriedaten aufweist.
  23. Nichtflüchtiges computerlesbares Speichermedium nach Anspruch 22, wobei die zweiten Telemetriedaten die Leistungsmetrik aufweisen, die ersten Edge-Dienstressourcen eine erste Hardware-Ressource aufweisen und die Befehle, wenn sie ausgeführt werden, den wenigstens einen Prozessor veranlassen, Folgendes auszuführen: Erzeugen eines Ressourcenobjekts auf der Grundlage der Leistungsmetrik, wobei das Ressourcenobjekt eine zweite Schnittstelle repräsentiert, wobei die zweite Schnittstelle die Leistungsmetrik anhand der ersten Hardware-Ressource erhalten soll, und Erzeugen eines Telemetrieobjekts auf der Grundlage der Leistungsmetrik, wobei das Telemetrieobjekt eine dritte Schnittstelle repräsentiert, wobei die dritte Schnittstelle die Leistungsmetrik anhand des Ressourcenobjekts erhalten soll.
  24. Nichtflüchtiges computerlesbares Speichermedium nach Anspruch 22, wobei die ersten Edge-Dienstressourcen eine Hardware-Ressource aufweisen und die Befehle, wenn sie ausgeführt werden, den wenigstens einen Prozessor veranlassen, Folgendes auszuführen: Abbilden der Leistungsmetrik auf eine Funktion einer Telemetrie-Ressource, wobei die Telemetrie-Ressource einen ersten Befehl zum Erhalten von Telemetriedaten vom Ressourcenobjekt repräsentiert und die Leistungsmetrik auf der Grundlage der eine Rechenaufgabe ausführenden Hardware-Ressource bestimmt wird, Abbilden der Leistungsmetrik auf eine Anwendungsprogrammierschnittstelle (API), Erzeugen einer Telemetrieinformationsobjekt(TIO)-Schnittstelle auf der Grundlage der API, wobei die TIO-Schnittstelle einen zweiten Befehl zum Erhalten einer Anforderung der Telemetriedaten von einer Endpunktumgebung repräsentiert, und Erzeugen eines TIOs auf der Grundlage des ersten Befehls, wobei das TIO einen dritten Befehl zum Erhalten der Leistungsmetrik vom Ressourcenobjekt repräsentiert.
  25. Nichtflüchtiges computerlesbares Speichermedium nach einem der Ansprüche 22-24, wobei die ersten Edge-Dienstressourcen eine Hardware-Ressource aufweisen und die Befehle, wenn sie ausgeführt werden, den wenigstens einen Prozessor veranlassen, Folgendes auszuführen: Abbilden der Leistungsmetrik auf eine Funktion der Hardware-Ressource, wobei die Leistungsmetrik auf der Grundlage der die Funktion ausführenden Hardware-Ressource bestimmt wird, Zuordnen der Leistungsmetrik auf ein von der Hardware-Ressource erzeugtes Ereignis, wobei das Ereignis wenigstens einem von einem Hardwarezähler oder einem Softwarezähler entspricht, Erzeugen einer Ressourceninformationsobjekt(RIO)-Schnittstelle auf der Grundlage des Ereignisses, wobei die RIO-Schnittstelle einen ersten Befehl zum Erhalten der Leistungsmetrik von der Hardware-Ressource repräsentiert, und Erzeugen eines RIOs auf der Grundlage der Funktion, wobei das RIO einen zweiten Befehl zum Erhalten der Leistungsmetrik von der RIO-Schnittstelle repräsentiert.
DE102020208110.7A 2019-09-28 2020-06-30 Verfahren und vorrichtungen zum aggregieren von telemetriedaten in einer edge-umgebung Pending DE102020208110A1 (de)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US201962907597P 2019-09-28 2019-09-28
US62/907,597 2019-09-28
US201962939303P 2019-11-22 2019-11-22
US62/939,303 2019-11-22
US16/723,195 2019-12-20
US16/723,195 US11245538B2 (en) 2019-09-28 2019-12-20 Methods and apparatus to aggregate telemetry data in an edge environment

Publications (1)

Publication Number Publication Date
DE102020208110A1 true DE102020208110A1 (de) 2021-04-01

Family

ID=70279862

Family Applications (2)

Application Number Title Priority Date Filing Date
DE102020208110.7A Pending DE102020208110A1 (de) 2019-09-28 2020-06-30 Verfahren und vorrichtungen zum aggregieren von telemetriedaten in einer edge-umgebung
DE102020208776.8A Pending DE102020208776A1 (de) 2019-09-28 2020-07-14 Dezentralisierte edge-computing-transaktionen mit feingranularer zeitkoordination

Family Applications After (1)

Application Number Title Priority Date Filing Date
DE102020208776.8A Pending DE102020208776A1 (de) 2019-09-28 2020-07-14 Dezentralisierte edge-computing-transaktionen mit feingranularer zeitkoordination

Country Status (6)

Country Link
US (10) US11283635B2 (de)
EP (1) EP3798833B1 (de)
JP (1) JP2021057882A (de)
KR (1) KR20210038827A (de)
CN (4) CN112583882A (de)
DE (2) DE102020208110A1 (de)

Families Citing this family (162)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019084972A1 (zh) * 2017-11-06 2019-05-09 深圳市大疆创新科技有限公司 流媒体直播方法及系统
EP3718286B1 (de) * 2017-11-30 2023-10-18 Intel Corporation Multi-access edge computing (mec)-übersetzung von funkzugangstechnologienachrichten
US10805382B2 (en) * 2018-01-29 2020-10-13 International Business Machines Corporation Resource position planning for distributed demand satisfaction
US10979521B2 (en) 2018-04-12 2021-04-13 Pearson Management Services Limited Systems and methods for stacked-microservice based content provisioning
US11625806B2 (en) * 2019-01-23 2023-04-11 Qualcomm Incorporated Methods and apparatus for standardized APIs for split rendering
US10884725B2 (en) * 2019-03-27 2021-01-05 Wipro Limited Accessing container images in a distributed ledger network environment
US11212085B2 (en) * 2019-03-29 2021-12-28 Intel Corporation Technologies for accelerated hierarchical key caching in edge systems
US11711268B2 (en) * 2019-04-30 2023-07-25 Intel Corporation Methods and apparatus to execute a workload in an edge environment
CN110401696B (zh) * 2019-06-18 2020-11-06 华为技术有限公司 一种去中心化处理的方法、通信代理、主机以及存储介质
US11736370B2 (en) * 2019-08-01 2023-08-22 Siemens Aktiengesellschaft Field data transmission method, device and system, and computer-readable medium
CN110430079B (zh) * 2019-08-05 2021-03-16 腾讯科技(深圳)有限公司 车路协同系统
US11283635B2 (en) * 2019-09-28 2022-03-22 Intel Corporation Dynamic sharing in secure memory environments using edge service sidecars
US10827020B1 (en) * 2019-10-03 2020-11-03 Hewlett Packard Enterprise Development Lp Assignment of microservices
US11818576B2 (en) * 2019-10-03 2023-11-14 Verizon Patent And Licensing Inc. Systems and methods for low latency cloud computing for mobile applications
US11709698B2 (en) * 2019-11-04 2023-07-25 Vmware, Inc. Multi-site virtual infrastructure orchestration of network service in hybrid cloud environments
US11640315B2 (en) 2019-11-04 2023-05-02 Vmware, Inc. Multi-site virtual infrastructure orchestration of network service in hybrid cloud environments
US11907755B2 (en) * 2019-11-22 2024-02-20 Rohde & Schwarz Gmbh & Co. Kg System and method for distributed execution of a sequence processing chain
US11520501B2 (en) * 2019-12-20 2022-12-06 Intel Corporation Automated learning technology to partition computer applications for heterogeneous systems
EP4078913A1 (de) * 2019-12-20 2022-10-26 Airo Finland Oy Schutz gegen böswilligen datenverkehr
US11044173B1 (en) * 2020-01-13 2021-06-22 Cisco Technology, Inc. Management of serverless function deployments in computing networks
US11558180B2 (en) * 2020-01-20 2023-01-17 International Business Machines Corporation Key-value store with blockchain properties
US11394774B2 (en) * 2020-02-10 2022-07-19 Subash Sundaresan System and method of certification for incremental training of machine learning models at edge devices in a peer to peer network
US11018957B1 (en) * 2020-03-04 2021-05-25 Granulate Cloud Solutions Ltd. Enhancing performance in network-based systems
US11630700B2 (en) * 2020-03-23 2023-04-18 T-Mobile Usa, Inc. Local edge device
US11089092B1 (en) * 2020-03-31 2021-08-10 EMC IP Holding Company LLC N-tier workload and data placement and orchestration
US20210314155A1 (en) * 2020-04-02 2021-10-07 International Business Machines Corporation Trusted ledger stamping
US11838794B2 (en) * 2020-04-23 2023-12-05 Veea Inc. Method and system for IoT edge computing using containers
US20230112996A1 (en) * 2020-04-30 2023-04-13 Intel Corporation Compilation for function as a service implementations distributed across server arrays
KR20210136496A (ko) 2020-05-08 2021-11-17 현대자동차주식회사 빅데이터를 이용한 배터리 수명 예측 시스템
US11178527B1 (en) * 2020-05-12 2021-11-16 International Business Machines Corporation Method and apparatus for proactive data hinting through dedicated traffic channel of telecom network
KR20210142875A (ko) 2020-05-19 2021-11-26 현대자동차주식회사 빅데이터를 이용한 차량 파워 제어 시스템
CN112398868A (zh) * 2020-05-20 2021-02-23 郝鹏 基于区块链和云计算的通信数据处理方法及系统
KR20210144171A (ko) 2020-05-21 2021-11-30 현대자동차주식회사 분산 클라우딩을 이용한 차량 제어 시스템
CN111371813B (zh) * 2020-05-28 2020-10-02 杭州灿八科技有限公司 一种基于边缘计算的大数据网络数据防护方法及系统
US11348167B2 (en) 2020-05-28 2022-05-31 EMC IP Holding Company LLC Method and storage medium for private edge-station auction house
EP3916552A1 (de) * 2020-05-28 2021-12-01 Siemens Aktiengesellschaft Verfahren und verarbeitungseinheit für laufende anwendungen eines technischen, sensor- und aktuatorbasierten systems und technisches system
US11546315B2 (en) * 2020-05-28 2023-01-03 Hewlett Packard Enterprise Development Lp Authentication key-based DLL service
US11323509B2 (en) * 2020-05-28 2022-05-03 EMC IP Holding Company LLC Union formation of edge cloud-native clusters
CN111756812B (zh) * 2020-05-29 2021-09-21 华南理工大学 一种能耗感知的边云协同动态卸载调度方法
US11611517B2 (en) * 2020-05-29 2023-03-21 Equinix, Inc. Tenant-driven dynamic resource allocation for virtual network functions
CN112291070A (zh) * 2020-06-10 2021-01-29 李彩云 基于云边端协同的通信信息处理方法及系统
EP3929749A1 (de) * 2020-06-26 2021-12-29 Bull Sas Verfahren und vorrichtung zur fernausführung von programmen eines in einem lokalen netz verbundenen objekts
US11770377B1 (en) * 2020-06-29 2023-09-26 Cyral Inc. Non-in line data monitoring and security services
CN111711801B (zh) * 2020-06-30 2022-08-26 重庆紫光华山智安科技有限公司 视频数据传输方法、装置、服务器和计算机可读存储介质
CN113438219B (zh) * 2020-07-08 2023-06-02 支付宝(杭州)信息技术有限公司 一种基于区块链一体机的重放交易识别方法及装置
CN112492002B (zh) 2020-07-08 2023-01-20 支付宝(杭州)信息技术有限公司 一种基于区块链一体机的交易转发方法及装置
CN111541789A (zh) 2020-07-08 2020-08-14 支付宝(杭州)信息技术有限公司 一种基于区块链一体机的数据同步方法及装置
CN111539829B (zh) 2020-07-08 2020-12-29 支付宝(杭州)信息技术有限公司 一种基于区块链一体机的待过滤交易识别方法及装置
CN111541784B (zh) 2020-07-08 2021-07-20 支付宝(杭州)信息技术有限公司 一种基于区块链一体机的交易处理方法及装置
US11704412B2 (en) * 2020-07-14 2023-07-18 Dell Products L.P. Methods and systems for distribution and integration of threat indicators for information handling systems
KR20220009643A (ko) * 2020-07-16 2022-01-25 삼성전자주식회사 스토리지 컨트롤러, 이를 포함하는 클라이언트 및 서버, 및 이의 동작 방법
US11070621B1 (en) 2020-07-21 2021-07-20 Cisco Technology, Inc. Reuse of execution environments while guaranteeing isolation in serverless computing
CN112104693B (zh) * 2020-07-22 2021-08-10 北京邮电大学 非均匀移动边缘计算网络的任务卸载方法及装置
CN111988753A (zh) * 2020-08-20 2020-11-24 浙江璟锐科技有限公司 一种城市动态大数据采集系统及方法、数据处理终端
US11470159B2 (en) * 2020-08-28 2022-10-11 Cisco Technology, Inc. API key security posture scoring for microservices to determine microservice security risks
CA3191172A1 (en) * 2020-09-03 2022-03-10 Immunesensor Therapeutics, Inc. Quinoline cgas antagonist compounds
US11102280B1 (en) * 2020-09-08 2021-08-24 HashiCorp Infrastructure imports for an information technology platform
EP4202672A4 (de) * 2020-09-23 2024-06-12 Siemens Aktiengesellschaft Edge-computing-verfahren und -system, edge-vorrichtung und steuerungsserver
CN112261112B (zh) * 2020-10-16 2023-04-18 华人运通(上海)云计算科技有限公司 一种信息共享方法、装置及系统、电子设备及存储介质
US11317321B1 (en) * 2020-10-27 2022-04-26 Sprint Communications Company L.P. Methods for delivering network slices to a user
US20220138286A1 (en) * 2020-11-02 2022-05-05 Intel Corporation Graphics security with synergistic encryption, content-based and resource management technology
CN112351106B (zh) * 2020-11-12 2021-08-27 四川长虹电器股份有限公司 一种含事件网格的服务网格平台及其通信方法
US20240028396A1 (en) * 2020-11-24 2024-01-25 Raytheon Company Run-time schedulers for field programmable gate arrays or other logic devices
US11558189B2 (en) * 2020-11-30 2023-01-17 Microsoft Technology Licensing, Llc Handling requests to service resources within a security boundary using a security gateway instance
CN112346821B (zh) * 2020-12-01 2023-09-26 新华智云科技有限公司 基于kubernetes的应用配置管理方法与系统
US11582020B2 (en) * 2020-12-02 2023-02-14 Verizon Patent And Licensing Inc. Homomorphic encryption offload for lightweight devices
US11366694B1 (en) 2020-12-06 2022-06-21 International Business Machines Corporation Estimating attributes of running workloads on platforms in a system of multiple platforms as a service
US11693697B2 (en) 2020-12-06 2023-07-04 International Business Machines Corporation Optimizing placements of workloads on multiple platforms as a service based on costs and service levels
US11704156B2 (en) 2020-12-06 2023-07-18 International Business Machines Corporation Determining optimal placements of workloads on multiple platforms as a service in response to a triggering event
WO2022123287A1 (en) * 2020-12-07 2022-06-16 Telefonaktiebolaget Lm Ericsson (Publ) Portability of configuration policies for service mesh-based composite applications
CN112506635B (zh) * 2020-12-11 2024-03-29 奇瑞汽车股份有限公司 基于自适应策略的进化免疫方法
CN112527829B (zh) * 2020-12-17 2022-05-10 浙江经贸职业技术学院 基于物联网的工业数据传输与可视化系统
US11799865B2 (en) * 2020-12-18 2023-10-24 Microsoft Technology Licensing, Llc Multi-chamber hosted computing environment for collaborative development between untrusted partners
US11405456B2 (en) 2020-12-22 2022-08-02 Red Hat, Inc. Policy-based data placement in an edge environment
US20210120077A1 (en) * 2020-12-26 2021-04-22 Intel Corporation Multi-tenant isolated data regions for collaborative platform architectures
CN112631777B (zh) * 2020-12-26 2023-12-15 扬州大学 基于区块链和边缘计算的搜索和资源分配方法
US11611591B2 (en) * 2020-12-30 2023-03-21 Virtustream Ip Holding Company Llc Generating unified views of security and compliance for multi-cloud workloads
US11743241B2 (en) 2020-12-30 2023-08-29 International Business Machines Corporation Secure data movement
US11665533B1 (en) * 2020-12-30 2023-05-30 T-Mobile Innovations Llc Secure data analytics sampling within a 5G virtual slice
US11630723B2 (en) * 2021-01-12 2023-04-18 Qualcomm Incorporated Protected data streaming between memories
EP4274178A4 (de) * 2021-01-13 2024-03-13 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Knotenbestimmungsverfahren und -vorrichtung für verteilte aufgaben sowie vorrichtung und medium
CN116783880A (zh) * 2021-01-13 2023-09-19 Oppo广东移动通信有限公司 分布式任务的节点确定方法、装置、设备及介质
US11722867B2 (en) * 2021-01-14 2023-08-08 Verizon Patent And Licensing Inc. Systems and methods to determine mobile edge deployment of microservices
CA3205303A1 (en) * 2021-01-18 2022-07-21 Fredrik Haard Methods and systems for secure and reliable integration of healthcare practice operations, management, administrative and financial software systems
US20220229686A1 (en) * 2021-01-21 2022-07-21 Vmware, Inc. Scheduling workloads in a container orchestrator of a virtualized computer system
US20220247651A1 (en) * 2021-01-29 2022-08-04 Assia Spe, Llc System and method for network and computation performance probing for edge computing
DE102021201236A1 (de) 2021-02-10 2022-08-11 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren zum Authentifizieren einer Nachricht einer Recheneinheit, Recheneinheit, Computerprogramm und Fahrzeug
US11438442B1 (en) * 2021-03-18 2022-09-06 Verizon Patent And Licensing Inc. Systems and methods for optimizing provision of high latency content by a network
US11593732B2 (en) * 2021-03-26 2023-02-28 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. License orchestrator to most efficiently distribute fee-based licenses
CN112737953B (zh) * 2021-03-31 2021-08-03 之江实验室 针对电网广域相位测量系统可靠通信的弹性路由生成系统
CN113079159B (zh) * 2021-04-01 2022-06-10 北京邮电大学 一种基于区块链的边缘计算网络系统
WO2022215549A1 (ja) * 2021-04-08 2022-10-13 ソニーグループ株式会社 処理システム、並びに、情報処理装置および方法
US11588752B2 (en) 2021-04-08 2023-02-21 Cisco Technology, Inc. Route exchange in multi-tenant clustered controllers
CN113114758B (zh) * 2021-04-09 2022-04-12 北京邮电大学 一种面向无服务器边缘计算的任务调度方法及装置
US11868805B2 (en) * 2021-04-13 2024-01-09 Red Hat, Inc. Scheduling workloads on partitioned resources of a host system in a container-orchestration system
US11818102B2 (en) * 2021-04-16 2023-11-14 Nokia Technologies Oy Security enhancement on inter-network communication
US20220342899A1 (en) * 2021-04-21 2022-10-27 EMC IP Holding Company LLC Method and system for provisioning workflows with proactive data transformation
US11972289B2 (en) 2021-04-21 2024-04-30 EMC IP Holding Company LLC Method and system for provisioning workflows based on locality
CN113259420A (zh) * 2021-04-26 2021-08-13 苏州市伯太数字科技有限公司 基于tsn网络标准的智能传感器的边缘计算系统
CN113179325B (zh) * 2021-04-30 2022-08-02 招商局金融科技有限公司 多终端的协同交互方法、装置、网关盒子及介质
US11601363B2 (en) * 2021-05-14 2023-03-07 Comcast Cable Communications, Llc Intelligent internet traffic routing
CN113378655B (zh) * 2021-05-24 2022-04-19 电子科技大学 一种基于深度神经网络的对抗性能量分解方法
US11783453B2 (en) * 2021-06-10 2023-10-10 Bank Of America Corporation Adapting image noise removal model based on device capabilities
CN113467970B (zh) * 2021-06-25 2023-09-26 阿里巴巴新加坡控股有限公司 云计算系统中的跨安全区域的资源访问方法及电子设备
US11916999B1 (en) 2021-06-30 2024-02-27 Amazon Technologies, Inc. Network traffic management at radio-based application pipeline processing servers
US11983573B2 (en) * 2021-07-15 2024-05-14 EMC IP Holding Company LLC Mapping telemetry data to states for efficient resource allocation
US20230025530A1 (en) * 2021-07-22 2023-01-26 EMC IP Holding Company LLC Edge function bursting
CN113612616A (zh) * 2021-07-27 2021-11-05 北京沃东天骏信息技术有限公司 一种基于区块链的车辆通信方法和装置
US20230030816A1 (en) * 2021-07-30 2023-02-02 Red Hat, Inc. Security broker for consumers of tee-protected services
AU2022320143A1 (en) * 2021-07-30 2024-03-14 Mpowered Technology Solutions Inc. System and method for secure data messaging
EP4380704A1 (de) * 2021-08-06 2024-06-12 InterDigital Patent Holdings, Inc. Verfahren und vorrichtungen zur signalisierungsverbesserung in der drahtlosen kommunikation
CN117356129A (zh) * 2021-08-13 2024-01-05 英特尔公司 在基于无线电接入网络的计算系统中对服务质量的支持
US11991293B2 (en) 2021-08-17 2024-05-21 International Business Machines Corporation Authorized secure data movement
US20230058310A1 (en) * 2021-08-19 2023-02-23 Sterlite Technologies Limited Method and system for deploying intelligent edge cluster model
KR102510258B1 (ko) * 2021-08-31 2023-03-14 광운대학교 산학협력단 지능형 영상 보안 환경에서 컴퓨팅 리소스 예측 기반의 엣지 서버간 협업 시스템
CN113709739A (zh) * 2021-09-03 2021-11-26 四川启睿克科技有限公司 一种智能设备可靠管理和快速入网方法及系统
US20230078184A1 (en) * 2021-09-16 2023-03-16 Hewlett-Packard Development Company, L.P. Transmissions of secure activities
US20230093868A1 (en) * 2021-09-22 2023-03-30 Ridgeline, Inc. Mechanism for real-time identity resolution in a distributed system
US20220014423A1 (en) * 2021-09-25 2022-01-13 Intel Corporation Systems, apparatus, and methods for data resiliency in an edge network environment
WO2023044936A1 (zh) * 2021-09-27 2023-03-30 西门子股份公司 知识分发系统、方法、装置和计算机可读介质
US20230161632A1 (en) * 2021-09-27 2023-05-25 Advanced Micro Devices, Inc. Platform resource selction for upscaler operations
US20230094384A1 (en) * 2021-09-28 2023-03-30 Advanced Micro Devices, Inc. Dynamic allocation of platform resources
US11595324B1 (en) * 2021-10-01 2023-02-28 Bank Of America Corporation System for automated cross-network monitoring of computing hardware and software resources
US11556403B1 (en) 2021-10-19 2023-01-17 Bank Of America Corporation System and method for an application programming interface (API) service modification
CN113691380B (zh) * 2021-10-26 2022-01-18 西南石油大学 一种智能电网中多维隐私数据聚合方法
CN114019229A (zh) * 2021-10-30 2022-02-08 宝璟科技(深圳)有限公司 一种基于互联网的环保设备监控系统
CN114172930B (zh) * 2021-11-09 2023-04-07 清华大学 一种大规模物联网服务域隔离通信方法、装置、电子设备及存储介质
US11894979B2 (en) 2021-11-30 2024-02-06 Red Hat, Inc. Mapping proxy connectivity
US20230179525A1 (en) * 2021-12-02 2023-06-08 Juniper Networks, Inc. Edge device for telemetry flow data collection
CN114205414A (zh) * 2021-12-06 2022-03-18 百度在线网络技术(北京)有限公司 基于服务网格的数据处理方法、装置、电子设备和介质
US11606245B1 (en) 2021-12-13 2023-03-14 Red Hat, Inc. Validating endpoints in a service mesh of a distributed computing system
CN114648870B (zh) * 2022-02-11 2023-07-28 行云新能科技(深圳)有限公司 边缘计算系统、边缘计算决策预测方法以及计算机可读存储介质
US11997536B2 (en) * 2022-03-01 2024-05-28 Alcatel-Lucent India Limited System and method for controlling congestion in a network
US20230297863A1 (en) * 2022-03-18 2023-09-21 C3.Ai, Inc. Machine learning pipeline generation and management
US20220231991A1 (en) * 2022-03-28 2022-07-21 Intel Corporation Method, system and apparatus for inline decryption analysis and detection
CN114945031B (zh) * 2022-04-16 2024-06-07 深圳市爱为物联科技有限公司 一种支持海量设备多通讯协议及消息协议接入的云原生物联网平台
CN115021866B (zh) * 2022-05-24 2024-03-12 卡斯柯信号有限公司 应用于安全编码软件的数据时效性校验方法和系统
US20230388309A1 (en) * 2022-05-27 2023-11-30 Microsoft Technology Licensing, Llc Establishment of trust for disconnected edge-based deployments
CN115022893A (zh) * 2022-05-31 2022-09-06 福州大学 多任务边缘计算系统中最小化总计算时间的资源分配方法
US20230403340A1 (en) * 2022-06-13 2023-12-14 Nec Laboratories America, Inc. Flexible and efficient communication in microservices-based stream analytics pipeline
US11792086B1 (en) * 2022-07-26 2023-10-17 Vmware, Inc. Remediation of containerized workloads based on context breach at edge devices
CN115268929B (zh) * 2022-07-26 2023-04-28 成都智元汇信息技术股份有限公司 一种支持轻交付部署的极简运维方法
US11943124B2 (en) * 2022-07-28 2024-03-26 Dell Products L.P. Data center asset remote workload execution via a connectivity management workload orchestration operation
US12003382B2 (en) * 2022-07-28 2024-06-04 Dell Products L.P. Data center asset client module authentication via a connectivity management authentication operation
CN115016424B (zh) * 2022-08-08 2022-11-25 承德建龙特殊钢有限公司 一种无缝钢管生产线实时监控系统
US11937103B1 (en) 2022-08-17 2024-03-19 Amazon Technologies, Inc. Enhancing availability of radio-based applications using multiple compute instances and virtualized network function accelerators at cloud edge locations
CN115459969B (zh) * 2022-08-26 2024-04-30 中电信数智科技有限公司 一种层次化可扩展区块链平台及其交易处理方法
US12001561B2 (en) * 2022-09-01 2024-06-04 Dell Products, L.P. Detecting and configuring imaging optimization settings during a collaboration session in a heterogenous computing platform
WO2024057408A1 (ja) * 2022-09-13 2024-03-21 日本電信電話株式会社 制御装置、制御方法、及びプログラム
US20240103923A1 (en) * 2022-09-22 2024-03-28 International Business Machines Corporation Efficient placement of serverless workloads on transient infrastructure on policy-driven re-location
US20240118938A1 (en) * 2022-09-29 2024-04-11 Nec Laboratories America, Inc. Dynamic resource management for stream analytics
US20240121321A1 (en) * 2022-10-05 2024-04-11 Hong Kong Applied Science and Technology Research Institute Company Limited Method and apparatus for removing stale context in service instances in providing microservices
CN115550367B (zh) * 2022-11-30 2023-03-07 成都中星世通电子科技有限公司 基于分布式任务管理和资源调度的无线电监测方法及系统
US20240184682A1 (en) * 2022-12-06 2024-06-06 Jpmorgan Chase Bank, N.A. Systems and methods for collecting and processing application telemetry
US11921699B1 (en) 2022-12-16 2024-03-05 Amazon Technologies, Inc. Lease-based consistency management for handling failover in a database
US12014634B1 (en) 2023-09-05 2024-06-18 Armada Systems Inc. Cloud-based fleet and asset management for edge computing of machine learning and artificial intelligence workloads
US12014219B1 (en) 2023-09-05 2024-06-18 Armada Systems Inc. Cloud-based fleet and asset management for edge computing of machine learning and artificial intelligence workloads
US11876858B1 (en) * 2023-09-05 2024-01-16 Armada Systems Inc. Cloud-based fleet and asset management for edge computing of machine learning and artificial intelligence workloads
US11995412B1 (en) 2023-10-06 2024-05-28 Armada Systems, Inc. Video based question and answer
US11960515B1 (en) 2023-10-06 2024-04-16 Armada Systems, Inc. Edge computing units for operating conversational tools at local sites
CN117112549B (zh) * 2023-10-20 2024-03-26 中科星图测控技术股份有限公司 一种基于布隆过滤器的大数据归并方法
CN117270795B (zh) * 2023-11-23 2024-02-09 北京中超伟业信息安全技术股份有限公司 一种大容量数据存储设备及其数据销毁方法

Family Cites Families (210)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3226675A (en) 1960-07-05 1965-12-28 Robert W Edwards Inertial responsive stop signal for vehicles
US5941947A (en) 1995-08-18 1999-08-24 Microsoft Corporation System and method for controlling access to data entities in a computer network
US5826239A (en) 1996-12-17 1998-10-20 Hewlett-Packard Company Distributed workflow resource management system and method
US6198479B1 (en) * 1997-06-25 2001-03-06 Samsung Electronics Co., Ltd Home network, browser based, command and control
US6571297B1 (en) 1997-08-20 2003-05-27 Bea Systems, Inc. Service interface repository application programming models
US6437692B1 (en) 1998-06-22 2002-08-20 Statsignal Systems, Inc. System and method for monitoring and controlling remote devices
US6185491B1 (en) 1998-07-31 2001-02-06 Sun Microsystems, Inc. Networked vehicle controlling attached devices using JavaBeans™
US6377860B1 (en) 1998-07-31 2002-04-23 Sun Microsystems, Inc. Networked vehicle implementing plug and play with javabeans
US6963784B1 (en) 1998-10-16 2005-11-08 Sony Corporation Virtual device control modules and function control modules implemented in a home audio/video network
US6253338B1 (en) * 1998-12-21 2001-06-26 International Business Machines Corporation System for tracing hardware counters utilizing programmed performance monitor to generate trace interrupt after each branch instruction or at the end of each code basic block
US6636505B1 (en) 1999-05-28 2003-10-21 3Com Corporation Method for service provisioning a broadband modem
US7472349B1 (en) 1999-06-01 2008-12-30 Oracle International Corporation Dynamic services infrastructure for allowing programmatic access to internet and other resources
US6892230B1 (en) 1999-06-11 2005-05-10 Microsoft Corporation Dynamic self-configuration for ad hoc peer networking using mark-up language formated description messages
US6460082B1 (en) 1999-06-17 2002-10-01 International Business Machines Corporation Management of service-oriented resources across heterogeneous media servers using homogenous service units and service signatures to configure the media servers
US6735630B1 (en) 1999-10-06 2004-05-11 Sensoria Corporation Method for collecting data using compact internetworked wireless integrated network sensors (WINS)
US6826607B1 (en) 1999-10-06 2004-11-30 Sensoria Corporation Apparatus for internetworked hybrid wireless integrated network sensors (WINS)
US7797367B1 (en) 1999-10-06 2010-09-14 Gelvin David C Apparatus for compact internetworked wireless integrated network sensors (WINS)
US7020701B1 (en) 1999-10-06 2006-03-28 Sensoria Corporation Method for collecting and processing data using internetworked wireless integrated network sensors (WINS)
US6859831B1 (en) 1999-10-06 2005-02-22 Sensoria Corporation Method and apparatus for internetworked wireless integrated network sensor (WINS) nodes
US6832251B1 (en) 1999-10-06 2004-12-14 Sensoria Corporation Method and apparatus for distributed signal processing among internetworked wireless integrated network sensors (WINS)
US6990379B2 (en) 1999-12-30 2006-01-24 Microsoft Corporation Method and apparatus for providing a dynamic resource role model for subscriber-requester based protocols in a home automation and control system
US6948168B1 (en) 2000-03-30 2005-09-20 International Business Machines Corporation Licensed application installer
US6363417B1 (en) 2000-03-31 2002-03-26 Emware, Inc. Device interfaces for networking a computer and an embedded device
US6580950B1 (en) 2000-04-28 2003-06-17 Echelon Corporation Internet based home communications system
US7496637B2 (en) 2000-05-31 2009-02-24 Oracle International Corp. Web service syndication system
FR2813471B1 (fr) 2000-08-31 2002-12-20 Schneider Automation Systeme de communication d'un equipement d'automatisme base sur le protocole soap
US7171475B2 (en) 2000-12-01 2007-01-30 Microsoft Corporation Peer networking host framework and hosting API
US20020083143A1 (en) 2000-12-13 2002-06-27 Philips Electronics North America Corporation UPnP architecture for heterogeneous networks of slave devices
WO2002057917A2 (en) 2001-01-22 2002-07-25 Sun Microsystems, Inc. Peer-to-peer network computing platform
US7283811B2 (en) 2001-02-23 2007-10-16 Lucent Technologies Inc. System and method for aggregation of user applications for limited-resource devices
US7290039B1 (en) 2001-02-27 2007-10-30 Microsoft Corporation Intent based processing
US7426730B2 (en) 2001-04-19 2008-09-16 Wre-Hol Llc Method and system for generalized and adaptive transaction processing between uniform information services and applications
AU2002256380A1 (en) 2001-04-25 2002-11-05 Metallect Corporation Service provision system and method
US20020178254A1 (en) 2001-05-23 2002-11-28 International Business Machines Corporation Dynamic deployment of services in a computing network
WO2002099597A2 (en) 2001-06-07 2002-12-12 Unwired Express, Inc. Method and system for providing context awareness
US7207041B2 (en) 2001-06-28 2007-04-17 Tranzeo Wireless Technologies, Inc. Open platform architecture for shared resource access management
US20030005090A1 (en) 2001-06-30 2003-01-02 Sullivan Robert R. System and method for integrating network services
US7185342B1 (en) 2001-07-24 2007-02-27 Oracle International Corporation Distributed service aggregation and composition
US7343428B2 (en) 2001-09-19 2008-03-11 International Business Machines Corporation Dynamic, real-time integration of software resources through services of a content framework
US6985939B2 (en) 2001-09-19 2006-01-10 International Business Machines Corporation Building distributed software services as aggregations of other services
DE60109934T2 (de) 2001-10-03 2006-05-11 Alcatel Verfahren zur Bereitstellung von Diensten in einem Kommunikationsnetzwerk
US7035930B2 (en) 2001-10-26 2006-04-25 Hewlett-Packard Development Company, L.P. Method and framework for generating an optimized deployment of software applications in a distributed computing environment using layered model descriptions of services and servers
US6916247B2 (en) 2001-11-23 2005-07-12 Cyberscan Technology, Inc. Modular entertainment and gaming systems
GB0129174D0 (en) 2001-12-06 2002-01-23 Koninl Philips Electronics Nv Havi-upnp bridging
US7822860B2 (en) 2001-12-11 2010-10-26 International Business Machines Corporation Method and apparatus for dynamic reconfiguration of web services infrastructure
US7603469B2 (en) 2002-01-15 2009-10-13 International Business Machines Corporation Provisioning aggregated services in a distributed computing environment
US20030163513A1 (en) 2002-02-22 2003-08-28 International Business Machines Corporation Providing role-based views from business web portals
EP1489508B1 (de) * 2002-03-22 2008-01-09 Toyota Jidosha Kabushiki Kaisha Taskverwaltungseinrichtung und -verfahren , betriebsbeurteilungseinrichtung und verfahren und zu beurteilendes programm
US7181536B2 (en) 2002-03-27 2007-02-20 International Business Machines Corporation Interminable peer relationships in transient communities
US7069318B2 (en) 2002-03-27 2006-06-27 International Business Machines Corporation Content tracking in transient network communities
US7177929B2 (en) 2002-03-27 2007-02-13 International Business Machines Corporation Persisting node reputations in transient network communities
US7251689B2 (en) 2002-03-27 2007-07-31 International Business Machines Corporation Managing storage resources in decentralized networks
US7143139B2 (en) 2002-03-27 2006-11-28 International Business Machines Corporation Broadcast tiers in decentralized networks
US7039701B2 (en) 2002-03-27 2006-05-02 International Business Machines Corporation Providing management functions in decentralized networks
US20030191802A1 (en) 2002-04-03 2003-10-09 Koninklijke Philips Electronics N.V. Reshaped UDDI for intranet use
US7099873B2 (en) * 2002-05-29 2006-08-29 International Business Machines Corporation Content transcoding in a content distribution network
US7519918B2 (en) 2002-05-30 2009-04-14 Intel Corporation Mobile virtual desktop
US7072960B2 (en) 2002-06-10 2006-07-04 Hewlett-Packard Development Company, L.P. Generating automated mappings of service demands to server capacities in a distributed computer system
US20040003033A1 (en) 2002-06-27 2004-01-01 Yury Kamen Method and system for generating a web service interface
US7933945B2 (en) 2002-06-27 2011-04-26 Openpeak Inc. Method, system, and computer program product for managing controlled residential or non-residential environments
US7386860B2 (en) 2002-06-28 2008-06-10 Microsoft Corporation Type extensions to web services description language
US20040221001A1 (en) 2002-07-05 2004-11-04 Anjali Anagol-Subbarao Web service architecture and methods
US7509656B2 (en) * 2002-08-02 2009-03-24 Bian Qiyong B Counter functions in an application program interface for network devices
US7266582B2 (en) 2002-08-09 2007-09-04 Sun Microsystems, Inc. Method and system for automating generation of web services from existing service components
US7171471B1 (en) 2002-08-15 2007-01-30 Cisco Technology, Inc. Methods and apparatus for directing a resource request
US7263560B2 (en) 2002-08-30 2007-08-28 Sun Microsystems, Inc. Decentralized peer-to-peer advertisement
US7206934B2 (en) 2002-09-26 2007-04-17 Sun Microsystems, Inc. Distributed indexing of identity information in a peer-to-peer network
US8356067B2 (en) 2002-10-24 2013-01-15 Intel Corporation Servicing device aggregates
US6889188B2 (en) 2002-11-22 2005-05-03 Intel Corporation Methods and apparatus for controlling an electronic device
US7539994B2 (en) * 2003-01-03 2009-05-26 Intel Corporation Dynamic performance and resource management in a processing system
US7848259B2 (en) * 2003-08-01 2010-12-07 Opnet Technologies, Inc. Systems and methods for inferring services on a network
JP4509678B2 (ja) * 2003-09-12 2010-07-21 株式会社リコー 証明書設定方法
US7519964B1 (en) * 2003-12-03 2009-04-14 Sun Microsystems, Inc. System and method for application deployment in a domain for a cluster
US20110214061A1 (en) * 2010-03-01 2011-09-01 Ashley Edwardo King User Interface for Managing Client Devices
GB0425860D0 (en) * 2004-11-25 2004-12-29 Ibm A method for ensuring the quality of a service in a distributed computing environment
US7548964B2 (en) * 2005-10-11 2009-06-16 International Business Machines Corporation Performance counters for virtualized network interfaces of communications networks
US8086859B2 (en) * 2006-03-02 2011-12-27 Microsoft Corporation Generation of electronic signatures
US9542656B2 (en) * 2006-11-13 2017-01-10 International Business Machines Corporation Supporting ETL processing in BPEL-based processes
US10620927B2 (en) * 2008-06-06 2020-04-14 International Business Machines Corporation Method, arrangement, computer program product and data processing program for deploying a software service
US8060145B2 (en) * 2008-07-09 2011-11-15 T-Mobile Usa, Inc. Cell site content caching
US9021490B2 (en) * 2008-08-18 2015-04-28 Benoît Marchand Optimizing allocation of computer resources by tracking job status and resource availability profiles
US8505078B2 (en) * 2008-12-28 2013-08-06 Qualcomm Incorporated Apparatus and methods for providing authorized device access
US8910153B2 (en) * 2009-07-13 2014-12-09 Hewlett-Packard Development Company, L. P. Managing virtualized accelerators using admission control, load balancing and scheduling
US20110126197A1 (en) * 2009-11-25 2011-05-26 Novell, Inc. System and method for controlling cloud and virtualized data centers in an intelligent workload management system
US8776066B2 (en) * 2009-11-30 2014-07-08 International Business Machines Corporation Managing task execution on accelerators
US8966657B2 (en) * 2009-12-31 2015-02-24 Intel Corporation Provisioning, upgrading, and/or changing of hardware
US8745239B2 (en) 2010-04-07 2014-06-03 Limelight Networks, Inc. Edge-based resource spin-up for cloud computing
US8893093B2 (en) * 2010-05-07 2014-11-18 Salesforce.Com, Inc. Method and system for automated performance testing in a multi-tenant environment
US8364959B2 (en) * 2010-05-26 2013-01-29 Google Inc. Systems and methods for using a domain-specific security sandbox to facilitate secure transactions
US8909783B2 (en) 2010-05-28 2014-12-09 Red Hat, Inc. Managing multi-level service level agreements in cloud-based network
EP2603996A1 (de) 2010-08-11 2013-06-19 Rick L. Orsini Systeme und verfahren für sichere datenspeicherung mit mehreren teilnehmern
US8572241B2 (en) * 2010-09-17 2013-10-29 Microsoft Corporation Integrating external and cluster heat map data
US8954544B2 (en) * 2010-09-30 2015-02-10 Axcient, Inc. Cloud-based virtual machines and offices
CN102340533B (zh) 2011-06-17 2017-03-15 中兴通讯股份有限公司 多租户系统及多租户系统存取数据的方法
US9026837B2 (en) * 2011-09-09 2015-05-05 Microsoft Technology Licensing, Llc Resource aware placement of applications in clusters
WO2013101765A1 (en) * 2011-12-27 2013-07-04 Cisco Technology, Inc. System and method for management of network-based services
US8868735B2 (en) * 2012-02-02 2014-10-21 Cisco Technology, Inc. Wide area network optimization
US9507630B2 (en) 2012-02-09 2016-11-29 Cisco Technology, Inc. Application context transfer for distributed computing resources
JP6209595B2 (ja) 2012-05-11 2017-10-04 インターデイジタル パテント ホールディングス インコーポレイテッド コンテキストアウェアピアツーピア通信
US9123010B2 (en) * 2012-06-05 2015-09-01 Apple Inc. Ledger-based resource tracking
US8719590B1 (en) 2012-06-18 2014-05-06 Emc Corporation Secure processing in multi-tenant cloud infrastructure
US9612866B2 (en) * 2012-08-29 2017-04-04 Oracle International Corporation System and method for determining a recommendation on submitting a work request based on work request type
US8990375B2 (en) * 2012-08-31 2015-03-24 Facebook, Inc. Subscription groups in publish-subscribe system
CN104955766B (zh) * 2012-10-25 2017-12-29 英特尔公司 Mems装置
US11132277B2 (en) * 2012-12-28 2021-09-28 Iii Holdings 2, Llc System and method for continuous low-overhead monitoring of distributed applications running on a cluster of data processing nodes
WO2014101093A1 (en) * 2012-12-28 2014-07-03 Intel Corporation Power optimization for distributed computing system
WO2014124692A1 (en) * 2013-02-15 2014-08-21 Nec Europe Ltd. Method and system for providing content in content delivery networks
CN105359095B (zh) 2013-05-08 2019-09-20 康维达无线有限责任公司 用于使用虚拟化代理和上下文信息的资源虚拟化的方法和装置
US9658899B2 (en) * 2013-06-10 2017-05-23 Amazon Technologies, Inc. Distributed lock management in a cloud computing environment
US10360064B1 (en) * 2013-08-19 2019-07-23 Amazon Technologies, Inc. Task scheduling, execution and monitoring
US10489212B2 (en) * 2013-09-26 2019-11-26 Synopsys, Inc. Adaptive parallelization for multi-scale simulation
US10142342B2 (en) * 2014-03-23 2018-11-27 Extreme Networks, Inc. Authentication of client devices in networks
US9652631B2 (en) 2014-05-05 2017-05-16 Microsoft Technology Licensing, Llc Secure transport of encrypted virtual machines with continuous owner access
US20160050101A1 (en) * 2014-08-18 2016-02-18 Microsoft Corporation Real-Time Network Monitoring and Alerting
US9858166B1 (en) * 2014-08-26 2018-01-02 VCE IP Holding Company LLC Methods, systems, and computer readable mediums for optimizing the deployment of application workloads in a converged infrastructure network environment
US9894130B2 (en) * 2014-09-23 2018-02-13 Intel Corporation Video quality enhancement
US9442760B2 (en) * 2014-10-03 2016-09-13 Microsoft Technology Licensing, Llc Job scheduling using expected server performance information
US9928264B2 (en) 2014-10-19 2018-03-27 Microsoft Technology Licensing, Llc High performance transactions in database management systems
US10230571B2 (en) * 2014-10-30 2019-03-12 Equinix, Inc. Microservice-based application development framework
US10466754B2 (en) * 2014-12-26 2019-11-05 Intel Corporation Dynamic hierarchical performance balancing of computational resources
US10333696B2 (en) * 2015-01-12 2019-06-25 X-Prime, Inc. Systems and methods for implementing an efficient, scalable homomorphic transformation of encrypted data with minimal data expansion and improved processing efficiency
US20160232468A1 (en) * 2015-02-05 2016-08-11 Qu-U-Up Vsa Ltd. System and method for queue management
KR20170131466A (ko) 2015-02-26 2017-11-29 노키아 솔루션스 앤드 네트웍스 오와이 데이터 스트림의 애플리케이션, 네트워크 및 디바이스 자원 활용을 개선하기 위한 협력 기법들
US9904627B2 (en) * 2015-03-13 2018-02-27 International Business Machines Corporation Controller and method for migrating RDMA memory mappings of a virtual machine
US9768808B2 (en) * 2015-04-08 2017-09-19 Sandisk Technologies Llc Method for modifying device-specific variable error correction settings
JP6459784B2 (ja) * 2015-06-03 2019-01-30 富士通株式会社 並列計算機、マイグレーションプログラム、及び、マイグレーション方法
US10721290B2 (en) * 2015-06-05 2020-07-21 Nutanix, Inc. Architecture for managing I/O and storage for a virtualization environment using executable containers and virtual machines
US20160364674A1 (en) * 2015-06-15 2016-12-15 Microsoft Technology Licensing, Llc Project management with critical path scheduling and releasing of resources
WO2017004196A1 (en) 2015-06-29 2017-01-05 Vid Scale, Inc. Dash caching proxy application
US10993069B2 (en) * 2015-07-16 2021-04-27 Snap Inc. Dynamically adaptive media content delivery
US9779269B1 (en) * 2015-08-06 2017-10-03 EMC IP Holding Company LLC Storage system comprising per-tenant encryption keys supporting deduplication across multiple tenants
US10389746B2 (en) 2015-09-28 2019-08-20 Microsoft Technology Licensing, Llc Multi-tenant environment using pre-readied trust boundary components
US11153359B2 (en) 2015-09-29 2021-10-19 Sony Group Corporation User equipment and media streaming network assistance node
JP2017068451A (ja) * 2015-09-29 2017-04-06 富士通株式会社 プログラム、パターン送信方法、共有コンテンツ制御システム及び情報処理装置
US9877266B1 (en) * 2015-12-10 2018-01-23 Massachusetts Mutual Life Insurance Company Methods and systems for beacon-based management of shared resources
US10432722B2 (en) * 2016-05-06 2019-10-01 Microsoft Technology Licensing, Llc Cloud storage platform providing performance-based service level agreements
US20170353397A1 (en) * 2016-06-06 2017-12-07 Advanced Micro Devices, Inc. Offloading Execution of an Application by a Network Connected Device
US10686651B2 (en) * 2016-06-20 2020-06-16 Apple Inc. End-to-end techniques to create PM (performance measurement) thresholds at NFV (network function virtualization) infrastructure
US10367754B2 (en) * 2016-07-01 2019-07-30 Intel Corporation Sharing duty cycle between devices
US10334334B2 (en) * 2016-07-22 2019-06-25 Intel Corporation Storage sled and techniques for a data center
US10187203B2 (en) 2016-08-30 2019-01-22 Workday, Inc. Secure storage encryption system
US10547527B2 (en) * 2016-10-01 2020-01-28 Intel Corporation Apparatus and methods for implementing cluster-wide operational metrics access for coordinated agile scheduling
US10404664B2 (en) * 2016-10-25 2019-09-03 Arm Ip Limited Apparatus and methods for increasing security at edge nodes
US10489215B1 (en) * 2016-11-02 2019-11-26 Nutanix, Inc. Long-range distributed resource planning using workload modeling in hyperconverged computing clusters
KR102358344B1 (ko) 2016-11-03 2022-02-07 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 네트워크-기반 다운로드/스트리밍 개념
JP6822076B2 (ja) * 2016-11-08 2021-01-27 日本電気株式会社 無線リソース割り当て装置、無線リソース割り当て方法、及び、無線リソース割り当てプログラム
US10356197B2 (en) * 2016-11-21 2019-07-16 Intel Corporation Data management in an information-centric network
US20180150256A1 (en) * 2016-11-29 2018-05-31 Intel Corporation Technologies for data deduplication in disaggregated architectures
US10268513B2 (en) * 2016-12-23 2019-04-23 Nice Ltd. Computing resource allocation optimization
US20180241802A1 (en) * 2017-02-21 2018-08-23 Intel Corporation Technologies for network switch based load balancing
CN114363927B (zh) * 2017-02-27 2024-06-04 华为技术有限公司 管理方法、管理单元、通信系统、存储介质和程序产品
WO2018170253A1 (en) * 2017-03-16 2018-09-20 Facet Labs, Llc Edge devices, systems and methods for processing extreme data
US10841184B2 (en) * 2017-03-28 2020-11-17 Huawei Technologies Co., Ltd. Architecture for integrating service, network and domain management subsystems
US10372362B2 (en) 2017-03-30 2019-08-06 Intel Corporation Dynamically composable computing system, a data center, and method for dynamically composing a computing system
US20180322158A1 (en) 2017-05-02 2018-11-08 Hewlett Packard Enterprise Development Lp Changing concurrency control modes
CN106911814A (zh) 2017-05-11 2017-06-30 成都四象联创科技有限公司 大规模数据分布式存储方法
US10388089B1 (en) * 2017-05-17 2019-08-20 Allstate Insurance Company Dynamically controlling sensors and processing sensor data for issue identification
US10949315B2 (en) * 2017-06-07 2021-03-16 Apple Inc. Performance measurements related to virtualized resources
US11385930B2 (en) * 2017-06-21 2022-07-12 Citrix Systems, Inc. Automatic workflow-based device switching
US11889393B2 (en) * 2017-06-23 2024-01-30 Veniam, Inc. Methods and systems for detecting anomalies and forecasting optimizations to improve urban living management using networks of autonomous vehicles
WO2019006033A1 (en) * 2017-06-27 2019-01-03 Drive.Ai Inc METHOD FOR DETECTING AND MANAGING VARIATIONS ALONG ROAD SURFACES FOR AUTONOMOUS VEHICLES
US11095755B2 (en) * 2017-07-10 2021-08-17 Intel Corporation Telemetry for disaggregated resources
US10489195B2 (en) * 2017-07-20 2019-11-26 Cisco Technology, Inc. FPGA acceleration for serverless computing
US10623390B1 (en) * 2017-08-24 2020-04-14 Pivotal Software, Inc. Sidecar-backed services for cloud computing platform
US20190044809A1 (en) * 2017-08-30 2019-02-07 Intel Corporation Technologies for managing a flexible host interface of a network interface controller
US20190104022A1 (en) * 2017-09-29 2019-04-04 Intel Corporation Policy-based network service fingerprinting
US10776525B2 (en) 2017-09-29 2020-09-15 Intel Corporation Multi-tenant cryptographic memory isolation
US20190166032A1 (en) * 2017-11-30 2019-05-30 American Megatrends, Inc. Utilization based dynamic provisioning of rack computing resources
US20190044883A1 (en) * 2018-01-11 2019-02-07 Intel Corporation NETWORK COMMUNICATION PRIORITIZATION BASED on AWARENESS of CRITICAL PATH of a JOB
US20190236562A1 (en) 2018-01-31 2019-08-01 Salesforce.Com, Inc. Systems, methods, and apparatuses for implementing document interface and collaboration using quipchain in a cloud based computing environment
US10761897B2 (en) * 2018-02-02 2020-09-01 Workday, Inc. Predictive model-based intelligent system for automatically scaling and managing provisioned computing resources
CN108282333B (zh) * 2018-03-02 2020-09-01 重庆邮电大学 工业云环境下多边缘节点协作模式下数据安全共享方法
US10904891B2 (en) * 2018-03-14 2021-01-26 Toyota Jidosha Kabushiki Kaisha Edge-assisted data transmission for connected vehicles
US10541942B2 (en) 2018-03-30 2020-01-21 Intel Corporation Technologies for accelerating edge device workloads
US10958536B2 (en) * 2018-04-23 2021-03-23 EMC IP Holding Company LLC Data management policies for internet of things components
US10819795B2 (en) * 2018-04-26 2020-10-27 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Transmitting principal components of sensor data that are responsive to a continuous query
KR102563790B1 (ko) * 2018-05-18 2023-08-07 삼성전자주식회사 어플리케이션의 데이터 전송에 기반하여 네트워크 연결을 수행하기 위한 전자 장치 및 그에 관한 방법
US20190373051A1 (en) * 2018-06-05 2019-12-05 International Business Machines Corporation Task Scheduling System for Internet of Things (IoT) Devices
US10664256B2 (en) * 2018-06-25 2020-05-26 Microsoft Technology Licensing, Llc Reducing overhead of software deployment based on existing deployment occurrences
US11226854B2 (en) * 2018-06-28 2022-01-18 Atlassian Pty Ltd. Automatic integration of multiple graph data structures
EP3591938A1 (de) * 2018-07-03 2020-01-08 Electronics and Telecommunications Research Institute System und verfahren zur steuerung des domain-übergreifenden workflows auf basis eines hierarchischen engine-rahmens
US11057366B2 (en) * 2018-08-21 2021-07-06 HYPR Corp. Federated identity management with decentralized computing platforms
US11356503B2 (en) * 2018-08-30 2022-06-07 Jpmorgan Chase Bank, N.A. Systems and methods for hybrid burst optimized regulated workload orchestration for infrastructure as a service
US11074091B1 (en) * 2018-09-27 2021-07-27 Juniper Networks, Inc. Deployment of microservices-based network controller
US10915366B2 (en) 2018-09-28 2021-02-09 Intel Corporation Secure edge-cloud function as a service
US11212124B2 (en) * 2018-09-30 2021-12-28 Intel Corporation Multi-access edge computing (MEC) billing and charging tracking enhancements
DE112019005604T5 (de) * 2018-11-08 2021-09-09 Intel Corporation Function-as-a-service-system-verbesserungen (faas-system-verbesserungen)
US10909740B2 (en) * 2018-12-07 2021-02-02 Intel Corporation Apparatus and method for processing telemetry data in a virtualized graphics processor
US11412052B2 (en) * 2018-12-28 2022-08-09 Intel Corporation Quality of service (QoS) management in edge computing environments
US11799952B2 (en) * 2019-01-07 2023-10-24 Intel Corporation Computing resource discovery and allocation
US11099963B2 (en) * 2019-01-31 2021-08-24 Rubrik, Inc. Alert dependency discovery
EP3935814B1 (de) * 2019-03-08 2024-02-14 Telefonaktiebolaget Lm Ericsson (Publ) Dynamische zugangsnetzwerkauswahl auf basis von anwendungsorchestrierungsinformationen in einem edge-cloud-system
US11240155B2 (en) * 2019-03-29 2022-02-01 Intel Corporation Technologies for network device load balancers for accelerated functions as a service
US11379264B2 (en) * 2019-04-15 2022-07-05 Intel Corporation Advanced cloud architectures for power outage mitigation and flexible resource use
US20190253518A1 (en) * 2019-04-26 2019-08-15 Intel Corporation Technologies for providing resource health based node composition and management
US11334382B2 (en) * 2019-04-30 2022-05-17 Intel Corporation Technologies for batching requests in an edge infrastructure
US11711268B2 (en) 2019-04-30 2023-07-25 Intel Corporation Methods and apparatus to execute a workload in an edge environment
US11082525B2 (en) * 2019-05-17 2021-08-03 Intel Corporation Technologies for managing sensor and telemetry data on an edge networking platform
US11556382B1 (en) * 2019-07-10 2023-01-17 Meta Platforms, Inc. Hardware accelerated compute kernels for heterogeneous compute environments
US20210011908A1 (en) * 2019-07-11 2021-01-14 Ghost Locomotion Inc. Model-based structured data filtering in an autonomous vehicle
US10827033B1 (en) * 2019-09-05 2020-11-03 International Business Machines Corporation Mobile edge computing device eligibility determination
US11924060B2 (en) * 2019-09-13 2024-03-05 Intel Corporation Multi-access edge computing (MEC) service contract formation and workload execution
US11283635B2 (en) * 2019-09-28 2022-03-22 Intel Corporation Dynamic sharing in secure memory environments using edge service sidecars
DE102020208023A1 (de) 2019-09-28 2021-04-01 Intel Corporation Adaptive datenflusstransformation in edge-computingumgebungen
US11520501B2 (en) * 2019-12-20 2022-12-06 Intel Corporation Automated learning technology to partition computer applications for heterogeneous systems
US11880710B2 (en) * 2020-01-29 2024-01-23 Intel Corporation Adaptive data shipment based on burden functions
US11748171B2 (en) * 2020-03-17 2023-09-05 Dell Products L.P. Method and system for collaborative workload placement and optimization
US11115497B2 (en) * 2020-03-25 2021-09-07 Intel Corporation Technologies for providing advanced resource management in a disaggregated environment
US20200241999A1 (en) * 2020-03-25 2020-07-30 Intel Corporation Performance monitoring for short-lived functions
US11853782B2 (en) * 2020-12-09 2023-12-26 Dell Products L.P. Method and system for composing systems using resource sets

Also Published As

Publication number Publication date
US20200134207A1 (en) 2020-04-30
US20220209971A1 (en) 2022-06-30
CN112579193A (zh) 2021-03-30
US11283635B2 (en) 2022-03-22
US11245538B2 (en) 2022-02-08
JP2021057882A (ja) 2021-04-08
US11374776B2 (en) 2022-06-28
US20220239507A1 (en) 2022-07-28
US20200127980A1 (en) 2020-04-23
US20230267004A1 (en) 2023-08-24
EP3798833B1 (de) 2024-01-03
US20200136921A1 (en) 2020-04-30
US20200128067A1 (en) 2020-04-23
CN112583882A (zh) 2021-03-30
EP3798834A1 (de) 2021-03-31
US11669368B2 (en) 2023-06-06
CN112583883A (zh) 2021-03-30
US20200136994A1 (en) 2020-04-30
US11139991B2 (en) 2021-10-05
EP3798833A1 (de) 2021-03-31
DE102020208776A1 (de) 2021-04-01
KR20210038827A (ko) 2021-04-08
US20200142735A1 (en) 2020-05-07
US20200127861A1 (en) 2020-04-23
CN112583583A (zh) 2021-03-30

Similar Documents

Publication Publication Date Title
DE102020208110A1 (de) Verfahren und vorrichtungen zum aggregieren von telemetriedaten in einer edge-umgebung
Rausch et al. Optimized container scheduling for data-intensive serverless edge computing
DE102020203877A1 (de) Verfahren und einrichtungen zum steuern einer verarbeitung von telemetriedaten auf einer edge-plattform
McChesney et al. Defog: fog computing benchmarks
US10447772B2 (en) Managed function execution for processing data streams in real time
DE102021209145A1 (de) Verfahren und vorrichtung zum koordinieren von edge-plattformen
DE102020131613A1 (de) Verfahren, system und produkt zum implementieren von deterministischem on-boarding und planen virtualisierter arbeitslasten für edge-computing.
US9413858B2 (en) Real-time compressive data collection for cloud monitoring
US20180075152A1 (en) Containerization of network services
DE112016001075T5 (de) Verteiltes speichern und abrufen von datensätzen
DE112017006994T5 (de) Bereitstellung und verwaltung von microservices
EP3032442B1 (de) Modellierung und simulation einer infrastrukturarchitektur für grosse datenmengen
Fernández-Rodríguez et al. Benchmarking real-time vehicle data streaming models for a smart city
Zyrianoff et al. Scalability of an Internet of Things platform for smart water management for agriculture
US10103959B2 (en) Scalable software monitoring infrastructure, using parallel task queuing, to operate in elastic cloud environments
CN103713935B (zh) 一种在线管理Hadoop集群资源的方法和装置
Brandón et al. Fmone: A flexible monitoring solution at the edge
US20230119552A1 (en) Resource management mechanisms for stateful serverless clusters in edge computing
DE112020007229T5 (de) Föderiertes mec-framework für kraftfahrzeugdienste
US10866838B2 (en) Cluster computing service assurance apparatus and method
DE102021209043A1 (de) Methods and apparatus to select a location of execution of a computation
DE102021211772A1 (de) Verfahren und einrichtung zur ermöglichung von sicherem multikohärentem poolspeicher in einem edge-netzwerk
DE112021004177T5 (de) Detektion von einem Leistungsrückgang eines Webservice basierend auf Metriken von Gruppen von Benutzerinteraktionen
Preuveneers et al. Samurai: A streaming multi-tenant context-management architecture for intelligent and scalable internet of things applications
Shao et al. IoT‐Pi: a machine learning‐based lightweight framework for cost‐effective distributed computing using IoT

Legal Events

Date Code Title Description
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: H04L0029080000

Ipc: H04L0065000000