Binary XML Client Pre-encoding for Repository Load Reduction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing mechanisms for loading binary XML into XML repositories face challenges such as resource contention, inefficient use of CPU resources, and high network bandwidth consumption, particularly when dealing with self-contained and context-based encoded XML formats.
Innovation Solution
A system that encodes XML data at the client application and transfers it directly to the XML repository, utilizing a two-phase mapping process with callbacks to manage metadata and minimize resource locking, allowing for parallel loading and reducing the burden on the repository.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Volume of stationary object
If XML data is stored in binary format to reduce space, then storage efficiency is improved, but processing overhead increases due to conversion requirements
Solution Approach 1:
The system pre-encodes XML data into binary format at the client application before transmission, eliminating the need for conversion at the repository. This preliminary encoding action resolves the contradiction by maintaining compact binary storage while avoiding the processing overhead that would occur during data insertion or retrieval operations.
Solution Approach 2:
The client application performs the encoding service itself rather than relying on the repository to convert textual XML to binary format. This self-service approach transfers the processing burden from the repository to the client, allowing the repository to store binary data directly without conversion overhead.
2Volume of stationary object
If the XML repository encodes incoming XML data, then storage efficiency is improved, but CPU resources are consumed by the encoding process
Solution Approach 1:
The encoding function is extracted from the XML repository and relocated to the client application. The repository only receives pre-encoded binary XML data, eliminating the CPU-intensive encoding process from the repository's workload while maintaining the storage efficiency benefits of binary format.
Solution Approach 2:
The client application acts as an intermediary that transforms textual XML into binary format before data enters the repository. This intermediary processing step prevents the repository from consuming CPU resources on encoding while ensuring data is stored in space-efficient binary format.
3Quantity of substance
If network bandwidth is used to transmit textual XML, then data can be transferred, but network bandwidth consumption is high
Solution Approach 1:
The system changes the representation parameter of XML data from textual format to binary format before transmission. This parameter change reduces the size of data transmitted over the network while maintaining complete data integrity, thereby reducing network bandwidth consumption without losing any information.
4Productivity
If multiple processes access the XML repository simultaneously, then concurrency is improved, but resource contention increases
Solution Approach 1:
The encoding operation is extracted from the repository's concurrent processing workload and performed beforehand at the client. This eliminates a significant source of resource contention and locking, allowing multiple processes to access the repository simultaneously with reduced interference.
Data Source
AI summary
Techniques for implementing fast loading of binary XML into a binary XML database repository are provided. A client application reduces the processing burden on the repository by doing pre-processing of the binary XML data prior to loading.


