Nextcloud Global Scale: local data and limitless scalability at commodity cost
Scaling file sync and share architectures from thousands to tens of thousands all the way to millions of users is a difficult task. Along the way, the dynamics of cost and performance change. Storage systems, database performance and data locality drain budget in different ways and at different scales. Nextcloud Global Scale is a solution designed to tackle this challenge.
Nextcloud Global Scale offers an architecture that lets you host a 9-figure number of users with minimal latency, locality of data and dramatically reduced costs. Working on independent yet interconnected nodes, it is designed to provide a seamless federated user experience.
Global Scale in use
Nextcloud Global Scale already services large deployments with tens of millions of users since 2017. One example is the Claro Drive offering from leading telecom company América Móvil, which is designed to offer document access to over 20 million users, hosted across 4 data centers in two continents. Moreover, Global Scale is deployed to split data across several research and university networks including RENATER in France and SUNET in Sweden to give users a unified experience while petabytes of research data is handled efficiently and stays within the university where the research was conducted.
Global Scale delivers autonomy with a single point of login that doesn’t require central user management. This lifts a major workload for the decentralized providers – clients stay in control of their users and data independently from the service administration.
For continuously growing setups scalability is not limited: you can double, triple, and indefinitely scale the instance with more servers while delivering the same performance and connectivity in every location.
Limitations of standard architecture
Nextcloud is easily scalable with standard LAMP stack horizontal scaling technologies. However, on installations that service between tens and hundreds of thousands of users, some components eventually become bottlenecks that limit further scalability. In particular, large storage and database systems become exponentially expensive, though systems can scale into the millions of users before bottlenecks become apparent as Deutsche Telekom has shown with MagentaCloud.
Moreover, for compliance or performance reasons, there might be a desire to keep data in specific locations or closer to users.
Scalability limits
When aiming at over a million users, components like load balancers, databases, storage and cache, and datacenter uplink sooner or later won’t be able to serve the required number of users and files.
High storage costs
60 % to 80 % of the cost of running a file sync and share service is caused by the storage subsystem alone, while running one massive storage system is exponentially more expensive than several commodity systems.
Legal and administrative issues
With different regional or department-specific requirements for data locality, security provisions and administration, centralized instance location is not an option.
Poor global performance
Another reason to run a distributed instance is connectivity and bandwidth which may be a problem for a company with distant teams located in far proximity to the datacenter.
Scale more, pay less
Nextcloud Global Scale is aimed at tackling the limitations posed by the standard architecture. There are no central database, storage or caching instances, while the nodes are located independently and don’t require fast connection between one another.
Free from the bottlenecks of the database and the file system, Global Scale delivers ultimately scalable and cost-efficient architecture:
- Housing hundreds of millions of users and their files
- Commodity hardware instead of expensive petabyte servers
- Low maintenance costs
- No significant license costs besides Nextcloud Enterprise
- Local data under local jurisdiction
- Ability to isolate assets between locations within a single instance
- Easy further scalability
How Nextcloud Global Scale works
Achieving these goals is possible through reducing complexity and enabling administrators to fully control data location. Global Scale relies on a lightweight, stable architecture governed by Global Site Selector, Lookup Server and Balancer.
Independent, resilient nodes
Nodes consist of two or more machines and act as independent logical Nextcloud instances. The machines share a cluster file system, a database and a common cache guarantee availability of the node should the downtime occur on one of the machines.
Single login point
Global Site Selector serves as a primary login instance for all global users. It redirects login to the node in the shortest proximity to user’s physical location, and all the following calls are performed within this node.
Automated user migration
Lookup Server keeps track of user’s physical location and stores additional policy data such as storage/quota settings, speed class, reliability class, etc. It also fetches and keeps track of Federated Sharing IDs.
High stability
Balancer operates as a dedicated machine, overseeing the storage usage, CPU and RAM loads, network usage, and uptime of every node. It has the capability to designate nodes as either online or offline and can trigger the relocation of user accounts to alternative nodes.
Download the white paper
DownloadLearn how it works for you
Get in touch with our team to discuss your setup and get a quote
Get in touch