IP Library › Granted Patent US 12,468,662
Granted Patent B2
US 12,468,662 · App. 18/491,798 · Granted Nov 11, 2025

System and method for providing randomly-accessible compacted data

Inventors: Aliasghar Riahi (Orinda, CA); Joshua Cooper (Columbia, SC); Mojgan Haddad (Orinda, CA); Charles Yeomans (Orinda, CA)
Assignee: ATOMBEAM TECHNOLOGIES INC.
G06F16/1752G06F3/0608G06F3/0641G06F3/067
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 12,468,662
App. No.
18/491,798
Filed
Oct 22, 2023
Granted
Nov 11, 2025
Kind
B2
Art Unit
2136
USPC
707/692
Abstract

A system and method for random-access manipulation of compacted data files, utilizing a reference codebook, a random-access engine, a data deconstruction engine, and a data deconstruction engine. The system may receive a data query pertaining to a data read or data write request, wherein the data file to be read from or written to is a compacted data file. A random-access engine may facilitate data manipulation processes by accessing a reference codebook associated with the compacted data file, a frequency table used to construct the reference codebook, and data query details. A data read request is supported by random-access search capabilities that may enable the locating and decoding of the bits corresponding to data query details. A random-access engine facilitates data write processes. The random-access engine may encode the data to be written, insert the encoded data into a compacted data file, and update the codebook as needed.

Claims (31)

1 . A system for random-access manipulation of compacted data files, comprising:

a computing system comprising a memory, a processor, and a non-volatile data storage device;

a deconstruction subsystem comprising a first plurality of programming instructions stored in the memory and operable on the processor, wherein the first plurality of programming instructions, when operating on the processor, cause the computing system to:

deconstruct a data stream into a plurality of sourceblocks;

encode the data stream using a reference codebook by:

retrieving a codeword for each sourceblock from the reference codebook;

where there is no codeword for a first sourceblock, generating a hash code as a new codeword and storing the first sourceblock and its newly-created codeword in the reference codebook; and

storing the codewords corresponding to the data stream in a compacted data file;

a reconstruction subsystem comprising a third plurality of programming instructions stored in the memory and operable on the processor, wherein the third plurality of programming instructions, when operating on the processor, cause the computing system to:

retrieve a plurality of codewords from the compacted data file received from a requesting process;

decode each of the plurality of retrieved codewords by, for each retrieved codeword, retrieving the sourceblock associated with the respective codeword from the reference codebook; and

provide the retrieved sourceblocks as a data stream to the requesting process; and

a random-access subsystem comprising a second plurality of programming instructions stored in the memory and operating on the processor, wherein the second plurality of programming instructions, when operating on the processor, cause the computing subsystem to:

receive a data search query;

estimate, using an estimator module, a first starting bit location in the compacted data file;

refine the first starting bit location by:

determining whether a bit sequence starting at the first starting bit location corresponds to a codeword boundary and, if not, traversing the reference codebook until a codeword boundary is located at a new starting bit;

traversing from the new starting bit until a start codeword corresponding to the beginning of the data search query is identified; and

sending the first start codeword and a plurality of immediately following codewords from the compacted data file to the reconstruction engine for decoding.

2 . A method for random-access manipulation of compacted data files, comprising the steps of:

deconstructing, at a deconstruction subsystem comprising a first plurality of programming instructions stored in a memory and operable on a processor of a computing system, a data stream into a plurality of sourceblocks;

encoding the data stream using the reference codebook by retrieving a codeword for each sourceblock from the reference codebook; and

where there is no codeword for a first sourceblock, generating a hash code as a new codeword and storing the first sourceblock and its newly-created codeword in the reference codebook;

retrieving, at a reconstruction subsystem comprising a second plurality of programming instructions stored in the memory and operable on the processor, a plurality of codewords from a compacted data file;

decoding each of the plurality of retrieved codewords by, for each retrieved codeword, retrieving the sourceblock associated with the respective codeword from the reference codebook;

providing the retrieved sourceblocks as a data stream to the requesting process;

receiving, at a random-access subsystem comprising a third plurality of programming instructions stored in the memory and operating on the processor, a data search query;

estimating, using an estimator module of the random-access engine, a first starting bit location in the compacted data file;

refining the first starting bit location by determining whether a bit sequence starting at the first starting bit location corresponds to a codeword boundary and, if not, traversing the reference codebook until a codeword boundary is located at a new starting bit;

traversing from the new starting bit until a start codeword corresponding to the beginning of the data search query is identified; and

sending the first start codeword and a plurality of immediately following codewords from the compacted data file to the reconstruction subsystem for decoding.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 29, 2024
From: RIAHI, ALIASGHAR; COOPER, JOSHUA; HADDAD, MOJGAN; YEOMANS, CHARLES
To: ATOMBEAM TECHNOLOGIES INC.
Reel/Frame 068447/0178 →
Continuity (13)
Continuation 18078909 · Dec 9, 2022
Continuation 17734052 · Apr 30, 2022
Continuation 17180439 · Feb 19, 2021
Continuation In Part 16923039 · Jul 7, 2020
Continuation In Part 16716098 · Dec 16, 2019
Continuation 16455655 · Jun 27, 2019
Continuation In Part 16200466 · Nov 26, 2018
Continuation In Part 15975741 · May 9, 2018
Provisional Application 63140111 · Jan 21, 2021
Provisional Application 63027166 · May 19, 2020
Provisional Application 62926723 · Oct 28, 2019
Provisional Application 62578824 · Oct 30, 2017
Related Publication 20240160609A1 · May 16, 2024
References Cited (7)
US 5408234A · Chu · 1995 [cited by applicant]
US 7154416B1 · Savage · 2006 [cited by examiner]
US 8453040B2 · Henderson, Jr. et al. · 2013 [cited by applicant]
US 9294589B2 · Crosta et al. · 2016 [cited by applicant]
US 9727255B2 · Matsushita · 2017 [cited by applicant]
US 10255315B2 · Kalevo et al. · 2019 [cited by applicant]
US 20160196075A1 · Matsushita · 2016 [cited by applicant]