Table scan predicate with integrated semi-join filter
US-2024419650-A1 · Dec 19, 2024 · US
US2025328526A1 · US · A1
| Field | Value |
|---|---|
| Publication number | US-2025328526-A1 |
| Application number | US-202418639344-A |
| Country | US |
| Kind code | A1 |
| Filing date | Apr 18, 2024 |
| Priority date | Apr 18, 2024 |
| Publication date | Oct 23, 2025 |
| Grant date | — |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A database comparison tool is provided that compares a source database to a target database. The database comparison tool performs the comparison in two steps: an initial comparison step and a confirmation step. In the initial comparison step, a server retrieves rows of a table from source and target database tables with a query using an agent. The server compares rows by using a hash value for all non-key columns. The resulting rows are flagged as potentially being out-of-sync. In the confirmation step, the server fetches the potentially out-of-sync rows from the source and target databases and performs a literal value-by-value comparison. Each agent receives a batch of rows, inserts the batch of rows into a temporary table, and performs a join operation between the temporary table and the actual source or target table. The agent returns the rows resulting from the join operation to the server.
Opening claim text (preview).
What is claimed is: 1 . A method comprising: a server performing an initial comparison of rows in a particular table of a first database and rows in a corresponding table of a second database, wherein performing the initial comparison generates a first batch of rows that are flagged as being out of sync to be fetched from the first database and a second batch of rows that are flagged as being out of sync to be fetched from the second database; the server causing a first agent at the first database to: insert the first batch of rows into a temporary table; perform a join operation between the temporary table and the particular table of the first database to form a first result set of rows; and return the first result set of rows to the server; the server performing a second comparison of the first result set of rows received from the first agent and a second result set of rows corresponding to the second batch of rows received from a second agent at the second database, wherein the method is performed by one or more computing devices. 2 . The method of claim 1 , wherein performing the initial comparison comprises a row hash comparison. 3 . The method of claim 2 , wherein the first batch of rows of the particular table in the first database comprises one or more key columns of rows that are not identical to a row in the corresponding table in the second database based on the row hash comparison. 4 . The method of claim 3 , wherein: the particular table in the first database has no index, and the one or more key columns are a subset of columns of the particular table having one or more of a predetermined set of datatypes. 5 . The method of claim 4 , wherein the predetermined set of datatypes excludes large object (LOB) type, user defined type (UDT), and extensible markup language (XML) type. 6 . The method of claim 3 , wherein: the particular table in the first database has no index, and the one or more key columns comprise a key column selected by a user. 7 . The method of claim 1 , wherein: the first database is of a first type, the second database is of a second type that is different from the first type, and performing the initial comparison comprises converting columns of the particular table in the first database and columns of the corresponding table in the second database to a standardized data type format. 8 . The method of claim 1 , wherein: performing the initial comparison generates a plurality of batches of rows that are flagged as being out of sync to be fetched from the first database and a plurality of batches of rows that are flagged as being out of sync to be fetched from the second database, and performing the second comparison comprises performing a comparison of a plurality of result sets of rows received from the first agent and a plurality of result sets of rows received from the second agent. 9 . The method of claim 1 , further comprising the server causing results of the second comparison to be presented in a graphical user interface. 10 . The method of claim 1 , wherein the second database is a replicated copy of the first database. 11 . The method of claim 1 , wherein the first database is a replicated copy of the second database. 12 . The method of claim 1 , wherein the temporary table includes a column for each key column of the particular table used to flag the first batch of rows as being out of sync. 13 . The method of claim 12 , wherein the join operation comprises an inner join operation that selects all columns of the particular table and joins with the columns of the temporary table. 14 . The method of claim 1 , wherein the join operation comprises a hash join operation. 15 . The method of claim 1 , wherein the particular table of the first database has no index columns. 16 . The method of claim 1 , wherein the temporary table comprises a global temporary table or a private temporary table. 17 . One or more non-transitory storage media storing instructions which, when executed by one or more computing devices, cause: a server performing an initial comparison of rows in a particular table of a first database and rows in a corresponding table of a second database, wherein performing the initial comparison generates a first batch of rows that are flagged as being out of sync to be fetched from the first database and a second batch of rows that are flagged as being out of sync to be fetched from the second database; the server causing a first agent at the first database to: insert the first batch of rows into a temporary table; perform a join operation between the temporary table and the particular table of the first database to form a first result set of rows; and return the first result set of rows to the server; the server performing a second comparison of the first result set of rows received from the first agent and a second result set of rows corresponding to the second batch of rows received from a second agent at the second database. 18 . The one or more non-transitory storage media of claim 17 , wherein the particular table of the first database has no index columns. 19 . The one or more non-transitory storage media of claim 17 , wherein the temporary table includes a column for each key column of the particular table used to flag the first batch of rows as being out of sync and wherein the join operation comprises an inner join operation that selects all columns of the particular table and joins with the columns of the temporary table. 20 . The one or more non-transitory storage media of claim 17 , wherein the instructions further cause:
of operators · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.