# US 10,373,101 B2 · Data delivery and validation in hybrid cloud environments

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,373,101 B2
- Document ID: US10373101B2
- Status: Granted
- Kind: B2
- Application number: 15/087,012
- Filed: 2016-03-31
- Published: 2017-07-20
- Granted: 2019-08-06
- Earliest claimed: 2016-01-16
- Assignees: International Business Machines Corporation
- Applicants: International Business Machines Corporation
- Inventors: Ajay A. Deshpande; Saurabh Gupta; Arun Hampapur; Pradyumnha G. Kowlani; Xuan Liu; Christopher S. Milite; Brian L. Quanz; Chek Keong Tan; Dahai Xing
- Web page: https://patentgrep.com/patent/US10373101B2

## CPC

- G06Q 10/08345: {Pricing}
- G06F 3/0482: Interaction with lists of selectable items, e.g. menus
- G06F 3/04847: Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
- G06F 16/148: {File search processing}
- G06F 16/1734: {Details of monitoring file system events, e.g. by the use of hooks, filter drivers, logs}
- G06F 16/183: {Provision of network file services by network file servers, e.g. by using NFS, CIFS (network file access protocols H04L67/1097)}
- G06F 16/1844: {Management specifically adapted to replicated file systems}
- G06F 16/2365: {Ensuring data consistency and integrity}
- G06N 5/01: Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
- G06N 5/04: Inference or reasoning models
- G06N 5/045: Explanation of inference; Explainable artificial intelligence [XAI]; Interpretable artificial intelligence
- G06N 20/00: Machine learning
- G06Q 10/06315: {Needs-based resource requirements planning or analysis}
- G06Q 10/0633: Workflow analysis
- G06Q 10/06375: {Prediction of business process outcome or impact based on a proposed change}
- G06Q 10/083: Shipping
- G06Q 10/0833: Tracking
- G06Q 10/0838: {Historical data}
- G06Q 10/0843: {using forecasting or optimisation}
- G06Q 10/087: Inventory or stock management, e.g. order filling, procurement or balancing against orders
- G06Q 10/0875: Itemisation or classification of parts, supplies or services, e.g. bill of materials
- G06Q 30/0201: Market modelling; Market analysis; Collecting market data
- G06Q 30/0206: {Price or cost determination based on market factors}
- G06Q 30/0283: Price estimation or determination
- G06Q 30/0284: {Time or distance, e.g. usage of parking meters or taximeters}
- G06Q 30/0635: {replenishment orders; recurring orders}
- H04L 43/0882: Utilisation of link capacity
- H04L 43/16: Threshold monitoring
- G06Q 10/08744: {by distributed inventory management}
- H04L 43/0876: Network utilisation, e.g. volume of load or congestion level
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06N: COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Data content delivery and validation in a computer environment may provide a file system in the computer environment, the file system subdivided into unique folder locations per content type, each of the unique folder locations representing a content type folder. The file system is monitored for changes to a content type folder. An occurrence of a manifest file in the content type folder may be detected, the occurrence of the manifest file ensuring that all files in a package of files associated with the manifest file have arrived. Content of the manifest file may be analyzed to check validity of the files. A content package registry may be queried to determine a base job for processing a given content type associated with the package of files, and the base job may be run to process the package of files.

## Claims

### Claim 1

A method of data content delivery and validation in a computer environment comprising:
providing a file system in the computer environment, the file system subdivided into unique folder locations per content type, each of the unique folder locations representing a content type folder;
monitoring by a file system monitor executing in the computer environment, changes to a content type folder;
detecting based on the monitoring, an occurrence of a manifest file in the content type folder, the occurrence of the manifest file ensuring that all files in a package of files associated with the manifest file have arrived;
responsive to detecting the occurrence of the manifest file, analyzing content of the manifest file to check validity of the files and initiating processing of the package of files;
querying, by the file system monitor executing in the computer environment, a content
package registry to determine a base job for processing a given content type associated with the package of files;
running the base job in the computer environment to process the package of files;
polling the content package registry on an interval basis, by a registry monitor running in the computer environment; and
responsive to detecting based on the polling that the base job has run successfully, querying the content package registry to determine which one or more queues to update for notifying one or more content subscribers for new content or post processing or combination thereof.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
updating the content package registry with completion status and processing timestamp of the given content type.

### Claim 3 (depends on 1)

The method of claim 1, further comprising:
writing by the base job, processing details to a logging subsystem.

### Claim 4 (depends on 1)

The method of claim 1, wherein responsive to detecting based on the polling that the base job has failed or content feed scheduled to occur did not occur or combination thereof, reporting an error via one or more notification rules.

### Claim 5 (depends on 1)

The method of claim 1, wherein responsive to detecting based on the polling that the base job has failed or content feed scheduled to occur did not occur or combinations thereof, logging an error for display in an operational dashboard running in the computer environment.

### Claim 6 (depends on 1)

The method of claim 1, wherein the file system comprises a secure synchronizing file system.

### Claim 7 (depends on 1)

The method of claim 1, wherein each of the files are sent from a host environment running a separate thread for sending said each of the files.

### Claim 8

A non-transitory computer readable storage medium storing a program of instructions executable by a machine to perform a method of data content delivery and validation in a computer environment, comprising:
creating by a client application running on an on-premise host computer, a computer executable job to transfer a package of files comprising a plurality of computer files;
transmitting by the computer executable job, the package of files to a file system on the computer environment via a network, the file system subdivided into unique folder locations per content type, each of the unique folder locations representing a content type folder;
determining whether all files in the package of files have been transmitted; responsive to determining that all files in the package of files have been transmitted, creating and transmitting a job manifest file describing the content of the package of files to the file system.

### Claim 9 (depends on 8)

The computer readable storage medium of claim 8, wherein a plurality of threads run in parallel, each of the plurality of threads sending a file in the package of files.

### Claim 10 (depends on 9)

The computer readable storage medium of claim 9, wherein each of the plurality of threads monitors the sending of the file independently of rest of the plurality of threads.

### Claim 11 (depends on 8)

The computer readable storage medium of claim 8, wherein responsive to determining that not all files in the package of files have been transferred successfully, reporting an error status.

### Claim 12 (depends on 8)

The computer readable storage medium of claim 8, wherein the package of files are processed by the computer environment responsive to detecting that the job manifest file is received in the file system, wherein a base job is executed on the computer environment for processing a given content type associated with the package of files.

### Claim 13

A system of data content delivery a: validation in a computer environment, comprising:
one or more storage devices providing a file system in the computer environment, the file system subdivided into unique folder locations per content type, each of the unique folder locations representing content type folder;
a file system server providing services of the file system; and
one or more hardware processors coupled to the one or more storage devices, and for monitoring changes to a content type folder,
one or more of the hardware processors further for detecting based on monitoring, an occurrence of a manifest file in the content type folder, the occurrence of the manifest file ensuring that all files in a package of files associated with the manifest file have arrived,
responsive to detecting the occurrence of the manifest file, one or more hardware
processors further for analyzing content of the manifest file to check validity of the files and initiate processing of the package of files,
one or more hardware processors further for querying a content package registry to determine a base job for processing a given content type associated with the package of files,
one or more hardware processors further for running the base job in the computer environment to process the package of files,
wherein one or more hardware processors are further for polling the content package registry on an interval basis, and responsive to detecting based on polling that the base job has run successfully, one or more hardware processors are further for querying the content package registry to determine which one or more queues to update for notifying one or more content subscribers for new content or post processing or combination thereof.

### Claim 14 (depends on 13)

The system of claim 13, wherein one or more hardware processors are further operable to update the content package registry with completion status and processing timestamp of the given content type.

### Claim 15 (depends on 13)

The system of claim 13, wherein one or more hardware processors are further operable to write processing details to a logging subsystem.

### Claim 16 (depends on 13)

The system of claim 13, wherein responsive to detecting based on polling that the base job has failed or content feed scheduled to occur did not occur or combination thereof, one or more hardware processors are further operable to report an error via one or more notification rules.

### Claim 17 (depends on 13)

The system of claim 13, wherein responsive to detecting based on polling that the base job has failed or content feed scheduled to occur did not occur or combinations thereof, one or more hardware processors are further operable to log an error for display in an operational dashboard running in the computer environment.

### Claim 18 (depends on 13)

The system of claim 13, wherein the file system comprises a secure synchronizing file system.
