# US 2022/0035835 A1 · Accessing data of catalog objects

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

- Number: US 2022/0035835 A1
- Document ID: US20220035835A1
- Status: Published application
- Kind: A1
- Application number: 17/501,833
- Filed: 2021-10-14
- Published: 2022-02-03
- Earliest claimed: 2014-02-19
- Assignees: Snowflake Inc.
- Applicants: Snowflake Inc.
- Inventors: Ashish Motivala; Benoit Dageville
- Web page: https://patentgrep.com/patent/US20220035835A1

## CPC

- G06F 16/273: {Asynchronous replication or reconciliation}
- A61F 5/566: {Intra-oral devices}
- G06F 9/4881: {Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues}
- G06F 9/5016: {the resource being the memory}
- G06F 9/5044: {considering hardware capabilities}
- G06F 9/5083: {Techniques for rebalancing the load in a distributed system}
- G06F 9/5088: {involving task migration}
- G06F 16/128: {Details of file system snapshots on the file-level, e.g. snapshot creation, administration, deletion (error detection or correction of the data by redundancy in operations or in hardware G06F11/14, G06F11/16)}
- G06F 16/148: {File search processing}
- G06F 16/1827: {Management specifically adapted to NAS (management of storage area networks [SAN] G06F3/067)}
- G06F 16/211: {Schema design and management}
- G06F 16/221: {Column-oriented storage; Management thereof}
- G06F 16/2365: {Ensuring data consistency and integrity}
- G06F 16/24532: {of parallel queries}
- G06F 16/24545: {Selectivity estimation or determination}
- G06F 16/24552: {Database cache management}
- G06F 16/2456: {Join operations}
- G06F 16/2471: {Distributed queries}
- G06F 16/254: {Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses}
- G06F 16/27: Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
- G06F 16/283: {Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP}
- G06F 16/951: Indexing; Web crawling techniques
- G06F 16/9535: Search customisation based on user profiles and personalisation
- G06F 16/9538: Presentation of query results
- H04L 67/1095: Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
- H04L 67/1097: for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
- H04L 67/568: Storing data temporarily at an intermediate stage, e.g. caching
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- A61F: FILTERS IMPLANTABLE INTO BLOOD VESSELS; PROSTHESES; DEVICES PROVIDING PATENCY TO, OR PREVENTING COLLAPSING OF, TUBULAR STRUCTURES OF THE BODY, e.g. STENTS; ORTHOPAEDIC, NURSING OR CONTRACEPTIVE DEVICES; FOMENTATION; TREATMENT OR PROTECTION OF EYES OR EARS; BANDAGES, DRESSINGS OR ABSORBENT PADS; FIRST-AID KITS (dental prosthetics A61C)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Example systems and methods for cloning catalog objects are described. In one implementation, a method includes creating a copy of a catalog object without copying a data associated with the catalog object by only coping metadata associated with the object. The method further includes modifying, by one or more processors, the data associated with the catalog object independently of the copy of the catalog object.

## Claims

### Claim 1

A system comprising:
a memory to store an original catalog object associated with a dataset, and
one or more processors, operatively coupled to the memory, the one or more processors to:
create a duplicate catalog object of the original catalog object by copying metadata associated with the dataset without copying the dataset;
determine, based on the metadata, whether the dataset needs to be accessed without accessing the dataset; and
access, based on the duplicate catalog object, the dataset associated with the original catalog object responsive to determining that the dataset needs to be accessed.

### Claim 2 (depends on 1)

The system of claim 1, wherein the dataset is stored in files, and wherein the one or more processors are further to:
execute data access requests directed to the dataset stored in the files by reading the duplicate catalog object of the original catalog object when the dataset is being recreated; and
add additional files to either of the original catalog object or the duplicate catalog object of the original catalog object independently of another.

### Claim 3 (depends on 1)

The system of claim 1, wherein the duplicate catalog object comprises a duplicate hierarchy of one or more generations of children.

### Claim 4 (depends on 3)

The system of claim 3, wherein to copy the metadata the one or more processors are further to copy an inventory of the dataset.

### Claim 5 (depends on 3)

The system of claim 3, wherein to copy the metadata the one or more processors are further to copy information regarding the dataset that enables identification of the dataset without requiring access to the dataset.

### Claim 6 (depends on 1)

The system of claim 1, wherein to identify the original catalog object in a database the one or more processors are to identify a logical grouping of data in the database.

### Claim 7 (depends on 1)

The system of claim 1, wherein to modify the dataset associated with the original catalog object the one or more processors are to modify such that modified data is not visible to the duplicate catalog object of the original catalog object.

### Claim 8 (depends on 1)

The system of claim 1, the one or more processors further to delete the duplicate catalog object of the original catalog object following completion of the modification of the dataset associated with the original catalog object.

### Claim 9

A method comprising:
creating a duplicate catalog object of an original catalog object associated with a dataset by copying metadata associated with the dataset without copying the dataset;
determining, based on the metadata, whether the dataset needs to be accessed without accessing the dataset; and
accessing, by one or more processors based on the duplicate catalog object, the dataset associated with the original catalog object responsive to determining that the dataset needs to be accessed.

### Claim 10 (depends on 9)

The method of claim 9, wherein the dataset is stored in files, the method further comprising:
executing data access requests directed to the dataset stored in the files by reading the duplicate catalog object of the original catalog object when the dataset is being recreated; and
adding additional files to either of the original catalog object or the duplicate catalog object of the original catalog object independently of another.

### Claim 11 (depends on 9)

The method of claim 9, wherein the duplicate catalog object comprises a duplicate hierarchy of one or more generations of children.

### Claim 12 (depends on 11)

The method of claim 11, wherein copying the metadata comprises copying an inventory of the dataset.

### Claim 13 (depends on 11)

The method of claim 11, wherein copying the metadata comprises copying information regarding the dataset that enables identification of the dataset without requiring access to the dataset.

### Claim 14 (depends on 9)

The method of claim 9, wherein identifying the original catalog object in a database comprises identifying a logical grouping of data in the database.

### Claim 15 (depends on 9)

The method of claim 9, wherein modifying the dataset associated with the original catalog object comprises modifying such that modified data is not visible to the duplicate catalog object of the original catalog object.

### Claim 16 (depends on 9)

The method of claim 9, the method further comprising deleting the duplicate catalog object of the original catalog object following completion of the modification of the dataset associated with the original catalog object.

### Claim 17

A non-transitory computer-readable storage medium comprising instructions which, when executed by one or more processors, cause the one or more processors to:
create a duplicate catalog object of an original catalog object associated with a dataset without copying the dataset;
determine, based on the metadata, whether the dataset needs to be accessed without accessing the dataset;
access, based on the duplicate catalog object, the dataset associated with the original catalog object responsive to determining that the dataset needs to be accessed.

### Claim 18 (depends on 17)

The non-transitory computer-readable storage medium of claim 17, wherein the dataset is stored in files, and wherein the one or more processors are further to:
execute data access requests directed to the dataset stored in the files by reading the duplicate catalog object of the original catalog object when the dataset is being recreated; and
add additional files to either of the original catalog object or the duplicate catalog object of the original catalog object independently of another.

### Claim 19 (depends on 17)

The non-transitory computer-readable storage medium of claim 17, wherein the duplicate catalog object comprises a duplicate hierarchy of one or more generations of children.

### Claim 20 (depends on 19)

The non-transitory computer-readable storage medium of claim 19, wherein to copy the metadata the one or more processors are further to copy an inventory of the dataset.

### Claim 21 (depends on 19)

The non-transitory computer-readable storage medium of claim 19, wherein to copy the metadata the one or more processors are further to copy information regarding the dataset that enables identification of the dataset without requiring access to the dataset.

### Claim 22 (depends on 17)

The non-transitory computer-readable storage medium of claim 17, wherein to identify the original catalog object in a database the one or more processors are to identify a logical grouping of data in the database.

### Claim 23 (depends on 17)

The non-transitory computer-readable storage medium of claim 17, wherein to modify the dataset associated with the original catalog object the one or more processors are to modify such that modified data is not visible to the duplicate catalog object of the original catalog object.

### Claim 24 (depends on 17)

The non-transitory computer-readable storage medium of claim 17, the one or more processors further to delete the duplicate catalog object of the original catalog object following completion of the modification of the dataset associated with the original catalog object.
