US 12,443,601 B2
Data compression for real-time analytics
Ting Chen, San Jose, CA (US); Yupeng Fu, Palo Alto, CA (US); Maksym Ivanchenko, Menlo Park, CA (US); Yu Luo, Toronto (CA); Christopher Peck, Menlo Park, CA (US); Kirk Rodrigues, Toronto (CA); Benjamin Ross, New York, NY (US); Ujwala Prabhakar Tulshigiri, Campbell, CA (US); Kaibo Wang, Seattle, WA (US); and Yun Zhang, Seattle, WA (US)
Assigned to Uber Technologies, Inc., San Francisco, CA (US)
Filed by Uber Technologies, Inc., San Francisco, CA (US)
Filed on May 8, 2023, as Appl. No. 18/313,752.
Prior Publication US 2024/0378202 A1, Nov. 14, 2024
Int. Cl. G06F 16/2453 (2019.01); G06F 16/22 (2019.01); G06F 16/242 (2019.01); G06F 16/2455 (2019.01); G06F 16/248 (2019.01)
CPC G06F 16/24547 (2019.01) [G06F 16/221 (2019.01); G06F 16/2448 (2019.01); G06F 16/24542 (2019.01); G06F 16/2455 (2019.01); G06F 16/248 (2019.01)] 18 Claims
OG exemplary drawing
 
1. A computing system comprising:
one or more processors; and
one or more memory resources storing instructions executable by the one or more processors to cause the one or more processors to perform operations, the operations comprising:
receiving, from a user computing device, a search query, wherein the search query is indicative of at least one log statement of a plurality of compressed log statements stored in an online analytical processing (OLAP) database;
analyzing, using a search algorithm, the search query to identify a user defined function, wherein the user defined function is indicative of one or more columns within the OLAP database;
parsing, using the search algorithm, the search query to convert the search query into one or more predicates, wherein;
the one or more predicates are indicative of an expression that evaluates to a true, a false, or an unknown statement, and
the one or more predicates indicate a condition to satisfy the search query based on the expression,
filtering, by the computing system, the plurality of compressed log statements based on the one or more predicates, wherein the filtering the plurality of compressed log statements comprises:
forwarding the search query to one or more search nodes of the OLAP database, to determine filtered compressed log statements based on the expression, and
consolidating the filtered compressed log statements across the one or more search nodes to generate a query result; and
providing, to the user computing device for display on a user interface, the query result from the OLAP database, wherein the query result is indicative of the filtered compressed log statements comprising the at least one log statement.