cloudparts
19 workloads

Good for what?

Products in one concept rarely compete on everything. Each workload here says what it asks of a system and lists the technologies built to handle it, with the reason. Pick one, then compare the candidates side by side.

Messaging

Databases

Full-text search with relevance ranking7Finding the documents that best match a few words, with stemming and typo tolerance, and returning the best ones first.Heavy write throughput9Taking a steady flood of inserts and updates, such as events, metrics or sensor readings, without falling behind or slowing reads to a crawl.High-cardinality time series17A steady flood of timestamped points from many sources, each tagged with labels, that you query by time range and aggregate.Inside the application process15A database that is a library linked into the program, with no server to run, so a query is a function call instead of a network round trip.Many-hop relationship queries5Following chains of relationships several steps deep, such as friends of friends, fraud rings, dependency trees or routes, at interactive speed.Nested documents that keep changing4Storing records as nested JSON-like documents whose fields differ between records and change as the product changes, and still querying and indexing them.Offline-first sync to devices2Keeping a copy of the data on each phone, browser or laptop, letting people read and write it with no connection, and merging the changes when they reconnect.Scale to zero, pay per request14Costing nothing for compute while idle and growing with traffic on its own, for side projects, preview environments, per-tenant databases and spiky apps.Serializable transactions across keys6Changing several rows or keys, possibly on different machines, as one step that behaves as if no other transaction ran at the same time.Similarity search over embeddings11Finding the stored vectors closest to a query vector, usually embeddings of text or images, quickly enough to serve an application.SQL past one server7Keeping tables, joins and transactions when the data or the write load no longer fits on one primary server.Sub-millisecond lookups6Answering reads and writes by key in well under a millisecond, for sessions, rate limits, leaderboards and caches in front of slower stores.Versioned data with branches4Branching a database the way you branch code: a private copy for a pull request, a test run or an experiment, made in seconds, with history you can go back to.Writes in several regions at once7Accepting writes close to users in more than one region, and staying up when a whole region goes down.

Analytics