Patent application EP17166431A (EP), filed 2017-04-13
Publication number: EP3232342A1
Title: METHODS AND SYSTEMS FOR BIDIRECTIONAL INDEXING SUMMARY
Abstract: In an aspect, provided is a method comprising receiving a data model, generating a bidirectional table index (BTI) based on the data model, generating a bidirectional association index (BAI) based on the data model and the bidirectional table index, and loading a portion of the data model, the BAI, and the BTI in-memory.
IPC codes: G06F  17/    30            A I
G06F  16/    22            A I
G06F  16/    26            A I
G06F  16/    28            A I
Claims: number: 1
text: A method comprising:
number: 2
text: The method of claim 1, wherein the BTI comprises a hash index.
number: 3
text: The method of claim 1, wherein the data model comprises a plurality of tables and the plurality of tables each comprise at least one row and at least one column.
number: 4
text: The method of claim 3, wherein generating the BTI based on the data model comprises:
number: 5
text: The method of claim 4, further comprising:
number: 6
text: The method of claim 5, further comprising generating an inverted index.
number: 7
text: The method of claim 6, wherein generating the inverted index comprises:
number: 8
text: The method of claim 3, further comprising generating a plurality of BTIs, wherein a BTI is generated for each column of each of the plurality of tables.
number: 9
text: The method of claim 5, further comprising:
number: 10
text: The method of claim 9, further comprising:
number: 11
text: The method of claim 10, further comprising:
number: 12
text: The method of claim 11, wherein generating the BAI based on the data model and the BTI comprises:
number: 13
text: The method of claim 11, wherein the first attribute comprises a reference to the first attribute, the second attribute comprises a reference to the second attribute, the third attribute comprises a reference to the third attribute, and the fourth attribute comprises a reference to the fourth attribute.
number: 14
text: The method of claim 1, further comprising:
number: 15
text: The method of claim 1, wherein loading the portion of the data model in-memory comprises sequentially loading the portion of the data model in-memory.
number: 16
text: The method of claim 1, further comprising:
number: 17
text: A method comprising:
number: 18
text: The method of claim 17, wherein recalculating the state space based on the user selection comprises querying the state space to gather all combinations of dimensions and values to perform the recalculation.
number: 19
text: The method of claim 17, wherein the user selection comprises a first attribute and recalculating the state space based on the user selection, the BTI, and the BAI comprises:
number: 20
text: The method of claim 19, wherein comparing the row state to the inverted index of the second BTI of the first table to determine the second attribute comprises:
number: 21
text: The method of claim 19, further comprising accessing a BAI to determine which of a plurality of attributes of a third BTI of a second table are associated with the second attribute.
number: 22
text: The method of claim 21, wherein accessing the BAI to determine which of a plurality of attributes of a third BTI of a second table are associated with the second attribute comprises:
number: 23
text: The method of claim 21, further comprising updating an inferred state for the second attribute in the second BTI and updating an inferred state for each of the plurality of attributes in the third BTI of the second table that are determined to be associated with the second attribute.
number: 24
text: A method comprising:
number: 25
text: The method of claim 24, wherein the user selection comprises a first attribute and determining distinct values in all related tables that are relevant to the user selection based on the BTI and the BAI comprises:
number: 26
text: The method of claim 25, wherein comparing the row state to the inverted index of the second BTI of the first table to determine the second attribute comprises:
number: 27
text: The method of claim 25, further comprising accessing a BAI to determine which of a plurality of attributes of a third BTI of a second table are associated with the second attribute.
number: 28
text: The method of claim 27, wherein accessing the BAI to determine which of a plurality of attributes of a third BTI of a second table are associated with the second attribute comprises:
number: 29
text: The method of claim 27, further comprising updating an inferred state for the second attribute in the second BTI and updating an inferred state for each of the plurality of attributes in the third BTI of the second table that are determined to be associated with the second attribute.
Office action: search_report, dated 2017-10-18
Rejection reasons: inventive_step_epc_56
Prior art cited: ref_id: US7058621B1
ref_type: patent
severity: background
ref_id: US8745099B2
ref_type: patent
severity: background
ref_id: US8244741B2
ref_type: patent
severity: background
ref_id: US201314054321A
ref_type: patent
severity: background
ref_id: US2013159307A1
ref_type: patent
severity: background
ref_id: &#91;IAY]     - PAUL LANE ET AL: "Oracle Database Data Warehousing Guide, 11g Release 1 (11.1)", 1 September 2007 (2007-09-01), pages I - XXVI, 2-1 - 2-6, 3-1 - 3-4, 4-1 - 4-4, 5-1 - 5, XP055397676, Retrieved from the Internet <URL:https://docs.oracle.com/cd/B28359_01/server.111/b28313.pdf> [retrieved on 20170809&#93;
ref_type: npl
severity: background
ref_id: - PATRICK O'NEIL ET AL: "Multi-table joins through bitmapped join indices", SIGMOD RECORD, ACM, NEW YORK, NY, US, vol. 24, no. 3, 1 September 1995 (1995-09-01), pages 8 - 11, XP058253118, ISSN: 0163-5808, DOI: 10.1145/211990.212001
ref_type: npl
severity: background
ref_id: - PATRICK VALDURIEZ: "Join indices", ACM TRANSACTIONS ON DATABASE SYSTEMS, ACM, NEW YORK, NY, US, vol. 12, no. 2, 1 June 1987 (1987-06-01), pages 218 - 246, XP058153845, ISSN: 0362-5915, DOI: 10.1145/22952.22955
ref_type: npl
severity: background
ref_id: US2013159307
ref_type: patent
severity: obviousness
ref_id: - Paul Lane ET AL, "Oracle Database Data Warehousing Guide, 11g Release 1 (11.1)", (20070901), pages I - XXVI, 2-1 - 2-6, 3-1 - 3-4, 4-1 - 4-4, 5-1 - 5, URL: https://docs.oracle.com/cd/B28359_01/server.111/b28313.pdf, (20170809), XP055397676 [I] 1-5,8-15 * page  I  - page  XXVI * * pages  2-1  - pages  2-6 * * pages  3-1  - pages  3-4 * * pages  4-1  - pages  4-4 * * pages  5-1 * * pages  6-1  - pages  6-8 * [A] 6,7,19-29 [Y] 16-18
ref_type: npl
severity: obviousness
ref_id: - PATRICK O'NEIL ET AL, "Multi-table joins through bitmapped join indices", SIGMOD RECORD, ACM, NEW YORK, NY, US, (19950901), vol. 24, no. 3, doi:10.1145/211990.212001, ISSN 0163-5808, pages 8 - 11, XP058253118 [A] 1-29 * the whole document *
ref_type: npl
severity: background
ref_id: - PATRICK VALDURIEZ, "Join indices", ACM TRANSACTIONS ON DATABASE SYSTEMS, ACM, NEW YORK, NY, US, (19870601), vol. 12, no. 2, doi:10.1145/22952.22955, ISSN 0362-5915, pages 218 - 246, XP058153845 [A] 1-29 * the whole document *
ref_type: npl
severity: background
Final disposition: pending (2017-10-18)