IP Library Granted Patent US 10,795,654
Granted Patent B2
US 10,795,654 · App. 15/691,849 · Granted Oct 6, 2020

Mechanisms for declarative expression of data types for data storage

Inventors: Prakash Khot (Gachibowli, IN); Mark Fischer (Chelmsford, MA); Daniel Philip Arcari (Nashua, NH)
Assignee: Kaseya International Limited
G06F8/51G06F8/315G06F8/35G06F8/36G06F9/44505G06F16/2452G06F16/9024
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,795,654
App. No.
15/691,849
Granted
Oct 6, 2020
Kind
B2
Abstract

Computer implemented techniques for storage management include transforming file instances using a modeling language platform that includes a language grammar and a set of language processing rules to transform instances of an entity written in the language grammar into a platform independent code and artifact files and auto-generating by the modeling language platform code to recognize and process input in a given language to deconstruct file instances into pieces that allow further discrete operations to be performed on the file instances.

Claims (36)

1. A system comprising:

a processor device;

a memory in communication with the processor device; and

a storage device that stores a program of computing instructions for execution by the processor using the memory, the program comprising instructions configured to cause the processor to:

receive instances expressed in a modeling language;

auto-generate by a modeling language platform pieces of software for processing the received instances by deconstructing the received instances into pieces of code according to a language infrastructure of the modeling language platform, which language infrastructure includes a language grammar, symbols, and user-defined words, with the language grammar specifying order and specific combinations in which the symbols appear in valid instances; and

transform the deconstructed instances into a common set of data types expressed as platform independent code and artifact files using the modeling language platform that includes the language grammar and a set of language processing rules to transform the instances.

2. The system of claim 1 , wherein the grammar is a set of rules for specifying keywords, symbols are items that appear in valid instances, and user-defined words are user assigned names.

3. The system of claim 1 wherein the grammar is a context free language grammar of the Extended Backus-Naur Form.

4. The system of claim 1 wherein the platform is further configured to:

interact with a data fabric to provide a compact feature set that separates a conceptual expression of a data model from an underlying implementation in the modeling language.

5. The system of claim 1 wherein the platform independent code is Java, and the Java code and artifact files define one or more data types that describe a logical structure of each entity with respect to a given database's conventions.

6. The system of claim 1 wherein the modeling platform applies a parser to the instances to parse the instances into the pieces that are reusable by the modeling platform; and the system is further configured to:

pass the instances through a data fabric into one or more databases that are are permanent repositories of data against which queries, updates and/or deletes are performed.

7. The system of claim 1 wherein the Java code is one or more Java classes that together with the artifact files have sufficient information for construction of search queries, with the Java classes and the artifact files describing an underlying logical structure of each instance with respect to conventions of a given database, the given database being of a plurality of disparate databases coupled to the system over a data fabric.

8. The system of claim 1 wherein the system is part of a multi-tenant cloud-based service.

9. The system of claim 8 wherein the modeling language platform provides an abstraction of a cloud-based storage platform.

10. The system of claim 1 wherein the modeling language platform provides an abstraction of a cloud-based storage platform.

11. A method comprises:

receiving instances of code expressed in a modeling language by a modeling language platform that includes a processor device, a memory in communication with the processor device;

auto-generating by the modeling language platform pieces of software for processing the instances by deconstructing the instances into pieces of code on which discrete operations are performed according to a language infrastructure of the modeling language platform, which modeling language platform includes a language grammar, symbols, and user-defined words, and with the language grammar specifying order and specific combinations in which the symbols appear in valid instances; and

transforming by the modeling language platform the deconstructed instances into a common set of data types expressed as platform independent code and artifact files using the modeling language platform that includes the language grammar and a set of language processing rules to transform the instances.

12. The method of claim 11 wherein the grammar is a set of rules for specifying keywords, symbols are items that appear in valid instances, and user-defined words are user assigned names.

13. The method of claim 11 wherein the grammar is a context free language grammar of the Extended Backus-Naur Form.

14. The method of claim 11 wherein the platform is configured to interact with a data fabric to provide a compact feature set that separates a conceptual expression of a data model from an underlying implementation in the modeling language.

15. The method of claim 11 wherein the platform independent code is Java, and the Java code and artifact files define one or more data types that describe a logical structure of each entity with respect to a given database's conventions, and with the modeling language platform providing an abstraction of a cloud-based storage platform.

16. The method of claim 11 further comprising:

parsing by the modeling platform the instances into the pieces that are reusable by the modeling platform to act on the instances inputted to the modeling platform; and is further configured to:

pass instances of that data through a data fabric into one or more databases against which queries, updates and deletes are performed.

17. The method of claim 11 wherein the Java code is one or more Java classes that together with the artifact files have sufficient information for construction of queries to search the given database from a plurality of disparate databases coupled to system over a data fabric and with the Java classes and the artifact files describing an underlying logical structure of each instance with respect to conventions of a given database.

18. The method of claim 11 wherein the method is executed as a multi-tenant cloud-based service.

19. A computer program product including a non-transitory computer readable medium that stores executable instructions for causing a processor device to:

receive instances expressed in a modeling language;

auto-generate by a modeling language platform pieces of software for processing the received instances by deconstructing the instances into pieces on which discrete operations are performed according to a language infrastructure of the modeling language platform, which language infrastructure including a language grammar, symbols, and user-defined words, with the language grammar specifying order and specific combinations in which the symbols appear in valid instances; and

transform the deconstructed instances into a common set of data types expressed as platform independent code and artifact files using the modeling language platform that includes the language grammar and a set of language processing rules to transform the instances.

20. The product of claim 19 wherein the grammar is a set of rules for specifying keywords, symbols are items that appear in valid instances, and user-defined words are user assigned names and the grammar is a context free language grammar of the Extended Backus-Naur Form, with the Java code being one or more Java classes that together with the artifact files have sufficient information for construction of queries to search a given database from a plurality of disparate databases.

Assignments (4)
CHANGE OF NAME Recorded Oct 27, 2023
From: DATTO, INC.
To: DATTO, LLC
Reel/Frame 065385/0256 →
EMPLOYMENT AGREEMENT Recorded Aug 28, 2020
From: KHOT, PRAKASH
To: KASEYA INTERNATIONAL LIMITED
Reel/Frame 053627/0982 →
EMPLOYMENT AGREEMENT Recorded Aug 28, 2020
From: FISCHER, MARK
To: KASEYA INTERNATIONAL LIMITED
Reel/Frame 053628/0123 →
EMPLOYMENT AGREEMENT Recorded Aug 28, 2020
From: ARCARI, DANIEL PHILIP
To: KASEYA INTERNATIONAL LIMITED
Reel/Frame 053628/0240 →