Shard Migration for Cloud Database Ownership

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

As a company grows, its database becomes less efficient due to bottlenecks in data requests, necessitating a solution for managing increasing data storage across multiple servers.

Innovation Solution

Implementing a cloud-based platform that uses horizontally partitioned shard databases, where data is divided based on ownership and migrated online when ownership changes, utilizing a mapping database to track data locations and perform transactions across multiple shard databases.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If all information is stored in a single database, then data storage is simple and manageable, but the database becomes less efficient due to bottlenecks at the server handling all data requests

Engineering Contradiction:
Improvedatabase structureVSAvoiddata request efficiency
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent divides a single database into multiple shard databases distributed across different servers. Each shard database stores a subset of the total data, allowing data requests to be parallelized across multiple servers rather than bottlenecked at a single server, thus improving data request efficiency while maintaining manageable database structures through automated sharding logic

Inventive Principle:
Principle #1Segmentation

2Productivity

If data is divided across multiple shard databases, then data request efficiency improves through parallel processing, but the system complexity increases due to distributed data management

Engineering Contradiction:
Improvedata request efficiencyVSAvoiddistributed database management
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces a data access layer with an object-relational mapping (ORM) component that acts as an intermediary between the application and the distributed shard databases. This ORM automatically handles data routing, shard identification, and coordination across multiple databases, masking the underlying distributed system complexity from the application while maintaining high data request efficiency through parallel processing

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If data ownership changes, then collaboration capabilities improve, but query performance degrades due to data migration across shards

Engineering Contradiction:
Improvecollaboration capabilityVSAvoidquery performance
Core Design Contradiction:
Adaptability or versatilityVSSpeed

Solution Approach 1:

The patent performs data migration proactively when ownership changes occur, using the ORM to automatically identify and transfer data between shard databases before queries are executed. This preliminary action ensures that data is already in the optimal location when collaboration events occur, preventing performance degradation during actual query operations while maintaining flexible ownership changes

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9792320B2System and method for performing shard migration to support functions of a cloud-based service
Publication Date: 2017.10.17 BOX INC
  • US9792320B2 patent drawing
  • US9792320B2 patent drawing
  • US9792320B2 patent drawing

AI summary

Systems and methods of maintaining a horizontally scaled database based on data ownership for a cloud-based platform (e.g., cloud-based collaboration and/or storage platform/service) are disclosed. The system database comprises multiple shard databases, and all files and folders owned by a user are stored on a single shard database. When a user transfers ownership of a file and/or a folder to a second user, the transferred file and/or folder is stored on the shard database that stores all of the data for the second user.