Skip to content
Console
Menu

Queues

Workflows

Getting Started

Authentication

KV Store

Regions

A region is a string you set on a resource; one location answers today.

A region says where a resource's data lives. You set it on the resource itself, so two resources in the same project can live in different places.

#Where placement is declared

Two surfaces carry placement:

  • The resource's own spec, for anything you create one at a time: a database's region, a service's regions, a bucket's replicated regions, a key's regions.
  • The app manifest's placement intent, for everything an app deploys at once: locationIds, residency, jurisdiction, latencyClass and failureDomain.

A location id is a string that starts with loc_. A service that names no region of its own is served in the home location of its project.

Inside a region, resources are served by a cell: one isolated serving unit. A cell has a four-character code that never changes, for example fs01. It appears in resource ids (db_fs01…) and in the cell, cells and home_cell fields. Placement chooses the cell; a release may name specific cells.

#What is live today

One location answers today: Falkenstein, Germany, whose region slug is fsn1. A resource that names no particular region is served there. More locations are added as the platform grows, and the placement fields above are the ones that will name them.

Region is data, not a switch

The placement fields are carried as plain strings. Treat the value you set as data about your resource, keep it in your configuration, and read the location's own name back from the resource rather than assuming it.