Database Affinity Data Guide

The measurements describe one request path with three roles:

  • compute-a and compute-b run the same application service.
  • database-primary is a separate PostgreSQL primary used by both compute nodes.
  • client sends requests to either compute node over measured network paths.

The test measures client-to-compute and compute-to-database paths separately. It changes compute placement while keeping the database primary fixed.

The labels identify roles in this experiment. They do not identify device models, operating systems, host names, accounts, or network locations. The published files omit those details. Do not infer a machine identity from a role label or a latency.

Describe the test topology by function and connection: a client, application compute nodes, a database node, and the measured network paths between them. Publish only the role and path details needed to interpret or reproduce the measurements. Do not name or describe the specific devices that filled those roles.

Files

Fields and interpretation

The compute, host, and site fields use role labels. In crossover files, A means Compute A and B means Compute B. The data field names the shared database role. These labels preserve which path produced each measurement.

Latency fields are milliseconds. p50 is the sample median. Raw measurement files contain one row per request. Summary files report aggregates and, where available, bootstrap intervals. The database_ms field measures the database portion of a request. It is not the full request latency.

The topology file with app-west, app-east, and app-central contains an illustrative planning scenario. It is not a description of the three-node measurement setup.

The same database primary serves both compute roles in the measured tests. The comparison changes the application placement and its network path. It does not compare database replicas or database placement.

The public proxy scripts require local endpoint URLs for both compute roles. Pass them as command-line arguments when you run a script. Published artifacts do not include endpoint URLs.

Keep this role-based description in every public artifact. Do not add hardware types or models, operating systems, host names, private addresses, tunnel names, user names, or personal file paths. Keep any local mapping between role labels and devices outside the published files.