Queries
=======

Read-only queries are supported. You can’t write directly to object
storage. This includes all Postgres built-in functions, statements, and
types. It also includes any of those provided by EDB Postgres Advanced
Server or EDB Postgres Extended Server, depending on the distribution
you choose to deploy.

You can’t insert, update, delete, or otherwise modify data. You can use
``CREATE TABLE`` but only to create a normal Postgres table on the node.
The node is ephemeral and will be destroyed when you terminate it. You
can also use ``CREATE TABLE... USING PGAA`` to create an external table
that references Delta Tables in S3-compatible object storage.

You must load data into the bucket out-of-band, either with your own ETL
scripts or using a third-party ETL provider that supports writing to
Delta Tables or Iceberg tables.

See :ref:`Loading data <Loading data>`  for more details.

One exception is Postgres system tables, such as those used for storing
users, roles, and grants. These tables are stored on the local block
device, which is included in backups and restores. So you can use
``CREATE USER`` , ``CREATE ROLE`` , or ``GRANT USAGE`` , and these
users/roles/grants will survive restarts and restores.
