Glossary
Access token
See Token.
Activity Monitor
A process that monitors a Neon Compute for activity. During periods of inactivity, the Activity Monitor gracefully places the Compute into an idle state to save energy and resources. The Activity Monitor closes idle connections after 5 minutes of complete inactivity. When a connection is made to an idle Compute, the Activity Monitor reactivates the Compute.
API
See Neon API.
API Key
A unique identifier used to authenticate a user or a calling program to an API. An API key is required to authenticate to the Neon API. For more information, see Using API keys.
Backpressure
A mechanism that manages the lag between the Pageserver and compute node or the Pageserver and Write-Ahead Log (WAL) service. If the WAL service runs ahead of the Pageserver, the time to serve page requests increases, which could result in increased query times or timeout errors. The backpressure mechanism manages lag using a stop-and-wait backend throttling strategy.
Availability checker
A periodic load generated by the Control Plane to determine if a compute can start and read and write data. The availability checker queries a system database without accessing user data.
Branch
A copy-on-write clone of a Neon project's primary branch or previously created child branch. A branch can be created from the current or past state of the parent branch. A branch created from the current state of the parent branch includes the databases and roles that existed in the parent branch at the time of branch creation. A branch created from a past state of the parent branch includes the databases and roles that existed in the past state. The data in a branch can be modified independently from its originating data. See Branching. Each branch has a dedicated compute endpoint, which is the compute instance associated with the branch. Connecting to a database in a branch requires connecting via the branch's compute endpoint. For more information, see Connect to a branch.
CI/CD
Continuous integration and continuous delivery or continuous deployment.
Compute
A service that provides virtualized computing resources (CPU, memory, and storage) for running applications. A Neon compute instance (also referred to as a compute endpoint) runs PostgreSQL. The amount of compute resources available to a Neon project is currently subject to the limits defined by the Technical Preview Free Tier. A Neon compute instance is stateless and is automatically activated or suspended based on user activity.
Compute endpoint
The Neon compute instance associated with a branch. Neon creates a single read-write compute endpoint for the project's primary branch. You can choose whether or not to create a compute endpoint when creating child branches. The compute endpoint hostname is required to connect to a Neon database from a client or application. A compute endpoint hostname can be found in the Connection Details widget on the Neon Dashboard or by selecting the branch on the Branches page in the Neon Console. A compute endpoint hostname starts with an ep-
prefix, as in this example: ep-polished-water-579720.us-east-2.aws.neon.tech
. A compute endpoint hostname includes an endpoint_id
(ep-polished-water-579720
), a region slug (us-east-2
), the cloud platform (aws
), and Neon domain (neon.tech
). For information about connecting to Neon, see Connect from any application. For more information about compute endpoints, see Manage compute endpoints.
Connection pooling
A method of creating a pool of connections and caching those connections for reuse. Neon supports PgBouncer
in transaction mode
for connection pooling. For more information, see Connection pooling.
Connection string
A string containing details for connecting to a Neon project branch. The details include a user name (role), compute endpoint hostname, and database name; for example:
postgres://casey@ep-polished-water-579720.us-east-2.aws.neon.tech/neondb
The compute endpoint hostname includes an endpoint_id
(ep-polished-water-579720
), a region slug (us-east-2
), the cloud platform (aws
), and Neon domain (neon.tech
).
The connection string for a Neon is provided on the Dashboard in the Neon Console, under Connection Details. The connection string that is displayed immediately after creating a project also includes the user’s password, temporarily. For security reasons, the password is removed from the connection string after navigating away from the Neon Console or refreshing the browser. If you misplace your password, your only option is to reset it.
For information about connecting to Neon, see Connect from any application.
Console
See Neon Console.
Control Plane
A part of the Neon architecture that manages cloud storage and compute resources.
Copy-on-write
A technique used to efficiently copy data. Neon uses the copy-on-write technique to efficiently copy data when creating a branch.
Database
A named collection of database objects. A Neon project has a default database named neondb
which resides in the default public
schema. A Neon project can contain multiple databases. Users cannot manipulate system databases, such as postgres
, template0
, or template1
.
Free Tier
A Neon service tier for which there are no usage charges. For information about Neon’s Free Tier and associated limits, see Technical Preview Free Tier.
LSN
Log Sequence Number. A byte offset to a location in the WAL stream.
Neon
A fully managed serverless PostgreSQL. Neon separates storage and compute and offers modern developer features such as branching and bottomless storage. For more information, see What is Neon?.
Neon API
The Neon RESTful Application Programming Interface. Any operation performed in the Neon Console can also be performed using the Neon API.
Neon Console
A browser-based graphical interface for managing Neon projects and resources.
Neon user
The user account that registers and authenticates with Neon using a GitHub or Google account. Once authenticated, a Neon user account can create and manage projects, branches, users, databases, and other project resources.
Non-primary branch
A branch created from a primary branch or another branch in your Neon project.
Page
An 8KB unit of data, which is the smallest unit that PostgreSQL uses for storing relations and indexes on disk. In Neon, a page is also the smallest unit of data that resides on a Pageserver. For information about PostgreSQL page format, see Database Page Layout, in the PostgreSQL Documentation.
Pageserver
A Neon architecture component that reads WAL records from Safekeepers to identify modified pages. The Pageserver accumulates and indexes incoming WAL records in memory and writes them to disk in batches. Each batch is written to an immutable file that is never modified after creation. Using these files, the Pageserver can quickly reconstruct any version of a page dating back to the user-defined retention period.
The Pageserver uploads immutable files to cloud storage, which is the final, highly durable destination for data. Once a file is successfully uploaded to cloud storage, the corresponding WAL records can be removed from the Safekeepers.
Passwordless authentication
The ability to authenticate without providing a password. Neon’s Passwordless auth feature supports passwordless authentication.
PostgreSQL role
Two PostgreSQL roles (database users) are created with each Neon project. The first is named for the registered Neon account and can be used to access the Neon project from a client. This roles’s credentials can be managed and used for password-based psql
authentication. The second role is the web-access
system role, which is used by the SQL Editor and Neon’s Passwordless auth feature. The web-access
role is system managed. It cannot be modified, removed, or used in other authentication scenarios.
Additional PostgreSQL roles can be created in the Neon Console.
In PostgreSQL, a role with the LOGIN
attribute is considered the same as a database user. For additional information, refer to Database roles and Role Attributes, in the PostgreSQL documentation.
Project
A collection of branches, databases, roles, and other project resources and settings. A project contains a compute with a PostgreSQL server as well as storage for the project data.
Proxy
A Neon component which functions as a multitenant service that accepts and handles connections from clients that use the PostgreSQL protocol.
Passwordless auth
A Neon feature that allows you to connect to a Neon project with a single psql
command. See Query with psql.
Region
The geographic location where Neon project resource are located. Neon supports creating projects in several Amazon Web Services (AWS) regions. For information about regions supported by Neon, see Regions.
Primary branch
Each Neon project is created with a primary branch called main
. This is your project's root branch. You can rename a primary branch, but you cannot delete it. Each branch, including the primary branch, has a dedicated compute endpoint. Connecting to a branch requires connecting to the branch's compute endpoint. For more information, see Connect to a branch.
Safekeeper
A Neon architecture component responsible for the durability of database changes. PostgreSQL streams WAL records to Safekeepers. A quorum algorithm based on Paxos ensures that when a transaction is committed, it is stored on a majority of Safekeepers and can be recovered if a node is lost. Safekeepers are deployed in different availability zones to ensure high availability and durability.
Serverless
A cloud-based development model that enables developing and running applications without having to manage servers.
SNI
Server Name Indication. A TLS protocol extension that allows a client or browser to indicate which hostname it wants to connect to at the beginning of a TLS handshake.
SQL Editor
A feature of the Neon Console that enables running queries on a Neon project database. The SQL Editor also enables saving queries, viewing query history, and analyzing or explaining queries.
Storage
Where data is recorded and stored. Neon storage consists of Pageserver which stores hot data and a cloud object store such as Amazon S3 that stores cold data for cost optimization and durability.
Technical Preview
A preview of Neon during which users are able to try Neon's Free Tier. For more information, see Technical Preview Free Tier.
Token
An encrypted access token that enables you to authenticate with Neon using the Neon API. An access token is generated when creating a Neon API key. For more information, see Using API keys.
User
See Neon user and PostgreSQL role.
WAL
Write-Ahead Logging (WAL). A standard method for ensuring data integrity. Neon relies on WAL to separate storage and compute.
WAL slice
Write-ahead logs in a specific LSN range.
WAL stream
The stream of data that is written to the Write-Ahead Log (WAL) during transactional processing.