Consistent Hashing for Tenant Data Distribution in Print Servers
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing print document management systems face high operational costs due to low server utilization when serving small-scale tenants and increased costs when scaling out without considering tenant-specific data distribution, leading to inefficient management and resource allocation.
Innovation Solution
A system management server and method that enables distributed management of print document and printing device information across multiple servers, using consistent hashing to assign databases based on tenant IDs and printer names, allowing for tenant-specific scaling while minimizing the number of servers managing each tenant, thereby reducing operational costs.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If a separate system (server) is assigned to each tenant, then tenant-specific management is improved, but the operating ratio of servers serving small-scale tenants becomes low, leading to high operation cost
Solution Approach 1:
Multiple tenants share a common server infrastructure through distributed data storage using consistent hashing. This merging approach allows small-scale tenants to share server resources while maintaining data isolation, thereby improving server utilization rates and reducing operation costs while still enabling tenant-specific management operations.
Solution Approach 2:
The system design allows servers to serve multiple tenants simultaneously through the consistent hashing distribution mechanism. Each server becomes a universal resource that can handle data for multiple tenants based on hash-based routing, enabling multi-functionality and improving overall resource utilization.
2Loss of energy
If a single system provides a print service to a plurality of tenants, then operation cost is reduced, but the cost of tenant-by-tenant processes (e.g., scaling out) increases
Solution Approach 1:
The system segments tenant data into distinct database partitions that can be independently managed and distributed across servers using consistent hashing. This segmentation enables efficient scaling operations where only specific tenant data partitions need to be moved or replicated when scaling out, rather than moving entire system data, thereby reducing the complexity and cost of scaling operations.
Solution Approach 2:
The consistent hashing mechanism assigns specific tenant data to specific server locations based on hash values, creating a local quality mapping. This allows scaling operations to be performed locally on specific server nodes without affecting other tenants' data, reducing the overall complexity of scaling out while maintaining cost efficiency.
3Loss of energy
If data is distributed without considering tenants, then server utilization is improved, but the cost of tenant-by-tenant processes increases
Solution Approach 1:
The system performs preliminary organization of data by pre-hashing tenant identifiers and establishing consistent data placement rules before scaling operations. This preliminary action creates a predictable data distribution pattern that enables efficient tenant-specific operations later, as the system already has data organized in a way that facilitates both high utilization and low-cost tenant management.
Solution Approach 2:
The consistent hashing function acts as an intermediary mechanism that bridges the conflict between data distribution and tenant-specific management. It translates tenant identifiers into server location assignments in a way that simultaneously achieves good data distribution across servers and maintains clear tenant data boundaries, enabling both high utilization and efficient tenant operations.
Data Source
Figure 1
Figure 2
Figure 3A~3B
AI summary
A system management server in a printing system assigns print document information and printing device information of a tenant to a plurality of servers to perform distributed management. When print document information and printing device information of a given tenant are divided and moved, the plurality of servers are searched for a server for managing the given tenant. When the found server is allowed to store the divided print document information and printing device information, the server is determined to be a destination server of the movement. The divided print document information and printing device information are moved to the determined destination server.