S3 & URL

View Parquet on S3 without downloading the whole file first

Checking one Parquet file in a bucket should not require aws s3 cp, a notebook, or an Athena query. viewparquet points DuckDB-WASM straight at the object: paste a public HTTPS or presigned URL, an s3:// path, or connect a private bucket with access keys.

For a Parquet endpoint that supports HTTP range requests, DuckDB can request portions of the object instead of downloading the entire file up front. Actual transfer depends on the query, Parquet layout, and host behavior. Requests go from your browser to the object store; private credentials remain in the current browser session and are not persisted. AWS S3 and compatible endpoints such as R2, GCS with HMAC interoperability, and MinIO require the appropriate endpoint, credentials, permissions, and CORS configuration.

Open remote Parquet

Query a Parquet file on S3

  1. Click "Open from S3 / URL"

    On the home page or inside the viewer. Public HTTPS links need no authorization; presigned URLs already contain temporary authorization, so you do not enter separate access keys.

  2. Point at the object

    Paste the URL or s3:// path, or connect a private bucket with access keys or temporary STS tokens. Keys are held only for the current browser session and are not saved with recent sources.

  3. Query and export

    Run DuckDB SQL against the remote table. When range reads are supported, DuckDB requests portions based on the query and file layout; exports are generated in your browser.

Common questions

Can I view a Parquet file on S3 without downloading the whole file?

Yes, without downloading the whole file first when the endpoint supports HTTP range requests. DuckDB can request the Parquet metadata and relevant portions of the object, but the bytes transferred vary with the file layout, query, and server behavior.

How do I open a private S3 bucket safely in a browser viewer?

In viewparquet you connect with access keys or temporary STS tokens held in the current browser session and not persisted with the recent-source record. Requests go directly from the browser to S3; a presigned URL is an alternative that does not require entering keys in the viewer.

Which storage providers work besides AWS S3?

viewparquet supports configurable S3-compatible endpoints, including Cloudflare R2, Google Cloud Storage through HMAC interoperability, and MinIO, plus plain HTTPS and presigned URLs. Success depends on the provider endpoint, credentials, object permissions, CORS, and range-request support.

Why does my bucket file fail to load in the browser?

The most common cause is CORS: browsers require the bucket to allow the needed cross-origin GET or HEAD requests and headers. Configure the bucket CORS policy, then also check the endpoint, range support, expired presigned URLs, object permissions, region, and credential scope.

Do I still get privacy when reading from S3?

The data request goes from the object store to your browser and SQL runs in DuckDB-WASM. viewparquet analytics receives only aggregate categories and outcomes — never the remote URL, bucket path, credentials, SQL text, cell values, or exported contents.

Continue with a related task

Try it on your own file

Drop a Parquet, GeoParquet, CSV, or JSON file into viewparquet: browse rows, run DuckDB SQL, and export results in-browser without uploading the dataset to viewparquet. Optional AI sends messages and applicable context directly to the provider you choose; review Settings → AI before use.