Sélection de la langue

Search

Sommaire du brevet 3130988 

Énoncé de désistement de responsabilité concernant l'information provenant de tiers

Une partie des informations de ce site Web a été fournie par des sources externes. Le gouvernement du Canada n'assume aucune responsabilité concernant la précision, l'actualité ou la fiabilité des informations fournies par les sources externes. Les utilisateurs qui désirent employer cette information devraient consulter directement la source des informations. Le contenu fourni par les sources externes n'est pas assujetti aux exigences sur les langues officielles, la protection des renseignements personnels et l'accessibilité.

Disponibilité de l'Abrégé et des Revendications

L'apparition de différences dans le texte et l'image des Revendications et de l'Abrégé dépend du moment auquel le document est publié. Les textes des Revendications et de l'Abrégé sont affichés :

  • lorsque la demande peut être examinée par le public;
  • lorsque le brevet est émis (délivrance).
(12) Demande de brevet: (11) CA 3130988
(54) Titre français: METHODE ET DISPOSITIF POUR DETERMINER UN CALCUL D'ASSOCIATION REPETITIVE ET SYSTEME INFORMATIQUE
(54) Titre anglais: METHOD AND DEVICE FOR IDENTIFYING REPETITIVE ASSOCIATION CALCULATION AND COMPUTER SYSTEM
Statut: Examen
Données bibliographiques
(51) Classification internationale des brevets (CIB):
  • G6F 16/24 (2019.01)
(72) Inventeurs :
  • DING, QINGYAN (Chine)
  • XU, WEI (Chine)
(73) Titulaires :
  • 10353744 CANADA LTD.
(71) Demandeurs :
  • 10353744 CANADA LTD. (Canada)
(74) Agent: JAMES W. HINTONHINTON, JAMES W.
(74) Co-agent:
(45) Délivré:
(22) Date de dépôt: 2021-09-16
(41) Mise à la disponibilité du public: 2022-03-16
Requête d'examen: 2022-09-16
Licence disponible: S.O.
Cédé au domaine public: S.O.
(25) Langue des documents déposés: Anglais

Traité de coopération en matière de brevets (PCT): Non

(30) Données de priorité de la demande:
Numéro de la demande Pays / territoire Date
202010973509.X (Chine) 2020-09-16

Abrégés

Abrégé anglais


The present application makes public a method of and a device for identifying
repeated
correlation calculation, and a computer system. The method comprises obtaining
a first SQL
statement and a second SQL statement to be identified; analyzing the first SQL
statement, and
identifying a first correlation query included in the first SQL statement,
wherein the correlation
query includes correlation calculation between datasheets required to be
performed for executing
the SQL statement; analyzing the second SQL statement, and identifying a
second correlation
query included in the second SQL statement; and determining that there is
repeated correlation
calculation existent in the first SQL statement and the second SQL statement
when there is
repeated correlation calculation existent in the first correlation query and
the second correlation
query.

Revendications

Note : Les revendications sont présentées dans la langue officielle dans laquelle elles ont été soumises.


CLAIMS
What is claimed is:
1. A method of identifying repeated correlation calculation,
characterized in that the method
comprises:
obtaining a first SQL statement and a second SQL statement to be identified;
analyzing the first SQL statement, and identifying a first correlation query
included in the
first SQL statement, wherein the correlation query includes correlation
calculation between
datasheets required to be performed for executing the SQL statement;
analyzing the second SQL statement, and identifying a second correlation query
included in
the second SQL statement; and
determining that there is repeated correlation calculation existent in the
first SQL statement
and the second SQL statement when there is repeated correlation calculation
existent in the
first correlation query and the second correlation query.
2. The method according to Claim 1, characterized in that the correlation
calculation includes
corresponding datasheets and a correlation relation keyword, wherein the
correlation relation
keyword is employed to describe correlation calculation required to be
performed between
datasheets, and that the step of analyzing the first SQL statement, and
identifying a first
correlation query included in the first SQL statement includes:
analyzing the first SQL statement, and identifying a first correlation
relation keyword
included in the first SQL statement, and a first datasheet and a second
datasheet to which
the first correlation relation keyword corresponds; and
19
Date Recue/Date Received 2021-11-16

determining first correlation calculation included in the first correlation
query according
to the first datasheet, the second datasheet and the first correlation
relation keyword.
3. The method according to Claim 1, characterized in that the step of
analyzing the first SQL
statement, and identifying a first correlation query included in the first SQL
statement
includes:
analyzing the first SQL statement, and generating json data to which the first
SQL
statement corresponds; and
identifying the first correlation query included in the first SQL statement
according to
the json data.
4. The method according to Claim 1 or 2, characterized in that the second SQL
statement
includes a sub-query and a correlation query between the sub-query and a third
datasheet,
and that the step of analyzing the second SQL statement, and identifying a
second correlation
query included in the second SQL statement includes:
analyzing the second SQL statement, and identifying a second correlation
relation
keyword included in the sub-query, and a fourth datasheet and a fifth
datasheet to which
the second correlation relation keyword corresponds;
determining second correlation calculation included in the second correlation
query
according to the second correlation relation keyword, and the fourth datasheet
and the
fifth datasheet to which the second correlation relation keyword corresponds;
identifying a third correlation relation keyword included in the second SQL
statement,
and the third datasheet and the sub-query to which the third correlation
relation keyword
Date Recue/Date Received 2021-11-16

corresponds;
determining third correlation calculation included in the second correlation
query
according to the third correlation relation keyword, the third datasheet and
the fourth
datasheet; and
determining fourth correlation calculation included in the second correlation
query
according to the third correlation relation keyword, the third datasheet and
the fifth
datasheet.
5. The method according to anyone of Claims 1 to 3, characterized in that the
first SQL
statement and the second SQL statement include corresponding datasheets to be
processed,
and that the method comprises:
replacing, when the corresponding datasheets to be processed are temporary
sheets, the
datasheets to be processed with corresponding entity sheets.
6. The method according to Claim 2, characterized in that the step of
determining that there is
repeated correlation calculation existent in the first SQL statement and the
second SQL
statement when there is repeated correlation calculation existent in the first
correlation query
and the second correlation query includes:
grouping the correlation calculations according to the correlation relation
keywords; and
determining that there is repeated correlation calculation existent in the
first SQL statement
and the second SQL statement when any group includes identical correlation
calculation of
corresponding datasheets.
7. A device for identifying repeated correlation calculation, characterized in
that the device
comprises:
21
Date Recue/Date Received 2021-11-16

an obtaining module, for obtaining a first SQL statement and a second SQL
statement to be
identified;
an analyzing module, for analyzing the first SQL statement, and identifying a
first correlation
query included in the first SQL statement, wherein the correlation query
includes correlation
calculation between datasheets required to be performed for executing the SQL
statement;
analyzing the second SQL statement, and identifying a second correlation query
included in
the second SQL statement; and
a processing module, for determining that there is repeated correlation
calculation existent in
the first SQL statement and the second SQL statement when there is repeated
correlation
calculation existent in the first correlation query and the second correlation
query.
8. The device according to Claim 7, characterized in that the analyzing module
can be further
employed for analyzing the first SQL statement, and identifying a first
correlation relation
keyword included in the first SQL statement, and a first datasheet and a
second datasheet to
which the first correlation relation keyword corresponds; and determining
first correlation
calculation included in the first correlation query according to the first
datasheet, the second
datasheet and the first correlation relation keyword.
9. The device according to Claim 7 or 8, characterized in that the second SQL
statement includes
a sub-query and a correlation query between the sub-query and a third
datasheet, and that the
analyzing module can be further employed for analyzing the second SQL
statement, and
identifying a second correlation relation keyword included in the sub-query,
and a fourth
datasheet and a fifth datasheet to which the second correlation relation
keyword corresponds;
determining second correlation calculation included in the second correlation
query
according to the second correlation relation keyword, and the fourth datasheet
and the fifth
datasheet to which the second correlation relation keyword corresponds;
identifying a third
correlation relation keyword included in the analyzed second SQL statement,
wherein the
22
Date Recue/Date Received 2021-11-16

fourth correlation relation keyword is employed to describe correlation query
of the sub-
query and the third datasheet; determining third correlation calculation
included in the second
correlation query according to the third correlation relation keyword, the
third datasheet and
the fourth datasheet; and determining fourth correlation calculation included
in the second
correlation query according to the third correlation relation keyword, the
third datasheet and
the fifth datasheet.
10. A computer system, characterized in that the system comprises:
one or more processor(s); and
a memory, associated with the one or more processor(s), wherein the memory is
employed to
store a program instruction, and the program instruction performs the
following operations
when it is read and executed by the one or more processor(s):
obtaining a first SQL statement and a second SQL statement to be identified;
analyzing the first SQL statement, and identifying a first correlation query
included in
the first SQL statement, wherein the correlation query includes correlation
calculation
between datasheets required to be performed for executing the SQL statement;
analyzing the second SQL statement, and identifying a second correlation query
included
in the second SQL statement; and
determining that there is repeated correlation calculation existent in the
first SQL
statement and the second SQL statement when there is repeated correlation
calculation
existent in the first correlation query and the second correlation query.
23
Date Recue/Date Received 2021-11-16

Description

Note : Les descriptions sont présentées dans la langue officielle dans laquelle elles ont été soumises.


METHOD AND DEVICE FOR IDENTIFYING REPETITIVE ASSOCIATION
CALCULATION AND COMPUTER SYSTEM
BACKGROUND OF THE INVENTION
Technical Field
[0001] The present invention relates to the field of data processing
technology, and more
particularly to a method of identifying repeated correlation calculation, a
device for
identifying repeated correlation calculation, and a computer system.
Description of Related Art
[0002] In such data processing scenarios as big data offline tasks, great
quantities of SQL
statements should be processed. During the process of executing the great
quantities of
SQL statements, repeated correlation calculation of two datasheets usually
occurs. Such
repeated correlation calculations cause great losses to computation resources
and storage
resources, severely affect the operating efficiency of data platforms, and
increase the
operation costs of data platforms. Accordingly, there is an urgent need for a
method of
identifying repeated correlation calculations included in plural SQL
statements.
SUMMARY OF THE INVENTION
[0003] In order to address the deficiencies in the state of the art, a major
objective of the present
invention is to provide a method of identifying repeated correlation
calculation, a device
for identifying repeated correlation calculation, and a computer system, so as
to identify
repeated correlation calculations included in SQL statements.
[0004] In order to achieve the above objective, according to the first aspect
of the present
invention, there is provided a method of identifying repeated correlation
calculation, and
the method comprises:
1
Date Recue/Date Received 2021-11-16

[0005] obtaining a first SQL statement and a second SQL statement to be
identified;
[0006] analyzing the first SQL statement, and identifying a first correlation
query included in
the first SQL statement, wherein the correlation query includes correlation
calculation
between datasheets required to be performed for executing the SQL statement;
[0007] analyzing the second SQL statement, and identifying a second
correlation query
included in the second SQL statement; and
[0008] determining that there is repeated correlation calculation existent in
the first SQL
statement and the second SQL statement when there is repeated correlation
calculation
existent in the first correlation query and the second correlation query.
[0009] In some embodiments, the correlation calculation includes corresponding
datasheets and
a correlation relation keyword, wherein the correlation relation keyword is
employed to
describe correlation calculation required to be performed between datasheets,
and the step
of analyzing the first SQL statement, and identifying a first correlation
query included in
the first SQL statement includes:
[0010] analyzing the first SQL statement, and identifying a first correlation
relation keyword
included in the first SQL statement, and a first datasheet and a second
datasheet to which
the first correlation relation keyword corresponds; and
[0011] determining first correlation calculation included in the first
correlation query according
to the first datasheet, the second datasheet and the first correlation
relation keyword.
[0012] In some embodiments, the step of analyzing the first SQL statement, and
identifying a
first correlation query included in the first SQL statement includes:
[0013] analyzing the first SQL statement, and generating json data to which
the first SQL
statement corresponds; and
[0014] identifying the first correlation query included in the first SQL
statement according to
the json data.
[0015] In some embodiments, the second SQL statement includes a sub-query and
a correlation
2
Date Recue/Date Received 2021-11-16

query between the sub-query and a third datasheet, and the step of analyzing
the second
SQL statement, and identifying a second correlation query included in the
second SQL
statement includes:
[0016] analyzing the second SQL statement, and identifying a second
correlation relation
keyword included in the sub-query, and a fourth datasheet and a fifth
datasheet to which
the second correlation relation keyword corresponds;
[0017] determining second correlation calculation included in the second
correlation query
according to the second correlation relation keyword, and the fourth datasheet
and the fifth
datasheet to which the second correlation relation keyword corresponds;
[0018] identifying a third correlation relation keyword included in the second
SQL statement,
and the third datasheet and the sub-query to which the third correlation
relation keyword
corresponds;
[0019] determining third correlation calculation included in the second
correlation query
according to the third correlation relation keyword, the third datasheet and
the fourth
datasheet; and
[0020] determining fourth correlation calculation included in the second
correlation query
according to the third correlation relation keyword, the third datasheet and
the fifth
datasheet.
[0021] In some embodiments, the first SQL statement and the second SQL
statement include
corresponding datasheets to be processed, and the method comprises:
[0022] replacing, when the corresponding datasheets to be processed are
temporary sheets, the
datasheets to be processed with corresponding entity sheets.
[0023] In some embodiments, the step of determining that there is repeated
correlation
calculation existent in the first SQL statement and the second SQL statement
when there is
repeated correlation calculation existent in the first correlation query and
the second
correlation query includes:
[0024] grouping the correlation calculations according to the correlation
relation keywords; and
3
Date Recue/Date Received 2021-11-16

[0025] determining that there is repeated correlation calculation existent in
the first SQL
statement and the second SQL statement when any group includes identical
correlation
calculation of corresponding datasheets.
[0026] According to the second aspect of the present invention, the present
application provides
a device for identifying repeated correlation calculation, and the device
comprises:
[0027] an obtaining module, for obtaining a first SQL statement and a second
SQL statement
to be identified;
[0028] an analyzing module, for analyzing the first SQL statement, and
identifying a first
correlation query included in the first SQL statement, wherein the correlation
query
includes correlation calculation between datasheets required to be performed
for executing
the SQL statement; analyzing the second SQL statement, and identifying a
second
correlation query included in the second SQL statement; and
[0029] a processing module, for determining that there is repeated correlation
calculation
existent in the first SQL statement and the second SQL statement when there is
repeated
correlation calculation existent in the first correlation query and the second
correlation
query.
[0030] In some embodiments, the analyzing module can be further employed for
analyzing the
first SQL statement, and identifying a first correlation relation keyword
included in the first
SQL statement, and a first datasheet and a second datasheet to which the first
correlation
relation keyword corresponds; and determining first correlation calculation
included in the
first correlation query according to the first datasheet, the second datasheet
and the first
correlation relation keyword.
[0031] In some embodiments, the second SQL statement includes a sub-query and
a correlation
query between the sub-query and a third datasheet, and the analyzing module
can be further
employed for analyzing the second SQL statement, and identifying a second
correlation
relation keyword included in the sub-query, and a fourth datasheet and a fifth
datasheet to
4
Date Recue/Date Received 2021-11-16

which the second correlation relation keyword corresponds; determining second
correlation calculation included in the second correlation query according to
the second
correlation relation keyword, and the fourth datasheet and the fifth datasheet
to which the
second correlation relation keyword corresponds; identifying a third
correlation relation
keyword included in the analyzed second SQL statement, wherein the fourth
correlation
relation keyword is employed to describe correlation query of the sub-query
and the third
datasheet; determining third correlation calculation included in the second
correlation
query according to the third correlation relation keyword, the third datasheet
and the fourth
datasheet; and determining fourth correlation calculation included in the
second correlation
query according to the third correlation relation keyword, the third datasheet
and the fifth
datasheet.
[0032] According to the third aspect of the present invention, the present
application provides
a computer system, and the system comprises:
[0033] one or more processor(s);
[0034] a memory, associated with the one or more processor(s), wherein the
memory is
employed to store a program instruction, and the program instruction performs
the
following operations when it is read and executed by the one or more
processor(s):
[0035] obtaining a first SQL statement and a second SQL statement to be
identified;
[0036] analyzing the first SQL statement, and identifying a first correlation
query included in
the first SQL statement, wherein the correlation query includes correlation
calculation
between datasheets required to be performed for executing the SQL statement;
[0037] analyzing the second SQL statement, and identifying a second
correlation query
included in the second SQL statement; and
[0038] determining that there is repeated correlation calculation existent in
the first SQL
statement and the second SQL statement when there is repeated correlation
calculation
existent in the first correlation query and the second correlation query.
[0039] The present invention achieves the following advantageous effects.
Date Recue/Date Received 2021-11-16

[0040] The present application provides a method of identifying repeated
correlation
calculation, and the method comprises obtaining a first SQL statement and a
second SQL
statement to be identified; analyzing the first SQL statement, and identifying
a first
correlation query included in the first SQL statement, wherein the correlation
query
includes correlation calculation between datasheets required to be performed
for executing
the SQL statement; analyzing the second SQL statement, and identifying a
second
correlation query included in the second SQL statement; and determining that
there is
repeated correlation calculation existent in the first SQL statement and the
second SQL
statement when there is repeated correlation calculation existent in the first
correlation
query and the second correlation query. The method is applicable to the
identification as to
whether plural SQL statements contain repeated correlation calculations, so as
to
subsequently optimize and readjust the SQL statements that contain repeated
correlation
calculations, and to further enhance operating efficiency of the data
platform.
BRIEF DESCRIPTION OF THE DRAWINGS
[0041] To more clearly describe the technical solutions in the embodiments of
the present
invention, drawings required to illustrate the embodiments are briefly
introduced below.
Apparently, the drawings introduced below are merely directed to some
embodiments of
the present invention, while persons ordinarily skilled in the art may further
acquire other
drawings on the basis of these drawings without spending creative effort in
the process.
[0042] Fig. 1 is a flowchart illustrating identification of repeated
correlation calculation
provided by an embodiment of the present application;
[0043] Fig. 2 is a flowchart illustrating identification of repeated
correlation calculation of a
task provided by an embodiment of the present application;
6
Date Recue/Date Received 2021-11-16

[0044] Fig. 3 is a flowchart illustrating a method provided by an embodiment
of the present
application;
[0045] Fig. 4 is a view illustrating the structure of a device provided by an
embodiment of the
present application; and
[0046] Fig. 5 is a view illustrating the structure of a computer system
provided by an
embodiment of the present application.
DETAILED DESCRIPTION OF THE INVENTION
[0047] To make more lucid and clear the objectives, technical solutions and
advantages of the
present invention, the technical solutions in the embodiments of the present
invention will
be clearly and comprehensively described below with reference to the
accompanying
drawings in the embodiments of the present invention. Apparently, the
embodiments as
described are merely partial, rather than the entire, embodiments of the
present invention.
Any other embodiments makeable by persons ordinarily skilled in the art on the
basis of
the embodiments in the present invention without creative effort shall all
fall within the
protection scope of the present invention.
[0048] As noted in the Description of Related Art, to solve the aforementioned
problems, the
present application provides a method of identifying repeated correlation
calculation, as
shown in Figs. 1 and 2, identification of repeated correlation calculation
employing this
method includes the following steps.
[0049] Step 1 ¨ obtaining an SQL statement to be analyzed.
[0050] Udf function can be used to extract an original SQL query task from a
Hive task and a
sparkSQL task, and the SQL statement to be analyzed is subsequently extracted
from the
7
Date Recue/Date Received 2021-11-16

original task.
[0051] Step 2 ¨ analyzing the SQL statement, and respectively generating
corresponding Json
data according to a correlation query obtained by analysis.
[0052] The udf function can be developed by using antlr technique for
analyzing SQL
statements.
[0053] The udf function can analyze and obtain, on the basis of the input SQL
statement,
correlation relation keywords included in the SQL statement, datasheets to be
enquired to
which the correlation relation keywords correspond, a database in which the
datasheets to
be enquired locate, and correlation conditions to which the correlation
relation keywords
correspond, and base on all data obtained by analysis to generate the
corresponding Json
data.
[0054] When the datasheets to be enquired include temporary sheets, they can
be replaced with
corresponding entity sheets.
[0055] A correlation relation keyword can include Join and union. Join
includes JOIN, LEFT
JOIN, INNER JOIN, RIGHT JOIN, CROSS JOIN, FULL JOIN and NOT JOIN. In order to
ensure precision of identification, corresponding analyzing rules containing
various types
of SQL statements can be preset, and the types include SQL statements
containing JOIN,
SQL statements containing UNION, and SQL statements simultaneously containing
JOIN
and UNION or sub-queries. When an SQL statement obtained by analysis contains
a
correlation relation keyword, a corresponding analyzing rule is based on to
further analyze
the SQL statement, so as to identify such data as the datasheet to be enquired
to which the
correlation relation keyword corresponds, the database in which the datasheet
to be
enquired locates, and the correlation condition to which the correlation
relation keyword
corresponds.
8
Date Recue/Date Received 2021-11-16

[0056] Step 3 ¨ determining a correlation query included in the SQL statement
according to the
Json data to which the SQL statement corresponds.
[0057] In order to identify the correlation query, one or more correlation
calculation(s) included
in the correlation query should be identified, the correlation relation
keyword and the
corresponding datasheet included in the SQL statement can be determined
according to the
data contained in the Json data, and the correlation relation keyword and the
corresponding
datasheet constitutes one correlation calculation.
[0058] For instance, as is obtained according to Json data, a first SQL
statement includes a
correlation query of table A and a sub-query of database Ti, and the sub-query
includes a
correlation query of table B and table C. The correlation relation keyword of
table B and
table C is LEFT JOIN; the correlation condition of table A and the sub-query
is Union, and
the correlation condition is a first correlation condition. It can then be
determined that the
first correlation relation keyword included in this SQL statement is JOIN, the
corresponding datasheets to be enquired are table B and table C, and the
database in which
the datasheets to be enquired locate is Ti; the second correlation relation
keyword as
obtained is Union, the corresponding datasheets to be enquired are table A and
table B, and
the correlation condition is the first correlation condition; the third
correlation relation
keyword is Union, the corresponding datasheets to be enquired are table A and
table C, and
the correlation condition is the first correlation condition. Then, the first
SQL statement
includes three times of correlation calculations, which are respectively Union
correlation
calculation of table A and table B, Union correlation calculation of table A
and table C, and
JOIN correlation calculation of table B and table C.
[0059] As is obtained according to Json data, the SQL statement includes a
correlation query
of table B and table C of database Ti, and the correlation relation keyword is
RIGHT JOIN,
then the correlation calculation included in the second SQL statement is JOIN
correlation
9
Date Recue/Date Received 2021-11-16

calculation of table B and table C.
[0060] Step 4 ¨ grouping the json data according to the included correlation
relation keyword,
and counting in the same group whether identical json data of the included
datasheets to be
processed occurs and the number of times of such occurrence.
[0061] Step 5 ¨ judging, when the number of times of occurrence is not less
than a preset
threshold, that the identical json data of the included datasheets to be
processed contains
repeated correlation calculation.
[0062] Preferably, when the number of times of occurrence is not less than 1,
it is judged that
the identical json data of the included datasheets to be processed contains
repeated
correlation calculation.
[0063] Since the first SQL statement and the second SQL statement both include
JOIN
correlation calculation of table B and table C, it can be judged that there is
repeated
correlation calculation existent in the first SQL statement and the second SQL
statement.
[0064] A hive table can be generated according to identified repeated
correlation calculations
and the corresponding SQL statements, and submitted to technical personnel for
reference,
so that the technical personnel can optimize and readjust the SQL statements
and the
process of enquiring the SQL statements to thereby enhance operating
efficiency of the
system.
Embodiment 2
[0065] Corresponding to the aforementioned embodiment, the present application
proposes a
method of identifying repeated correlation calculation, as shown in Fig. 3,
the method
comprises:
Date Recue/Date Received 2021-11-16

[0066] 310 - obtaining a first SQL statement and a second SQL statement to be
identified;
[0067] preferably, the first SQL statement and the second SQL statement
include corresponding
datasheets to be processed;
[0068] 311 ¨ replacing, when the corresponding datasheets to be processed are
temporary sheets,
the datasheets to be processed with corresponding entity sheets.
[0069] 320 ¨ analyzing the first SQL statement, and identifying a first
correlation query
included in the first SQL statement, wherein the correlation query includes
correlation
calculation between datasheets required to be performed for executing the SQL
statement;
[0070] preferably, the correlation calculation includes corresponding
datasheets and a
correlation relation keyword, wherein the correlation relation keyword is
employed to
describe correlation calculation required to be performed between datasheets,
and the step
of analyzing the first SQL statement, and identifying a first correlation
query included in
the first SQL statement includes:
[0071] 321 ¨ analyzing the first SQL statement, and identifying a first
correlation relation
keyword included in the first SQL statement, and a first datasheet and a
second datasheet
to which the first correlation relation keyword corresponds;
[0072] 322 ¨ determining first correlation calculation included in the first
correlation query
according to the first datasheet, the second datasheet and the first
correlation relation
keyword.
[0073] Preferably, the step of analyzing the first SQL statement, and
identifying a first
correlation query included in the first SQL statement includes:
[0074] 323 ¨ analyzing the first SQL statement, and generating json data to
which the first SQL
statement corresponds;
[0075] 324 ¨ identifying the first correlation query included in the first SQL
statement
according to the json data.
[0076] 330 ¨ analyzing the second SQL statement, and identifying a second
correlation query
included in the second SQL statement;
[0077] preferably, the second SQL statement includes a sub-query and a
correlation query
between the sub-query and a third datasheet, and the step of analyzing the
second SQL
11
Date Recue/Date Received 2021-11-16

statement, and identifying a second correlation query included in the second
SQL statement
includes:
[0078] 331 ¨ analyzing the second SQL statement, and identifying a second
correlation relation
keyword included in the sub-query, and a fourth datasheet and a fifth
datasheet to which
the second correlation relation keyword corresponds;
[0079] 332 ¨ determining second correlation calculation included in the second
correlation
query according to the second correlation relation keyword, and the fourth
datasheet and
the fifth datasheet to which the second correlation relation keyword
corresponds;
[0080] 333 ¨ identifying a third correlation relation keyword included in the
second SQL
statement, and the third datasheet and the sub-query to which the third
correlation relation
keyword corresponds;
[0081] 334 ¨ determining third correlation calculation included in the second
correlation query
according to the third correlation relation keyword, the third datasheet and
the fourth
datasheet;
[0082] 335 ¨ determining fourth correlation calculation included in the second
correlation query
according to the third correlation relation keyword, the third datasheet and
the fifth
datasheet.
[0083] 340 ¨ determining that there is repeated correlation calculation
existent in the first SQL
statement and the second SQL statement when there is repeated correlation
calculation
existent in the first correlation query and the second correlation query.
[0084] Preferably, the step of determining that there is repeated correlation
calculation existent
in the first SQL statement and the second SQL statement when there is repeated
correlation
calculation existent in the first correlation query and the second correlation
query includes:
[0085] 341 ¨ grouping the correlation calculations according to the
correlation relation
keywords;
[0086] 342 ¨ determining that there is repeated correlation calculation
existent in the first SQL
statement and the second SQL statement when any group includes identical
correlation
calculation of corresponding datasheets.
12
Date Recue/Date Received 2021-11-16

Embodiment 3
[0087] Corresponding to the above method, the present application proposes a
device for
identifying repeated correlation calculation, as shown in Fig. 4, the device
comprises:
[0088] an obtaining module 410, for obtaining a first SQL statement and a
second SQL
statement to be identified;
[0089] an analyzing module 420, for analyzing the first SQL statement, and
identifying a first
correlation query included in the first SQL statement, wherein the correlation
query
includes correlation calculation between datasheets required to be performed
for executing
the SQL statement; analyzing the second SQL statement, and identifying a
second
correlation query included in the second SQL statement; and
[0090] a processing module 430, for determining that there is repeated
correlation calculation
existent in the first SQL statement and the second SQL statement when there is
repeated
correlation calculation existent in the first correlation query and the second
correlation
query.
[0091] Preferably, the analyzing module 420 can be further employed for
analyzing the first
SQL statement, and identifying a first correlation relation keyword included
in the first
SQL statement, and a first datasheet and a second datasheet to which the first
correlation
relation keyword corresponds; and determining first correlation calculation
included in the
first correlation query according to the first datasheet, the second datasheet
and the first
correlation relation keyword.
[0092] Preferably, the second SQL statement includes a sub-query and a
correlation query
between the sub-query and a third datasheet, and the analyzing module 420 can
be further
employed for analyzing the second SQL statement, and identifying a second
correlation
relation keyword included in the sub-query, and a fourth datasheet and a fifth
datasheet to
which the second correlation relation keyword corresponds; determining second
correlation calculation included in the second correlation query according to
the second
13
Date Recue/Date Received 2021-11-16

correlation relation keyword, and the fourth datasheet and the fifth datasheet
to which the
second correlation relation keyword corresponds; identifying a third
correlation relation
keyword included in the analyzed second SQL statement, wherein the fourth
correlation
relation keyword is employed to describe correlation query of the sub-query
and the third
datasheet; determining third correlation calculation included in the second
correlation
query according to the third correlation relation keyword, the third datasheet
and the fourth
datasheet; and determining fourth correlation calculation included in the
second correlation
query according to the third correlation relation keyword, the third datasheet
and the fifth
datasheet.
[0093] Preferably, the analyzing module 420 can be further employed for
analyzing the first
SQL statement, and generating json data to which the first SQL statement
corresponds; and
identifying the first correlation query included in the first SQL statement
according to the
json data.
[0094] Preferably, the first SQL statement and the second SQL statement
include corresponding
datasheets to be processed, and the obtaining module 410 can be further
employed for
replacing, when the corresponding datasheets to be processed are temporary
sheets, the
datasheets to be processed with corresponding entity sheets.
[0095] Preferably, the processing module 430 can be further employed for
grouping the
correlation calculations according to the correlation relation keywords; and
determining
that there is repeated correlation calculation existent in the first SQL
statement and the
second SQL statement when any group includes identical correlation calculation
of
corresponding datasheets.
Embodiment 4
[0096] Corresponding to the aforementioned method, device and system,
embodiment 4 of the
14
Date Recue/Date Received 2021-11-16

present application provides a computer system that comprises one or more
processor(s);
and a memory, associated with the one or more processor(s), wherein the memory
is
employed to store a program instruction, and the program instruction performs
the
following operations when it is read and executed by the one or more
processor(s):
[0097] obtaining a first SQL statement and a second SQL statement to be
identified;
[0098] analyzing the first SQL statement, and identifying a first correlation
query included in
the first SQL statement, wherein the correlation query includes correlation
calculation
between datasheets required to be performed for executing the SQL statement;
[0099] analyzing the second SQL statement, and identifying a second
correlation query
included in the second SQL statement; and
[0100] determining that there is repeated correlation calculation existent in
the first SQL
statement and the second SQL statement when there is repeated correlation
calculation
existent in the first correlation query and the second correlation query.
[0101] Fig. 5 exemplarily illustrates the framework of the computer system
that can specifically
include a processor 1510, a video display adapter 1511, a magnetic disk driver
1512, an
input/output interface 1513, a network interface 1514, and a memory 1520. The
processor
1510, the video display adapter 1511, the magnetic disk driver 1512, the
input/output
interface 1513, the network interface 1514, and the memory 1520 can be
communicably
connected with one another via a communication bus 1530.
[0102] The processor 1510 can be embodied in such a way as a general CPU
(Central
Processing Unit), a microprocessor, an ASIC (Application Specific Integrated
Circuit), or
one or more integrated circuit(s) for executing relevant program(s) to realize
the technical
solutions provided by the present application.
[0103] The memory 1520 can be embodied in such a form as an ROM (Read Only
Memory),
an RAM (Random Access Memory), a static storage device, or a dynamic storage
device.
The memory 1520 can store an operating system 1521 for controlling the running
of a
Date Recue/Date Received 2021-11-16

computer system 1500, and a basic input/output system (BIOS) for controlling
lower-level
operations of the computer system 1500. In addition, the memory 1520 can also
store a
web browser 1523, a data storage management system 1524, and an icon font
processing
system 1525, etc. The icon font processing system 1525 can be an application
program that
specifically realizes the aforementioned various step operations in the
embodiments of the
present application. To sum it up, when the technical solutions provided by
the present
application are to be realized via software or firmware, the relevant program
codes are
stored in the memory 1520, and invoked and executed by the processor 1510.
[0104] The input/output interface 1513 is employed to connect with an
input/output module to
realize input and output of information. The input/output module can be
equipped in the
device as a component part (not shown in the drawings), and can also be
externally
connected with the device to provide corresponding functions. The input means
can include
a keyboard, a mouse, a touch screen, a microphone, and various sensors etc.,
and the output
means can include a display, a loudspeaker, a vibrator, an indicator light
etc.
[0105] The network interface 1514 is employed to connect to a communication
module (not
shown in the drawings) to realize intercommunication between the current
device and other
devices. The communication module can realize communication in a wired mode
(via USB,
network cable, for example) or in a wireless mode (via mobile network, WIFI,
Bluetooth,
etc.).
[0106] The bus 1530 includes a passageway transmitting information between
various
component parts of the device (such as the processor 1510, the video display
adapter 1511,
the magnetic disk driver 1512, the input/output interface 1513, the network
interface 1514,
and the memory 1520).
[0107] Additionally, the computer system 1500 may further obtain information
of specific
collection conditions from a virtual resource object collection condition
information
16
Date Recue/Date Received 2021-11-16

database 1541 for judgment on conditions, and so on.
[0108] As should be noted, although merely the processor 1510, the video
display adapter 1511,
the magnetic disk driver 1512, the input/output interface 1513, the network
interface 1514,
the memory 1520, and the bus 1530 are illustrated for the aforementioned
device, the
device may further include other component parts prerequisite for realizing
normal running
during specific implementation. In addition, as can be understood by persons
skilled in the
art, the aforementioned device may as well only include component parts
necessary for
realizing the solutions of the present application, without including the
entire component
parts as illustrated.
[0109] As can be known through the description to the aforementioned
embodiments, it is
clearly learnt by person skilled in the art that the present application can
be realized through
software plus a required general hardware platform. Based on such
understanding, the
technical solutions of the present application, or the contributions made
thereby over the
state of the art, can be essentially embodied in the form of a software
product, and such a
computer software product can be stored in a storage medium, such as an
ROM/RAM, a
magnetic disk, an optical disk etc., and includes plural instructions enabling
a computer
equipment (such as a personal computer, a cloud server, or a network device
etc.) to execute
the methods described in various embodiments or some sections of the
embodiments of the
present application.
[0110] The various embodiments are progressively described in the Description,
identical or
similar sections among the various embodiments can be inferred from one
another, and
each embodiment stresses what is different from other embodiments.
Particularly, with
respect to the system or system embodiment, since it is essentially similar to
the method
embodiment, its description is relatively simple, and the relevant sections
thereof can be
inferred from the corresponding sections of the method embodiment. The system
or system
embodiment as described above is merely exemplary in nature, units therein
described as
17
Date Recue/Date Received 2021-11-16

separate parts can be or may not be physically separate, parts displayed as
units can be or
may not be physical units, that is to say, they can be located in a single
site, or distributed
over a plurality of network units. It is possible to base on practical
requirements to select
partial modules or the entire modules to realize the objectives of the
embodied solutions.
It is understandable and implementable by persons ordinarily skilled in the
art without
spending creative effort in the process.
[0111] What is described above is merely directed to preferred embodiments of
the present
invention, and they are not meant to restrict the present invention. Any
amendment,
equivalent replacement and improvement makeable within the spirit and scope of
the
present invention shall all be covered within the protection scope of the
present invention.
18
Date Recue/Date Received 2021-11-16

Dessin représentatif
Une figure unique qui représente un dessin illustrant l'invention.
États administratifs

2024-08-01 : Dans le cadre de la transition vers les Brevets de nouvelle génération (BNG), la base de données sur les brevets canadiens (BDBC) contient désormais un Historique d'événement plus détaillé, qui reproduit le Journal des événements de notre nouvelle solution interne.

Veuillez noter que les événements débutant par « Inactive : » se réfèrent à des événements qui ne sont plus utilisés dans notre nouvelle solution interne.

Pour une meilleure compréhension de l'état de la demande ou brevet qui figure sur cette page, la rubrique Mise en garde , et les descriptions de Brevet , Historique d'événement , Taxes périodiques et Historique des paiements devraient être consultées.

Historique d'événement

Description Date
Modification reçue - réponse à une demande de l'examinateur 2024-05-13
Modification reçue - modification volontaire 2024-05-13
Rapport d'examen 2024-01-19
Inactive : Rapport - Aucun CQ 2024-01-17
Lettre envoyée 2024-01-17
Avancement de l'examen jugé conforme - alinéa 84(1)a) des Règles sur les brevets 2024-01-17
Modification reçue - modification volontaire 2024-01-11
Modification reçue - modification volontaire 2024-01-11
Inactive : Taxe de devanc. d'examen (OS) traitée 2024-01-11
Accessibilité au public anticipée demandée 2024-01-11
Inactive : Avancement d'examen (OS) 2024-01-11
Lettre envoyée 2023-02-08
Inactive : Correspondance - SPAB 2022-12-23
Toutes les exigences pour l'examen - jugée conforme 2022-09-16
Exigences pour une requête d'examen - jugée conforme 2022-09-16
Requête d'examen reçue 2022-09-16
Demande publiée (accessible au public) 2022-03-16
Inactive : Page couverture publiée 2022-03-15
Inactive : Lettre officielle 2021-12-22
Inactive : Supprimer l'abandon 2021-12-22
Réputée abandonnée - omission de répondre à un avis exigeant une traduction 2021-12-06
Inactive : CIB en 1re position 2021-12-02
Inactive : CIB attribuée 2021-12-02
Inactive : Conformité - Formalités: Réponse reçue 2021-11-16
Lettre envoyée 2021-10-06
Exigences de dépôt - jugé conforme 2021-10-06
Exigences applicables à la revendication de priorité - jugée conforme 2021-10-05
Lettre envoyée 2021-10-05
Lettre envoyée 2021-10-05
Demande de priorité reçue 2021-10-05
Demande reçue - nationale ordinaire 2021-09-16
Inactive : Pré-classement 2021-09-16
Inactive : CQ images - Numérisation 2021-09-16

Historique d'abandonnement

Date d'abandonnement Raison Date de rétablissement
2021-12-06

Taxes périodiques

Le dernier paiement a été reçu le 2023-12-15

Avis : Si le paiement en totalité n'a pas été reçu au plus tard à la date indiquée, une taxe supplémentaire peut être imposée, soit une des taxes suivantes :

  • taxe de rétablissement ;
  • taxe pour paiement en souffrance ; ou
  • taxe additionnelle pour le renversement d'une péremption réputée.

Les taxes sur les brevets sont ajustées au 1er janvier de chaque année. Les montants ci-dessus sont les montants actuels s'ils sont reçus au plus tard le 31 décembre de l'année en cours.
Veuillez vous référer à la page web des taxes sur les brevets de l'OPIC pour voir tous les montants actuels des taxes.

Historique des taxes

Type de taxes Anniversaire Échéance Date payée
Taxe pour le dépôt - générale 2021-09-16 2021-09-16
Requête d'examen - générale 2025-09-16 2022-09-16
TM (demande, 2e anniv.) - générale 02 2023-09-18 2023-06-15
TM (demande, 3e anniv.) - générale 03 2024-09-16 2023-12-15
Avancement de l'examen 2024-01-11 2024-01-11
Titulaires au dossier

Les titulaires actuels et antérieures au dossier sont affichés en ordre alphabétique.

Titulaires actuels au dossier
10353744 CANADA LTD.
Titulaires antérieures au dossier
QINGYAN DING
WEI XU
Les propriétaires antérieurs qui ne figurent pas dans la liste des « Propriétaires au dossier » apparaîtront dans d'autres documents au dossier.
Documents

Pour visionner les fichiers sélectionnés, entrer le code reCAPTCHA :



Pour visualiser une image, cliquer sur un lien dans la colonne description du document (Temporairement non-disponible). Pour télécharger l'image (les images), cliquer l'une ou plusieurs cases à cocher dans la première colonne et ensuite cliquer sur le bouton "Télécharger sélection en format PDF (archive Zip)" ou le bouton "Télécharger sélection (en un fichier PDF fusionné)".

Liste des documents de brevet publiés et non publiés sur la BDBC .

Si vous avez des difficultés à accéder au contenu, veuillez communiquer avec le Centre de services à la clientèle au 1-866-997-1936, ou envoyer un courriel au Centre de service à la clientèle de l'OPIC.


Description du
Document 
Date
(yyyy-mm-dd) 
Nombre de pages   Taille de l'image (Ko) 
Revendications 2024-01-10 36 2 360
Revendications 2024-05-12 28 1 788
Description 2021-09-15 25 1 189
Dessins 2021-11-15 3 339
Abrégé 2021-11-15 1 21
Description 2021-11-15 18 796
Revendications 2021-11-15 5 192
Dessin représentatif 2022-02-14 1 20
Page couverture 2022-02-14 1 50
Avancement d'examen (OS) / Modification / réponse à un rapport 2024-01-10 42 1 886
Demande d'anticipation de la mise à la disposition 2024-01-10 4 141
Courtoisie - Requête pour avancer l’examen - Conforme (OS) 2024-01-16 1 184
Demande de l'examinateur 2024-01-18 4 224
Modification / réponse à un rapport 2024-05-12 70 3 285
Courtoisie - Certificat de dépôt 2021-10-05 1 569
Courtoisie - Réception de la requête d'examen 2023-02-07 1 423
Nouvelle demande 2021-09-15 6 213
Modification / réponse à un rapport 2021-09-15 5 171
Avis du commissaire - Traduction requise 2021-10-04 2 207
Avis du commissaire - Demande non conforme 2021-10-04 2 205
Modification / réponse à un rapport 2021-11-15 31 1 482
Courtoisie - Lettre du bureau 2021-12-21 1 58
Requête d'examen 2022-09-15 9 326
Correspondance pour SPA 2022-12-22 4 153