US 12,443,613 B2
Reducing probabilistic filter query latency
David Boles, Austin, TX (US); John M. Groves, Austin, TX (US); Steven Moyer, Round Rock, TX (US); and Alexander Tomlinson, Austin, TX (US)
Assigned to Micron Technology, Inc., Boise, ID (US)
Filed by Micron Technology, Inc., Boise, ID (US)
Filed on Aug. 8, 2022, as Appl. No. 17/882,862.
Application 17/882,862 is a continuation of application No. 16/749,523, filed on Jan. 22, 2020, granted, now 11,409,753.
Application 16/749,523 is a continuation of application No. 15/691,998, filed on Aug. 31, 2017, granted, now 10,579,633.
Prior Publication US 2022/0374148 A1, Nov. 24, 2022
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 16/2458 (2019.01); G06F 12/1009 (2016.01); G06F 16/22 (2019.01); G06F 16/2455 (2019.01); G06F 16/901 (2019.01)
CPC G06F 16/2462 (2019.01) [G06F 12/1009 (2013.01); G06F 16/2255 (2019.01); G06F 16/2455 (2019.01); G06F 16/9014 (2019.01)] 20 Claims
OG exemplary drawing
 
1. A system comprising processing circuitry to perform operations comprising:
receiving, from a calling software application, a query for a probabilistic filter that is stored on a first media, the query comprising one or more segment identifiers that specify which segments of the probabilistic filter are pertinent to the query, the one or more segment identifiers comprising byte offsets in a key-value set file that stores the probabilistic filter;
obtaining, in response to receiving the query, cached segments of the probabilistic filter stored on a second media, the cached segments being less than all of the probabilistic filter stored on the first media, the probabilistic filter providing a set membership determination that is conclusive in a determination that an element is not in a set;
executing the query on the cached segments resulting in a partial query result;
initiating retrieval of remaining data of the probabilistic filter from the first media to the second media without intervention from the calling software application, the remaining data corresponding to the query and data that is not in the cached segments; and
returning to the calling software application the partial query result.