CN112214472A - Meteorological grid point data storage and query method, device and storage medium - Google Patents

Meteorological grid point data storage and query method, device and storage medium Download PDF

Info

Publication number
CN112214472A
CN112214472A CN202010910674.0A CN202010910674A CN112214472A CN 112214472 A CN112214472 A CN 112214472A CN 202010910674 A CN202010910674 A CN 202010910674A CN 112214472 A CN112214472 A CN 112214472A
Authority
CN
China
Prior art keywords
data
grid point
index
meteorological
column
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202010910674.0A
Other languages
Chinese (zh)
Other versions
CN112214472B (en
Inventor
何文春
刘媛媛
王舒
徐拥军
韩同欣
王�琦
刘鑫
郑波
倪学磊
李江涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
National Meteorological Information Center
Original Assignee
National Meteorological Information Center
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by National Meteorological Information Center filed Critical National Meteorological Information Center
Priority to CN202010910674.0A priority Critical patent/CN112214472B/en
Publication of CN112214472A publication Critical patent/CN112214472A/en
Application granted granted Critical
Publication of CN112214472B publication Critical patent/CN112214472B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/214Database migration support
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02ATECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
    • Y02A90/00Technologies having an indirect contribution to adaptation to climate change
    • Y02A90/10Information and communication technologies [ICT] supporting adaptation to climate change, e.g. for weather forecasting or climate simulation

Abstract

The specification provides a method for storing and querying meteorological lattice point data, which comprises the following steps: pre-migrating the meteorological grid point data to a column storage database; each data record of the column storage database stores the value of one grid point in the meteorological grid point data and the index corresponding to the grid point; wherein, the index corresponding to the lattice point is determined according to the row number and the column number of the lattice point; acquiring the position information of data to be inquired; determining the index of the data to be queried according to the position information; and reading the values of the grid points corresponding to the indexes of the data to be inquired from the column storage database. Corresponding to the method for storing and inquiring the meteorological lattice point data, the specification also provides a device for storing and inquiring the meteorological lattice point data, electronic equipment and a computer readable storage medium.

Description

Meteorological grid point data storage and query method, device and storage medium
Technical Field
One or more embodiments of the present disclosure relate to data processing technologies, and in particular, to a method and an apparatus for storing and querying weather grid point data, a method and an apparatus for querying weather grid point data, an electronic device, and a computer-readable storage medium.
Background
With the increase of meteorological observation data types and observation frequency, the meteorological data amount is larger and larger. The meteorological data is typical big data and has the characteristics of large data volume, high timeliness, rich data types and the like. At present, many meteorological data are stored in the form of grid point data, which is also called meteorological grid point data, such as precipitation data or temperature data of a certain region. The meteorological grid point data is generally obtained by dividing a space into a plurality of grids according to longitude and latitude, each grid is called a grid point, the position of an entity represented by each grid point is defined by the row number and the column number of the grid point, and each grid point is assigned with a corresponding attribute value to represent the numerical value of the entity represented by the grid point. In general, the attribute value of a lattice point is also simply referred to as the value of a lattice point. Briefly, the grid point data may be viewed simply as a two-dimensional table, with each grid point corresponding to a position and a value in the table. In addition, each grid point in the grid point data can also correspond to one time information. In general, the meteorological grid point data may include a plurality of grid point data files, each meteorological grid point data file stores a type of meteorological data, and each grid point in each meteorological grid point data corresponds to the same time information. For example, the precipitation in a certain area on a certain day may be stored in a lattice point data file, and the row number of each lattice point in the lattice point data file corresponds to a latitude value, and the column number of each lattice point corresponds to a longitude value, so that the entity position represented by each lattice point may be determined by the longitude and latitude corresponding to the row and column of the lattice point. Moreover, the value of each grid point is the precipitation at that location on the day. It can be seen that the precipitation grid point data records the precipitation of each geographical position determined by different longitudes and latitudes in a certain area of a certain day. For another example, the average day temperature in a certain area on a certain day may be stored in another grid point data file, the row number of each grid point corresponds to a latitude value, and the column number of each grid point corresponds to a longitude value, so that the entity position represented by each grid point may be determined by the longitude and latitude corresponding to the row and column of the grid point. Also, the value of each grid point is the average daily temperature at that location on that day. It can be seen that the daily temperature grid data records the average daily temperature of each geographical location determined by different latitudes and longitudes in a certain area of the day. Of course, it should be noted that each grid point in one grid point data file may correspond to different time information.
At present, the storage and real-time query of meteorological grid point data are usually realized by adopting a relational database and file system. However, the relational database and file system method is often difficult to bear the increase of the number of files with large data volume, and the tree structure of the file directory cannot well meet the characteristic of accessing data in sequence, and the access time is long. In addition, although the conventional relational database has the capability of sorting and indexing, the fixed relational table mode complicates the system design, and the disk storage structure of the conventional relational database also limits the optimization of ordered access. Therefore, this model does not satisfy the high-performance query of the meteorological data well.
Disclosure of Invention
In view of this, one or more embodiments of the present disclosure provide a method for storing and querying meteorological grid point data, which can implement fast and real-time query of meteorological grid point data.
The method for storing and querying meteorological grid point data according to one or more embodiments of the present specification may include: pre-migrating the meteorological grid point data to a column storage database; each data record in the column storage database stores an index corresponding to one grid point in the meteorological grid point data and a value of the grid point; the index corresponding to the lattice point is determined according to the row number and the column number of the lattice point; acquiring the position information of data to be inquired; determining the index of the data to be queried according to the position information; and inquiring a data record corresponding to the index of the data to be inquired from the column storage database, and reading the value of the lattice point from the data record.
In one or more embodiments of the present specification, the migrating the meteorological site data to the column storage database in advance includes: respectively acquiring a row number and a column number corresponding to each grid point in the meteorological grid point data; determining the identification of each grid point according to the obtained row number and column number corresponding to each grid point; respectively determining the index of each grid point according to the identifier of each grid point; and establishing a data record in the column storage database respectively aiming at each grid point, wherein each data record comprises an index of one grid point and a value of the grid point.
In one or more embodiments of the present specification, the determining the index of the data to be queried according to the location information includes: determining the row number and the column number of the grid point corresponding to the data to be inquired according to the position information of the data to be inquired; determining an identifier corresponding to the data to be queried according to the row number and the column number; and determining the index of the data to be queried according to the corresponding identifier of the data to be queried.
In one or more embodiments of the present disclosure, the index corresponding to the lattice point is determined according to the row number and the column number of the lattice point and the time information corresponding to the lattice point; at this time, the method further includes: acquiring time information of data to be inquired; wherein determining the index of the data to be queried according to the location information comprises: and determining the index of the data to be inquired according to the position information and the time information of the data to be inquired.
In one or more embodiments of the present specification, the migrating the meteorological site data to the column storage database in advance includes: respectively acquiring a row number, a column number and time information corresponding to each grid point in the meteorological grid point data; determining the identification of each grid point according to the obtained row number and column number corresponding to each grid point; respectively determining the index of each grid point according to the identification of each grid point and the corresponding time information thereof; and establishing a data record in the column storage database respectively aiming at each grid point, wherein each data record comprises an index of one grid point and a value of the grid point.
In one or more embodiments of the present description, determining the identity of each grid point comprises: the identity of each grid point is determined according to the following expression: ID R × Col + C; wherein, R represents a row number corresponding to a lattice point; c represents a column number corresponding to one lattice point; col represents the number of columns of the meteorological lattice data.
In one or more embodiments of the present specification, the determining the index of the data to be queried according to the location information includes: determining the row number and the column number of the grid point corresponding to the data to be inquired according to the position information of the data to be inquired; determining an identifier corresponding to the data to be queried according to the row number and the column number; and determining the index of the data to be queried according to the corresponding identifier of the data to be queried and the time information of the identifier.
In one or more embodiments of the present specification, the determining, according to the position information of the data to be queried, the row number and the column number of the lattice point corresponding to the data to be queried includes: determining the row number R and the column number C of the grid point corresponding to the data to be queried according to the following expression:
Figure BDA0002663137360000031
Figure BDA0002663137360000032
whereinInt () represents a rounding operation; y is0Representing the latitude of the position corresponding to the upper left corner grid point in the meteorological grid point data; x is the number of0Representing the longitude of the position corresponding to the upper left grid point in the meteorological grid point data; y represents the corresponding latitude of the data to be inquired; x represents the longitude corresponding to the data to be inquired; sizey represents the grid spacing size of meteorological grid point data on the latitude; and sizex represents the grid spacing size of the meteorological grid point data in longitude.
In one or more embodiments of the present specification, the column storage database includes: the Cassandra database or the Hbase database.
Corresponding to the above method, one or more embodiments of the present specification further disclose a device for storing and querying meteorological grid point data, including:
the data migration module is used for migrating the meteorological grid point data to the row storage database in advance; each data record of the column storage database stores the value of one grid point in the meteorological grid point data and the index corresponding to the grid point; wherein, the index corresponding to the lattice point is determined according to the row number and the column number of the lattice point;
the query information acquisition module is used for acquiring the position information of the data to be queried;
the query index generation module is used for determining the index of the data to be queried according to the position information;
and the query module is used for querying a data record corresponding to the index of the data to be queried from the column storage database and reading the value of the lattice point from the data record.
One or more embodiments of the present specification also provide an electronic device, which may include: memory, processor and computer program stored on the memory and executable on the processor, wherein the processor implements the above method when executing the program.
One or more embodiments of the present specification also provide a non-transitory computer-readable storage medium, wherein the non-transitory computer-readable storage medium stores computer instructions for causing the computer to perform the above-described method.
It can be seen that, in the embodiments of the present specification, when data migration is performed, the characteristics of the meteorological grid point data can be fully utilized, the index of each grid point is determined according to the position information of the meteorological grid point data, and then the data of each grid point is stored as one data record in a key-value manner, so that subsequent data query operations are facilitated.
In addition, after the data migration is performed, each data record of the column storage database stores an index corresponding to one lattice point and a value of the lattice point, so in this step, the index of the data to be queried may be determined first, and then the value of the lattice point corresponding to the index may be directly read from the column database through a query statement of the column storage database according to the index of the data to be queried. The method fully utilizes the advantages of high query speed, high data compression ratio, high loading speed, great excellence in mass data volume query and the like of the column storage database, and realizes the rapid real-time query of the meteorological lattice data.
Drawings
In order to more clearly illustrate one or more embodiments or prior art solutions of the present specification, the drawings that are needed in the description of the embodiments or prior art will be briefly described below, and it is obvious that the drawings in the following description are only one or more embodiments of the present specification, and that other drawings may be obtained by those skilled in the art without inventive effort from these drawings.
FIG. 1 is a schematic flow chart illustrating an implementation of a method for storing and querying meteorological site data according to one or more embodiments of the present disclosure;
FIG. 2 is a schematic flow chart illustrating a method for migrating meteorological site data to a column store database according to one or more embodiments of the present disclosure;
fig. 3 is a flowchart illustrating a method for determining an index of data to be queried according to location information of the data to be queried according to one or more embodiments of the present disclosure;
FIG. 4 is a schematic diagram illustrating an internal structure of a weather grid data storage and query device according to one or more embodiments of the present disclosure; and
fig. 5 is a schematic diagram of an internal structure of an electronic device according to one or more embodiments of the present disclosure.
Detailed Description
For the purpose of promoting a better understanding of the objects, aspects and advantages of the present disclosure, reference is made to the following detailed description taken in conjunction with the accompanying drawings.
It is to be noted that unless otherwise defined, technical or scientific terms used in one or more embodiments of the present specification should have the ordinary meaning as understood by those of ordinary skill in the art to which this disclosure belongs. The use of "first," "second," and similar terms in one or more embodiments of the specification is not intended to indicate any order, quantity, or importance, but rather is used to distinguish one element from another. The word "comprising" or "comprises", and the like, means that the element or item listed before the word covers the element or item listed after the word and its equivalents, but does not exclude other elements or items. The terms "connected" or "coupled" and the like are not restricted to physical or mechanical connections, but may include electrical connections, whether direct or indirect. "upper", "lower", "left", "right", and the like are used merely to indicate relative positional relationships, and when the absolute position of the object being described is changed, the relative positional relationships may also be changed accordingly.
In order to solve the problem that the weather grid point data cannot be queried at high performance due to long access time in the conventional query, one or more embodiments of the present specification provide a method for storing and querying weather grid point data, which can implement fast and real-time query of the weather grid point data.
Fig. 1 shows a flow of implementing the method for storing and querying meteorological grid point data according to one or more embodiments of the present disclosure. As shown in fig. 1, the method may include:
in step 102, the meteorological site data is migrated to the column storage database in advance.
In one or more embodiments of the present specification, each data record of the column storage database may store an index corresponding to a grid point in the meteorological grid point data and a value of the grid point; the index corresponding to a lattice point can be determined according to the row number and the column number of the lattice point.
After the meteorological lattice point data is migrated to the column storage database, the query operation of the meteorological lattice point data can be completed by the following steps.
In step 104, location information of the data to be queried is obtained.
In one or more embodiments of the present specification, the location information may specifically be geographical location information, and for example, may be a longitude and a latitude of a certain location, and the like.
In step 106, an index of the data to be queried is determined according to the position information.
In an embodiment of the present specification, the method for determining the index with query data in step 106 may include: firstly, determining the row number and the column number of meteorological lattice point data corresponding to data to be inquired according to the position information; then, referring to the above step 102, the method for determining the index of each grid point during data migration determines the index with query data according to the row number and the column number of the meteorological grid point data corresponding to the data to be queried.
In step 108, a data record corresponding to the index of the data to be queried is queried from the column storage database, and a value of a grid point is read from the data record.
It can be seen that, in the embodiments of the present specification, when data migration is performed, the characteristics of the meteorological grid point data can be fully utilized, the index of each grid point is determined according to the position information of the meteorological grid point data, and then the data of each grid point is stored as one data record in a key-value manner, so that subsequent data query operations are facilitated.
In addition, after the data migration is performed, each data record of the column storage database stores an index corresponding to one lattice point and a value of the lattice point, so in this step, the index of the data to be queried may be determined first, and then the value of the lattice point corresponding to the index may be directly read from the column database through a query statement of the column storage database according to the index of the data to be queried. The method fully utilizes the advantages of high query speed, high data compression ratio, high loading speed, great excellence in mass data volume query and the like of the column storage database, and realizes the rapid real-time query of the meteorological lattice data.
In other embodiments of the present description, if each grid point in the meteorological grid point data corresponds to a time information in addition to the location information, in this case, during the data migration process shown in step 102, the index corresponding to a grid point may be determined according to the time information corresponding to the grid point and the row number and column number of the grid point.
At this time, in the step 104, when the meteorological grid data is queried, the time information of the data to be queried is further acquired in addition to the position information of the data to be queried.
In one or more embodiments of the present specification, the time information may specifically be one or more time point information, such as time information of a certain day or a certain time; the time information may be one or more time period information, for example, time period information from a certain day to a certain day. Furthermore, the time information may be default. At this time, the data representing the query includes data corresponding to the entire time information.
Further, in step 106, the index of the data to be queried is determined according to the location information and the time information of the data to be queried.
In one or more embodiments of the present specification, the location information and the time information of the data to be queried may be used as a joint index of the data to be queried.
In the above embodiment, when data migration is performed, the characteristics of the meteorological grid point data can be fully utilized, the index of the meteorological grid point data is determined according to the position information and the time information of the meteorological grid point data, and the data of each grid point is stored as one data record in a key-value manner, so that subsequent data query operation is facilitated.
The specific implementation process of data migration in step 102 in the above method for storing and querying meteorological grid point data will be described in detail below with reference to specific examples.
FIG. 2 illustrates an implementation flow of migrating meteorological site data to a column store database according to one or more embodiments of the present disclosure.
It should be noted that, if the meteorological lattice data includes a plurality of meteorological lattice data files, the data migration process shown in fig. 2 is performed separately for each meteorological lattice data file in the meteorological lattice data. That is, if the above-mentioned meteorological lattice data includes a plurality of meteorological lattice data files, the data migration process shown in fig. 2 needs to be performed for each meteorological lattice data file.
In step 202, a row number and a column number corresponding to each grid point in the meteorological grid point data are respectively obtained.
The following describes in detail the process of acquiring the row number and column number corresponding to each grid point in the meteorological grid point data by taking table 1 as an example. Table 1 below shows part of the precipitation meteorological grid point data for an area on day 30/6/2020. Wherein, the value range of the row number is from 0 to the row number of the meteorological grid point data minus 1; the column number ranges from 0 to the number of columns of the meteorological grid data minus 1.
Figure BDA0002663137360000081
TABLE 1
Wherein, the latitudes corresponding to the line numbers 0, 1, 2, 3, 4 and the like are 15.005, 15.015, 15.025, 15.035, 15.045 and the like; column numbers 0, 1, 2, 3, 4, etc. correspond to longitude 70.005, 70.015, 70.025, 70.035, 70.045, etc., respectively. And the value of each grid point in the meteorological grid point data represents the precipitation of the corresponding longitude and latitude position. For example, the value 5.058447 for a grid point with a row number and a column number of 0 represents the amount of precipitation for position (15.005, 70.005).
Based on table 1, in this step 202, the row number and the column number corresponding to each grid point can be directly obtained. For example, it may be determined that the grid point located at the upper left corner corresponds to a row number and a column number of 0 and 0, respectively.
As can be understood by those skilled in the art, because the storage form of the meteorological grid point data is similar to the form of a two-dimensional or multi-dimensional table, the row number and the column number corresponding to each grid point can be conveniently obtained according to the position of each grid point in the meteorological grid point data in the grid.
In step 204, the identifier of each grid point is determined according to the obtained row number and column number corresponding to each grid point.
In one or more embodiments of the present description, the identification ID of each lattice point may be determined by the following expression (1).
ID=R×Col+C(1)
Wherein, R represents a row number corresponding to a lattice point; c represents a column number corresponding to one lattice point; col represents the number of columns of the meteorological lattice data.
If a 5 x 5 weather grid data file is taken as an example, the identification of each grid point in the weather grid data file may be as shown in table 2 below. Each square grid corresponds to a grid point, and the numerical value in each square grid represents the identification of the grid point obtained by the method.
0 1 2 3 4
5 6 7 8 9
10 11 12 13 14
15 16 17 18 19
20 21 22 23 24
TABLE 2
In step 206, an index for each grid point is determined based on the identity of each grid point.
In one or more embodiments of the present description, the identification of each grid point may be directly used as an index for each grid point.
In step 208, for each grid point, a data record is created in the column store database, wherein each data record includes an index of a grid point and a value of the grid point.
In one or more embodiments of the present description, after the index for each grid point is determined, a plurality of data records may be established by the structure shown in Table 3 below, thereby completing the migration of the meteorological grid point data to the column store database. Table 3 is an example of data records established by the above steps 202-208 based on the weather grid data shown in Table 1.
Identification Value of grid point
0 5.058447
1 4.998424
2 4.802012
3 4.674516
4 4.635555
…… ……
TABLE 3
In other embodiments of the present disclosure, assuming that each grid point in the meteorological grid point data further corresponds to a time information, the following step 205 may be performed before the step 206 is performed, and then the steps 206 and 208 are performed.
In step 205, time information corresponding to each grid point in the meteorological grid point data is obtained.
As mentioned above, each grid point in the meteorological grid point data may correspond to one time information, and the time information corresponding to each grid point in the meteorological grid point data may be the same or different, so in the embodiments of the present specification, the time information corresponding to each grid point may be directly obtained from the meteorological grid point data.
At this time, in step 206, the index of each grid point is determined according to the identifier of each grid point and the corresponding time information.
In one or more embodiments of the present description, the identifier of each grid point and the corresponding time information thereof may be directly used as an index of each grid point, that is, the identifier of a grid point and the corresponding time information thereof may be used as a joint index of each grid point.
At this point, at step 208, the data record created will be as shown in Table 4. Table 4 is an example of a data record created by the above steps 202, 204, 205, 206, and 208 based on the meteorological grid data shown in Table 1.
Time information Identification Value of grid point
20200630 0 5.058447
20200630 1 4.998424
20200630 2 4.802012
20200630 3 4.674516
20200630 4 4.635555
…… …… ……
TABLE 4
In one or more embodiments of the present description, the column store database may be a column-oriented open source database, such as an open source distributed NoSQL database system Cassandra database or Hbase database, among others. Compared with a line type storage structure of a relational database, the column storage database has the characteristics of high query speed, high data compression ratio, high loading speed, better excellence in mass data volume query and the like.
In particular, Cassandra is a column-oriented set of open-source distributed NoSQL database systems. Cassandra is a point-to-point (P2P) torus structure based on a consistent hashing algorithm. The functions of all nodes of the structure are completely the same, nodes can be flexibly added to complete expansion or deletion of the system, large-scale data transfer is not needed, and meanwhile instability of the system caused by single-point faults is avoided. Cassandra is a Key-Value (Key-Value) -based distributed system, and is suitable for being used as the realization of a multidimensional data space structure, which corresponds to a meteorological data multidimensional index Key Value. In Cassandra, the data model consists of a key-value space (Keyspace), a table (Column family), a Primary key (Primary key), and a Column (Columns). The Keyspace may be understood as a database in the relational database, and the Column family included therein may be understood as a table in the relational database, and may specifically have a structure shown in table 3 or table 4, for example. In particular, the Column family may be a multi-level nested sorting hash table, and thus may provide efficient key-value queries. Primary key and Columns can be understood as indices and values of tables. In Cassandra, efficient key value queries can be performed by Primary key. Specifically, in one or more embodiments of the present disclosure, a Column family as shown in table 3 or table 4 may be established for each meteorological datum (e.g., precipitation datum, day temperature datum, etc.) through the above steps 202-208. Each row of the table (each data record) will store an index for each grid point and a value for each grid point. Wherein, the time and the mark are combined to be the Primarykey of the lattice point. Wherein, the time can be of a time tag type (timestamp); the identification may be of integer type (varint); the values of the lattice points may be of the floating point type (float).
Similar to the Cassandra database, the Hbase database is also a column-oriented, open-source distributed NoSQL database system. The Hbase database is also a Key-Value based distributed system, and therefore, in one or more embodiments of the present disclosure, a table as shown in table 3 or table 4 may also be established and stored in the Hbase database for each meteorological data (e.g., precipitation data, or daily temperature data) through the above steps 202 to 208. Each row of the table stores an index for each grid point and a value for each grid point. Wherein the time and the identification are combined as an index of the grid point.
It can be seen that, by the above method, the indexes corresponding to each grid point can be respectively determined by using the row and column number of each grid point in the meteorological grid point data and additionally possibly included time information, and the indexes of each grid point and the values of each grid point are stored in the column storage database in a Key-Value manner, so that the advantages of high query speed, high data compression ratio, high loading speed, great excellence in mass data volume query and the like of the column storage database can be further fully utilized, and the rapid real-time query of the meteorological grid point data is realized.
The specific implementation process of determining the index of the data to be queried according to the location information of the data to be queried in step 106 of the above method for storing and querying meteorological grid point data will be described in detail with reference to specific examples.
Fig. 3 is a flowchart illustrating a method for determining an index of data to be queried according to location information of the data to be queried according to one or more embodiments of the present disclosure.
In step 302, the row number and the column number of the lattice point corresponding to the data to be queried are determined according to the position information of the data to be queried.
In one or more embodiments of the present specification, assume that the geographic location corresponding to the upper left grid point in the weather grid point data to be queried has coordinates of (x)0,y0) (i.e., the longitude corresponding to the upper left corner grid point is x0Latitude of y0) (ii) a If the grid spacing of the meteorological grid point data in longitude is sizex and the grid spacing in latitude is sizey, the row number R and the column number C of the grid point corresponding to the data to be queried can be determined through the following expressions (2) and (3) if the position information of the data to be queried is given as (x, y) (that is, the longitude corresponding to the data to be queried is x and the latitude is y).
Figure BDA0002663137360000121
Figure BDA0002663137360000122
Where int () represents a rounding operation.
In step 304, the identifier corresponding to the data to be queried is determined according to the row number and the column number of the lattice point corresponding to the data to be queried.
In one or more embodiments of the present specification, the identifier corresponding to the data to be queried may be determined according to the row number and the column number of the lattice point corresponding to the data to be queried through the above expression (1).
In step 306, the index of the data to be queried is determined according to the corresponding identifier of the data to be queried.
In one or more embodiments of the present specification, an identifier corresponding to data to be queried may be directly used as an index of the data to be queried.
As mentioned above, if the data to be queried also corresponds to a time information, in this step 306, the index of the data to be queried is determined according to the time information of the data to be queried and the identifier corresponding to the time information.
Specifically, in one or more embodiments of the present specification, the time information of the data to be queried and the identifier corresponding to the time information may be directly used as an index of the data to be queried, that is, the time information of the data to be queried and the identifier corresponding to the time information may be directly used as a joint index of the data to be queried.
It can be seen that, by the above method, the index of the data to be queried can be quickly determined by using the position information and possibly included time information of the data to be queried, so that the values of the grid points can be directly read by using the query statements of the column storage database according to the index, and the quick real-time query of the meteorological grid point data is completed. The method can fully utilize the advantages of high query speed, high data compression ratio, high loading speed, great excellence in mass data volume query and the like of the column storage database, and realize the rapid real-time query of the meteorological lattice data.
Although the above embodiment has been described by taking meteorological grid point data as an example, the storage and query method of the grid point data is applicable to other grid point data besides meteorological grid point data because the grid point data has similar characteristics.
Based on the above method, one or more embodiments of the present specification further provide a device for storing and querying meteorological grid point data, an internal structure of which is shown in fig. 4, and mainly includes:
a data migration module 402, configured to migrate the meteorological grid point data to the column storage database in advance; each data record of the column storage database stores the value of one grid point in the meteorological grid point data and the index corresponding to the grid point; wherein, the index corresponding to the lattice point is determined according to the row number and the column number of the lattice point;
a query information obtaining module 404, configured to obtain location information of data to be queried;
a query index generating module 406, configured to determine an index of the data to be queried according to the location information;
the query module 408 is configured to query a data record corresponding to the index of the to-be-queried data from the column storage database, and read a value of a grid point from the data record.
It should be noted that, for the specific implementation method of each module of the above apparatus, reference may be made to the foregoing embodiments.
According to one or more embodiments of the present disclosure, the data migration module 402 may specifically include:
and the row and column number acquisition unit is used for respectively acquiring the row number and the column number corresponding to each grid point in the meteorological grid point data.
And the grid point identification determining unit is used for respectively determining the identification of each grid point according to the acquired row number and column number corresponding to each grid point. Specifically, in one or more embodiments of the present description, the identification of each grid point may be determined by expression (1) above.
And the index determining unit is used for respectively determining the index of each grid point according to the identification of each grid point.
And the data writing unit is used for establishing a data record in the column storage database aiming at each grid point, wherein each data record comprises an index of one grid point and a value of the grid point.
Further, if each grid point of the meteorological grid point data further corresponds to a time information, the data migration module 402 further includes a time information obtaining unit for obtaining the time information corresponding to each grid point in the meteorological grid point data, respectively. At this time, the index determining unit determines the index of each grid point according to the identifier of each grid point and the corresponding time information.
According to one or more embodiments of the present specification, the query index generating module 406 may specifically include:
and the data to be inquired row and column number determining unit is used for determining the row number and the column number of the grid point corresponding to the data to be inquired according to the position information of the data to be inquired. Specifically, in one or more embodiments of the present specification, the data to be queried row and column number determination unit may determine the row number and column number of the lattice point corresponding to the data to be queried through the above expressions (2) and (3).
And the identifier generating unit is used for determining the identifier corresponding to the data to be inquired according to the row number and the column number of the lattice point corresponding to the data to be inquired. Specifically, in one or more embodiments of the present specification, the identifier generating unit may determine the identifier corresponding to the data to be queried according to the row number and the column number of the lattice point corresponding to the data to be queried through the above expression (1).
And the index generating unit is used for determining the index of the data to be inquired according to the corresponding identifier of the data to be inquired.
Further, if each grid point of the meteorological grid point data further corresponds to a time information, the query index generating module 406 further includes a time information obtaining unit configured to obtain the time information of the data to be queried. At this time, the index generating unit determines the index of the data to be queried according to the corresponding identifier of the data to be queried and the time information of the identifier.
By the device, the index of the data to be inquired can be quickly determined by utilizing the position information and the possibly included time information of the data to be inquired, so that the values of the grid points can be directly read by utilizing the inquiry sentences of the column storage database according to the index, and the quick real-time inquiry of the meteorological grid point data is completed. The device can fully utilize the advantages of high query speed, high data compression ratio, high loading speed, great excellence in mass data volume query and the like of the column storage database, and realize the rapid real-time query of the meteorological lattice data.
It should be noted that the method of one or more embodiments of the present disclosure may be performed by a single device, such as a computer or server. The method of the embodiment can also be applied to a distributed scene and completed by the mutual cooperation of a plurality of devices. In such a distributed scenario, one of the multiple devices may only perform one or more steps of the method according to one or more embodiments of the present disclosure, and the multiple devices may interact with each other to complete the method.
The foregoing description has been directed to specific embodiments of this disclosure. Other embodiments are within the scope of the following claims. In some cases, the actions or steps recited in the claims may be performed in a different order than in the embodiments and still achieve desirable results. In addition, the processes depicted in the accompanying figures do not necessarily require the particular order shown, or sequential order, to achieve desirable results. In some embodiments, multitasking and parallel processing may also be possible or may be advantageous.
For convenience of description, the above devices are described as being divided into various modules by functions, and are described separately. Of course, the functionality of the modules may be implemented in the same one or more software and/or hardware implementations in implementing one or more embodiments of the present description.
The apparatus of the foregoing embodiment is used to implement the corresponding method in the foregoing embodiment, and has the beneficial effects of the corresponding method embodiment, which are not described herein again.
Fig. 5 is a schematic diagram of a more specific hardware structure of an electronic device according to an embodiment of the present disclosure, where the electronic device may include: a processor 510, a memory 520, an input/output interface 530, a communication interface 540, and a bus 550. Wherein processor 510, memory 520, input/output interface 530, and communication interface 540 are communicatively coupled to each other within the device via bus 550.
The processor 510 may be implemented by a general-purpose CPU (Central Processing Unit), a microprocessor, an Application Specific Integrated Circuit (ASIC), or one or more Integrated circuits, and is configured to execute related programs to implement the method for storing and querying weather grid point data provided in the embodiments of the present disclosure.
The Memory 520 may be implemented in the form of a ROM (Read Only Memory), a RAM (Random Access Memory), a static storage device, a dynamic storage device, or the like. The memory 520 may store an operating system and other application programs, and when the method for storing and querying meteorological site data provided by the embodiments of the present specification is implemented by software or firmware, relevant program codes are stored in the memory 520 and called to be executed by the processor 510.
The input/output interface 530 is used for connecting an input/output module to realize information input and output. The i/o module may be configured as a component in a device (not shown) or may be external to the device to provide a corresponding function. The input devices may include a keyboard, a mouse, a touch screen, a microphone, various sensors, etc., and the output devices may include a display, a speaker, a vibrator, an indicator light, etc.
The communication interface 540 is used for connecting a communication module (not shown in the figure) to realize communication interaction between the device and other devices. The communication module can realize communication in a wired mode (such as USB, network cable and the like) and also can realize communication in a wireless mode (such as mobile network, WIFI, Bluetooth and the like).
Bus 550 includes a pathway to transfer information between various components of the device, such as processor 510, memory 520, input/output interface 530, and communication interface 540.
It should be noted that although the above-mentioned device only shows the processor 510, the memory 520, the input/output interface 530, the communication interface 540 and the bus 550, in a specific implementation, the device may also include other components necessary for normal operation. In addition, those skilled in the art will appreciate that the above-described apparatus may also include only those components necessary to implement the embodiments of the present description, and not necessarily all of the components shown in the figures.
Computer-readable media of the present embodiments, including both non-transitory and non-transitory, removable and non-removable media, may implement information storage by any method or technology. The information may be computer readable instructions, data structures, modules of a program, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), Static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), other types of Random Access Memory (RAM), Read Only Memory (ROM), Electrically Erasable Programmable Read Only Memory (EEPROM), flash memory or other memory technology, compact disc read only memory (CD-ROM), Digital Versatile Discs (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices, or any other non-transmission medium that can be used to store information that can be accessed by a computing device.
Those of ordinary skill in the art will understand that: the discussion of any embodiment above is meant to be exemplary only, and is not intended to intimate that the scope of the disclosure, including the claims, is limited to these examples; within the spirit of the present disclosure, features from the above embodiments or from different embodiments may also be combined, steps may be implemented in any order, and there are many other variations of different aspects of one or more embodiments of the present description as described above, which are not provided in detail for the sake of brevity.
In addition, well-known power/ground connections to Integrated Circuit (IC) chips and other components may or may not be shown in the provided figures, for simplicity of illustration and discussion, and so as not to obscure one or more embodiments of the disclosure. Furthermore, devices may be shown in block diagram form in order to avoid obscuring the understanding of one or more embodiments of the present description, and this also takes into account the fact that specifics with respect to implementation of such block diagram devices are highly dependent upon the platform within which the one or more embodiments of the present description are to be implemented (i.e., specifics should be well within purview of one skilled in the art). Where specific details (e.g., circuits) are set forth in order to describe example embodiments of the disclosure, it should be apparent to one skilled in the art that one or more embodiments of the disclosure can be practiced without, or with variation of, these specific details. Accordingly, the description is to be regarded as illustrative instead of restrictive.
While the present disclosure has been described in conjunction with specific embodiments thereof, many alternatives, modifications, and variations of these embodiments will be apparent to those of ordinary skill in the art in light of the foregoing description. For example, other memory architectures (e.g., dynamic ram (dram)) may use the discussed embodiments.
It is intended that the one or more embodiments of the present specification embrace all such alternatives, modifications and variations as fall within the broad scope of the appended claims. Therefore, any omissions, modifications, substitutions, improvements, and the like that may be made without departing from the spirit and principles of one or more embodiments of the present disclosure are intended to be included within the scope of the present disclosure.

Claims (12)

1. A method for storing and querying meteorological grid point data comprises the following steps:
pre-migrating the meteorological grid point data to a column storage database; each data record in the column storage database stores an index corresponding to one grid point in the meteorological grid point data and a value of the grid point; the index corresponding to the lattice point is determined according to the row number and the column number of the lattice point;
acquiring the position information of data to be inquired;
determining the index of the data to be queried according to the position information; and
and querying a data record corresponding to the index of the data to be queried from the column storage database, and reading the value of the lattice point from the data record.
2. The method of claim 1, wherein said pre-migrating meteorological site data to a column storage database comprises:
respectively acquiring a row number and a column number corresponding to each grid point in the meteorological grid point data;
determining the identification of each grid point according to the obtained row number and column number corresponding to each grid point;
respectively determining the index of each grid point according to the identifier of each grid point; and
and respectively establishing a data record in the column storage database aiming at each grid point, wherein each data record comprises an index of one grid point and a value of the grid point.
3. The method of claim 1, wherein the determining the index of the data to be queried according to the location information comprises:
determining the row number and the column number of the grid point corresponding to the data to be inquired according to the position information of the data to be inquired;
determining an identifier corresponding to the data to be queried according to the row number and the column number; and
and determining the index of the data to be queried according to the corresponding identifier of the data to be queried.
4. The method according to claim 1, wherein the index corresponding to the lattice point is determined according to the row number and the column number of the lattice point and the time information corresponding to the lattice point; and
the method further comprises: acquiring time information of data to be inquired; wherein the content of the first and second substances,
determining the index of the data to be queried according to the position information comprises: and determining the index of the data to be inquired according to the position information and the time information of the data to be inquired.
5. The method of claim 4, wherein said pre-migrating meteorological site data to a column storage database comprises:
respectively acquiring a row number, a column number and time information corresponding to each grid point in the meteorological grid point data;
determining the identification of each grid point according to the obtained row number and column number corresponding to each grid point;
respectively determining the index of each grid point according to the identification of each grid point and the corresponding time information thereof; and
and respectively establishing a data record in the column storage database aiming at each grid point, wherein each data record comprises the index of one grid point and the value of the grid point.
6. The method of claim 2 or 5, wherein determining the identity of each grid point comprises:
the identity of each grid point is determined according to the following expression:
ID=R×Col+C
wherein, R represents a row number corresponding to a lattice point; c represents a column number corresponding to one lattice point; col represents the number of columns of the meteorological lattice data.
7. The method of claim 4, wherein the determining the index of the data to be queried according to the location information comprises:
determining the row number and the column number of the grid point corresponding to the data to be inquired according to the position information of the data to be inquired;
determining an identifier corresponding to the data to be queried according to the row number and the column number; and
and determining the index of the data to be queried according to the corresponding identifier of the data to be queried and the time information of the identifier.
8. The method according to claim 3 or 7, wherein the determining the row number and the column number of the lattice point corresponding to the data to be queried according to the position information of the data to be queried comprises:
determining the row number R and the column number C of the grid point corresponding to the data to be queried according to the following expression:
Figure FDA0002663137350000021
Figure FDA0002663137350000022
wherein int () represents a rounding operation; y is0Representing the latitude of the position corresponding to the upper left corner grid point in the meteorological grid point data; x is the number of0Representing the longitude of the position corresponding to the upper left grid point in the meteorological grid point data; y represents the corresponding latitude of the data to be inquired; x represents the longitude corresponding to the data to be inquired; sizey represents the grid spacing size of meteorological grid point data on the latitude; and sizex represents the grid spacing size of the meteorological grid point data in longitude.
9. The method of claim 1, wherein the column store database comprises: the Cassandra database or the Hbase database.
10. A meteorological grid point data storage and query device comprises:
the data migration module is used for migrating the meteorological grid point data to the row storage database in advance; each data record of the column storage database stores the value of one grid point in the meteorological grid point data and the index corresponding to the grid point; wherein, the index corresponding to the lattice point is determined according to the row number and the column number of the lattice point;
the query information acquisition module is used for acquiring the position information of the data to be queried;
the query index generation module is used for determining the index of the data to be queried according to the position information;
and the query module is used for querying a data record corresponding to the index of the data to be queried from the column storage database and reading the value of the lattice point from the data record.
11. An electronic device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, wherein the processor when executing the program implements the method of storing and querying weather grid data as claimed in any one of claims 1 to 5,7 and 9.
12. A non-transitory computer-readable storage medium, wherein the non-transitory computer-readable storage medium stores computer instructions for causing the computer to perform the method of storing and querying weather grid data of any one of claims 1 to 5,7 and 9.
CN202010910674.0A 2020-09-02 2020-09-02 Meteorological lattice data storage and query method, device and storage medium Active CN112214472B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010910674.0A CN112214472B (en) 2020-09-02 2020-09-02 Meteorological lattice data storage and query method, device and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010910674.0A CN112214472B (en) 2020-09-02 2020-09-02 Meteorological lattice data storage and query method, device and storage medium

Publications (2)

Publication Number Publication Date
CN112214472A true CN112214472A (en) 2021-01-12
CN112214472B CN112214472B (en) 2024-01-30

Family

ID=74048893

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010910674.0A Active CN112214472B (en) 2020-09-02 2020-09-02 Meteorological lattice data storage and query method, device and storage medium

Country Status (1)

Country Link
CN (1) CN112214472B (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112699102A (en) * 2021-03-23 2021-04-23 北京简巨科技有限公司 Processing method of lattice point data and related equipment thereof
CN112966063A (en) * 2021-03-16 2021-06-15 中化现代农业有限公司 Method, device, equipment and medium for building development framework for acquiring lattice data
CN116126942A (en) * 2023-02-09 2023-05-16 国家气象信息中心(中国气象局气象数据中心) Multi-dimensional space meteorological grid data distributed storage query method and system
CN117093641A (en) * 2023-10-20 2023-11-21 中国电子科技集团公司第十五研究所 Meteorological ocean lattice point data comprehensive processing method and system

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040181533A1 (en) * 2003-03-13 2004-09-16 International Business Machines Corporation Pre-formatted column-level caching to improve client performance
US7249122B1 (en) * 2001-07-24 2007-07-24 Brightplanet Corporation Method and system for automatic harvesting and qualification of dynamic database content
US20160188710A1 (en) * 2014-12-29 2016-06-30 Wipro Limited METHOD AND SYSTEM FOR MIGRATING DATA TO NOT ONLY STRUCTURED QUERY LANGUAGE (NoSOL) DATABASE
CN107577486A (en) * 2017-09-29 2018-01-12 广州数鹏通科技有限公司 Weather information drawing processing method, device, computer equipment and storage medium
CN108563676A (en) * 2018-03-03 2018-09-21 贵州省气象信息中心 A kind of integrated searching system of meteorological data
CN108763323A (en) * 2018-05-03 2018-11-06 华风象辑(北京)气象科技有限公司 Meteorological lattice point file application process based on resource set and big data technology
CN109241161A (en) * 2018-08-09 2019-01-18 深圳市雅码科技有限公司 A kind of meteorological data management method
CN110019218A (en) * 2017-12-08 2019-07-16 阿里巴巴集团控股有限公司 Data storage and querying method and equipment
CN111090794A (en) * 2019-11-07 2020-05-01 远景智能国际私人投资有限公司 Meteorological data query method, device and storage medium
CN111460012A (en) * 2020-04-26 2020-07-28 国家气象信息中心 Spark-based meteorological historical station leather-following data visualization method and system

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7249122B1 (en) * 2001-07-24 2007-07-24 Brightplanet Corporation Method and system for automatic harvesting and qualification of dynamic database content
US20040181533A1 (en) * 2003-03-13 2004-09-16 International Business Machines Corporation Pre-formatted column-level caching to improve client performance
US20160188710A1 (en) * 2014-12-29 2016-06-30 Wipro Limited METHOD AND SYSTEM FOR MIGRATING DATA TO NOT ONLY STRUCTURED QUERY LANGUAGE (NoSOL) DATABASE
CN107577486A (en) * 2017-09-29 2018-01-12 广州数鹏通科技有限公司 Weather information drawing processing method, device, computer equipment and storage medium
CN110019218A (en) * 2017-12-08 2019-07-16 阿里巴巴集团控股有限公司 Data storage and querying method and equipment
CN108563676A (en) * 2018-03-03 2018-09-21 贵州省气象信息中心 A kind of integrated searching system of meteorological data
CN108763323A (en) * 2018-05-03 2018-11-06 华风象辑(北京)气象科技有限公司 Meteorological lattice point file application process based on resource set and big data technology
CN109241161A (en) * 2018-08-09 2019-01-18 深圳市雅码科技有限公司 A kind of meteorological data management method
CN111090794A (en) * 2019-11-07 2020-05-01 远景智能国际私人投资有限公司 Meteorological data query method, device and storage medium
CN111460012A (en) * 2020-04-26 2020-07-28 国家气象信息中心 Spark-based meteorological historical station leather-following data visualization method and system

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112966063A (en) * 2021-03-16 2021-06-15 中化现代农业有限公司 Method, device, equipment and medium for building development framework for acquiring lattice data
CN112966063B (en) * 2021-03-16 2021-11-05 中化现代农业有限公司 Method, device, equipment and medium for building development framework for acquiring lattice data
CN112699102A (en) * 2021-03-23 2021-04-23 北京简巨科技有限公司 Processing method of lattice point data and related equipment thereof
CN116126942A (en) * 2023-02-09 2023-05-16 国家气象信息中心(中国气象局气象数据中心) Multi-dimensional space meteorological grid data distributed storage query method and system
CN116126942B (en) * 2023-02-09 2023-11-24 国家气象信息中心(中国气象局气象数据中心) Multi-dimensional space meteorological grid data distributed storage query method
CN117093641A (en) * 2023-10-20 2023-11-21 中国电子科技集团公司第十五研究所 Meteorological ocean lattice point data comprehensive processing method and system

Also Published As

Publication number Publication date
CN112214472B (en) 2024-01-30

Similar Documents

Publication Publication Date Title
CN112214472B (en) Meteorological lattice data storage and query method, device and storage medium
CN106528787B (en) query method and device based on multidimensional analysis of mass data
CN106933833B (en) Method for quickly querying position information based on spatial index technology
Zhang et al. Hbasespatial: A scalable spatial data storage based on hbase
CN108205577B (en) Array construction method, array query method, device and electronic equipment
CN103116610A (en) Vector space big data storage method based on HBase
CN112347118B (en) Data storage, query and generation method, database engine and storage medium
CN106471501B (en) Data query method, data object storage method and data system
CN108009265B (en) Spatial data indexing method in cloud computing environment
CN108205562B (en) Positioning data storage and retrieval method and device for geographic information system
CN111221813B (en) Database index and processing method, device and equipment for database query
US20230281182A1 (en) R-tree index merging and updating method and apparatus based on hilbert curve, and medium
CN106991149B (en) Massive space object storage method fusing coding and multi-version data
CN114048204A (en) Beidou grid space indexing method and device based on database inverted index
CN104408084A (en) Method and device for screening big data
CN111008198B (en) Service data acquisition method and device, storage medium and electronic equipment
CN110475204B (en) Method, device and equipment for analyzing reverse address of geographic fence
US20140012858A1 (en) Data processing method, data query method in a database, and corresponding device
US9436715B2 (en) Data management apparatus and data management method
JP6904724B2 (en) Map database creation device, map database creation method, and map database creation program
TW202004521A (en) LSM tree optimization method and device and computer equipment
CN113849498B (en) Index construction and query method
CN115309850A (en) GeoHash-based map visual range interest point retrieval method and system
Liu et al. GB-Tree: An efficient LBS location data indexing method
CN111159192B (en) Big data based data warehousing method and device, storage medium and processor

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant