US 12,254,009 B2
Search apparatus, search method, and storage medium
Joji Saeki, Tokyo (JP); Takuya Saeki, Tokyo (JP); and Shinya Saeki, Tokyo (JP)
Assigned to INFORMEX, INC., Tokyo (JP)
Appl. No. 17/777,219
Filed by INFORMEX, INC., Tokyo (JP)
PCT Filed Aug. 27, 2021, PCT No. PCT/JP2021/031457
§ 371(c)(1), (2) Date May 16, 2022,
PCT Pub. No. WO2023/276168, PCT Pub. Date Jan. 5, 2023.
Claims priority of application No. 2021-108235 (JP), filed on Jun. 30, 2021; application No. 2021-108326 (JP), filed on Jun. 30, 2021; and application No. 2021-128808 (JP), filed on Aug. 5, 2021.
Prior Publication US 2023/0281197 A1, Sep. 7, 2023
Int. Cl. G06F 16/2453 (2019.01)
CPC G06F 16/2453 (2019.01) 11 Claims
OG exemplary drawing
 
1. A search apparatus for searching a plurality of data sources in which attribute values are stored with respect to a plurality of records and a plurality of attribute identifiers, the plurality of data sources each associated with a source identifier for identifying a data source, the plurality of data sources being stored in a data source storage unit, the search apparatus comprising:
an array index storage unit in which an array index having attribute position information indicating a range of a position in the data source at which an attribute value is located is stored for each of one or more records out of a plurality of records and for each of a plurality of attributes of each record of the data source;
an array label index storage unit in which an array label index having attribute order information for specifying an order of the attribute identifiers in the data source in which attribute position information of an attribute value is located is stored for each of the plurality of attributes and for each of the plurality of data sources;
a source index storage unit in which a source index having the source identifier, a smallest key item value included in a data source identified with the source identifier, and a largest key item value included in the data source identified with the source identifier is stored for each of the plurality of data sources; and
a processor that:
accepts a search condition including an attribute identifier and a key item value;
retrieve a source identifier that matches the key item value included in the search condition or that is paired with the smallest key item value and the largest key item value between which the key item value is located, from the source index,
by referring to an array label index corresponding to the retrieved source identifier, retrieves attribute order information corresponding to the attribute identifier included in the search condition, from the array label indexes corresponding to the retrieved source identifier,
retrieves attribute position information corresponding to the attribute identifier included in the search condition, from the array index, using the attribute order information,
retrieves an attribute value corresponding to the attribute identifier included in the search condition, using the attribute position information, from the data source storage unit; and
outputs a search result including the attribute value retrieved.