Data warehouse creation method and apparatus based on knowledge graph, and computer device

By creating a data warehouse based on a knowledge graph three-tier architecture, the challenges of data collaboration and management in heterogeneous systems in traditional solutions are solved, achieving efficient data storage and a simplified development process, thus meeting the needs of business intelligence.

WO2026025491A1PCT designated stage Publication Date: 2026-02-05SIEMENS AG +1
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/109559
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-08-02
Publication Date
2026-02-05

AI Technical Summary

Technical Problem

Traditional digital solutions struggle to foster collaboration across different value chains, require specialized personnel to operate, fail to effectively manage data relationships within heterogeneous systems, and lack a unified view for data engineers, resulting in inefficient data synchronization and storage.

Method used

A three-tier architecture based on knowledge graphs is used to create a data warehouse, including a data warehouse fact table layer, a service layer, and an application layer. Metadata is managed through knowledge graphs to reduce the migration of raw data, and a lightweight semantic abstraction framework is used for data fusion and aggregation, providing a low-code development environment.

Benefits of technology

It simplifies the data warehouse creation process, improves data storage efficiency, reduces redundant data, meets the business needs of business intelligence, and obtains the data required by users through periodic updates.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024109559_05022026_PF_FP_ABST
    Figure CN2024109559_05022026_PF_FP_ABST
Patent Text Reader

Abstract

Disclosed in the present application are a data warehouse creation method and apparatus based on a knowledge graph, and a computer device and a storage medium. Specifically, the data warehouse creation method based on a knowledge graph disclosed in the present application comprises: creating a data warehouse fact table layer, wherein the data warehouse fact table layer comprises a first node, and the first node corresponds to data in an external database; creating a data warehouse service layer, wherein the data warehouse service layer comprises a second node, and the second node corresponds to data obtained after nodes of the data warehouse fact table layer are aggregated; and creating a data application layer, wherein the data application layer comprises a third node, and the third node corresponds to data obtained after nodes of the data warehouse service layer are aggregated. By means of the method, the present application provides a new solution for creating a data warehouse on the basis of a knowledge graph, and allows the creation of subject-based aggregated wide tables without extracting original data into a local database, thereby enhancing both data sensitivity and the convenience of data warehouse creation operations.
Need to check novelty before this filing date? Find Prior Art

Description

Methods, apparatus, and computer equipment for creating data warehouses based on knowledge graphs Technical Field

[0001] This application relates to the field of data warehousing, and more specifically, to a method, apparatus, computer equipment, and storage medium for creating a data warehouse based on a knowledge graph. Background Technology

[0002] Enterprise management and operations typically involve multiple processes across different value chains. Traditional digital solutions often struggle to facilitate collaboration between these value chains. Some big data platform solutions partially address this issue by periodically executing ETL (Extract-Transform-Load) processes to synchronize data from heterogeneous systems to data warehouses, establishing business intelligence systems for data visualization and analysis. Despite these current approaches, several unresolved issues remain: for example, connecting and extracting data from new systems requires custom development; the inability to use data models defined in traditional data warehouses to establish and manage business relationships between data distributed across heterogeneous systems is a challenge; data-savvy professionals and IT experts are essential for operating these solutions, posing a challenge to many companies facing a shortage of such personnel, particularly industrial companies; data engineers need the ability to simplify thematic modeling of interconnected data in heterogeneous systems; and data engineers require a unified view to understand existing data tables, including intermediate tables and their relationships.

[0003] Summary of the Invention

[0004] This summary section is provided to introduce some selected concepts in a simplified form, which will be further described in the detailed description section below. This summary section is not intended to identify any key or essential features of the claimed subject matter, nor is it intended to help determine the scope of the claimed subject matter.

[0005] This application discloses a method for creating a data warehouse based on a knowledge graph, including:

[0006] Create a data warehouse fact table layer, wherein the data warehouse fact table layer includes a first node, the first node corresponding to data in an external database;

[0007] Create a data warehouse service layer, wherein the data warehouse service layer includes a second node; the second node corresponds to the data aggregated from the nodes of the data warehouse fact table layer;

[0008] Create a data application layer, wherein the data application layer includes a third node; the third node corresponds to the data aggregated from the nodes of the data warehouse service layer.

[0009] The above approach allows for the creation of a lightweight semantic abstraction framework that enables data fusion for heterogeneous data sources, accelerates application development, forms a highly robust low-code architecture, enhances the privacy of raw data, saves local data storage space, and is easy for operators to develop.

[0010] Specifically, the creation of the data warehouse service layer includes a second node; the second node corresponds to the data aggregated from the nodes of the data warehouse fact table layer, including:

[0011] Set a first loading cycle; according to the first loading cycle, aggregate the data of the first node and load it into a first aggregated wide table in the local database; wherein the first aggregated wide table corresponds to the second node.

[0012] Using the above methods, target data can be periodically retrieved from the data warehouse fact table, aggregated and organized, and the data required by the user can be obtained.

[0013] The creation of the data application layer includes a third node; the third node corresponds to the data aggregated from the nodes of the data warehouse service layer, including:

[0014] Set a second loading cycle; according to the second loading cycle, aggregate the data of the second node and load it into the second aggregated wide table in the local database; wherein the second aggregated wide table corresponds to the third node.

[0015] Using the above methods, target data can be periodically retrieved from the data warehouse service layer, aggregated and organized, and the data required by the user can be obtained.

[0016] The first loading cycle is set; according to the first loading cycle, the data of the first node is aggregated and loaded into a first aggregated wide table in the local database; wherein the first aggregated wide table corresponds to the second node and includes:

[0017] Create the first aggregate wide table in the local database, wherein the table name of the first aggregate wide table is equivalent to the node name of the second node;

[0018] Create a first task in the task scheduler; execute the first task according to the first loading cycle, and load the data of the first node into the first aggregated wide table.

[0019] Using the above method, data from the data warehouse fact layer can be aggregated to nodes in the data warehouse service layer according to needs, themes, etc. The process is relatively simple, and the data filtering and targeting are strong, reducing the transfer of unnecessary data and the storage of redundant data.

[0020] The second loading cycle is set; according to the second loading cycle, the data of the second node is aggregated and loaded into a second aggregated wide table in the local database; wherein the second aggregated wide table corresponds to the third node and includes:

[0021] Create the second aggregate wide table in the local database; wherein the table name of the second aggregate wide table is the same as the node name of the third node;

[0022] Create a second task in the task scheduler; execute the second task according to the second loading cycle, and load the data of the second node into the second aggregated wide table.

[0023] Using the above method, data from the data warehouse service layer can be aggregated to nodes in the data application layer according to user or application needs. The process is relatively simple, and the data filtering and targeting are highly effective in meeting application requirements.

[0024] Specifically, the aggregated data includes data obtained through selection, summation, matching, or merging.

[0025] The above methods allow for easy aggregation of data to obtain the desired processed data type and results.

[0026] In addition, this application discloses a knowledge graph-based data warehouse creation apparatus, which includes:

[0027] The data warehouse fact table creation module is used to create a data warehouse fact table, wherein the data warehouse fact table includes a first node, and the first node corresponds to data in an external database;

[0028] A data warehouse service layer creation module is used to create a data warehouse service layer, wherein the data warehouse service layer includes a second node; the second node corresponds to the data aggregated from the nodes of the data warehouse fact table layer;

[0029] A data application layer creation module is used to create a data application layer, wherein the data application layer includes a third node; the third node corresponds to the data aggregated from the nodes of the data warehouse service layer.

[0030] This application also provides a computer device, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the above-described method.

[0031] This application also provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the above-described method.

[0032] This application also provides a computer program product tangibly stored on a computer-readable medium and comprising computer-executable instructions that, when executed, cause at least one processor to perform the methods described above. Attached Figure Description

[0033] Implementations of this disclosure are illustrated in the accompanying drawings by way of example rather than limitation, and similar reference numerals in the drawings denote the same or similar parts.

[0034] Figure 1 is a schematic flowchart of a method for creating a data warehouse based on a knowledge graph according to one embodiment of this application.

[0035] Figure 2 is a schematic diagram of an apparatus for creating a data warehouse based on a knowledge graph according to an embodiment of this application.

[0036] Figure 3 is a schematic diagram of a computer device for creating a data warehouse based on a knowledge graph according to one embodiment of this application.

[0037] The reference numerals in the attached figures are as follows:

[0038] Steps S101-S103

[0039] 200: Device

[0040] 201: Module

[0041] 202: Module

[0042] 203: Module

[0043] 300: Computer equipment

[0044] 302: Processor

[0045] 304: Memory Detailed Implementation

[0046] In the following description, numerous specific details are set forth for illustrative purposes. However, it will be understood that the invention can be implemented without these specific details. In other examples, well-known circuits, structures, and techniques have not been shown in detail so as not to affect the understanding of the description.

[0047] Throughout the specification, references to "an implementation," "implementation," "exemplary implementation," "some implementations," "various implementations," etc., indicate that the implementation of the invention described may include specific features, structures, or characteristics. However, it is not implied that every implementation must include these specific features, structures, or characteristics. Furthermore, some implementations may have some, all, or none of the features described for other implementations.

[0048] As described in the background section, the current technology and its problems are as follows: First, the virtual data lake solution in the Data Layer is an abstract logical layer used to virtually integrate data from multiple source systems without moving the data to centralized storage. It provides data access for business intelligence or analytics systems while leveraging the data fusion capabilities of semantic API (Application Programming Interface) engines and industrial knowledge graphs to hide the complexity of source systems and data infrastructure. While this solution addresses many of the aforementioned problems, challenges remain in business intelligence scenarios. Each data retrieval from the original data source incurs significant time latency. Furthermore, the solution lacks the ability to provide topic-based aggregation wide tables, thus failing to meet the business needs of business intelligence.

[0049] Therefore, the implementation scenario of this application is to create a three-layer data warehouse in a knowledge graph, and then establish corresponding aggregation wide tables for the second and third layers in a local database, aggregating limited target data into these wide tables for application purposes based on target needs. Developers only need to define nodes in the knowledge graph, the fields contained in the nodes, and SQL (Structured Query Language) statements to build the data warehouse. This method can reduce developer operations, save local storage resources, and reduce data sensitivity and privacy issues caused by migrating source data.

[0050] First, let's explain the Data Layer. The Data Layer is an innovative architectural solution that addresses the problems mentioned in the background. It's a lightweight semantic abstraction framework that enables data fusion from heterogeneous data sources and accelerates application development. This solution provides a modern, loosely coupled, highly robust, low-code architecture optimized for IoT systems.

[0051] The core components of the data layer are:

[0052] 1. Universal Connectivity (also known as Universal Connectivity Components): This group provides a unified data integration framework that enables configurable integration of various systems and supports multiple drivers and protocols. Furthermore, custom plugins can be created to support new connectivity drivers. Components in this group include features such as data connectivity, hot / cold data differentiation, disconnection and reconnection, transaction compensation, and connection pool optimization, and employ other technical means to ensure data reliability and robustness.

[0053] 2. Model attribute binding component, also known as Schema Binder: Establishes mapping connections between multi-source heterogeneous data and standardized semantic data of customers through a low-code paradigm.

[0054] 3. Data Modeling Components: Standard models for various industries are established based on international industry standards, and knowledge graphs are customized for clients based on these models. Semantic and virtual data lake access interfaces are provided for application development. All of the above components follow a knowledge graph-based data fusion conceptual model as a low-code definition paradigm.

[0055] Therefore, this application introduces a novel solution for creating a data warehouse based on a Data Layer and a knowledge graph. The Data Layer allows for the storage of computed, topic-based aggregated wide tables without extracting raw data to a central warehouse. Furthermore, it provides a direct method for creating a data warehouse based on a knowledge graph.

[0056] As shown in Figure 1, this application discloses a method for creating a data warehouse based on a knowledge graph, including:

[0057] S101, Create a data warehouse fact table, wherein the data warehouse fact table includes a first node, and the first node corresponds to data in an external database.

[0058] The data warehouse fact table layer, also known as the data warehouse details (DWD), includes first nodes. These first nodes correspond to data in an external database. In some embodiments, a node (entity) can also be called metadata, and a node may include multiple fields. For example, in the DWD layer, nodes are created based on open standards, domain knowledge, and best practices, primarily corresponding to external customer fact table data. When data in the first node of the DWD layer is accessed, the semantic interface provided by the Data layer is invoked. For example, the process of requesting data from the DWD layer. The DWD layer includes multiple first nodes, where "Entity Name:dwd1" includes three string-type fields: field1, field2, and field3. When requesting data from the first node "Entity Name:dwd1" in the DWD layer, the API Engine in the Data layer further sends instructions to Universal Connectivity, which then obtains the source data from the external database through attribute mapping in the Schema Mapper. Unlike traditional data warehouses, the solution in this application stores the original data in the customer environment without migrating the original data. This approach addresses the client's sensitivity to raw data while also optimizing the storage space of the local database.

[0059] S102, Create a data warehouse service layer, wherein the data warehouse service layer includes a second node; the second node corresponds to the data aggregated by the nodes of the data warehouse fact table layer.

[0060] The data warehouse service layer can also be called the Data Warehouse Service (DWS). Nodes in the DWS layer can be called second nodes. Data from different fields in the second node can be aggregated from the field data in the first node. In some embodiments, the DWS layer is a topic-based data application layer, typically focusing on creating aggregated wide tables based on topic statistics. For example, in the DWS layer, users create second nodes based on topics, define specific fields, and then declare the data source for each field using SQL statements. In some embodiments, through SQL statements, the field field1 of the second node dws1 in the DWS layer originates from the field field1 of the first node dwd1 in the DWD layer; the field field2 of the second node dws1 in the DWS layer originates from the field field2 of the first node dwd2 in the DWD layer, and so on. Specifically, when a user creates a second node in the DWS layer of the knowledge graph, the backend or computer will correspondingly create a first aggregated wide table with the same name as this second node in the local database. The first aggregated wide table is a table, and different columns in the first aggregated wide table correspond to different fields in the second node.

[0061] For example, consider the process of creating data in the DWS layer. The DWS layer includes multiple second nodes. Taking one node, "Entity Name:dws1," as an example, it includes two string fields, Field1 and Field2, and one int field, Field3. When creating data for node dws1, the backend or computer first creates a first aggregated wide table in the local database. This first aggregated wide table can be named "Table Name:dws1" and includes three columns: Field1, Field2, and Field3. Then, the task scheduler executes the SQL statement associated with node dws1: specifically, the task scheduler sends instructions to the SQL Endpoint, the SQL Endpoint sends instructions to the SQL Engine, and the SQL Engine sends instructions to Data Modeling to retrieve data from the DWD. The process of retrieving data from the DWD layer is similar to the process described above. The DWD layer data is then fed back to the task scheduler, which aggregates the data and writes the results into "Table Name:dws1".

[0062] For example, consider the process of requesting data from the DWS layer. For instance, when requesting data from node dws1, the DWS layer sends a command to the API Engine, which then sends a command to the Universal Connectivity. The Universal Connectivity then sends a command to the Schema Mapper to retrieve the data from the local database under the table "Table Name:dws1". Since the data is retrieved from the corresponding first aggregated wide table in the local database, the execution efficiency is very high.

[0063] S103, Create a data application layer, wherein the data application layer includes a third node; the third node corresponds to the data aggregated from the nodes of the data warehouse service layer.

[0064] The data application layer can also be called the Application Data Service (ADS). Nodes in the ADS layer can be called third nodes. Data from different fields in the third node can be aggregated from data in the second node. The ADS layer is primarily used for data products and data analysis, such as data reports. Users need to create third nodes in the ADS layer according to end-user requirements and data reports, defining specific fields and declaring data sources. In some embodiments, when a user creates a third node in the ADS layer of a knowledge graph, the backend or computer will correspondingly create a second aggregated wide table with the same name as this third node in the local database; the second aggregated wide table is also a table; according to the SQL statement declaration, different fields in the third node correspond to different columns in the second aggregated wide table. In some embodiments, when requesting access to data in the third node of the ADS layer, the data can be accessed directly by calling the semantic interface provided by the Data Layer.

[0065] For example, consider the data creation process in the ADS layer. The L3 ADS layer includes multiple third-party nodes. Taking one node, "Entity Name: ads1," as an example, it includes three string-type Field1, Field2, and Field3. When creating data for node ads1, the backend or computer first creates a second aggregated wide table in the local database. This second aggregated wide table is named "Table Name: ads1" and includes three columns: Field1, Field2, and Field3. Then, the task scheduler executes the SQL statement associated with node ads1. Using the SQL Engine, it aggregates the data from the relevant fields in the first aggregated wide table "Table Name: dws1" and "Table Name: dws2" stored in the local database. The resulting data is then loaded into the corresponding Field position in "Table Name: ads1" in the local database.

[0066] For example, consider the process of requesting data from the ADS layer. To request data for node ads1, the ADS layer sends a command to the API Engine, which then sends a command to the Universal Connectivity. The Universal Connectivity sends a command to the Schema Mapper to retrieve the data from the local database under the table "Table Name: ads1". Because both data creation and retrieval in the ADS layer are done from the corresponding table in the local database, the execution efficiency is high.

[0067] Furthermore, the creation of the data warehouse service layer includes a second node; the second node corresponds to the data aggregated from the nodes of the data warehouse fact table layer, including:

[0068] Set a first loading cycle; according to the first loading cycle, aggregate the data of the first node and load it into a first aggregated wide table in the local database; wherein the first aggregated wide table corresponds to the second node.

[0069] In some embodiments, a first aggregation wide table is created in the local database (DB), which can be named "table name:dws1". Field1, field2, field3, etc., in table name:dws1 can each correspond to different fields in a second node. After aggregating the data of the first node, the corresponding results are stored in the blank space under the corresponding Field column in the corresponding table name:dws1. Further, for example, the SQL statement defined for node "dws1" is as follows:

[0070] SQL statement: select dwd1.field1 as field1, dwd2.field2 as field2, sum(dwd2.field3) as field3 from dwd1 left join dwd2 on dwd1.field1=dwd2.field1 group by dwd1.field1,dwd2.field2

[0071] In this example, the field "field1" in the "dws1" table comes from the field "field1" in the "dwd1" table, and so on. This is just an example; users can customize it according to their own requirements. Additionally, users need to define the execution frequency; in this example, the planned time is set to 1 day, abbreviated as 1d.

[0072] In some embodiments, for example, in the L1 DWD layer, there are multiple first nodes, which can be represented as node names (Entity Names) such as dwd1, dwd2, etc. In the L2 DWS layer, there are multiple second nodes, which can be represented as node names such as dws1, dws2, etc. In the L3 ADS layer, there are multiple third nodes, which can be represented as node names such as ads1, etc. Through this method, developers can easily create nodes in the knowledge graph by simply dragging and dropping, copying and pasting, making the development process simple, user-friendly, and convenient.

[0073] Furthermore, the creation of the data application layer includes a third node; the third node corresponds to the data aggregated from the nodes of the data warehouse service layer, including:

[0074] Set a second loading cycle; according to the second loading cycle, aggregate the data of the second node and load it into the second aggregated wide table in the local database; wherein the second aggregated wide table corresponds to the third node.

[0075] For example, considering node "ads1", its defined SQL statement is as follows:

[0076] SQL statement: select dws1.field1 as field1,dws2.field2 as field2,dwd2.field3 as field3 from dws1 left join dws2 on dws1.field1=dws2.field1

[0077] In this example, the field "field1" in "ads1" comes from "field1" in the "dws1" table, and so on. Users can customize these definitions according to their needs. Additionally, users need to define the execution frequency; in this example, the planned time is set to 1 day.

[0078] Similarly, for example, in a local database (DB), a second aggregation wide table can be created, which can be named "table name:ads1". Field1, field2, field3, etc., in table name:ads1 can each correspond to a third node. In some embodiments, after aggregating the data of the second node, the corresponding results are stored in the blank space under the corresponding Field column in the corresponding table name:ads1.

[0079] Furthermore, wherein a first loading cycle is set; according to the first loading cycle, the data of the first node is aggregated and loaded into a first aggregated wide table in the local database; wherein the first aggregated wide table corresponds to the second node and includes:

[0080] Create the first aggregate wide table in the local database, wherein the table name of the first aggregate wide table is equivalent to the node name of the second node;

[0081] Create a first task in the task scheduler; execute the first task according to the first loading cycle, and load the data of the first node into the first aggregated wide table.

[0082] Furthermore, the second loading cycle is set; according to the second loading cycle, the data of the second node is aggregated and loaded into a second aggregated wide table in the local database; wherein the second aggregated wide table corresponds to the third node and includes:

[0083] Create the second aggregate wide table in the local database; wherein the table name of the second aggregate wide table is the same as the node name of the third node;

[0084] Create a second task in the task scheduler; execute the second task according to the second loading cycle, and load the data of the second node into the second aggregated wide table.

[0085] In some embodiments, after a user creates and configures a second or third node, the system triggers the creation of a data table with the same name in the database and sets up a new task in the task scheduler. This task, based on the scheduled time configured in the node, periodically calls the SQL Engine provided by the Data Layer to retrieve the target data, and then writes the results to the corresponding data table in the database through data aggregation.

[0086] In some embodiments, the aggregated data includes data obtained through selection, summation, matching, or merging. Specifically, SQL statements can be used to perform the corresponding data processing operations, also known as aggregation operations. For example,

[0087] SQL statement:

[0088] select dwd1.field1 as field1,dwd2.field2 as field2,sum(dwd2.field3)as field3 from dwd1 left join dwd2 on dwd1.field1=dwd2.field1 group by dwd1.field1,dwd2.field2

[0089] This means selecting data from two tables, dwd1 and dwd2, grouping it according to dwd1.field1 and dwd2.field2, and calculating the sum of field3 in table dwd2.

[0090] For example, an SQL statement:

[0091] select dws1.field1 as field1,dws2.field2 as field2,dwd2.field3 as field3 from dws1 left join dws2 on dws1.field1=dws2.field1

[0092] This indicates selecting data from two tables, dws1 and dws2, and performing a left join based on the condition that dws1.field1 equals dws2.field1. The result set includes the following fields:

[0093] • Create a field named field1 in the dws1 table.

[0094] • Create a field named field2 in the dws2 table and name it field2.

[0095] • Create a field named field3 in the dws2 table.

[0096] The above method allows for data aggregation to obtain the desired processed data type and results. Furthermore, the raw data from the first layer can be aggregated into nodes of the DWS layer based on requirements and themes. This process is relatively simple and offers strong data filtering and targeting capabilities, reducing the transfer of unnecessary data and the storage of redundant data. Subsequently, the data from the DWS layer can be further aggregated into nodes of the ADS layer based on user or application requirements. This process is also relatively simple and offers strong data filtering and targeting capabilities, meeting application needs.

[0097] The technical features of this application are summarized as follows: 1. Creating a Data Warehouse DWD layer through a datalayer. 2. Managing metadata through a knowledge graph.

[0098] The advantages of this application based on its technical features are: 1. It solves the customer's sensitivity issue regarding raw data, eliminating the need to synchronize raw data to a data center. 2. It saves a significant amount of storage space. 3. It provides a unified view for unified management of data tables through a knowledge graph (KG), simplifying the data warehouse creation process. 4. The knowledge graph (KG) view clearly presents the relationships between data. 5. It allows for periodic updates or retrieval of data, enabling data aggregation and organization to obtain the data needed by the user.

[0099] An application example of this application can be as follows: A group chemical plant has multiple heterogeneous systems, including Kingdee EAS, Intelligent Energy Production Control System, Kingdee Cloud Home, CRM system, HSE (Health, Safety, and Environment) system, etc. To support digital operations, it is necessary to uniformly query data from these different systems and perform correlation analysis on the data from each system. In this case, using a traditional data warehouse requires extracting data from each system to a centralized data repository, resulting in a large amount of redundant data storage and posing challenges to analyzing data relationships. Introducing a datalayer can meet the unified data query needs across different systems, establish data relationships based on domain models, and utilize business intelligence functions to support the group's digital operations. In some embodiments, the external data source or database may also include DSC (Data Source Control), IT (Information Technology) System, QMS (Quality Management System), ERP (Enterprise Resource Planning), OT (Operational Technology) Data, and others.

[0100] Figure 2 provides an apparatus 200 for creating a knowledge graph-based data warehouse. This apparatus 200 includes:

[0101] The data warehouse fact table creation module 201 is used to create a data warehouse fact table, wherein the data warehouse fact table includes a first node, and the first node corresponds to data obtained from an external database.

[0102] The data warehouse service layer creation module 202 is used to create a data warehouse service layer, wherein the data warehouse service layer includes a second node; the second node corresponds to the data aggregated from the nodes of the data warehouse fact table layer.

[0103] The data application layer creation module 203 is used to create a data application layer, wherein the application data application layer includes a third node; the third node corresponds to the data aggregated from the nodes of the data warehouse service layer.

[0104] It should be noted that the device may contain more or fewer modules to implement the described functions. For example, at least one module in FIG2 may be further divided into a plurality of different sub-modules, each sub-module being used to perform at least a portion of the operations described herein in conjunction with the corresponding module. Furthermore, in some examples, device 200 may also include additional modules for performing other operations already described in the specification. Moreover, those skilled in the art will understand that the exemplary device 200 may be implemented using software, hardware, firmware, or any combination thereof.

[0105] Figure 3 provides a computer device. According to one embodiment, the computer device 300 may include a processor 302 that executes a computer program stored in a memory 304. When executed by the processor, the computer program implements the method described above.

[0106] Those skilled in the art will understand that the structure shown in Figure 3 is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or may combine certain components, or may have different component arrangements.

[0107] Those skilled in the art will understand that all or part of the processes in the methods described above can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments described above. Any references to memory, storage, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, or optical storage, etc. Volatile memory can include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM), etc.

[0108] This application also provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, performs the above steps.

[0109] This application also provides a computer program product tangibly stored on a computer-readable medium and including computer-executable instructions that, when executed, cause at least one processor to perform the methods described above.

[0110] Furthermore, the computer program can be stored and run in the cloud to execute the method. Furthermore, the components of the program can be deployed on multiple devices or in the cloud; for example, corresponding steps can be deployed and run on a local computer, or run on different cloud devices, transmitting signals via communication connections, or they can also be deployed and run on a local computer. This application does not limit the described approach or method; corresponding technologies can be flexibly deployed and fully utilized to execute and complete the method using cloud computing, big data, supercomputing capabilities, and other equipment and technologies.

[0111] Some implementations of this disclosure may include an article of writing. The article of writing may include a storage medium for storing logic. Examples of storage media may include one or more types of computer-readable storage media capable of storing electronic data, including volatile or non-volatile memory, removable or non-removable memory, erasable or non-erasable memory, writable or rewritable memory, and so on. Examples of logic may include various software units, such as software components, programs, applications, computer programs, application programs, system programs, machine programs, operating system software, middleware, firmware, software modules, routines, subroutines, functions, methods, procedures, software interfaces, application programming interfaces (APIs), instruction sets, computational code, computer code, code segments, computer code segments, words, values, symbols, or any combination thereof. In some implementations, for example, the article of writing may store executable computer program instructions that, when executed by a processor, cause the processor to perform the methods and / or operations described herein. Executable computer program instructions may include any suitable type of code, such as source code, compiled code, interpreted code, executable code, static code, dynamic code, and so on. Executable computer program instructions can be implemented according to a predefined computer language, method, or syntax used to command the computer to perform specific functions. These instructions can be implemented using any suitable high-level, low-level, object-oriented, visual, compiled, and / or interpreted programming language.

[0112] It should be understood that although the steps in the flowchart of Figure 1 are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some of the steps in Figure 1 may include multiple steps or multiple stages, which are not necessarily completed at the same time, but can be executed at different times, and the execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages in other steps. Examples of the disclosed architecture have been described above. It is certainly impossible to describe every conceivable combination of components and / or methods, but those skilled in the art will understand that many other combinations and arrangements are also possible. Therefore, this novel architecture is intended to cover all such alternatives, modifications, and variations that fall within the spirit and scope of the appended claims.

Claims

1. A method for creating a data warehouse based on a knowledge graph, comprising: creating a data warehouse fact table layer, wherein the data warehouse fact table layer comprises a first node corresponding to data of an external database; creating a data warehouse service layer, wherein the data warehouse service layer comprises a second node corresponding to aggregated data of the nodes of the data warehouse fact table layer; creating a data application layer, wherein the data application layer comprises a third node corresponding to aggregated data of the nodes of the data warehouse service layer. 2.The method of claim 1, wherein the data warehouse service layer comprises a second node corresponding to aggregated data of the nodes of the data warehouse fact table layer, and the creating the data warehouse service layer comprises: setting a first loading period; loading the aggregated data of the first node into a first aggregated wide table in a local database according to the first loading period; and wherein the first aggregated wide table corresponds to the second node. 3.The method of claim 1, wherein the data application layer comprises a third node corresponding to aggregated data of the nodes of the data warehouse service layer, and the creating the data application layer comprises: setting a second loading period; loading the aggregated data of the second node into a second aggregated wide table in a local database according to the second loading period; and wherein the second aggregated wide table corresponds to the third node.

4. The method of claim 2, wherein, The setting the first loading period and the loading the aggregated data of the first node into a first aggregated wide table in a local database according to the first loading period, wherein the first aggregated wide table corresponds to the second node, comprises: creating the first aggregated wide table in the local database, wherein the table name of the first aggregated wide table is equal to the node name of the second node; and establishing a first task in a task scheduler, and executing the first task to load the aggregated data of the first node into the first aggregated wide table according to the first loading period. The setting the second loading period and the loading the aggregated data of the second node into a second aggregated wide table in a local database according to the second loading period, wherein the second aggregated wide table corresponds to the third node, comprises:

5. The method of claim 3, wherein, creating the second aggregated wide table in the local database, wherein the table name of the second aggregated wide table is equal to the node name of the third node; and establishing a second task in a task scheduler, and executing the second task to load the aggregated data of the second node into the second aggregated wide table according to the second loading period. The aggregated data comprises data obtained by selection, summation, matching or merging. 7.An apparatus (200) for creating a data warehouse based on a knowledge graph, comprising: a data warehouse fact table layer creating module (201) configured to create a data warehouse fact table layer, wherein the data warehouse fact table layer comprises a first node corresponding to data of an external database; 6. The method of claim 1, wherein, a data warehouse service layer creating module (202) configured to create a data warehouse service layer, wherein the data warehouse service layer comprises a second node corresponding to aggregated data of the nodes of the data warehouse fact table layer; and a data application layer creating module (203) configured to create a data application layer, wherein the data application layer comprises a third node corresponding to aggregated data of the nodes of the data warehouse service layer. ​ ​ A data application layer creation module (203) is configured to create a data application layer, wherein the data application layer comprises a third node; the third node corresponds to data aggregated by nodes of the data warehouse service layer.

8. A computer device comprising a memory and a processor, the memory storing a computer program, wherein, The computer program, when executed by the processor, implements the steps of the method according to any one of claims 1 to 6.

9. A computer readable storage medium having stored thereon a computer program, wherein, The computer program, when executed by the processor, implements the steps of the method according to any one of claims 1 to 6.

10. A computer program product tangibly stored on a computer readable medium and comprising computer executable instructions that, when executed, cause at least one processor to perform the method according to any one of claims 1 to 6.

Citation Information

Patent Citations

  • Data warehouse construction method, device and system, electronic equipment and storage medium

    CN113742325A

  • Data cleaning method and device

    CN113868237A

  • Data center system of business and salary summary report and construction method

    CN114298692A

  • Method for determining target object, data storage method and corresponding device

    CN115168462A

  • System and method for data aggregation, integration and analyses in a multi-dimensional database

    US20130138601A1