IP Library Granted Patent US 12670163
Granted Patent B2
US 12670163 · App. 18/958,192 · Granted Jun 30, 2026

Data processing method, electronic device and computer-readable medium

Inventors: Kejian Ju (Beijing, CN); Leilei Hu (Beijing, CN); Yuanpu Ding (Beijing, CN)
Assignee: Beijing Volcano Engine Technology Co., Ltd.
G06F16/2455G06F8/51G06F16/2452
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12670163
App. No.
18/958,192
Granted
Jun 30, 2026
Kind
B2
Abstract

Embodiments of the present disclosure disclose a data processing method, an electronic device, and a computer-readable medium. And the data processing method includes: receiving a data query request for a first data processing engine; determining, in a front-end node, a target data processing engine based on the data query request, where computer programming languages used by the first data processing engine and a second data processing engine are different; and when the target data processing engine is the second data processing engine, performing data query on data stored in a target database by using a preset software development kit and calling a language conversion interface based on an offline query request in the second data processing engine, where the language conversion interface is configured to receive a query instruction in a second language and call a query instruction in a first language.

Claims (55)

1 . A data processing method for two data processing engines using different computer programming languages, comprising:

storing both data in a columnar storage format of a first data processing engine and data in a row storage format of a second data processing engine into a database;

receiving a data query request for the first data processing engine, wherein the first data processing engine comprises a front-end node and a back-end node, and the front-end node receives the data query request and manages client connections;

determining, in the front-end node, a third data processing engine based on the data query request, wherein the third data processing engine is the first data processing engine or the second data processing engine, the first data processing engine performs real-time processing on data, the second data processing engine performs offline processing on data, computer programming languages used by the first data processing engine and the second data processing engine are different, the first data processing engine uses a first language, and the second data processing engine uses a second language; and

performing, when the third data processing engine is the second data processing engine, data query on data stored in the database by using a software development kit and calling a language conversion interface based on an offline query request in the second data processing engine, wherein the software development kit is configured to query data, convert the data in a columnar storage format to first Arrow Format data, and convert the data in a row storage format to and from second Arrow Format data, the language conversion interface is configured to receive a query instruction in the second language and call a query instruction in the first language, and the offline query request is generated based on the data query request.

2 . The method according to claim 1 , wherein after the determining the third data processing engine based on the data query request, the method further comprises:

performing, when the third data processing engine is the first data processing engine, data query on data stored in the database by using the software development kit based on a real-time query request in the back-end node, wherein the real-time query request is generated based on the data query request.

3 . The method according to claim 2 , wherein the performing data query on data stored in the database by using the software development kit comprises:

performing data query on data stored in the database by using the software development kit and calling an arrow format interface, wherein the arrow format interface is configured to convert data between a columnar storage format and an arrow format.

4 . The method according to claim 1 , wherein the performing data query on data stored in the database by using the software development kit and calling the language conversion interface comprises:

performing, by using the software development kit and calling the language conversion interface, conversion from the query instruction in the second language to the query instruction in the first language; and

performing data query on data stored in the database by calling an arrow format interface, wherein the arrow format interface is configured to convert data between a row storage format and an arrow format.

5 . The method according to claim 1 , wherein at least one of following operations is performed in the front-end node:

managing metadata of the second data processing engine, wherein the metadata is metadata of a data table that can be read from and written into by the second data processing engine; and

dividing a data pulling task of the second data processing engine.

6 . The method according to claim 1 , wherein the query instruction comprises at least one of following: a read instruction, a write instruction, and a file merge instruction.

7 . The method according to claim 1 , wherein the determining the third data processing engine based on the data query request comprises:

determining a predicted value of a time consumption for processing the data query request; and

selecting the second data processing engine as the third data processing engine in response to the predicted value of the time consumption being greater than a time consumption threshold.

8 . The method according to claim 1 , wherein the determining the third data processing engine based on the data query request comprises:

determining a predicted value of resource consumption in a process of processing the data query request; and

selecting the second data processing engine as the third data processing engine in response to the predicted value of the resource consumption being greater than a resource consumption threshold.

9 . The method according to claim 1 , wherein the language conversion interface is a Java native interface, the first language is a C/C++ language, and the second language is a Java language.

10 . The method according to claim 1 , wherein the first data engine comprises an on-line analytical processing engine, and the second data engine comprises a distributed computing framework.

11 . A non-transient computer-readable medium, having a computer program stored thereon, wherein the computer program, when executed by a processor, cause the processor to implement a data processing method for two data processing engines using different computer programming languages, and the method comprises:

storing both data in a columnar storage format of a first data processing engine and data in a row storage format of a second data processing engine into a database;

receiving a data query request for the first data processing engine, wherein the first data processing engine comprises a front-end node and a back-end node, and the front-end node receives the data query request and manages client connections;

determining, in the front-end node, a third data processing engine based on the data query request, wherein the third data processing engine is the first data processing engine or the second data processing engine, the first data processing engine performs real-time processing on data, the second data processing engine performs offline processing on data, computer programming languages used by the first data processing engine and the second data processing engine are different, the first data processing engine uses a first language, and the second data processing engine uses a second language; and

performing, when the third data processing engine is the second data processing engine, data query on data stored in the database by using a software development kit and calling a language conversion interface based on an offline query request in the second data processing engine, wherein the software development kit is configured to query data, convert the data in a columnar storage format to first Arrow Format data, and convert the data in a row storage format to and from second Arrow Format data, the language conversion interface is configured to receive a query instruction in the second language and call a query instruction in the first language, and the offline query request is generated based on the data query request.

12 . An electronic device, comprising:

at least one processor; and

a memory having at least one program stored thereon,

wherein the at least one program, when executed by the at least one processor, causes the at least one processor to implement a data processing method for two data processing engines using different computer programming languages, and the method comprises:

storing both data in a columnar storage format of a first data processing engine and data in a row storage format of a second data processing engine into a database;

receiving a data query request for the first data processing engine, wherein the first data processing engine comprises a front-end node and a back-end node, and the front-end node receives the data query request and manages client connections;

determining, in the front-end node, a third data processing engine based on the data query request, wherein the third data processing engine is the first data processing engine or the second data processing engine, the first data processing engine performs real-time processing on data, the second data processing engine performs offline processing on data, computer programming languages used by the first data processing engine and the second data processing engine are different, the first data processing engine uses a first language, and the second data processing engine uses a second language; and

performing, when the third data processing engine is the second data processing engine, data query on data stored in the database by using a software development kit and calling a language conversion interface based on an offline query request in the second data processing engine, wherein the software development kit is configured to query data, convert the data in a columnar storage format to first Arrow Format data, and convert the data in a row storage format to and from second Arrow Format data, the language conversion interface is configured to receive a query instruction in the second language and call a query instruction in the first language, and the offline query request is generated based on the data query request.

13 . The electronic device according to claim 12 , wherein after the determining the third data processing engine based on the data query request, the method further comprises:

performing, when the third data processing engine is the first data processing engine, data query on data stored in the database by using the software development kit based on a real-time query request in the back-end node, wherein the real-time query request is generated based on the data query request.

14 . The electronic device according to claim 13 , wherein the performing data query on data stored in the database by using the software development kit comprises:

performing data query on data stored in the database by using the software development kit and calling an arrow format interface, wherein the arrow format interface is configured to convert data between a columnar storage format and an arrow format.

15 . The electronic device according to claim 12 , wherein the performing data query on data stored in the database by using the software development kit and calling the language conversion interface comprises:

performing, by using the software development kit and calling the language conversion interface, conversion from a query instruction in the second language to a query instruction in the first language; and

performing data query on data stored in the database by calling an arrow format interface, wherein the arrow format interface is configured to convert data between a row storage format and an arrow format.

16 . The electronic device according to claim 12 , wherein at least one of following operations is performed in the front-end node:

managing metadata of the second data processing engine, wherein the metadata is metadata of a data table that can be read from and written into by the second data processing engine; and

dividing a data pulling task of the second data processing engine.

17 . The electronic device according to claim 12 , wherein the query instruction comprises at least one of following: a read instruction, a write instruction, and a file merge instruction.

18 . The electronic device according to claim 12 , wherein the determining the third data processing engine based on the data query request comprises:

determining a predicted value of a time consumption for processing the data query request; and

selecting the second data processing engine as the third data processing engine in response to the predicted value of the time consumption being greater than a time consumption threshold.

19 . The electronic device according to claim 12 , wherein the determining the third data processing engine based on the data query request comprises:

determining a predicted value of resource consumption in a process of processing the data query request; and

selecting the second data processing engine as the third data processing engine in response to the predicted value of the resource consumption being greater than a resource consumption threshold.

20 . The electronic device according to claim 12 , wherein the language conversion interface is a Java native interface, the first language is a C/C++ language, and the second language is a Java language.