A billing platform and billing system

By introducing an in-memory data model and data access and transmission units into the billing platform, and adopting a general data structure, the problem of data transmission overhead between billing platforms is solved, achieving cross-platform data consensus and low-cost transmission, thereby improving the efficiency and speed of the billing system.

CN115187274BActive Publication Date: 2026-06-16CHINA MOBILE GROUP JIANGSU +1

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
CHINA MOBILE GROUP JIANGSU
Filing Date
2021-04-06
Publication Date
2026-06-16

AI Technical Summary

Technical Problem

Existing billing systems consume a lot of resources when transmitting data between billing platforms, especially under high-frequency operator billing requests, where encoding and decoding operations are particularly resource-intensive.

Method used

It adopts a memory data model, data access unit, and data transmission unit, and standardizes data communication between platforms through a general data structure, reducing the encoding and decoding process, and using the data access unit and transmission unit to perform data structure conversion and transmission.

🎯Benefits of technology

It standardizes data communication between billing platforms, reduces the cost of data access between different applications and coding languages, lowers memory data transfer consumption under hardware architecture and programming languages, and improves resource utilization efficiency and communication speed.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115187274B_ABST
    Figure CN115187274B_ABST
Patent Text Reader

Abstract

The application provides a charging platform and a charging system, wherein the charging platform comprises a memory data model, a data access unit and a data transmission unit connected with the memory data model respectively; the data access unit is used for converting local charging data into general charging data and storing the general charging data into the memory data model, and reading the general charging data from the memory data model and converting the general charging data into the local charging data; the data transmission unit is used for reading the general charging data from the memory data model and sending the general charging data, and storing the received general charging data into the memory data model; wherein the local charging data is charging data under a data structure adapted to the charging platform, and the general charging data is charging data under a general data structure. The platform and the system provided by the application realize the standardization of data communication between charging platforms, thereby meeting the compatibility requirement of cross-platforms and solving the problem of data consensus.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of business support technology, and in particular to a billing platform and billing system. Background Technology

[0002] As a long-processing system, the billing system involves core network equipment, comprehensive data collection, preprocessing, deduplication, batch pricing, and real-time accounting. With the development and popularization of distributed architecture, the billing system also distributes the various nodes of the long-processing workflow to distributed billing platforms for processing. Data exchange between platforms has become the link that integrates the applications and data of various platforms in the billing system.

[0003] Considering that each platform may have its own unique data structure based on its own characteristics, in order to ensure that the data transmitted between platforms can be correctly identified, the common approach is to encode the data on the data sending platform, encapsulate the encoded data into packets, and transmit it over the network; the data receiving platform decodes the data according to the standard format required by its local requirements, so that the data can be identified by both parties.

[0004] Because the business processes of the billing system often need to cross multiple platforms, data processing between and within platforms requires data transmission. In addition, the number of daily billing requests in the operator sector reaches nearly 10 billion, and the data transmission operation is dozens of times that of a single billing request, so the encoding and decoding costs are considerable. Summary of the Invention

[0005] This invention provides a billing platform and billing system to solve the problem that the transmission of existing billing data between various billing platforms requires a large amount of resources.

[0006] The present invention provides a billing platform, including a memory data model, and a data access unit and a data transmission unit respectively connected to the memory data model;

[0007] The data access unit is used to convert local billing data into general billing data and store it in the memory data model, and to read general billing data from the memory data model and convert it into local billing data.

[0008] The data transmission unit is used to read general billing data from the memory data model and send it, and to store the received general billing data into the memory data model;

[0009] The local billing data is billing data under a data structure adapted to the billing platform, while the general billing data is billing data under a general data structure.

[0010] According to a billing platform provided by the present invention, the general data structure includes several consecutive data fields and boundary fields set at both ends of all data fields. Each data field consists of a data item description and a data content.

[0011] According to a billing platform provided by the present invention, the data item descriptions in each data field include memory offset, data type, and data length.

[0012] According to a billing platform provided by the present invention, the data access unit includes a data extractor and a data conversion engine;

[0013] The data extractor is used to locate the target general billing data to be read in the memory data model and extract the target general billing data;

[0014] The data conversion engine is used to convert the data structure of the target general billing data into a data structure adapted to the billing platform.

[0015] According to a billing platform provided by the present invention, the data access unit includes a data encoder;

[0016] The data encoder is used to convert the data structure of the local billing data to be written into the general data structure and write it into the memory data model.

[0017] According to a billing platform provided by the present invention, a data access API is also included, which is used to call the data storage unit.

[0018] According to a billing platform provided by the present invention, a data transmission API is also included, which is used to call the data transmission unit.

[0019] According to a billing platform provided by the present invention, the billing data includes call detail records.

[0020] The present invention also provides a billing system, including multiple billing platforms as described above.

[0021] According to a billing system provided by the present invention, any two billing platforms can transmit the general billing data by calling the data transmission unit based on their local data transmission API.

[0022] The billing platform and system provided by this invention standardize data communication between billing platforms by applying a memory data model under a general data structure, thereby meeting cross-platform compatibility requirements and solving the data consensus problem. The application of data access units based on a general data structure reduces the cost of data access between different applications and different coding languages. The application of data transmission units based on a general data structure enables direct data transmission under the general data structure, ensuring low overhead for sending and receiving memory data under different hardware architectures and programming languages. Attached Figure Description

[0023] To more clearly illustrate the technical solutions in this invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of this invention. For those skilled in the art, other drawings can be obtained from these drawings without creative effort.

[0024] Figure 1 This is a schematic diagram of the billing platform provided by the present invention;

[0025] Figure 2 This is a schematic diagram of the general data structure provided by the present invention;

[0026] Figure 3 This is a schematic diagram of the billing system provided by the present invention;

[0027] Figure 4 This is a schematic diagram of the data transmission process provided by the present invention. Detailed Implementation

[0028] To make the objectives, technical solutions, and advantages of this invention clearer, the technical solutions of this invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of this invention. All other embodiments obtained by those skilled in the art based on the embodiments of this invention without creative effort are within the scope of protection of this invention.

[0029] As minicomputers are gradually replaced by server clusters such as x86 and ARM, software architecture is also upgrading from monolithic, siloed architectures to cloud-based, distributed, and microservice architectures. In distributed architectures, data exchange between hosts becomes the link that integrates countless applications and data distributed across various application hosts.

[0030] Data exchange occurs between applications and between business processes. Due to differences in business characteristics and processing architectures, each component in the system has its own unique data structure based on its own characteristics and requirements. Furthermore, different processors such as x86, ARM, and MIPS introduce differences in memory data structures.

[0031] Currently, to ensure that data transmission can be correctly identified, the common practice is to encode the data at the data sending end. This operation converts the data into a standard binary encoding format for network transmission. After the data is packetized by the operating system, it is transmitted over the network. After receiving the data, the receiving end decodes the data according to the data format required by the local system and software, thereby achieving mutual recognition of the data.

[0032] As a long-processing system, the billing system involves core network equipment, comprehensive data collection, preprocessing, deduplication, batch pricing, and real-time accounting, among other lengthy business processes. It also spans multiple billing platforms, requiring data transmission both between and within these platforms. Furthermore, with nearly 10 billion billing requests daily in the telecom industry, the data transmission operations are dozens of times greater than a single billing request, resulting in considerable encoding and decoding overhead.

[0033] To address the aforementioned issues, this invention provides a billing platform. The billing platform referred to herein can be a functional module within a billing system. The billing system may contain multiple billing platforms, each of which may have the same or different hardware architectures and may be implemented using the same or different programming languages.

[0034] Figure 1 This is a schematic diagram of the billing platform provided by the present invention, as shown below. Figure 1 As shown, the billing platform includes a memory data model 110, and a data access unit 120 and a data transmission unit 130 respectively connected to the memory data model 110;

[0035] The data access unit 120 is used to convert local billing data into general billing data and store it in the memory data model 110, and to read general billing data from the memory data model 110 and convert it into local billing data.

[0036] The data transmission unit 130 is used to read general billing data from the memory data model 110 and send it, and to store the received general billing data into the memory data model 110;

[0037] The local billing data is billing data under a data structure adapted to the billing platform, while the general billing data is billing data under a general data structure.

[0038] Specifically, to optimize the data packet encapsulation process during communication between billing platforms, a common, standardized in-memory data model 110 is set up in each billing platform. The in-memory data model 110 stores the billing data of the corresponding billing platform. Furthermore, to meet cross-billing platform compatibility requirements, the data structure of the billing data stored in the in-memory data model 110 is a common data structure. This common data structure is a pre-defined, standardized cross-billing platform data structure. When billing platforms communicate, they can directly transmit the common billing data in the in-memory data model 110, thereby avoiding the data packet encapsulation and decapsulation processes before and after communication.

[0039] In addition, in order to enable data reading and writing within the billing platform, the billing platform is also equipped with a data access unit 120.

[0040] The billing data generated or used by the billing platform itself has a data structure adapted to the billing platform itself. However, this data structure may differ from the general data structure. Therefore, the data access unit 120 is needed to convert the data structure of the billing data and to store and retrieve it. Here, the data access unit 120 can be a dedicated data access device designed for different hardware environments and coding languages, used to enable interoperability and conversion between billing platform-identifiable data and consensus data.

[0041] Furthermore, the data access unit 120 can convert the billing data generated by the billing platform under a data structure adapted to itself, i.e., the local billing data, into billing data under a general data structure, i.e., general billing data, and store the converted general billing data into the memory data model 110; the data access unit 120 can also read the general billing data stored in the memory data model 110, and convert the read general billing data into billing data under a data structure adapted to the billing platform itself, i.e., local billing data, for the billing platform to perform subsequent processing operations.

[0042] In addition, to enable data transmission between various billing platforms, a data transmission unit 130 is provided within the billing platform. The data transmission unit 130 is used to read general billing data to be transmitted from the memory data model 110 when communication with other billing platforms is required, and to send the general billing data to the data transmission units of other billing platforms; it also receives general billing data sent by the data transmission units of other billing platforms and stores the received general billing data into the memory data model 110 for use by the billing platforms.

[0043] The platform provided in this invention standardizes data communication between billing platforms by applying a memory data model under a general data structure, thereby meeting cross-platform compatibility requirements and solving the data consensus problem. The application of data access units based on a general data structure reduces the cost of data access between different applications and different coding languages. The application of data transmission units based on a general data structure enables direct data transmission under the general data structure, ensuring low overhead for sending and receiving memory data under different hardware architectures and programming languages.

[0044] Based on the above embodiments, Figure 2 This is a schematic diagram of the general data structure provided by the present invention, such as... Figure 2 As shown, the general data structure includes several consecutive data fields 210, and boundary fields 220 set at both ends of all data fields. A data field 210 consists of a data item description 211 and a data content 212.

[0045] Specifically, considering that billing data is typically a long chain structure composed of tags and values, this storage structure is relatively simple, and the types of data content stored internally are limited, mainly long integers and character values. The general data structure provided in this embodiment of the invention is constructed by combining the data content types stored in the billing data itself.

[0046] Since the billing data contains data of multiple data content types, it can be divided based on content type, resulting in multiple data fields 210. Each data field 210 contains a data item description 211 and a data content 212, where the data content 212 reflects the specific data content, and the data item description 211 represents the specific type of the data content 212. Boundary fields 220 set at both ends of the general data structure are used to distinguish multiple data packets.

[0047] Furthermore, the most frequently used billing data in the current billing system is the Call Detail Record (CDR). Referring to the storage structure and data content of the CDR, the description of each data item in the general data structure of the CDR can include memory offset, data type, and data length.

[0048] The general data structure provided in this invention fully incorporates the characteristics of billing data itself. Therefore, data structure conversion does not require complex or heavy-load calculations; it only requires direct memory structure mapping. This general data structure can be implemented in different system architectures and programming language environments, and its memory storage structure is not affected by hardware, language, or other factors.

[0049] Based on any of the above embodiments, the data access unit includes a data extractor and a data conversion engine;

[0050] The data extractor is used to locate the target general billing data to be read in the memory data model and extract the target general billing data;

[0051] The data conversion engine is used to convert the data structure of the target general billing data into a data structure adapted to the billing platform.

[0052] Specifically, the data access unit can be used to perform read and write functions. When performing the read function, the data access unit can be further divided into two parts: a data extractor and a data conversion engine.

[0053] The data extractor is used to locate the general billing data to be read in the memory data model, i.e., the target general billing data, and read the target general billing data from the memory data model, and then pass the read target general billing data into the data transformation engine.

[0054] The data transformation engine is used to transform the data structure of the target general billing data input by the data extractor, converting the general data structure of the target general billing data into a data structure that is compatible with the billing platform, so that the billing platform can process the data.

[0055] Here, when performing data structure conversion, the data conversion engine only needs to perform a simple direct mapping of memory data in combination with general data structures, which greatly reduces the processor's computing power consumption compared to the complex calculation process of deserialization in traditional solutions.

[0056] Furthermore, the data structure conversion engine based on the above-mentioned general data structure performs data structure conversion, and its conversion ratio is no more than 15% even in hardware environments with the greatest architectural differences in the billing CDR scenario, which greatly reduces the amount of computation for data structure conversion.

[0057] Based on any of the above embodiments, the data access unit includes a data encoder;

[0058] The data encoder is used to convert the data structure of the local billing data to be written into the general data structure and write it into the memory data model.

[0059] Specifically, the data access unit can be used to perform read and write functions. When performing the write function, the data access unit can be implemented through a data encoder.

[0060] The data encoder is used to convert local billing data under a data structure adapted to the billing platform into general billing data under a general data result, thereby achieving data consensus. Here, just like data structure conversion, the data encoder only needs to perform a simple direct mapping of memory data in conjunction with the general data structure, greatly reducing the computational load of data structure conversion.

[0061] Based on any of the above embodiments, the billing platform further includes a data access API, which is used to call the data storage unit.

[0062] Specifically, considering that the billing platform uses a generic data structure that differs from the native data storage strategy of the system and coding language used by the billing platform to store billing data, the billing platform cannot directly access the specific billing data and content in the application. Therefore, a data access API (Application Programming Interface) is set up in the billing platform to enable access to the billing data.

[0063] Applications can access the new consensus memory data through the API, just like a built-in array, and perform corresponding query and modification operations on the data. This achieves minimal invasiveness in modifying the application.

[0064] Here, the Data Access API refers to the modified data access interface for the corresponding coding languages ​​and applications of various billing platforms. Relying on data storage devices, the Data Access API provides billing platforms with universal API integration capabilities. By calling the data storage unit, the Data Access API can provide customized data billing CDR record usage interfaces based on different programming languages.

[0065] The application of data access APIs enables the billing platform to access the in-memory data model under a general data structure as if it were a built-in array, and to perform corresponding query and modification operations on the general billing data therein. This achieves fast read and write access to in-memory data that meets consensus requirements, and minimizes the invasiveness of modifying the application.

[0066] Based on any of the above embodiments, the billing platform further includes a data transmission API, which is used to call the data transmission unit.

[0067] Specifically, for data transmission between billing platforms, the data transmission unit can be called through the data transmission API. The data transmission process does not require serialization and deserialization, which greatly reduces data transmission overhead.

[0068] The application of the data transmission API has enabled the transformation of network communication components for the billing platform, achieving low-consumption sending and receiving of memory data under different hardware architectures and programming languages.

[0069] Based on any of the above embodiments Figure 3 This is a schematic diagram of the billing system provided by the present invention, as shown below. Figure 3 As shown, the system includes multiple billing platforms 100.

[0070] When communicating, each billing platform 100 reads and transmits billing data under the general data structure from the corresponding memory data model, so that each billing platform can directly transmit general billing data without the need for a packing and unpacking conversion process during communication.

[0071] The billing system provided in this embodiment of the invention achieves standardized data transmission across architectures through the application of a general data structure, solves the problem of data consensus, reduces the cost of data access between different applications and different coding languages, and ensures low overhead for sending and receiving memory data under different hardware architectures and programming languages.

[0072] Based on any of the above embodiments Figure 4 This is a schematic diagram of the data transmission process provided by the present invention, as shown below. Figure 4 As shown, any two of the billing platforms can transmit the general billing data by calling the data transmission unit based on their local data transmission API.

[0073] Specifically, Figure 4 Each billing platform is equipped with API 140, which specifically includes a data access API and a data transmission API. The data access API is used to call the data access unit 120 to realize memory data access within the billing platform, and the data transmission API is used to call the data transmission unit 130 to realize the transmission of general billing data between billing platforms.

[0074] Data transmission under a common data structure between billing platforms can be directly executed through the data transmission unit 130 in the billing platform. A standardized data model across architectures, through its design, enables consensus on memory data structure for billing call usage records (CDRs) across different software codes and system architectures. The data access unit 120 enables efficient access to consensus memory data through application data read / write operations with minimal computational cost. The data access API component supports application data access with low code invasiveness. The data transmission API component enables direct transmission of consensus memory data; the receiver can directly write data to memory via the data transmission API, omitting the serialization process and improving transmission efficiency.

[0075] The billing platform and billing system comprising multiple billing platforms provided in this invention omit most of the data packaging and unpacking conversion processes, saving nearly 70% of CPU consumption during the entire network communication process, freeing it up for business processing and improving resource utilization efficiency; it also shortens communication latency, a major bottleneck for distributed system performance improvement, and by saving data encoding and decoding time, network communication speed is increased by 12%, with the optimization effect being more significant under high pressure; and it improves billing processing efficiency, shortening the overall billing time and improving efficiency by 9% during the frequent network communication billing process, achieving the effect of cost reduction and efficiency improvement.

[0076] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. Those skilled in the art can understand and implement this without any creative effort.

[0077] Through the above description of the embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus necessary general-purpose hardware platforms, and of course, it can also be implemented by hardware. Based on this understanding, the above technical solutions, in essence or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute the methods described in the various embodiments or some parts of the embodiments.

[0078] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, and not to limit them; although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

1. A billing platform, characterized in that, It includes a memory data model, and a data access unit and a data transmission unit respectively connected to the memory data model; The memory data model is used to store general billing data for the corresponding billing platform; The data access unit is used to convert local billing data into general billing data and store it in the memory data model, and to read general billing data from the memory data model and convert it into local billing data. The data transmission unit is used to read general billing data from the memory data model and send it, and to store the received general billing data into the memory data model; The local billing data is billing data under a data structure adapted to the billing platform, and the general billing data is billing data under a general data structure. The general data structure includes several consecutive data fields, as well as boundary fields set at both ends of all data fields. Each data field consists of a data item description and a data content. The data item description in each data field includes memory offset, data type and data length. The data access unit includes a data extractor, a data conversion engine, and a data encoder; The data extractor is used to locate the target general billing data to be read in the memory data model and extract the target general billing data; The data conversion engine is used to convert the data structure of the target general billing data into a data structure adapted to the billing platform. When performing data structure conversion, it only combines the general data structure to perform direct mapping of memory data. The data encoder is used to convert the data structure of the local billing data to be written into the general data structure and write it into the memory data model. When performing data structure conversion, the memory data is directly mapped only in combination with the general data structure.

2. The billing platform according to claim 1, characterized in that, It also includes a data access API, which is used to invoke the data access unit.

3. The billing platform according to claim 1, characterized in that, It also includes a data transmission API, which is used to invoke the data transmission unit.

4. The billing platform according to claim 1, characterized in that, The billing data includes detailed call records.

5. A billing system, characterized in that, Includes multiple billing platforms as described in any one of claims 1 to 4.

6. The billing system according to claim 5, characterized in that, Any two of the billing platforms can use their local data transmission API to call the data transmission unit to transmit the general billing data.