Token Based Dynamic Data Indexing With Integrated Security

US2021279292A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2021279292-A1
Application numberUS-202117327949-A
CountryUS
Kind codeA1
Filing dateMay 24, 2021
Priority dateJul 17, 2013
Publication dateSep 9, 2021
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Semantic analysis to resolve ambiguous user input data with respect to a request for data includes identifying tokens based on the text string, identifying a tables in a database, wherein a token indicates a column from a table and a token indicates a column from another table, identifying candidate join paths for joining tables, obtaining respective candidate results using the candidate join paths, outputting combined candidate results including values from the respective candidate results, obtaining second user input data indicating a selected value, identifying the request for data as unambiguous and identifying a selected join path based on the selected value, and, in response to identifying the request for data as unambiguous, outputting data responsive to the request for data using the selected join path.

First claim

Opening claim text (preview).

What is claimed is: 1 . A method of semantic analysis to resolve ambiguous user input data with respect to a request for data, the method comprising: obtaining first user input data indicating a request for data and including a text string; automatically identifying a first token based on a first portion of the text string using a finite state machine and a token index, wherein the token index indexes tokens, including the first token and a second token, such that tokens are computer accessible; automatically identifying a first table in a database, wherein the first token indicates a first column from the first table, and wherein the first table includes a second column; automatically identifying the second token based on a second portion of the text string using the finite state machine and the token index; automatically identifying a second table in the database, wherein the second token indicates a third column from the second table, and wherein the second table includes a fourth column and a fifth column, automatically identifying a first candidate join path for joining data from the first column from the first table with data from the third column from the second table based on an association between the fourth column from the second table and the second column from the first table; automatically identifying a second candidate join path for joining data from the first column from the first table with data from the third column from the second table based on an association between the fifth column from the second table and the second column from the first table; automatically identifying the request for data as ambiguous in response to automatically identifying the first candidate join path and the second candidate join path, and in the absence of data selecting the first candidate join path or the second candidate join path as a selected join path; automatically obtaining first candidate results responsive to the input data, wherein automatically obtaining first candidate results includes using the first candidate join path and omits using the second candidate join path, such that the first candidate results include a first set of candidate values based on the first column from the first table and a second set of candidate results based on the third column from the second table; automatically obtaining second candidate results responsive to the input data, wherein automatically obtaining second candidate results includes using the second candidate join path and omits using the first candidate join path, such that the second candidate results include a third set of candidate values based on the first column from the first table and a fourth set of candidate results based on the third column from the second table; automatically outputting, for presentation to a user, combined candidate results including: a first value from the first set of candidate values; a second value from the second set of candidate results; a third value from the third set of candidate values; and a fourth value from the fourth set of candidate results; obtaining second user input data indicating a selection of the first value, the second value, the third value, or the fourth value; in response to obtaining the second user input data, automatically identifying the request for data as unambiguous and identifying the selected join path, wherein identifying the selected join path includes: identifying the first candidate join path as the selected join path in response to automatically determining that the second user input data indicates the selection of the first value or the second value; and identifying the second candidate join path as the selected join path in response to automatically determining that the second user input data indicates the selection of the third value or the fourth value; and in response to automatically identifying the request for data as unambiguous, automatically outputting, for presentation to the user, data responsive to the request for data using the selected join path. 2 . An apparatus comprising: a memory; and a processor configured to execute instructions stored in the memory to: obtain first user input data indicating a request for data and including a text string; automatically identify a first token based on a first portion of the text string using a finite state machine and a token index, wherein the token index indexes tokens, including the first token and a second token, such that tokens are computer accessible; automatically identify a first table in a database, wherein the first token indicates a first column from the first table, and wherein the first table includes a second column; automatically identify the second token based on a second portion of the text string using the finite state machine and the token index; automatically identify a second table in the database, wherein the second token indicates a third column from the second table, and wherein the second table includes a fourth column and a fifth column, automatically identify a first candidate join path for joining data from the first column from the first table with data from the third column from the second table based on an association between the fourth column from the second table and the second column from the first table; automatically identify a second candidate join path for joining data from the first column from the first table with data from the third column from the second table based on an association between the fifth column from the second table and the second column from the first table; automatically identify the request for data as ambiguous in response to the automatic identification of the first candidate join path and the second candidate join path, and in the absence of data selecting the first candidate join path or the second candidate join path as a selected join path; automatically obtain first candidate results responsive to the input data, wherein to automatically obtain the first candidate results the processor is configured to execute the instructions stored in the memory to use the first candidate join path and omit using the second candidate join path, such that the first candidate results include a first set of candidate values based on the first column from the first table and a second set of candidate results based on the third column from the second table; automatically obtain second candidate results responsive to the input data, wherein to automatically obtain the second candidate results the processor is configured to execute the instructions stored in the memory to use the second candidate join path and omit using the first candidate join path, such that the second candidate results include a third set of candidate values based on the first column from the first table and a fourth set of candidate results based on the third column from the second table; automatically output, for presentation to a user, combined candidate results including: a first value from the first set of candidate values; a second value from the second set of candidate results; a third value from the third set of candidate values; and a fourth value from the fourth set of candidate results; obtain second user input data indicating a selection of the first value, the second value, the third value, or the fourth value; in response to the second user input data, automatically identify the request for data as unambiguous and identify the selected join path, wherein to automatically identify the selected join path the processor is configured to execute the instructions stored in the memory to: identify the first candidate join path as the selected join path in response to a determination that the second user input data indicates the selection of the first value or the second value; and identify the second candidate join path as the selected join

Assignees

Inventors

Classifications

  • Selection or weighting of terms from queries, including natural language queries · CPC title

  • Natural language query formulation · CPC title

  • using system suggestions · CPC title

  • Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually · CPC title

  • Natural language query formulation · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2021279292A1 cover?
Semantic analysis to resolve ambiguous user input data with respect to a request for data includes identifying tokens based on the text string, identifying a tables in a database, wherein a token indicates a column from a table and a token indicates a column from another table, identifying candidate join paths for joining tables, obtaining respective candidate results using the candidate join p…
Who is the assignee on this patent?
Thoughtspot Inc
What technology area does this patent fall under?
Primary CPC classification G06F16/2423. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Sep 09 2021 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).