IP Library Granted Patent US 9,836,494
Granted Patent B2
US 9,836,494 · App. 15/154,999 · Granted Dec 5, 2017

Importation, presentation, and persistent storage of data

Inventors: Ryan Caudy (New York, NY); David R. Kent, IV (Colorado Springs, CO); Charles Wright (Cortlandt Manor, NY); Radu Teodorescu (New York, NY)
Assignee: Illumon LLC
G06F17/30368G06F3/0481G06F3/0482G06F3/0485G06F3/04847G06F3/04895G06F3/0605G06F3/067G06F3/0656G06F8/30G06F8/41G06F8/427G06F8/60G06F11/1451G06F11/1464G06F11/1469G06F12/0261G06F12/084G06F15/17331G06F17/2235G06F17/24G06F17/246G06F17/276G06F17/2715G06F17/30117G06F17/30312G06F17/30315G06F17/30321G06F17/30324G06F17/30327G06F17/30333G06F17/30336G06F17/30339G06F17/30345G06F17/30371G06F17/30374G06F17/30377G06F17/30398G06F17/30424G06F17/30448G06F17/30454G06F17/30477G06F17/30522G06F17/30528G06F17/30554G06F17/30563G06F17/30584G06F17/30598G06F17/30864G06F17/30867G06F17/30887G06F17/30958G06F17/30997H04L12/18H04L51/12H04L61/2069H04L63/101H04L63/102H04L67/1002H04L67/34H04L67/42H04L69/16G06F2201/805G06F2201/84G06F2212/60
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 9,836,494
App. No.
15/154,999
Granted
Dec 5, 2017
Kind
B2
Abstract

The disclosed subject matter includes systems, methods, and computer readable medium for importing/presenting data for computer system use. A logging process can receive data. Log file(s) can be created in memory. A listener can parse received log data to be appended to columns. A log tailer process can transmit data read from log file(s) to data import server(s). At data import server(s): the data can be written to column(s) of the associated table location in cache memory buffers, for immediate use by data consumers and for writing to persistent storage; a current number of rows of data written to the cache memory buffers can be confirmed; column data can be synchronized from the cache memory buffers into a persistent table data store; and table location metadata can be updated. A check point can be written for the persisted data for resuming import after a fault.

Claims (94)

1. A computer data system for importing and presenting data for a computer system having cache memory buffers, persistent storage, and a listener device, the computer data system comprising

one or more processors;

computer readable storage coupled to the one or more processors, the computer readable storage having stored thereon instructions that, when executed by the one or more processors, cause the one or more processors to perform operations including:

starting a logging process to receive a stream of data;

creating in a computer memory device one or more log files;

starting a log tailer process for reading data from the one or more log files and transmitting data read from log files;

starting a listener to parse received log data to be appended to columns;

receiving a stream of data by the logging process;

the logging process writing the data into the one or more log files in a computer memory;

the log tailer process reading data from the one or more log files;

the log tailer process transmitting the data to one or more data import servers;

parsing the data with the listener;

at the one or more data import servers, writing the data to one or more columns of the associated table location in cache memory buffers, for immediate use by data consumers and for writing to persistent storage;

confirming, at the one or more data import servers, a current number of rows of data written to the cache memory buffers;

synchronizing, at the one or more data import servers, the column data from the cache memory buffers into a persistent table data store;

updating, at the one or more data import servers, table location metadata; and

writing a check point for the persisted data for use in resuming import after a system fault.

2. The computer data system of claim 1 , the operations further including:

advertising an existence of imported table location data available in the cache memory buffers.

3. The computer data system of claim 1 , wherein writing a check point for the cache memory buffers includes at least one of:

a table location size in rows; and

a log file and byte-offset to resume from for the table location next row.

4. The computer data system of claim 1 , the operations further including:

writing state associated with each table location imported from the application process logs.

5. The computer data system of claim 4 , wherein the processor applies the state to validate data written to the persistent table data store.

6. The computer data system of claim 1 , wherein the logging process writes the data into the one or more log files in a computer memory by applying schema-specified, generated code to format the data; and wherein the listener is generated from a schema.

7. The system of claim 6 , wherein the table location metadata comprises a version identifier of a schema used to generate the schema-specified, generated code used to format the data.

8. The computer data system of claim 1 , wherein the one or more log files are row-oriented.

9. The system of claim 1 , wherein the one or more data import servers are remote from the log trailer process.

10. The system of claim 1 , the operations further including:

generating the listener based on a schema; and

generating formatting code based on the same schema,

wherein the logging process writing the data into the one or more log files in a computer memory comprises formatting the data by executing the generated formatting code to format the data for output to the one or more log files.

11. A method for importing and presenting data for computer system use, the method comprising:

starting with a processor a logging process to receive a stream of data;

creating in a computer memory device one or more log files;

starting with a processor a log tailer process for reading data from the one or more log files and transmitting data read from log files;

starting a listener to parse received log data to be appended to columns;

receiving a stream of data by the logging process;

the logging process writing the data into the one or more log files in a computer memory;

the log toiler process reading data from the one or more log files;

the log tailer process transmitting the data to one or more data import servers;

parsing the data with the listener;

at the one or more data import servers, writing the data to one or more columns of the associated table location in cache memory buffers, for immediate use by data consumers and for writing to persistent storage;

confirming, at the one or more data import servers, a current number of rows of data written to the cache memory buffers;

synchronizing, at the one or more data import servers, the column data from the cache memory buffers into a persistent table data store;

updating, at the one or more data import servers, table location metadata; and

writing a check point for the persisted data for use in resuming import after a system fault.

12. The method of claim 11 , further comprising:

advertising an existence of imported table location data available in the cache memory buffers.

13. The method of claim 11 , wherein writing a check point for the cache memory buffers includes at least one of:

a table location size in rows; and

a log file and byte-offset to resume from for the table location next row.

14. The method of claim 11 , further comprising:

writing state associated with each table location imported from the application process logs.

15. The method of claim 11 , wherein the processor applies the state to validate data written to the persistent table data store.

16. The method of claim 11 , wherein the logging process writes the data into the one or more log files in a computer memory by applying schema-specified, generated code to format the data; and wherein the listener is generated from a schema.

17. The method of claim 16 , wherein the table location metadata comprises a version identifier of a schema used to generate the schema-specified, generated code used to format the data.

18. The method of claim 11 , wherein the one or more log files are row-oriented.

19. The method of claim 11 , wherein the one or more data import servers are remote from the log tailer process.

20. The method of claim 11 , further comprising:

generating the listener based on a schema; and

generating formatting code based on the same schema,

wherein the logging process writing the data into the one or more log files in a computer memory comprises formatting the data by executing the generated formatting code to format the data for output to the one or more log files.

21. A nontransitory computer readable medium having stored thereon software instructions that, when executed by one or more processors, cause the one or more processors to perform operations including:

starting a logging process to receive a stream of data;

creating in a computer memory device one or more log files,

starting a log tailer process for reading data from the one or more log files and transmitting data read from log files;

starting a listener to parse received log data to be appended to columns;

receiving a stream of data by the logging process;

the logging process writing the data into the one or more log files in a computer memory;

the log tailer process reading data from the one or more log files;

the log tailer process transmitting the data to one or more data import servers;

parsing the data with the listener;

at the one or more data import servers, writing the data to one or more columns of the associated table location in cache memory buffers, for immediate use by data consumers and for writing to persistent storage;

confirming, at the one or more data import servers, a current number of rows of data written to the cache memory buffers;

synchronizing, at the one or more data import servers, the column data from the cache memory buffers into a persistent table data store;

updating, at the one or more data import servers, table location metadata; and

writing a check point for the persisted data for use in resuming import after a system fault.

22. The nontransitory computer readable medium of claim 21 , the operations further including:

advertising an existence of imported table location data available in the cache memory buffers.

23. The nontransitory computer readable medium of claim 21 , wherein writing a check point for the cache memory buffers includes at least one of:

a table location size in rows; and

a log file and byte-offset to resume from for the table location next row.

24. The nontransitory computer readable medium of claim 21 , the operations further including:

writing state associated with each table location imported from the application process logs.

25. The nontransitory computer readable medium of claim 21 , wherein the logging process writes the data into the one or more log files in a computer memory by applying schema-specified, generated code to format the data and wherein the listener is generated from a schema.

26. The nontransitory computer readable medium of claim 21 , wherein the table location metadata comprises a version identifier of a schema used to generate the schema-specified, generated code used to format the data.

27. The nontransitory computer readable medium of claim 21 , wherein the one or more log files are row-oriented.

28. The nontransitory computer readable medium of claim 21 , wherein the one or more data import servers are remote from the log tailer process.

29. The nontransitory computer readable medium of claim 21 , the operations further including:

generating the listener based on a schema; and

generating formatting code based on the same schema,

wherein the logging process writing the data into the one or more log files in a computer memory comprises formatting the data by executing the generated formatting code to format the data for output to the one or more log files.

Assignments (3)
CHANGE OF NAME Recorded Sep 5, 2018
From: ILLUMON LLC
To: DEEPHAVEN DATA LABS LLC
Reel/Frame 047017/0500 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 30, 2017
From: RIES, BRIAN; FERRETTI-SMYTHE, JUAN CRISTIAN; WRIGHT, CHARLES; VYDROV, OLEG; CAUDY, RYAN; KENT, DAVID R., IV; DORFMAN, NATHANIEL J.; TEODORESCU, RADU; ZELDIS, MARK; BRONNIMANN, HERVE; BASRALIAN, RAFFI
To: ILLUMON LLC
Reel/Frame 044557/0029 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 28, 2017
From: WALLEYE SOFTWARE, LLC
To: ILLUMON LLC
Reel/Frame 043722/0092 →
Continuity (2)
Provisional Application 62161813 · May 14, 2015
Related Publication 20160335163A1 · Nov 17, 2016