Skip to content

Cost, performance, and capacity: ratios before prices

The architecture and repository review established what must remain correct. Now ask whether the design can meet its workload and what one business outcome costs. Work through unit economics, batching, CQRS, physical capacity, compute, and sensitivities before consulting the complete quantitative model near the end. Each scenario retains its original inputs and dates. WRU/RRU mean write/read request units; CU in the earlier CQRS chapter means modeled cost units, not USD.

Evidence notation: C identifies a claim in the claim register, A a dated AWS source, F a foundational source, and CS a finding in the repository case study. The source index supplies the full source details. These labels are lookup aids, not facts to memorize.

Last validated: 2026-08-22. Region: eu-west-1; currency: USD.

This chapter is a method, not a price sheet. Start with the business denominator, capacity distribution, and correctness/SLO boundary; then recompute from dated price rows. FinOps Unit Economics supplies denominator and allocation discipline, while The Frugal Architect treats cost as a non-functional requirement measured with other constraints (C49,C102,C112,C113; F19,F20).

The SSE files tier-3-differentiators/cost-optimization/{basic,theory,practical}.md are unverified cross-reference prompts only. Their percentages, prices, right-sizing thresholds, and shortcuts are not inputs here.

  1. Preserve correctness and mandatory auditability.
  2. Meet latency, availability, durability, RTO, and RPO objectives.
  3. Remove scans, unnecessary fan-out, tiny unbatched work, over-indexing, retry storms, and excessive logs.
  4. Tune memory, batch, retention, capacity mode, and configuration.
  5. Change substrate only after measured workload evidence.

Correctness and mandatory auditability are never traded away for expected-loss arithmetic. A projection never authorizes a financial command. Replay alone is not repair: reconcile authoritative outcomes and external effects. These boundaries carry forward reliability and recovery (source model 8) and trading authority (source model 9) (C105,C108–C115).

Begin with the outcome in the denominator. The same platform bill can be allocated to accepted orders, fills, market updates, accounts, projection updates, or retained audit years, but those answer different questions. Compare the marginal cost of added work with allocated shared costs and the fully loaded scenario; do not use a smaller numerator to make an unchanged architecture appear cheaper.

The following reader-facing component summary and all 18 unit-cost cells are generated from the same canonical result map validated below.

ComponentUSD/month
lambda_monthly_usd43.908549
ddb_monthly_usd1122.141535
kinesis_monthly_usd1263.9698
s3_monthly_usd59.611731
marginal_platform_usd2489.631616
DenominatorMarginalAllocatedFully loaded
accepted_order0.0000080.000080.000096
execution_fill0.0000070.0000660.00008
million_market_updates0.0672350.6613710.796402
active_account_month0.002490.024490.02949
projection_update0.0000020.0000150.000018
retained_audit_year746.8894857346.8894858846.889485

Accepted orders receive 20%, fills 20%, million market updates 35%, active account-months 5%, projection updates 15%, and retained audit years 5% of the audited numerator. The order denominator includes rejected work in cost; execution retains partial-fill and correction risk; market updates include duplicates, retries, fan-out and replay; accounts require a governed active definition; projections expose write amplification; and audit uses retained business-year cohorts rather than GB-year storage normalization. Illustrative fixed burden is $12,000 engineering + $6,000 on-call + $4,000 compliance = $22,000/month; risk adds $5,000/month. Fixed engineering, on-call, and compliance work remains in the fully loaded numerator.

Allocation percentages are illustrative and sum to 100%. Reconcile rejected orders, inactive accounts, duplicate identities, replay, retained cohorts, corrections, and partial fills. Marginal, allocated, and fully loaded values answer different questions (C113; F19,F20).

Audit storage is cohort-based, not an inverse-only divisor. At 100 GB ingested each month, first-year exposure is 100*sum(1..12)=7,800 GB-month and $179.40 for one retained business-year cohort. Cumulative two-year exposure is 100*sum(1..24)=30,000 GB-month and $690.00, or $345.00/retained-year. At 24-month steady state, twelve billing months expose 100*24*12=28,800 GB-month, $662.40/year, or $331.20/retained-year. Both storage numerator and retained-year denominator move with policy; requests, lock, transition, retrieval, KMS, export, restore and legal review remain named scenarios. The canonical dated case types Object Lock, requests, transitions, retrieval, KMS, export, and legal review individually at $0/year, classified ZERO_PLANNING_INPUTS_REPRICE_BEFORE_DECISION; zero means excluded from this illustration, not free in production, and each input independently reprices the audit numerator and platform units.

Batches 1/10/100 yield 66,096,000 / 6,609,600 / 660,960 invocations. Under the explicit KPL aggregation scenario, 700/7,000/70,000 B batches consume 1 / 1 / 3 priced 25-KiB Kinesis PUT payload units; flush 5 / 50 / 500 ms; expected retry-plus-partial work is 0.03 / 0.30 / 3.00 extra record-attempts per original batch. Conditional on a poison record before a durable partial checkpoint, the maximum coupled batch is 1 / 10 / 100 records; partial batch responses retain the successful prefix but do not make that worst case fractional. Concurrency is 48 / 5 / 1; commits 66,744,000 / 6,674,400 / 667,440. Aggregation saves requests but raises memory, flush latency, poison coupling, replay/redelivery scope, and isolation cost (C73,C76,C113; A96,A98).

Three consumers plus retry/replay produce 41,601,600,000 consumer-records; doubling fan-out produces 83,203,200,000. Fan-out multiplies deserialize, transform, writes, logs, checkpoints, KMS, transfer, and reconciliation. Inference: use batch 10 only while measured tail and redelivery guards hold.

Batching and fan-out showed how added consumers create work. A projection is worthwhile for cost only when the reads it avoids pay for that added work and fixed ownership. This section substitutes dated USD inputs into the earlier symbolic relationship. A latency or isolation benefit can still justify a projection whose complete monthly cost does not break even.

Preserve the CQRS model 7 relationship: R/W = (variable projection/write + fixed/W) / avoided/read. An avoided read is four eventual RRUs. The dated alternative includes named monthly components: $94.392164 transport Lambda requests/compute, $173.599200 projection/index writes, $150.000000 cache/storage, $8.679960 rebuild/replay, $2.679914 reconciliation, $900.000000 engineering, $300.000000 on-call, plus $1,000/month other fixed operations. At 61,560,000 writes, break-even is 75.462912 reads/write.

CaseReads/writeNet/monthInterpretation
Read-heavy50-$887.203238no economic win after complete dated burden
Mixed8-$2,350.607558no economic win
Write-heavy2-$2,559.665318no economic win
Zero avoided benefit0derived NO_ECONOMIC_WIN_ZERO_BENEFIT before divisionundefined threshold; do not build for cost

Half/double volume, half read benefit, and doubled fan-out are independently recomputed in the canonical table. Measured projection p99 improves 120 ms to 25 ms (95 ms), with 2-s freshness. No read/write ratio alone justifies CQRS; command authority and consistency remain upstream (C35,C46,C97,C100,C102,C113; A113; F06,F19,F20).

Kinesis reuses the stream model 5 calculation: ceil(max(peak*bytes/1,000,000,peak/1,000)*1.25/0.80) = 13 shards. Dated provisioned/EFO/PUT prices produce $1,263.969800/month. Standard consumers need 10,500,000 B/s versus 26,000,000 B/s aggregate, but per-shard skew and sink commits still bind. A 15% top key is 1,200 records/s, infeasible on one 1,000-rps key lane. A cheap monthly average never proves a hot key or partition feasible.

Live 5,000 + safety 1,000 leaves 3,000 replay/s at 9,000 commits/s. The explicit 30-hour replay age exceeds 24-hour retention, so the source is chosen first as expired S3 archive, not silently read from Kinesis. Restoring 648M 700-byte records from 3,380 128-MiB archive objects costs $0.185900 restore requests + $0.001352 GET requests + $4.224479 retrieved bytes. Re-ingest costs $10.692000 for 648M Kinesis PUT units, then the selected canonical EFO post-read costs $18.629953 for 1,267.343760 GB across three replay consumers. Effective rate is the minimum of restore source, consumer, stream re-ingest, post-reingest EFO capacity, Kinesis spare, and sink: 3,000 records/s here, so drain is 216,000 s and sink demand is 918 WRU/s. A retained-age probe uses EFO directly ($18.629953) with no S3/re-ingest or second post-reingest read; the 6,000-commit branch has no safe drain. Iterator age, committed rate, throttles, source availability, sink demand, and retention margin govern rollback (C70,C75,C77,C78,C114; A95,A97,A99,A126, retrieved 2026-08-22).

DynamoDB uses model 6's exact accepted-order path: four individually rounded transaction targets—order 1.2 KiB, idempotency 0.7 KiB, outbox 1.6 KiB, and sentinel 0.2 KiB—cost 2*(ceil(1.2)+ceil(0.7)+ceil(1.6)+ceil(0.2)) = 12 WRU; ordinary 0.45/0.35/0.45-KiB GSI entries add 3, totaling 15 WRU/order. ddb_billing_aggregate_wru_s=1800 is only a billing-work diagnostic; it has no feasibility state because those units do not land on one physical partition lane. Typed hot shares produce order/idempotency/outbox/sentinel lanes of 480/160/400/80 WRU/s and the three GSI lanes of 80/60/100 WRU/s. The maximum actual lane is therefore the order table at 480 WRU/s, leaving 520 WRU/s against the conservative 1,000-WRU/s lane target. Only ddb_max_hot_lane_state=FEASIBLE, derived from that physical maximum, authorizes the scenario's capacity conclusion. A 6-KiB item consumes 1 eventual, 2 strong, or 4 transactional RRUs.

The frozen lane descriptor is the single source for lane IDs, size and hot-share inputs, base/GSI groups, billing operations, results, and verifier contracts. In a single Region the 12 base plus 3 GSI units use ordinary WRUs. Adding one replica creates two billed Regions: base writes consume replicated WRUs in both Regions ($1,118.344320/month) and GSI writes consume ordinary WRUs in both Regions ($279.586080/month). This follows AWS's global-table billing rule, not a primary-plus-replica shortcut. The exact dated replicated-write SKU is Y8RETJA3NHS97536; a synthetic unequal-price probe (ordinary WRU = 1, replicated WRU = 2) produces 15 units single-Region and 54 units for two Regions, proving the operation split even though today's two public prices are equal. Replica storage, restore, and other topology costs are typed zero planning scenarios and require repricing before a topology decision. Streams, TTL deletes, backup/export, KMS, and lifecycle paths remain separate. Capacity mode changes billing, not hot-key feasibility (C82,C83,C85,C87,C89,C95,C114,C116; A100,A101,A104,A105,A107,A125,A127, retrieved 2026-08-22).

The store and stream checks established feasibility lane by lane. Apply the same discipline to compute: compare fleets that can serve the same peak and recovery envelope before comparing their prices. A fixed pair of tasks is a price basket until service time, duty cycle, headroom, scaling delay, and tail latency show that it can perform the required work.

The baseline is x86 Lambda, 1 GB, 80 ms, batch 10, 100 active events/s at a 25% duty cycle (25 time-averaged events/s) and measured headroom versus two always-on Fargate tasks, 1 vCPU/2 GB each for 720 h. Baseline price-only totals are $10.134738 Lambda and $71.092800 Fargate; they are not equal. The two-task price basket is not functionally feasible: measured planning service is 80 ms per ten-event batch, or 125 events/s/task, while the 400-rps peak at 1.5 headroom requires five tasks. During a 30-s scale lag, two tasks queue 4,500 events. The minimum feasible five-task fleet costs $177.732000.

The old fixed-five-task price equality is retained only as a counterfactual candidate: 438.422795 time-averaged events/s converts to 1,753.691181 active-period events/s and, preserving the measured 4x peak/active shape, a 7,014.764726-rps peak. That envelope requires 85 tasks after 1.5 headroom, not five. Its capacity-feasible fleet costs $3,021.444000/month while Lambda plug-back is $177.732000/month, a $2,843.712000 gap with zero modeled queue. A stepwise solve that recomputes peak, headroom, HA minimum, required tasks, and fleet price at every rate through 10,000 average events/s reports NO_CAPACITY_FEASIBLE_PRICE_CROSSING; no sustained equality is claimed. Compare arrival shape, idle HA, scaling lag, warm/cold tail, connections/state, downstream pools, patching, failover, deployment, and FTE. Warm p99 180 ms meets a 200-ms target; cold p99 350 ms misses it.

Serverless is not universally cheaper; price parity is not decision parity. Power Tuning is an experiment design, not a guarantee that more memory always lowers duration or cost. Measure duration, cost, p50/p99/cold tail, architecture, and downstream effects (C53,C115; A51,A58,A59,A67,A123,A124, retrieved 2026-08-22).

The exchange matcher remains outside Lambda unless actual scenario requirements and measurements overturn the reviewed trading architecture boundary (source model 9) (C111,C115; F09).

Every cell classifies both sides; one-sided accounting is forbidden.

driverbatchingCQRSKinesis_DynamoDBLambda_sustained_computeunit_economics
eventbridgescenario_bothscenario_bothscenario_bothscenario_bothscenario_both
sqs_snsscenario_bothscenario_bothscenario_bothscenario_bothscenario_both
step_functionsscenario_bothscenario_bothscenario_bothscenario_bothscenario_both
apiscenario_bothscenario_bothscenario_bothscenario_bothscenario_both
storagemodeled_bothmodeled_bothmodeled_bothmodeled_bothmodeled_both
retention_storage_classscenario_bothscenario_bothscenario_bothscenario_bothscenario_both
cache_search_analyticsscenario_bothscenario_bothscenario_bothscenario_bothscenario_both
logsscenario_bothscenario_bothscenario_bothscenario_bothscenario_both
tracesscenario_bothscenario_bothscenario_bothscenario_bothscenario_both
data_transferscenario_bothscenario_bothscenario_bothscenario_bothscenario_both
natscenario_bothscenario_bothscenario_bothscenario_bothscenario_both
kmsscenario_bothscenario_bothscenario_bothscenario_bothscenario_both
backup_exportscenario_bothscenario_bothscenario_bothscenario_bothscenario_both
retries_dlqsscenario_bothscenario_bothscenario_bothscenario_bothscenario_both
replay_reconciliationscenario_bothscenario_bothscenario_bothscenario_bothscenario_both
multi_az_regionscenario_bothscenario_bothscenario_bothscenario_bothscenario_both
support_discounts_taxexcluded_both:risk=invoice_varianceexcluded_both:risk=invoice_varianceexcluded_both:risk=invoice_varianceexcluded_both:risk=invoice_varianceexcluded_both:risk=invoice_variance
engineering_oncallmodeled_bothmodeled_bothmodeled_bothmodeled_bothmodeled_both
expected_correctness_availability_lossscenario_bothscenario_bothscenario_bothscenario_bothscenario_both
Model details · complete
COMPLETE_HEADER|driver|batching|CQRS|Kinesis_DynamoDB|Lambda_sustained_compute|unit_economics
COMPLETE|eventbridge|scenario_both|scenario_both|scenario_both|scenario_both|scenario_both
COMPLETE|sqs_sns|scenario_both|scenario_both|scenario_both|scenario_both|scenario_both
COMPLETE|step_functions|scenario_both|scenario_both|scenario_both|scenario_both|scenario_both
COMPLETE|api|scenario_both|scenario_both|scenario_both|scenario_both|scenario_both
COMPLETE|storage|modeled_both|modeled_both|modeled_both|modeled_both|modeled_both
COMPLETE|retention_storage_class|scenario_both|scenario_both|scenario_both|scenario_both|scenario_both
COMPLETE|cache_search_analytics|scenario_both|scenario_both|scenario_both|scenario_both|scenario_both
COMPLETE|logs|scenario_both|scenario_both|scenario_both|scenario_both|scenario_both
COMPLETE|traces|scenario_both|scenario_both|scenario_both|scenario_both|scenario_both
COMPLETE|data_transfer|scenario_both|scenario_both|scenario_both|scenario_both|scenario_both
COMPLETE|nat|scenario_both|scenario_both|scenario_both|scenario_both|scenario_both
COMPLETE|kms|scenario_both|scenario_both|scenario_both|scenario_both|scenario_both
COMPLETE|backup_export|scenario_both|scenario_both|scenario_both|scenario_both|scenario_both
COMPLETE|retries_dlqs|scenario_both|scenario_both|scenario_both|scenario_both|scenario_both
COMPLETE|replay_reconciliation|scenario_both|scenario_both|scenario_both|scenario_both|scenario_both
COMPLETE|multi_az_region|scenario_both|scenario_both|scenario_both|scenario_both|scenario_both
COMPLETE|support_discounts_tax|excluded_both:risk=invoice_variance|excluded_both:risk=invoice_variance|excluded_both:risk=invoice_variance|excluded_both:risk=invoice_variance|excluded_both:risk=invoice_variance
COMPLETE|engineering_oncall|modeled_both|modeled_both|modeled_both|modeled_both|modeled_both
COMPLETE|expected_correctness_availability_loss|scenario_both|scenario_both|scenario_both|scenario_both|scenario_both

scenario_both is not a free zero: messaging/API/orchestration needs request, transition, payload, retry, and DLQ volumes; retention/storage, cache/search, backup/export, and multi-Region need GB-month, retrieval, standby, RTO/RPO, and drill inputs; logs/traces, transfer/NAT, and KMS need bytes, samples, routes, and calls; replay/reconciliation needs retained reads, sink attempts, validation, and operator hours. excluded_both:risk=invoice_variance leaves invoice tiers, support, discounts, credits, commitments, and tax unresolved on both sides.

BoundaryClaimSourcesRetrieval dateQualificationRuling
correctnessC49F19,F20retrieved_2026-08-22Inference:Expected loss is an overlay and cannot waive correctness or mandatory audit evidence.
projection_authorityC102A125,F19retrieved_2026-08-22Inference:Projection economics never transfer command authority from the source of truth.
capacityC113A99,A125retrieved_2026-08-22Inference:Peak skew and lane headroom govern feasibility independently of average price.
replayC114A99,F20retrieved_2026-08-22Inference:Replay requires retained source data plus authoritative reconciliation of external effects.
serverlessC112A123,A124,F20retrieved_2026-08-22Inference:Price equality is evaluated separately from capacity SLO and operating-model parity.
fixed_costC49F19,F20retrieved_2026-08-22Inference:Engineering on-call compliance and other fixed work stay symmetric and visible.
denominatorC49F19,F20retrieved_2026-08-22Inference:Rejected duplicate replay and retained-cohort work cannot be hidden by denominator selection.
Model details · govern
GOVERN|correctness|C49|F19,F20|retrieved_2026-08-22|Inference:|Expected loss is an overlay and cannot waive correctness or mandatory audit evidence.
GOVERN|projection_authority|C102|A125,F19|retrieved_2026-08-22|Inference:|Projection economics never transfer command authority from the source of truth.
GOVERN|capacity|C113|A99,A125|retrieved_2026-08-22|Inference:|Peak skew and lane headroom govern feasibility independently of average price.
GOVERN|replay|C114|A99,F20|retrieved_2026-08-22|Inference:|Replay requires retained source data plus authoritative reconciliation of external effects.
GOVERN|serverless|C112|A123,A124,F20|retrieved_2026-08-22|Inference:|Price equality is evaluated separately from capacity SLO and operating-model parity.
GOVERN|fixed_cost|C49|F19,F20|retrieved_2026-08-22|Inference:|Engineering on-call compliance and other fixed work stay symmetric and visible.
GOVERN|denominator|C49|F19,F20|retrieved_2026-08-22|Inference:|Rejected duplicate replay and retained-cohort work cannot be hidden by denominator selection.
idcontrolling_ratiobenefittrade_offpoor_fitmeasurementmigration_triggerrollback_guard
batchingrequest savings versus flush and failed-batch workfewer invokes/commitslatency memory blast radiusstrict latency or poison-pronep99 flush redelivery commit ratesavings exceed error budgetrestore prior batch on guard
fan-outuseful consumers versus multiplied workisolated viewsbytes writes replay ownershipduplicate low-value viewsconsumer-records and sink commitsvalue exceeds full workdetach consumer preserve checkpoint
CQRS projectionavoided reads versus variable plus fixedread isolationstaleness rebuild reconciliationhard-current decisionsreads avoided p99 freshness rebuildratio and SLO passserve authority/prior view
Kinesis mode/EFOpeak skew utilization and contentionelastic/isolated pipescommitment/EFO premiumone hot keyper-key rate age commitsthreshold persistsrestore shard/mode plan
DynamoDB capacity/indexingrounded lifecycle units and hot headroomaccess latencyamplification/storagerelational ad-hocbytes units throttlesstable demand/index valueremove index/restore mode
Lambda memoryGB-s versus duration/tailfaster executionhigher GB-s/downstream burstbad samplePower Tuning cost p99 coldmeasured frontierrestore memory
Lambda versus Fargate/EC2duty-cycle break-even plus operationsscale-to-zero/state reusecold/scaling or idle/patchingmatcher without evidenceduty tail connections FTEtotal-cost triggerweighted cutback
logs/tracesdiagnostic value per bytedetection/auditingest storage query costindiscriminate payloadsbytes query yield MTTRwaste cut preserves controlsrestore sampling
retention/storage classretrieval probability and RTO versus GB-monthlower cold storagefee/delay complexityfast evidence retrievalage retrieval legal policyRTO and policy passrestore hot class
multi-Region standbyloss avoided and RTO/RPO versus burdenregional resiliencereplication fencing drillsundefined writer/failbackgame-day RTO/RPO/FTEtested objective justifiesfence secondary
Model details · decision
DECISION_HEADER|id|controlling_ratio|benefit|trade_off|poor_fit|measurement|migration_trigger|rollback_guard
DECISION|batching|request savings versus flush and failed-batch work|fewer invokes/commits|latency memory blast radius|strict latency or poison-prone|p99 flush redelivery commit rate|savings exceed error budget|restore prior batch on guard
DECISION|fan-out|useful consumers versus multiplied work|isolated views|bytes writes replay ownership|duplicate low-value views|consumer-records and sink commits|value exceeds full work|detach consumer preserve checkpoint
DECISION|CQRS projection|avoided reads versus variable plus fixed|read isolation|staleness rebuild reconciliation|hard-current decisions|reads avoided p99 freshness rebuild|ratio and SLO pass|serve authority/prior view
DECISION|Kinesis mode/EFO|peak skew utilization and contention|elastic/isolated pipes|commitment/EFO premium|one hot key|per-key rate age commits|threshold persists|restore shard/mode plan
DECISION|DynamoDB capacity/indexing|rounded lifecycle units and hot headroom|access latency|amplification/storage|relational ad-hoc|bytes units throttles|stable demand/index value|remove index/restore mode
DECISION|Lambda memory|GB-s versus duration/tail|faster execution|higher GB-s/downstream burst|bad sample|Power Tuning cost p99 cold|measured frontier|restore memory
DECISION|Lambda versus Fargate/EC2|duty-cycle break-even plus operations|scale-to-zero/state reuse|cold/scaling or idle/patching|matcher without evidence|duty tail connections FTE|total-cost trigger|weighted cutback
DECISION|logs/traces|diagnostic value per byte|detection/audit|ingest storage query cost|indiscriminate payloads|bytes query yield MTTR|waste cut preserves controls|restore sampling
DECISION|retention/storage class|retrieval probability and RTO versus GB-month|lower cold storage|fee/delay complexity|fast evidence retrieval|age retrieval legal policy|RTO and policy pass|restore hot class
DECISION|multi-Region standby|loss avoided and RTO/RPO versus burden|regional resilience|replication fencing drills|undefined writer/failback|game-day RTO/RPO/FTE|tested objective justifies|fence secondary

Half/double traffic require 7/25 shards and reprice marginal totals to their canonical scenario values; all six marginal, allocated, and fully loaded business-unit metrics are recomputed. Doubled fan-out is 83,203,200,000 consumer-records/month; the 20% replay case is 2,592,000,000 source records. Its retrieval, restore/request, re-ingest, consumer, projection-sink, idempotency, and reconciliation components are separately mutable and fully recomputed. A tenfold 60-s burst asks 48 concurrent order Lambdas and grows the stream queue by 4,300,800 records. The retained branch rereads Kinesis through EFO and creates no producer PUT; the expired branch restores S3, republishes through priced Kinesis PUT, and then charges the selected EFO read before replay consumers and sinks. At the 20% replay sensitivity that EFO read is 5,069.375038 GB / $74.519813. Both price consumer requests/compute, three sink attempt paths, duplicate/idempotency reads, reconciliation, and projection writes, then use the effective minimum rate for sink demand and drain. At baseline, 648M replay records drain in 216,000 s. A 500-WRU/s sink limits effective source rate to 1,633.986928 records/s and drain to 396,576 s; a 1,000-rps consumer limits it to 1,000 records/s and 648,000 s; zero stream spare reports NO_SAFE_DRAIN and INFINITE rather than dividing by zero. Hot-key branches fail while averages look cheap. Exact component shares are derived directly from the canonical numerator and sum to 100%, and fixed work still dominates fully loaded economics. Adding one DynamoDB replica increases marginal cost to its canonical scenario value; its two-Region base and GSI totals are $1,118.344320 and $279.586080. All six marginal, allocated, and fully loaded unit metrics are recomputed for that regional topology. Fan-out work elasticity is 1; shard elasticity is discontinuous.

Inference: falsify batch 10 on tail/redelivery; EFO when standard per-shard measurements fit without isolation value; CQRS below break-even or failed freshness/rebuild; Lambda when the stepwise capacity-priced comparison, cold tail, or operating model fails its measured guard; a capacity plan on hottest-key, age, throttle, or drain breach. Migrate by shadow/canary and bounded rate; roll back before correctness, freshness, queue age, or recovery guards fail.

IDQuestionAnswer notes
Q1Derive Kinesis shards from peak bytes/records, skew and headroom.13 shards; still reject 1,200-rps hot key.
Q2Compare batches 1, 10, 100.Quantify requests chunks flush concurrency redelivery commits.
Q3When does CQRS pay?Full variable plus fixed equation; then authority freshness rebuild.
Q4Why can DynamoDB look cheap but fail?Average cannot prove a physical lane; evaluate each table and index lane, here max 480 WRU/s.
Q5Lambda or sustained worker?Recompute capacity-priced fleets stepwise; here there is no feasible price crossing, then compare tail scaling idle HA connections failover FTE.
Q6Exact prices unavailable: estimate cost per fill.Keep symbols/units, estimate ranges and name missing measurements.
Q7Can replay clear 4.5M?Only positive commit-live-safety; 3,000/s drains 1,500 s.
Q8Optimization order?Correctness/audit, SLO, waste, config, substrate; state rollback.
Model details · question
QUESTION|Q1|Derive Kinesis shards from peak bytes/records, skew and headroom.|13 shards; still reject 1,200-rps hot key.
QUESTION|Q2|Compare batches 1, 10, 100.|Quantify requests chunks flush concurrency redelivery commits.
QUESTION|Q3|When does CQRS pay?|Full variable plus fixed equation; then authority freshness rebuild.
QUESTION|Q4|Why can DynamoDB look cheap but fail?|Average cannot prove a physical lane; evaluate each table and index lane, here max 480 WRU/s.
QUESTION|Q5|Lambda or sustained worker?|Recompute capacity-priced fleets stepwise; here there is no feasible price crossing, then compare tail scaling idle HA connections failover FTE.
QUESTION|Q6|Exact prices unavailable: estimate cost per fill.|Keep symbols/units, estimate ranges and name missing measurements.
QUESTION|Q7|Can replay clear 4.5M?|Only positive commit-live-safety; 3,000/s drains 1,500 s.
QUESTION|Q8|Optimization order?|Correctness/audit, SLO, waste, config, substrate; state rollback.

This is the complete supporting workbook for the explanations above. Keep it available when recomputing a result or changing a scenario: the original inputs, formulas, exact records, and all result rows remain together. State labels such as NO_SAFE_DRAIN and PRICE_ONLY_INFEASIBLE are conclusions of the named input set, not new service guarantees. Return to the worked section when interpreting a particular row.

The following closed block is identical to the research cost model. The verifier checks row order/count, duplicate/missing/reordered rows, decimal recomputation, rendered equality, sensitivity, and current official offer data. Free tier, tax, support, discounts, credits, and commitments are excluded symmetrically. Lambda uses the first x86 GB-second tier; S3 Standard the first 50-TB tier; Kinesis PUT rounds to 25 KiB and DynamoDB writes round each item to 1 KiB before multiplication. Month = 2,592,000 seconds / 720 hours; billing GB = 2^30 B (C49,C78,C82,C95,C113,C116; A44–A46,A75,A99,A100,A123–A127, retrieved 2026-08-22).

Model details · task10 canonical
# official AWS prices retrieved 2026-08-22
META|task10-v1|eu-west-1|USD|2026-08-22|2592000s_720h|1GB=2^30B
PRICE|lambda_request_usd|AWSLambda|B5V2RNHAWGVJBZD3|EU-Request|none|Request|0|Inf|0.0000002000|2026-08-19T22:47:03Z|retrieved_2026-08-22|A123
PRICE|lambda_gb_second_usd|AWSLambda|SGGKTWDV7PGMPPSJ|EU-Lambda-GB-Second|none|Lambda-GB-Second|0|6000000000|0.0000166667|2026-08-19T22:47:03Z|retrieved_2026-08-22|A123
PRICE|fargate_vcpu_hour_usd|AmazonECS|K4EXFQ5YFQCP98EN|EU-Fargate-vCPU-Hours:perCPU|none|hours|0|Inf|0.0404800000|2026-07-07T16:06:51Z|retrieved_2026-08-22|A124
PRICE|fargate_gb_hour_usd|AmazonECS|UP5ETC3QSW2QZGEY|EU-Fargate-GB-Hours|none|hours|0|Inf|0.0044450000|2026-07-07T16:06:51Z|retrieved_2026-08-22|A124
PRICE|ddb_wru_usd|AmazonDynamoDB|F4EZE5SAMS3D49NJ|EU-WriteRequestUnits|PayPerRequestThroughput|WriteRequestUnits|0|Inf|0.0000007050|2026-08-15T03:52:56Z|retrieved_2026-08-22|A125
PRICE|ddb_replicated_wru_usd|AmazonDynamoDB|Y8RETJA3NHS97536|EU-ReplWriteRequestUnits|PayPerRequestThroughput|ReplicatedWriteRequestUnits|0|Inf|0.0000007050|2026-08-15T03:52:56Z|retrieved_2026-08-22|A125
PRICE|ddb_rru_usd|AmazonDynamoDB|3ERQSZWPAMX2JWHN|EU-ReadRequestUnits|PayPerRequestThroughput|ReadRequestUnits|0|Inf|0.0000001415|2026-08-15T03:52:56Z|retrieved_2026-08-22|A125
PRICE|kinesis_shard_hour_usd|AmazonKinesis|C8T9ZXPQRX6FS23J|EU-Storage-ShardHour|shardHourStorage|ShardHour|0|Inf|0.0170000000|2026-08-13T19:39:54Z|retrieved_2026-08-22|A99
PRICE|kinesis_put_payload_unit_usd|AmazonKinesis|XE5NBZYRTSWZZ8J7|EU-PutRequestPayloadUnits|PutRequest|PutRequest|0|Inf|0.0000000165|2026-08-13T19:39:54Z|retrieved_2026-08-22|A99
PRICE|kinesis_efo_consumer_shard_hour_usd|AmazonKinesis|HUJ72XPTKF8QXV6H|EU-EnhancedFanoutHour|ConsumerHour|ConsumerShardHour|0|Inf|0.0170000000|2026-08-13T19:39:54Z|retrieved_2026-08-22|A99
PRICE|kinesis_efo_gb_usd|AmazonKinesis|W6ZVCP635EBGH7N7|EU-ReadBytes|EnhancedFanoutDataRetrieval|GB|0|Inf|0.0147000000|2026-08-13T19:39:54Z|retrieved_2026-08-22|A99
PRICE|s3_standard_gb_month_usd|AmazonS3|4AJHPB29ZPVFADXP|EU-TimedStorage-ByteHrs|none|GB-Mo|0|51200|0.0230000000|2026-08-18T18:11:13Z|retrieved_2026-08-22|A126
PRICE|s3_restore_request_usd|AmazonS3|ETABQUNVVQGWUQN4|EU-Requests-Tier3|RestoreObject|Requests|0|Inf|0.0000550000|2026-08-18T18:11:13Z|retrieved_2026-08-22|A126
PRICE|s3_get_request_usd|AmazonS3|ZCQD4CM637S7D8U5|EU-Requests-Tier2|none|Requests|0|Inf|0.0000004000|2026-08-18T18:11:13Z|retrieved_2026-08-22|A126
PRICE|s3_restore_retrieval_gb_usd|AmazonS3|G6YZ6EAX5498CAQ2|EU-Standard-Retrieval-Bytes|RestoreObject|GB|0|Inf|0.0100000000|2026-08-18T18:11:13Z|retrieved_2026-08-22|A126
SETTING|region|eu-west-1|region
SETTING|currency|USD|currency
SETTING|retrieval_date|2026-08-22|date
SETTING|lambda_architecture|x86_64|architecture
SETTING|kinesis_capacity_mode|provisioned|mode
SETTING|kinesis_read_mode|EFO|mode
SETTING|replay_expired_post_reingest_read_mode|EFO|mode
SETTING|ddb_capacity_mode|on_demand|mode
SETTING|ddb_read_consistency|eventual|setting
SETTING|free_tier_tiering_commitments|excluded_symmetrically|policy
LANE|order|ddb_txn_order_kib|ddb_order_hot_share|base|transactional
LANE|idempotency|ddb_txn_idempotency_kib|ddb_idempotency_hot_share|base|transactional
LANE|outbox|ddb_txn_outbox_kib|ddb_outbox_hot_share|base|transactional
LANE|sentinel|ddb_txn_sentinel_kib|ddb_sentinel_hot_share|base|transactional
LANE|order_account_gsi|ddb_order_account_gsi_kib|ddb_order_account_gsi_hot_share|gsi|ordinary
LANE|order_status_gsi|ddb_order_status_gsi_kib|ddb_order_status_gsi_hot_share|gsi|ordinary
LANE|outbox_ready_gsi|ddb_outbox_ready_gsi_kib|ddb_outbox_ready_gsi_hot_share|gsi|ordinary
INPUT|month_seconds|2592000|s/month
INPUT|month_hours|720|h/month
INPUT|avg_orders_rps|100|requests/s
INPUT|peak_orders_rps|400|requests/s
INPUT|active_duty_cycle|0.25|ratio
INPUT|accept_rate|0.95|accepted/orders
INPUT|fills_per_accepted|1.2|fills/accepted
INPUT|market_updates_rps|5000|records/s
INPUT|peak_market_rps|8000|records/s
INPUT|burst_seconds|60|s
INPUT|payload_bytes|700|B/record
INPUT|billing_chunk_bytes|25600|B/Kinesis-PUT-payload-unit
INPUT|put_payload_chunk_bytes|25600|B/payload-unit
INPUT|fanout_consumers|3|consumers
INPUT|projection_fanout|4|projection-writes/accepted
INPUT|batch_small|1|records/invocation
INPUT|batch_medium|10|records/invocation
INPUT|batch_large|100|records/invocation
INPUT|flush_small_ms|5|ms
INPUT|flush_medium_ms|50|ms
INPUT|flush_large_ms|500|ms
INPUT|retry_rate|0.02|retries/original
INPUT|partial_failure_rate|0.01|failed-records/original
INPUT|replay_ratio|0.05|replay-records/original
INPUT|lambda_memory_gb|1|GB/invocation
INPUT|lambda_duration_s|0.08|s/invocation
INPUT|lambda_headroom|1.5|ratio
INPUT|lambda_tail_target_ms|200|ms
INPUT|lambda_measured_p99_ms|180|ms
INPUT|lambda_cold_p99_ms|350|ms
INPUT|fargate_tasks|2|tasks
INPUT|fargate_vcpu|1|vCPU/task
INPUT|fargate_memory_gb|2|GB/task
INPUT|fargate_worker_service_s|0.08|s/batch
INPUT|fargate_events_per_batch|10|events/batch
INPUT|fargate_capacity_headroom|1.5|ratio
INPUT|fargate_ha_min_tasks|2|tasks
INPUT|fargate_scaling_lag_s|30|s
INPUT|compute_peak_to_active_ratio|4|peak/active
INPUT|compute_crossing_search_max_average_rps|10000|time-averaged-events/s
INPUT|partial_batch_checkpoint_enabled|1|boolean
INPUT|ddb_txn_order_kib|1.2|KiB/item
INPUT|ddb_txn_idempotency_kib|0.7|KiB/item
INPUT|ddb_txn_outbox_kib|1.6|KiB/item
INPUT|ddb_txn_sentinel_kib|0.2|KiB/item
INPUT|ddb_order_account_gsi_kib|0.45|KiB/index-entry
INPUT|ddb_order_status_gsi_kib|0.35|KiB/index-entry
INPUT|ddb_outbox_ready_gsi_kib|0.45|KiB/index-entry
INPUT|ddb_order_hot_share|0.30|ratio
INPUT|ddb_idempotency_hot_share|0.20|ratio
INPUT|ddb_outbox_hot_share|0.25|ratio
INPUT|ddb_sentinel_hot_share|0.10|ratio
INPUT|ddb_order_account_gsi_hot_share|0.20|ratio
INPUT|ddb_order_status_gsi_hot_share|0.15|ratio
INPUT|ddb_outbox_ready_gsi_hot_share|0.25|ratio
INPUT|ddb_transaction_multiplier|2|WRU/ordinary-WRU
INPUT|ddb_hot_share|0.30|ratio
INPUT|ddb_lane_target_wru_s|1000|WRU/s
INPUT|ddb_global_table_replicas|0|added-replica-regions
INPUT|ddb_replica_storage_usd_month|0|USD/month-scenario
INPUT|ddb_replica_restore_usd_month|0|USD/month-scenario
INPUT|ddb_replica_topology_other_usd_month|0|USD/month-scenario
INPUT|kinesis_skew|1.25|hottest/average
INPUT|kinesis_top_key_share|0.15|ratio
INPUT|kinesis_util_target|0.80|ratio
INPUT|kinesis_shard_write_rps|1000|records/s/shard
INPUT|kinesis_shard_write_Bps|1000000|B/s/shard
INPUT|kinesis_shard_read_Bps|2000000|B/s/shard
INPUT|kinesis_recovery_commit_rps|9000|committed-records/s
INPUT|kinesis_zero_spare_commit_rps|6000|committed-records/s
INPUT|kinesis_safety_rps|1000|records/s
INPUT|kinesis_backlog_records|4500000|records
INPUT|kinesis_retention_hours|24|hours
INPUT|replay_age_hours|30|hours
INPUT|replay_sensitivity_ratio|0.20|replay-records/original
INPUT|replay_retrieval_consumers|3|consumers
INPUT|replay_consumer_batch_records|100|records/invocation
INPUT|replay_consumer_memory_gb|1|GB/invocation
INPUT|replay_consumer_duration_s|0.08|s/invocation
INPUT|replay_sink_consumers|3|consumers
INPUT|replay_sink_wru_per_record|1|WRU/written-record
INPUT|replay_sink_write_fraction|0.10|written/replayed-record
INPUT|replay_duplicate_rate|0.02|duplicates/attempt
INPUT|replay_idempotency_rru_per_attempt|1|RRU/attempt
INPUT|replay_reconciliation_rate|0.01|reconciliations/attempt
INPUT|replay_sink_capacity_wru_s|2000|WRU/s
INPUT|replay_retained_source_capacity_rps|4000|source-records/s
INPUT|replay_restore_source_capacity_rps|4000|source-records/s
INPUT|replay_consumer_capacity_rps|4000|source-records/s
INPUT|replay_stream_reingest_capacity_rps|5000|source-records/s
INPUT|replay_expired_post_reingest_read_capacity_rps|4000|source-records/s
INPUT|replay_archive_object_bytes|134217728|B/object
INPUT|audit_monthly_ingest_gb|100|GB/month
INPUT|audit_retention_months|24|months
INPUT|audit_year1_months|12|months
INPUT|audit_year2_months|24|months
INPUT|audit_object_lock_usd_year|0|USD/year-scenario
INPUT|audit_requests_usd_year|0|USD/year-scenario
INPUT|audit_transitions_usd_year|0|USD/year-scenario
INPUT|audit_retrieval_usd_year|0|USD/year-scenario
INPUT|audit_kms_usd_year|0|USD/year-scenario
INPUT|audit_export_usd_year|0|USD/year-scenario
INPUT|audit_legal_review_usd_year|0|USD/year-scenario
INPUT|active_accounts|50000|accounts-month
INPUT|ddb_read_item_kib|6|KiB/item
INPUT|cqrs_rru_avoided_per_read|4|RRU/read
INPUT|cqrs_zero_benefit_rru|0|RRU/read
INPUT|cqrs_projection_writes|4|writes/source-write
INPUT|cqrs_transport_requests_per_write|1|requests/source-write
INPUT|cqrs_cache_storage_usd_month|150|USD/month
INPUT|cqrs_rebuild_ratio|0.05|rebuild-writes/source-write
INPUT|cqrs_reconciliation_rate|0.01|reconciliations/source-write
INPUT|cqrs_engineering_hours|6|hours/month
INPUT|cqrs_oncall_hours|2|hours/month
INPUT|cqrs_hourly_usd|150|USD/hour
INPUT|cqrs_fixed_ops_usd|1000|USD/month
INPUT|cqrs_source_p99_ms|120|ms
INPUT|cqrs_projection_p99_ms|25|ms
INPUT|cqrs_freshness_s|2|s
INPUT|allocation_accepted_order|0.20|ratio
INPUT|allocation_execution_fill|0.20|ratio
INPUT|allocation_million_market_updates|0.35|ratio
INPUT|allocation_active_account_month|0.05|ratio
INPUT|allocation_projection_update|0.15|ratio
INPUT|allocation_retained_audit_year|0.05|ratio
INPUT|engineering_usd|12000|USD/month
INPUT|oncall_usd|6000|USD/month
INPUT|compliance_usd|4000|USD/month
INPUT|expected_loss_usd|5000|USD/month
FORMULA|business_counts|orders=avg_orders_rps*month_seconds*duty; accepted=orders*accept_rate; fills=accepted*fills_per_accepted|events/month
FORMULA|batching|invocations=orders/batch*(1+retry); chunks=ceil(batch*payload/billing_chunk); redelivery=batch*(retry+partial); concurrency=ceil(peak/batch*duration*headroom)|mixed
FORMULA|fanout|consumer_work=market_updates*consumers*(1+retry+replay)|records/month
FORMULA|cqrs_break_even|R/W=(projection_variable+fixed_ops/W)/(rru_avoided*rru_price)|reads/write
FORMULA|kinesis_capacity|shards=ceil(max(peak*payload/Bps_limit,peak/rps_limit)*skew/util_target)|shards
FORMULA|kinesis_recovery|drain=backlog/(commit-live-safety); no_safe_drain when denominator<=0|s
FORMULA|dynamodb_amplification|WRU/order=2*sum(ceil(each transaction target KiB))+sum(ceil(each GSI entry KiB))|WRU/order
FORMULA|compute_break_even|events/s=fargate_monthly*batch/(month_seconds*(1+retry)*(request_price+memory*duration*GBs_price))|events/s
FORMULA|unit_economics|unit_cost=allocated_numerator/business_denominator|USD/business-unit
FORMULA|sensitivity|recompute(base;traffic*0.5;traffic*2;fanout*2;burst*10;replay)|scenario
FORMULA|audit_cohorts|exposure=monthly_ingest*sum(cohort_months); retained_years=months/12; unit=annual_storage/retained_years|GB-month,USD/year
FORMULA|compute_capacity|capacity_per_task=batch/service; tasks=max(HA,ceil(peak*headroom/capacity)); active_crossing=average_crossing/duty|events/s,tasks
FORMULA|cqrs_components|threshold=(transport+projection_index+cache+rebuild+reconciliation+engineering+oncall+other_fixed)/avoided_read|reads/write
FORMULA|scenario_economics|recompute all priced components and six marginal/allocated/fully-loaded units under traffic,fanout,replay,retention,replicas|USD
FORMULA|compute_stepwise_capacity|for each average rate derive active=average/duty, peak=active*peak_ratio, tasks=max(HA,ceil(peak*headroom/task_capacity)), then compare Lambda to fleet|state,USD/month
FORMULA|dynamodb_physical_lanes|each base table and GSI lane=peak*lane_share*rounded_lane_WRU; feasibility=max(actual lane)|WRU/s
FORMULA|replica_billing|single Region=base_WRU+GSI_WRU; with n added Regions all n+1 Regions bill base_rWRU+ordinary_GSI_WRU+typed topology scenarios|USD/month
FORMULA|replay_full_path|select retained EFO or expired S3 restore/re-ingest plus selected post-read mode; effective rate=min(source,post-read,consumer,stream,spare,sink); then price retrieval+consumer+sink+idempotency+reconciliation and drain|USD/month,state
DRIVER|eventbridge|scenario_both|batching|cqrs|capacity
DRIVER|sqs_sns|scenario_both|batching|cqrs|capacity
DRIVER|step_functions|scenario_both|batching|cqrs|capacity
DRIVER|api|scenario_both|batching|cqrs|capacity
DRIVER|storage|modeled_both|batching|cqrs|capacity
DRIVER|retention_storage_class|scenario_both|batching|cqrs|capacity
DRIVER|cache_search_analytics|scenario_both|batching|cqrs|capacity
DRIVER|logs|scenario_both|batching|cqrs|capacity
DRIVER|traces|scenario_both|batching|cqrs|capacity
DRIVER|data_transfer|scenario_both|batching|cqrs|capacity
DRIVER|nat|scenario_both|batching|cqrs|capacity
DRIVER|kms|scenario_both|batching|cqrs|capacity
DRIVER|backup_export|scenario_both|batching|cqrs|capacity
DRIVER|retries_dlqs|scenario_both|batching|cqrs|capacity
DRIVER|replay_reconciliation|scenario_both|batching|cqrs|capacity
DRIVER|multi_az_region|scenario_both|batching|cqrs|capacity
DRIVER|support_discounts_tax|excluded_both:risk=invoice_variance|batching|cqrs|capacity
DRIVER|engineering_oncall|modeled_both|batching|cqrs|capacity
DRIVER|expected_correctness_availability_loss|scenario_both|batching|cqrs|capacity
SEMANTIC|chapter_preamble|chapter|PREAMBLE|closed_section|C49,C102,C112,C113|F19,F20|governed_v1|sha256:cba4691ddd0a5f8c505f912abd6e74e8e92ad9a1d0cc0d944abcf1ceb1cb8ee2
SEMANTIC|chapter_optimization|chapter|Optimization sequence|closed_section|C105,C108,C109,C110,C111,C112,C113,C114,C115|F19,F20|governed_v1|sha256:5df27fc8fa9967350996427e01a73d32711e29e84259785a277df899c130ec92
SEMANTIC|chapter_canonical|chapter|Canonical quantitative model|closed_section|C49,C78,C82,C95,C113,C114,C116|A44,A45,A46,A75,A99,A100,A123,A124,A125,A126,A127,F19,F20|governed_v1|sha256:8f58dbcc483b1919e737cfd56bf9a0c72a2d73da6c2f6f6d1ae8730a7d62e430
SEMANTIC|chapter_units|chapter|Six fintech unit economics|closed_section|C113|A123,A125,A126,F19,F20|governed_v1|sha256:e8806b03a1ee9f755ba30021e667475d67e01833be7d067424f163e0d4a70c11
SEMANTIC|chapter_batching|chapter|Batching and fan-out|closed_section|C73,C76,C113,C114|A96,A98,A99|governed_v1|sha256:7e01449e43e4d6717a1cead2bce8afbfd009355ec470638d6fe5f822da5ee060
SEMANTIC|chapter_cqrs|chapter|CQRS dated break-even|closed_section|C35,C46,C97,C100,C102,C113|A113,F06,F19,F20|governed_v1|sha256:171d71d4deebb924fa714becdd5abdbd6545549dca1d179be33229ab6ce98dc1
SEMANTIC|chapter_capacity|chapter|Kinesis and DynamoDB feasibility|closed_section|C70,C75,C77,C78,C82,C83,C85,C87,C89,C95,C114,C116|A95,A97,A99,A100,A101,A104,A105,A107,A125,A126,A127|governed_v1|sha256:308324dd1d668fac5ac28f2c744e6de0ba14c3c0816b6f326d1a39fc7c4322ff
SEMANTIC|chapter_compute|chapter|Lambda versus sustained compute|closed_section|C53,C111,C115|A51,A58,A59,A67,A123,A124,F09|governed_v1|sha256:e1209232ceaad7d07a40403ccbc3fa93263ae96b8405c87bfa9bbacc1424168b
SEMANTIC|chapter_completeness|chapter|Cost-completeness matrix|closed_section|C113,C114,C115,C116|A99,A123,A124,A125,A126,A127,F19,F20|governed_v1|sha256:7fe8b6d53e48c78f022b44f8507055150d279a16f3c4ba6536377cbe63bb024f
SEMANTIC|chapter_decisions|chapter|Decision table|closed_section|C113,C114,C115,C116|A99,A123,A124,A125,A126,A127,F19,F20|governed_v1|sha256:014719b2690da00561b3ed80403caa462c16e4b3de0b94511f0c05867a5db53c
SEMANTIC|chapter_sensitivity|chapter|Sensitivity and falsification|closed_section|C113,C114,C115,C116|A99,A123,A124,A125,A126,A127,F19,F20|governed_v1|sha256:75da42848f4b0ef5676461becc537c9d5057956bc4aaf57aaa9553b0061833df
SEMANTIC|chapter_questions|chapter|Senior quantitative interview questions|closed_section|C113,C114,C115,C116|A99,A123,A124,A125,A126,A127,F19,F20|governed_v1|sha256:06f4826de85f0686d232faeaf6e37300c4ea11f6ef88080b35055a02634541aa
SEMANTIC|chapter_sources|chapter|Sources|closed_section|C49,C102,C112,C113,C114,C115,C116|A44,A45,A46,A51,A67,A75,A95,A99,A100,A101,A102,A103,A104,A105,A107,A123,A124,A125,A126,A127,F19,F20|governed_v1|sha256:ee256848006c6fee0d9a58d8468c12bcfff8a3f0a8c285ab344c2d239db4ea7a
SEMANTIC|cost_task10|cost|Task 10 dated cross-service cost, performance, and capacity model|closed_section|C49,C113,C114,C115,C116|A99,A123,A124,A125,A126,A127,F19,F20|governed_v1|sha256:ac59c724a9788bb76a02762d63496cc5fce4974be506f2b685e2b8a065c0f789
RESULT|monthly_orders|64800000.0|orders/month
RESULT|monthly_accepted_orders|61560000.0|accepted/month
RESULT|monthly_fills|73872000.0|fills/month
RESULT|monthly_market_updates|12960000000.0|records/month
RESULT|monthly_projection_updates|246240000.0|updates/month
RESULT|batch_small_invocations|66096000.0|invocations/month
RESULT|batch_small_chunks|1.0|chunks/invocation
RESULT|batch_small_flush_ms|5.0|ms
RESULT|batch_small_redelivery_records|0.03|record-attempts/original-batch
RESULT|batch_small_expected_extra_attempts|0.03|record-attempts/original-batch
RESULT|batch_small_conditional_max_coupled_records|1.0|records/poison-batch
RESULT|batch_small_concurrency|48.0|concurrent-invocations
RESULT|batch_small_commits|66744000.0|commits/month
RESULT|batch_medium_invocations|6609600.0|invocations/month
RESULT|batch_medium_chunks|1.0|chunks/invocation
RESULT|batch_medium_flush_ms|50.0|ms
RESULT|batch_medium_redelivery_records|0.3|record-attempts/original-batch
RESULT|batch_medium_expected_extra_attempts|0.3|record-attempts/original-batch
RESULT|batch_medium_conditional_max_coupled_records|10.0|records/poison-batch
RESULT|batch_medium_concurrency|5.0|concurrent-invocations
RESULT|batch_medium_commits|6674400.0|commits/month
RESULT|batch_large_invocations|660960.0|invocations/month
RESULT|batch_large_chunks|3.0|chunks/invocation
RESULT|batch_large_flush_ms|500.0|ms
RESULT|batch_large_redelivery_records|3.0|record-attempts/original-batch
RESULT|batch_large_expected_extra_attempts|3.0|record-attempts/original-batch
RESULT|batch_large_conditional_max_coupled_records|100.0|records/poison-batch
RESULT|batch_large_concurrency|1.0|concurrent-invocations
RESULT|batch_large_commits|667440.0|commits/month
RESULT|fanout_consumer_work_records|41601600000.0|consumer-records/month
RESULT|partial_batch_checkpoint_state|ENABLED_LIMITS_SUCCESSFUL_PREFIX_REPLAY|state
RESULT|lambda_monthly_usd|43.908549|USD/month
RESULT|fargate_monthly_usd|71.0928|USD/month
RESULT|fargate_capacity_per_task_rps|125.0|events/s/task
RESULT|fargate_required_tasks|5.0|tasks
RESULT|fargate_minimum_feasible_monthly_usd|177.732|USD/month
RESULT|fargate_baseline_basket_state|PRICE_ONLY_INFEASIBLE|state
RESULT|compute_break_even_events_rps|438.422795|source-records/s
RESULT|compute_break_even_average_rps|438.422795|time-averaged-events/s
RESULT|compute_break_even_active_rps|1753.691181|active-period-events/s
RESULT|compute_break_even_lambda_usd|177.732|USD/month
RESULT|compute_break_even_plugback_usd|177.732|USD/month
RESULT|compute_crossing_state|NO_CAPACITY_FEASIBLE_PRICE_CROSSING|state
RESULT|compute_candidate_average_rps|438.422795|time-averaged-events/s
RESULT|compute_candidate_active_rps|1753.691181|active-period-events/s
RESULT|compute_candidate_peak_rps|7014.764726|peak-events/s
RESULT|compute_candidate_required_tasks|85.0|tasks
RESULT|compute_candidate_fleet_usd|3021.444|USD/month
RESULT|compute_candidate_lambda_usd|177.732|USD/month
RESULT|compute_candidate_price_gap_usd|2843.712|USD/month
RESULT|compute_candidate_queue_events|0.0|events
RESULT|compute_crossing_search_max_average_rps|10000.0|time-averaged-events/s
RESULT|fargate_scaling_lag_queue_events|4500.0|events
RESULT|lambda_warm_tail_margin_ms|20.0|ms
RESULT|lambda_cold_tail_state|TARGET_MISSED|state
RESULT|ddb_wru_per_order|15.0|WRU/order
RESULT|ddb_base_wru_per_order|12.0|WRU/order
RESULT|ddb_gsi_wru_per_order|3.0|WRU/order
RESULT|ddb_replica_wru_per_order|0.0|WRU/order/replicas
RESULT|ddb_replica_base_rwru_per_order|12.0|WRU/order
RESULT|ddb_replica_gsi_wru_per_order|3.0|WRU/order
RESULT|ddb_replica_base_usd_month|559.17216|USD/month
RESULT|ddb_replica_gsi_usd_month|139.79304|USD/month
RESULT|ddb_replica_exclusions_state|ZERO_PLANNING_INPUTS_REPRICE_BEFORE_TOPOLOGY_DECISION|state
RESULT|ddb_topology_state|SINGLE_REGION_ORDINARY_WRU|state
RESULT|ddb_topology_region_count|1.0|Regions
RESULT|ddb_topology_base_usd|559.17216|USD/month
RESULT|ddb_topology_gsi_usd|139.79304|USD/month
RESULT|ddb_unequal_price_single_region_units|15.0|synthetic-cost-units
RESULT|ddb_unequal_price_two_region_units|54.0|synthetic-cost-units
RESULT|ddb_unequal_price_probe_state|OPERATION_SPLIT_PROVEN|state
RESULT|ddb_monthly_usd|1122.141535|USD/month
RESULT|ddb_billing_aggregate_wru_s|1800.0|WRU/s
RESULT|ddb_max_hot_lane_wru_s|480.0|WRU/s
RESULT|ddb_max_hot_lane_id|order|identifier
RESULT|ddb_max_hot_lane_state|FEASIBLE|state
RESULT|ddb_lane_headroom_wru_s|520.0|WRU/s
RESULT|kinesis_planned_shards|13.0|shards
RESULT|kinesis_put_payload_units|13219200000.0|synthetic-cost-units
RESULT|kinesis_monthly_usd|1263.9698|USD/month
RESULT|s3_monthly_usd|59.611731|USD/month
RESULT|kinesis_hot_key_rps|1200.0|source-records/s
RESULT|kinesis_hot_key_state|INFEASIBLE_SINGLE_KEY|state
RESULT|kinesis_standard_required_Bps|10500000.0|B/s
RESULT|kinesis_standard_capacity_Bps|26000000.0|B/s
RESULT|kinesis_standard_read_state|AGGREGATE_FITS_MEASURE_PER_SHARD|state
RESULT|kinesis_replay_spare_rps|3000.0|source-records/s
RESULT|kinesis_drain_seconds|1500.0|s
RESULT|kinesis_zero_drain_state|NO_SAFE_DRAIN_AT_ZERO_SPARE|state
RESULT|kinesis_retention_margin_hours|-6.0|hours
RESULT|kinesis_replay_retention_state|REPLAY_EXPIRED_RESTORE_REQUIRED|state
RESULT|audit_year1_storage_gb_month|7800.0|GB-month/cumulative-cohort-period
RESULT|audit_year1_storage_usd|179.4|USD/cumulative-cohort-period
RESULT|audit_year1_retained_years|1.0|retained-years
RESULT|audit_two_year_storage_gb_month|30000.0|GB-month/cumulative-cohort-period
RESULT|audit_two_year_storage_usd|690.0|USD/cumulative-cohort-period
RESULT|audit_two_year_retained_years|2.0|retained-years
RESULT|audit_steady_storage_gb_month|28800.0|GB-month/year
RESULT|audit_steady_storage_usd|662.4|USD/year
RESULT|audit_steady_retained_years|2.0|retained-years
RESULT|audit_year1_cost_per_retained_year_usd|179.4|USD/retained-audit-year
RESULT|audit_two_year_cost_per_retained_year_usd|345.0|USD/retained-audit-year
RESULT|audit_steady_cost_per_retained_year_usd|331.2|USD/retained-audit-year
RESULT|audit_object_lock_usd_year|0.0|USD/year-scenario
RESULT|audit_requests_usd_year|0.0|USD/year-scenario
RESULT|audit_transitions_usd_year|0.0|USD/year-scenario
RESULT|audit_retrieval_usd_year|0.0|USD/year-scenario
RESULT|audit_kms_usd_year|0.0|USD/year-scenario
RESULT|audit_export_usd_year|0.0|USD/year-scenario
RESULT|audit_legal_review_usd_year|0.0|USD/year-scenario
RESULT|audit_adjacent_scenario_total_usd_year|0.0|USD/year-scenario
RESULT|audit_adjacent_scenarios_state|ZERO_PLANNING_INPUTS_REPRICE_BEFORE_DECISION|state
RESULT|cqrs_transport_usd_month|94.392164|USD/month
RESULT|cqrs_projection_index_usd_month|173.5992|USD/month
RESULT|cqrs_cache_storage_usd_month|150.0|USD/month
RESULT|cqrs_rebuild_replay_usd_month|8.67996|USD/month
RESULT|cqrs_reconciliation_usd_month|2.679914|USD/month
RESULT|cqrs_engineering_usd_month|900.0|USD/month
RESULT|cqrs_oncall_usd_month|300.0|USD/month
RESULT|cqrs_break_even_reads_per_write|75.462912|reads/write
RESULT|cqrs_read_heavy_net_usd|-887.203238|USD/month
RESULT|cqrs_mixed_net_usd|-2350.607558|USD/month
RESULT|cqrs_write_heavy_net_usd|-2559.665318|USD/month
RESULT|cqrs_zero_benefit_state|NO_ECONOMIC_WIN_ZERO_BENEFIT|state
RESULT|cqrs_half_volume_break_even|142.908388|reads/write
RESULT|cqrs_double_volume_break_even|41.740175|reads/write
RESULT|cqrs_half_benefit_break_even|150.925825|reads/write
RESULT|cqrs_double_fanout_break_even|80.744184|reads/write
RESULT|cqrs_measured_p99_gain_ms|95.0|ms
RESULT|cqrs_measured_freshness_s|2.0|s
RESULT|ddb_eventual_rru|1.0|RRU/read
RESULT|ddb_strong_rru|2.0|RRU/read
RESULT|ddb_transactional_rru|4.0|RRU/read
RESULT|marginal_platform_usd|2489.631616|USD/month
RESULT|allocated_platform_usd|24489.631616|USD/month
RESULT|fully_loaded_risk_adjusted_usd|29489.631616|USD/month
RESULT|allocation_share_sum|1.0|ratio
RESULT|lambda_contribution_percent|1.763656|percent
RESULT|ddb_contribution_percent|45.072593|percent
RESULT|kinesis_contribution_percent|50.76935|percent
RESULT|s3_contribution_percent|2.3944|percent
RESULT|half_traffic_shards|7.0|shards
RESULT|double_traffic_shards|25.0|shards
RESULT|double_fanout_work_records|83203200000.0|consumer-records/month
RESULT|tenfold_burst_lambda_concurrency|48.0|concurrent-invocations
RESULT|tenfold_burst_queue_records|4300800.0|records
RESULT|replay_load_records|2592000000.0|records/month
RESULT|ddb_lane_order_wru_per_order|4.0|WRU/order
RESULT|ddb_lane_order_hot_wru_s|480.0|WRU/s
RESULT|ddb_lane_order_state|FEASIBLE|state
RESULT|ddb_lane_idempotency_wru_per_order|2.0|WRU/order
RESULT|ddb_lane_idempotency_hot_wru_s|160.0|WRU/s
RESULT|ddb_lane_idempotency_state|FEASIBLE|state
RESULT|ddb_lane_outbox_wru_per_order|4.0|WRU/order
RESULT|ddb_lane_outbox_hot_wru_s|400.0|WRU/s
RESULT|ddb_lane_outbox_state|FEASIBLE|state
RESULT|ddb_lane_sentinel_wru_per_order|2.0|WRU/order
RESULT|ddb_lane_sentinel_hot_wru_s|80.0|WRU/s
RESULT|ddb_lane_sentinel_state|FEASIBLE|state
RESULT|ddb_lane_order_account_gsi_wru_per_order|1.0|WRU/order
RESULT|ddb_lane_order_account_gsi_hot_wru_s|80.0|WRU/s
RESULT|ddb_lane_order_account_gsi_state|FEASIBLE|state
RESULT|ddb_lane_order_status_gsi_wru_per_order|1.0|WRU/order
RESULT|ddb_lane_order_status_gsi_hot_wru_s|60.0|WRU/s
RESULT|ddb_lane_order_status_gsi_state|FEASIBLE|state
RESULT|ddb_lane_outbox_ready_gsi_wru_per_order|1.0|WRU/order
RESULT|ddb_lane_outbox_ready_gsi_hot_wru_s|100.0|WRU/s
RESULT|ddb_lane_outbox_ready_gsi_state|FEASIBLE|state
RESULT|replay_efo_retrieval_gb|1267.34376|GB/month
RESULT|replay_efo_retrieval_usd|18.629953|USD/month
RESULT|replay_source_state|EXPIRED_S3_RESTORE_REINGEST|state
RESULT|replay_source_available_rps|4000.0|source-records/s
RESULT|replay_effective_rate_rps|3000.0|source-records/s
RESULT|replay_rate_bottleneck|KINESIS_SPARE|state
RESULT|replay_sink_capacity_source_rps|6535.947712|source-records/s
RESULT|replay_archive_objects|3380.0|objects/month
RESULT|replay_s3_source_gb|422.44792|GB/month
RESULT|replay_s3_restore_request_usd|0.1859|USD/month
RESULT|replay_s3_get_request_usd|0.001352|USD/month
RESULT|replay_s3_retrieval_usd|4.224479|USD/month
RESULT|replay_reingest_put_units|648000000.0|payload-units/month
RESULT|replay_reingest_put_usd|10.692|USD/month
RESULT|replay_post_reingest_read_mode|EFO|state
RESULT|replay_post_reingest_read_capacity_rps|4000.0|source-records/s
RESULT|replay_post_reingest_read_gb|1267.34376|GB/month
RESULT|replay_post_reingest_read_usd|18.629953|USD/month
RESULT|replay_post_reingest_read_capacity_state|CAPACITY_AVAILABLE|state
RESULT|replay_consumer_invocations|19440000.0|invocations/month
RESULT|replay_consumer_compute_usd|29.808052|USD/month
RESULT|replay_sink_attempts|1982880000.0|attempts/month
RESULT|replay_sink_projection_wru|198288000.0|WRU/month
RESULT|replay_sink_projection_usd|139.79304|USD/month
RESULT|replay_idempotency_rru|1982880000.0|RRU/month
RESULT|replay_idempotency_usd|280.57752|USD/month
RESULT|replay_reconciliation_attempts|19828800.0|attempts/month
RESULT|replay_reconciliation_usd|6.771535|USD/month
RESULT|replay_sink_demand_wru_s|918.0|WRU/s
RESULT|replay_sink_capacity_headroom_wru_s|1082.0|WRU/s
RESULT|replay_sink_capacity_state|CAPACITY_FEASIBLE|state
RESULT|replay_drain_seconds|216000.0|s
RESULT|replay_retained_probe_source_state|RETAINED_KINESIS_EFO|state
RESULT|replay_retained_probe_effective_rate_rps|3000.0|source-records/s
RESULT|replay_retained_probe_rate_bottleneck|KINESIS_SPARE|state
RESULT|replay_retained_probe_drain_seconds|216000.0|s
RESULT|replay_retained_probe_efo_usd|18.629953|USD/month
RESULT|replay_retained_probe_s3_usd|0.0|USD/month
RESULT|replay_retained_probe_reingest_usd|0.0|USD/month
RESULT|replay_expired_probe_source_state|EXPIRED_S3_RESTORE_REINGEST|state
RESULT|replay_expired_probe_efo_usd|18.629953|USD/month
RESULT|replay_expired_probe_s3_usd|4.411731|USD/month
RESULT|replay_expired_probe_reingest_usd|10.692|USD/month
RESULT|replay_sink_limited_500_rate_rps|1633.986928|source-records/s
RESULT|replay_sink_limited_500_drain_seconds|396576.0|s
RESULT|replay_sink_limited_500_demand_wru_s|500.0|WRU/s
RESULT|replay_sink_limited_500_state|SINK|state
RESULT|replay_consumer_limited_rate_rps|1000.0|source-records/s
RESULT|replay_consumer_limited_drain_seconds|648000.0|s
RESULT|replay_consumer_limited_state|CONSUMER|state
RESULT|replay_zero_spare_rate_rps|0.0|source-records/s
RESULT|replay_zero_spare_drain_state|NO_SAFE_DRAIN|state
RESULT|replay_zero_spare_drain_seconds|INFINITE|s
RESULT|accepted_order_marginal_numerator_usd|497.926323|USD/numerator-period
RESULT|accepted_order_marginal_usd|0.000008|USD/business-unit
RESULT|accepted_order_allocated_numerator_usd|4897.926323|USD/numerator-period
RESULT|accepted_order_allocated_usd|0.00008|USD/business-unit
RESULT|accepted_order_fully_loaded_numerator_usd|5897.926323|USD/numerator-period
RESULT|accepted_order_fully_loaded_usd|0.000096|USD/business-unit
RESULT|accepted_order_denominator|61560000.0|business-units
RESULT|execution_fill_marginal_numerator_usd|497.926323|USD/numerator-period
RESULT|execution_fill_marginal_usd|0.000007|USD/business-unit
RESULT|execution_fill_allocated_numerator_usd|4897.926323|USD/numerator-period
RESULT|execution_fill_allocated_usd|0.000066|USD/business-unit
RESULT|execution_fill_fully_loaded_numerator_usd|5897.926323|USD/numerator-period
RESULT|execution_fill_fully_loaded_usd|0.00008|USD/business-unit
RESULT|execution_fill_denominator|73872000.0|business-units
RESULT|million_market_updates_marginal_numerator_usd|871.371066|USD/numerator-period
RESULT|million_market_updates_marginal_usd|0.067235|USD/business-unit
RESULT|million_market_updates_allocated_numerator_usd|8571.371066|USD/numerator-period
RESULT|million_market_updates_allocated_usd|0.661371|USD/business-unit
RESULT|million_market_updates_fully_loaded_numerator_usd|10321.371066|USD/numerator-period
RESULT|million_market_updates_fully_loaded_usd|0.796402|USD/business-unit
RESULT|million_market_updates_denominator|12960.0|business-units
RESULT|active_account_month_marginal_numerator_usd|124.481581|USD/numerator-period
RESULT|active_account_month_marginal_usd|0.00249|USD/business-unit
RESULT|active_account_month_allocated_numerator_usd|1224.481581|USD/numerator-period
RESULT|active_account_month_allocated_usd|0.02449|USD/business-unit
RESULT|active_account_month_fully_loaded_numerator_usd|1474.481581|USD/numerator-period
RESULT|active_account_month_fully_loaded_usd|0.02949|USD/business-unit
RESULT|active_account_month_denominator|50000.0|business-units
RESULT|projection_update_marginal_numerator_usd|373.444742|USD/numerator-period
RESULT|projection_update_marginal_usd|0.000002|USD/business-unit
RESULT|projection_update_allocated_numerator_usd|3673.444742|USD/numerator-period
RESULT|projection_update_allocated_usd|0.000015|USD/business-unit
RESULT|projection_update_fully_loaded_numerator_usd|4423.444742|USD/numerator-period
RESULT|projection_update_fully_loaded_usd|0.000018|USD/business-unit
RESULT|projection_update_denominator|246240000.0|business-units
RESULT|retained_audit_year_marginal_numerator_usd|1493.778969|USD/numerator-period
RESULT|retained_audit_year_marginal_usd|746.889485|USD/business-unit
RESULT|retained_audit_year_allocated_numerator_usd|14693.778969|USD/numerator-period
RESULT|retained_audit_year_allocated_usd|7346.889485|USD/business-unit
RESULT|retained_audit_year_fully_loaded_numerator_usd|17693.778969|USD/numerator-period
RESULT|retained_audit_year_fully_loaded_usd|8846.889485|USD/business-unit
RESULT|retained_audit_year_denominator|2.0|business-units
RESULT|scenario_half_marginal_usd|1269.295808|USD/month
RESULT|scenario_half_accepted_order_marginal_usd|0.000008|USD/business-unit
RESULT|scenario_half_accepted_order_allocated_usd|0.000151|USD/business-unit
RESULT|scenario_half_accepted_order_fully_loaded_usd|0.000184|USD/business-unit
RESULT|scenario_half_execution_fill_marginal_usd|0.000007|USD/business-unit
RESULT|scenario_half_execution_fill_allocated_usd|0.000126|USD/business-unit
RESULT|scenario_half_execution_fill_fully_loaded_usd|0.000153|USD/business-unit
RESULT|scenario_half_million_market_updates_marginal_usd|0.068558|USD/business-unit
RESULT|scenario_half_million_market_updates_allocated_usd|1.256829|USD/business-unit
RESULT|scenario_half_million_market_updates_fully_loaded_usd|1.526891|USD/business-unit
RESULT|scenario_half_active_account_month_marginal_usd|0.002539|USD/business-unit
RESULT|scenario_half_active_account_month_allocated_usd|0.046539|USD/business-unit
RESULT|scenario_half_active_account_month_fully_loaded_usd|0.056539|USD/business-unit
RESULT|scenario_half_projection_update_marginal_usd|0.000002|USD/business-unit
RESULT|scenario_half_projection_update_allocated_usd|0.000028|USD/business-unit
RESULT|scenario_half_projection_update_fully_loaded_usd|0.000034|USD/business-unit
RESULT|scenario_half_retained_audit_year_marginal_usd|380.788742|USD/business-unit
RESULT|scenario_half_retained_audit_year_allocated_usd|6980.788742|USD/business-unit
RESULT|scenario_half_retained_audit_year_fully_loaded_usd|8480.788742|USD/business-unit
RESULT|scenario_double_marginal_usd|4930.303231|USD/month
RESULT|scenario_double_accepted_order_marginal_usd|0.000008|USD/business-unit
RESULT|scenario_double_accepted_order_allocated_usd|0.000044|USD/business-unit
RESULT|scenario_double_accepted_order_fully_loaded_usd|0.000052|USD/business-unit
RESULT|scenario_double_execution_fill_marginal_usd|0.000007|USD/business-unit
RESULT|scenario_double_execution_fill_allocated_usd|0.000036|USD/business-unit
RESULT|scenario_double_execution_fill_fully_loaded_usd|0.000043|USD/business-unit
RESULT|scenario_double_million_market_updates_marginal_usd|0.066574|USD/business-unit
RESULT|scenario_double_million_market_updates_allocated_usd|0.363642|USD/business-unit
RESULT|scenario_double_million_market_updates_fully_loaded_usd|0.431158|USD/business-unit
RESULT|scenario_double_active_account_month_marginal_usd|0.002465|USD/business-unit
RESULT|scenario_double_active_account_month_allocated_usd|0.013465|USD/business-unit
RESULT|scenario_double_active_account_month_fully_loaded_usd|0.015965|USD/business-unit
RESULT|scenario_double_projection_update_marginal_usd|0.000002|USD/business-unit
RESULT|scenario_double_projection_update_allocated_usd|0.000008|USD/business-unit
RESULT|scenario_double_projection_update_fully_loaded_usd|0.00001|USD/business-unit
RESULT|scenario_double_retained_audit_year_marginal_usd|1479.090969|USD/business-unit
RESULT|scenario_double_retained_audit_year_allocated_usd|8079.090969|USD/business-unit
RESULT|scenario_double_retained_audit_year_fully_loaded_usd|9579.090969|USD/business-unit
RESULT|scenario_double_fanout_marginal_usd|3347.042662|USD/month
RESULT|scenario_double_fanout_accepted_order_marginal_usd|0.000011|USD/business-unit
RESULT|scenario_double_fanout_accepted_order_allocated_usd|0.000082|USD/business-unit
RESULT|scenario_double_fanout_accepted_order_fully_loaded_usd|0.000099|USD/business-unit
RESULT|scenario_double_fanout_execution_fill_marginal_usd|0.000009|USD/business-unit
RESULT|scenario_double_fanout_execution_fill_allocated_usd|0.000069|USD/business-unit
RESULT|scenario_double_fanout_execution_fill_fully_loaded_usd|0.000082|USD/business-unit
RESULT|scenario_double_fanout_million_market_updates_marginal_usd|0.090391|USD/business-unit
RESULT|scenario_double_fanout_million_market_updates_allocated_usd|0.684527|USD/business-unit
RESULT|scenario_double_fanout_million_market_updates_fully_loaded_usd|0.819557|USD/business-unit
RESULT|scenario_double_fanout_active_account_month_marginal_usd|0.003347|USD/business-unit
RESULT|scenario_double_fanout_active_account_month_allocated_usd|0.025347|USD/business-unit
RESULT|scenario_double_fanout_active_account_month_fully_loaded_usd|0.030347|USD/business-unit
RESULT|scenario_double_fanout_projection_update_marginal_usd|0.000002|USD/business-unit
RESULT|scenario_double_fanout_projection_update_allocated_usd|0.000015|USD/business-unit
RESULT|scenario_double_fanout_projection_update_fully_loaded_usd|0.000018|USD/business-unit
RESULT|scenario_double_fanout_retained_audit_year_marginal_usd|1004.112799|USD/business-unit
RESULT|scenario_double_fanout_retained_audit_year_allocated_usd|7604.112799|USD/business-unit
RESULT|scenario_double_fanout_retained_audit_year_fully_loaded_usd|9104.112799|USD/business-unit
RESULT|scenario_replay_marginal_usd|3961.683055|USD/month
RESULT|scenario_replay_accepted_order_marginal_usd|0.000013|USD/business-unit
RESULT|scenario_replay_accepted_order_allocated_usd|0.000084|USD/business-unit
RESULT|scenario_replay_accepted_order_fully_loaded_usd|0.000101|USD/business-unit
RESULT|scenario_replay_execution_fill_marginal_usd|0.000011|USD/business-unit
RESULT|scenario_replay_execution_fill_allocated_usd|0.00007|USD/business-unit
RESULT|scenario_replay_execution_fill_fully_loaded_usd|0.000084|USD/business-unit
RESULT|scenario_replay_million_market_updates_marginal_usd|0.10699|USD/business-unit
RESULT|scenario_replay_million_market_updates_allocated_usd|0.701126|USD/business-unit
RESULT|scenario_replay_million_market_updates_fully_loaded_usd|0.836157|USD/business-unit
RESULT|scenario_replay_active_account_month_marginal_usd|0.003962|USD/business-unit
RESULT|scenario_replay_active_account_month_allocated_usd|0.025962|USD/business-unit
RESULT|scenario_replay_active_account_month_fully_loaded_usd|0.030962|USD/business-unit
RESULT|scenario_replay_projection_update_marginal_usd|0.000002|USD/business-unit
RESULT|scenario_replay_projection_update_allocated_usd|0.000016|USD/business-unit
RESULT|scenario_replay_projection_update_fully_loaded_usd|0.000019|USD/business-unit
RESULT|scenario_replay_retained_audit_year_marginal_usd|1188.504916|USD/business-unit
RESULT|scenario_replay_retained_audit_year_allocated_usd|7788.504916|USD/business-unit
RESULT|scenario_replay_retained_audit_year_fully_loaded_usd|9288.504916|USD/business-unit
RESULT|scenario_replay_kinesis_usd|1351.93566|USD/month
RESULT|scenario_replay_efo_retrieval_usd|74.519813|USD/month
RESULT|scenario_replay_consumer_compute_usd|119.232207|USD/month
RESULT|scenario_replay_sink_projection_usd|559.17216|USD/month
RESULT|scenario_replay_idempotency_usd|1122.31008|USD/month
RESULT|scenario_replay_reconciliation_usd|27.086141|USD/month
RESULT|scenario_one_replica_marginal_usd|3188.596816|USD/month
RESULT|scenario_one_replica_accepted_order_marginal_usd|0.00001|USD/business-unit
RESULT|scenario_one_replica_accepted_order_allocated_usd|0.000082|USD/business-unit
RESULT|scenario_one_replica_accepted_order_fully_loaded_usd|0.000098|USD/business-unit
RESULT|scenario_one_replica_execution_fill_marginal_usd|0.000009|USD/business-unit
RESULT|scenario_one_replica_execution_fill_allocated_usd|0.000068|USD/business-unit
RESULT|scenario_one_replica_execution_fill_fully_loaded_usd|0.000082|USD/business-unit
RESULT|scenario_one_replica_million_market_updates_marginal_usd|0.086112|USD/business-unit
RESULT|scenario_one_replica_million_market_updates_allocated_usd|0.680248|USD/business-unit
RESULT|scenario_one_replica_million_market_updates_fully_loaded_usd|0.815278|USD/business-unit
RESULT|scenario_one_replica_active_account_month_marginal_usd|0.003189|USD/business-unit
RESULT|scenario_one_replica_active_account_month_allocated_usd|0.025189|USD/business-unit
RESULT|scenario_one_replica_active_account_month_fully_loaded_usd|0.030189|USD/business-unit
RESULT|scenario_one_replica_projection_update_marginal_usd|0.000002|USD/business-unit
RESULT|scenario_one_replica_projection_update_allocated_usd|0.000015|USD/business-unit
RESULT|scenario_one_replica_projection_update_fully_loaded_usd|0.000018|USD/business-unit
RESULT|scenario_one_replica_retained_audit_year_marginal_usd|956.579045|USD/business-unit
RESULT|scenario_one_replica_retained_audit_year_allocated_usd|7556.579045|USD/business-unit
RESULT|scenario_one_replica_retained_audit_year_fully_loaded_usd|9056.579045|USD/business-unit
RESULT|scenario_one_replica_topology_state|GLOBAL_TABLE_ALL_REGIONS_BASE_RWRU_GSI_WRU|state
RESULT|scenario_one_replica_region_count|2.0|Regions
RESULT|scenario_one_replica_base_rwru_usd|1118.34432|USD/month
RESULT|scenario_one_replica_gsi_wru_usd|279.58608|USD/month
Result IDValueUnit
monthly_orders64800000.0orders/month
monthly_accepted_orders61560000.0accepted/month
monthly_fills73872000.0fills/month
monthly_market_updates12960000000.0records/month
monthly_projection_updates246240000.0updates/month
batch_small_invocations66096000.0invocations/month
batch_small_chunks1.0chunks/invocation
batch_small_flush_ms5.0ms
batch_small_redelivery_records0.03record-attempts/original-batch
batch_small_expected_extra_attempts0.03record-attempts/original-batch
batch_small_conditional_max_coupled_records1.0records/poison-batch
batch_small_concurrency48.0concurrent-invocations
batch_small_commits66744000.0commits/month
batch_medium_invocations6609600.0invocations/month
batch_medium_chunks1.0chunks/invocation
batch_medium_flush_ms50.0ms
batch_medium_redelivery_records0.3record-attempts/original-batch
batch_medium_expected_extra_attempts0.3record-attempts/original-batch
batch_medium_conditional_max_coupled_records10.0records/poison-batch
batch_medium_concurrency5.0concurrent-invocations
batch_medium_commits6674400.0commits/month
batch_large_invocations660960.0invocations/month
batch_large_chunks3.0chunks/invocation
batch_large_flush_ms500.0ms
batch_large_redelivery_records3.0record-attempts/original-batch
batch_large_expected_extra_attempts3.0record-attempts/original-batch
batch_large_conditional_max_coupled_records100.0records/poison-batch
batch_large_concurrency1.0concurrent-invocations
batch_large_commits667440.0commits/month
fanout_consumer_work_records41601600000.0consumer-records/month
partial_batch_checkpoint_stateENABLED_LIMITS_SUCCESSFUL_PREFIX_REPLAYstate
lambda_monthly_usd43.908549USD/month
fargate_monthly_usd71.0928USD/month
fargate_capacity_per_task_rps125.0events/s/task
fargate_required_tasks5.0tasks
fargate_minimum_feasible_monthly_usd177.732USD/month
fargate_baseline_basket_statePRICE_ONLY_INFEASIBLEstate
compute_break_even_events_rps438.422795source-records/s
compute_break_even_average_rps438.422795time-averaged-events/s
compute_break_even_active_rps1753.691181active-period-events/s
compute_break_even_lambda_usd177.732USD/month
compute_break_even_plugback_usd177.732USD/month
compute_crossing_stateNO_CAPACITY_FEASIBLE_PRICE_CROSSINGstate
compute_candidate_average_rps438.422795time-averaged-events/s
compute_candidate_active_rps1753.691181active-period-events/s
compute_candidate_peak_rps7014.764726peak-events/s
compute_candidate_required_tasks85.0tasks
compute_candidate_fleet_usd3021.444USD/month
compute_candidate_lambda_usd177.732USD/month
compute_candidate_price_gap_usd2843.712USD/month
compute_candidate_queue_events0.0events
compute_crossing_search_max_average_rps10000.0time-averaged-events/s
fargate_scaling_lag_queue_events4500.0events
lambda_warm_tail_margin_ms20.0ms
lambda_cold_tail_stateTARGET_MISSEDstate
ddb_wru_per_order15.0WRU/order
ddb_base_wru_per_order12.0WRU/order
ddb_gsi_wru_per_order3.0WRU/order
ddb_replica_wru_per_order0.0WRU/order/replicas
ddb_replica_base_rwru_per_order12.0WRU/order
ddb_replica_gsi_wru_per_order3.0WRU/order
ddb_replica_base_usd_month559.17216USD/month
ddb_replica_gsi_usd_month139.79304USD/month
ddb_replica_exclusions_stateZERO_PLANNING_INPUTS_REPRICE_BEFORE_TOPOLOGY_DECISIONstate
ddb_topology_stateSINGLE_REGION_ORDINARY_WRUstate
ddb_topology_region_count1.0Regions
ddb_topology_base_usd559.17216USD/month
ddb_topology_gsi_usd139.79304USD/month
ddb_unequal_price_single_region_units15.0synthetic-cost-units
ddb_unequal_price_two_region_units54.0synthetic-cost-units
ddb_unequal_price_probe_stateOPERATION_SPLIT_PROVENstate
ddb_monthly_usd1122.141535USD/month
ddb_billing_aggregate_wru_s1800.0WRU/s
ddb_max_hot_lane_wru_s480.0WRU/s
ddb_max_hot_lane_idorderidentifier
ddb_max_hot_lane_stateFEASIBLEstate
ddb_lane_headroom_wru_s520.0WRU/s
kinesis_planned_shards13.0shards
kinesis_put_payload_units13219200000.0synthetic-cost-units
kinesis_monthly_usd1263.9698USD/month
s3_monthly_usd59.611731USD/month
kinesis_hot_key_rps1200.0source-records/s
kinesis_hot_key_stateINFEASIBLE_SINGLE_KEYstate
kinesis_standard_required_Bps10500000.0B/s
kinesis_standard_capacity_Bps26000000.0B/s
kinesis_standard_read_stateAGGREGATE_FITS_MEASURE_PER_SHARDstate
kinesis_replay_spare_rps3000.0source-records/s
kinesis_drain_seconds1500.0s
kinesis_zero_drain_stateNO_SAFE_DRAIN_AT_ZERO_SPAREstate
kinesis_retention_margin_hours-6.0hours
kinesis_replay_retention_stateREPLAY_EXPIRED_RESTORE_REQUIREDstate
audit_year1_storage_gb_month7800.0GB-month/cumulative-cohort-period
audit_year1_storage_usd179.4USD/cumulative-cohort-period
audit_year1_retained_years1.0retained-years
audit_two_year_storage_gb_month30000.0GB-month/cumulative-cohort-period
audit_two_year_storage_usd690.0USD/cumulative-cohort-period
audit_two_year_retained_years2.0retained-years
audit_steady_storage_gb_month28800.0GB-month/year
audit_steady_storage_usd662.4USD/year
audit_steady_retained_years2.0retained-years
audit_year1_cost_per_retained_year_usd179.4USD/retained-audit-year
audit_two_year_cost_per_retained_year_usd345.0USD/retained-audit-year
audit_steady_cost_per_retained_year_usd331.2USD/retained-audit-year
audit_object_lock_usd_year0.0USD/year-scenario
audit_requests_usd_year0.0USD/year-scenario
audit_transitions_usd_year0.0USD/year-scenario
audit_retrieval_usd_year0.0USD/year-scenario
audit_kms_usd_year0.0USD/year-scenario
audit_export_usd_year0.0USD/year-scenario
audit_legal_review_usd_year0.0USD/year-scenario
audit_adjacent_scenario_total_usd_year0.0USD/year-scenario
audit_adjacent_scenarios_stateZERO_PLANNING_INPUTS_REPRICE_BEFORE_DECISIONstate
cqrs_transport_usd_month94.392164USD/month
cqrs_projection_index_usd_month173.5992USD/month
cqrs_cache_storage_usd_month150.0USD/month
cqrs_rebuild_replay_usd_month8.67996USD/month
cqrs_reconciliation_usd_month2.679914USD/month
cqrs_engineering_usd_month900.0USD/month
cqrs_oncall_usd_month300.0USD/month
cqrs_break_even_reads_per_write75.462912reads/write
cqrs_read_heavy_net_usd-887.203238USD/month
cqrs_mixed_net_usd-2350.607558USD/month
cqrs_write_heavy_net_usd-2559.665318USD/month
cqrs_zero_benefit_stateNO_ECONOMIC_WIN_ZERO_BENEFITstate
cqrs_half_volume_break_even142.908388reads/write
cqrs_double_volume_break_even41.740175reads/write
cqrs_half_benefit_break_even150.925825reads/write
cqrs_double_fanout_break_even80.744184reads/write
cqrs_measured_p99_gain_ms95.0ms
cqrs_measured_freshness_s2.0s
ddb_eventual_rru1.0RRU/read
ddb_strong_rru2.0RRU/read
ddb_transactional_rru4.0RRU/read
marginal_platform_usd2489.631616USD/month
allocated_platform_usd24489.631616USD/month
fully_loaded_risk_adjusted_usd29489.631616USD/month
allocation_share_sum1.0ratio
lambda_contribution_percent1.763656percent
ddb_contribution_percent45.072593percent
kinesis_contribution_percent50.76935percent
s3_contribution_percent2.3944percent
half_traffic_shards7.0shards
double_traffic_shards25.0shards
double_fanout_work_records83203200000.0consumer-records/month
tenfold_burst_lambda_concurrency48.0concurrent-invocations
tenfold_burst_queue_records4300800.0records
replay_load_records2592000000.0records/month
ddb_lane_order_wru_per_order4.0WRU/order
ddb_lane_order_hot_wru_s480.0WRU/s
ddb_lane_order_stateFEASIBLEstate
ddb_lane_idempotency_wru_per_order2.0WRU/order
ddb_lane_idempotency_hot_wru_s160.0WRU/s
ddb_lane_idempotency_stateFEASIBLEstate
ddb_lane_outbox_wru_per_order4.0WRU/order
ddb_lane_outbox_hot_wru_s400.0WRU/s
ddb_lane_outbox_stateFEASIBLEstate
ddb_lane_sentinel_wru_per_order2.0WRU/order
ddb_lane_sentinel_hot_wru_s80.0WRU/s
ddb_lane_sentinel_stateFEASIBLEstate
ddb_lane_order_account_gsi_wru_per_order1.0WRU/order
ddb_lane_order_account_gsi_hot_wru_s80.0WRU/s
ddb_lane_order_account_gsi_stateFEASIBLEstate
ddb_lane_order_status_gsi_wru_per_order1.0WRU/order
ddb_lane_order_status_gsi_hot_wru_s60.0WRU/s
ddb_lane_order_status_gsi_stateFEASIBLEstate
ddb_lane_outbox_ready_gsi_wru_per_order1.0WRU/order
ddb_lane_outbox_ready_gsi_hot_wru_s100.0WRU/s
ddb_lane_outbox_ready_gsi_stateFEASIBLEstate
replay_efo_retrieval_gb1267.34376GB/month
replay_efo_retrieval_usd18.629953USD/month
replay_source_stateEXPIRED_S3_RESTORE_REINGESTstate
replay_source_available_rps4000.0source-records/s
replay_effective_rate_rps3000.0source-records/s
replay_rate_bottleneckKINESIS_SPAREstate
replay_sink_capacity_source_rps6535.947712source-records/s
replay_archive_objects3380.0objects/month
replay_s3_source_gb422.44792GB/month
replay_s3_restore_request_usd0.1859USD/month
replay_s3_get_request_usd0.001352USD/month
replay_s3_retrieval_usd4.224479USD/month
replay_reingest_put_units648000000.0payload-units/month
replay_reingest_put_usd10.692USD/month
replay_post_reingest_read_modeEFOstate
replay_post_reingest_read_capacity_rps4000.0source-records/s
replay_post_reingest_read_gb1267.34376GB/month
replay_post_reingest_read_usd18.629953USD/month
replay_post_reingest_read_capacity_stateCAPACITY_AVAILABLEstate
replay_consumer_invocations19440000.0invocations/month
replay_consumer_compute_usd29.808052USD/month
replay_sink_attempts1982880000.0attempts/month
replay_sink_projection_wru198288000.0WRU/month
replay_sink_projection_usd139.79304USD/month
replay_idempotency_rru1982880000.0RRU/month
replay_idempotency_usd280.57752USD/month
replay_reconciliation_attempts19828800.0attempts/month
replay_reconciliation_usd6.771535USD/month
replay_sink_demand_wru_s918.0WRU/s
replay_sink_capacity_headroom_wru_s1082.0WRU/s
replay_sink_capacity_stateCAPACITY_FEASIBLEstate
replay_drain_seconds216000.0s
replay_retained_probe_source_stateRETAINED_KINESIS_EFOstate
replay_retained_probe_effective_rate_rps3000.0source-records/s
replay_retained_probe_rate_bottleneckKINESIS_SPAREstate
replay_retained_probe_drain_seconds216000.0s
replay_retained_probe_efo_usd18.629953USD/month
replay_retained_probe_s3_usd0.0USD/month
replay_retained_probe_reingest_usd0.0USD/month
replay_expired_probe_source_stateEXPIRED_S3_RESTORE_REINGESTstate
replay_expired_probe_efo_usd18.629953USD/month
replay_expired_probe_s3_usd4.411731USD/month
replay_expired_probe_reingest_usd10.692USD/month
replay_sink_limited_500_rate_rps1633.986928source-records/s
replay_sink_limited_500_drain_seconds396576.0s
replay_sink_limited_500_demand_wru_s500.0WRU/s
replay_sink_limited_500_stateSINKstate
replay_consumer_limited_rate_rps1000.0source-records/s
replay_consumer_limited_drain_seconds648000.0s
replay_consumer_limited_stateCONSUMERstate
replay_zero_spare_rate_rps0.0source-records/s
replay_zero_spare_drain_stateNO_SAFE_DRAINstate
replay_zero_spare_drain_secondsINFINITEs
accepted_order_marginal_numerator_usd497.926323USD/numerator-period
accepted_order_marginal_usd0.000008USD/business-unit
accepted_order_allocated_numerator_usd4897.926323USD/numerator-period
accepted_order_allocated_usd0.00008USD/business-unit
accepted_order_fully_loaded_numerator_usd5897.926323USD/numerator-period
accepted_order_fully_loaded_usd0.000096USD/business-unit
accepted_order_denominator61560000.0business-units
execution_fill_marginal_numerator_usd497.926323USD/numerator-period
execution_fill_marginal_usd0.000007USD/business-unit
execution_fill_allocated_numerator_usd4897.926323USD/numerator-period
execution_fill_allocated_usd0.000066USD/business-unit
execution_fill_fully_loaded_numerator_usd5897.926323USD/numerator-period
execution_fill_fully_loaded_usd0.00008USD/business-unit
execution_fill_denominator73872000.0business-units
million_market_updates_marginal_numerator_usd871.371066USD/numerator-period
million_market_updates_marginal_usd0.067235USD/business-unit
million_market_updates_allocated_numerator_usd8571.371066USD/numerator-period
million_market_updates_allocated_usd0.661371USD/business-unit
million_market_updates_fully_loaded_numerator_usd10321.371066USD/numerator-period
million_market_updates_fully_loaded_usd0.796402USD/business-unit
million_market_updates_denominator12960.0business-units
active_account_month_marginal_numerator_usd124.481581USD/numerator-period
active_account_month_marginal_usd0.00249USD/business-unit
active_account_month_allocated_numerator_usd1224.481581USD/numerator-period
active_account_month_allocated_usd0.02449USD/business-unit
active_account_month_fully_loaded_numerator_usd1474.481581USD/numerator-period
active_account_month_fully_loaded_usd0.02949USD/business-unit
active_account_month_denominator50000.0business-units
projection_update_marginal_numerator_usd373.444742USD/numerator-period
projection_update_marginal_usd0.000002USD/business-unit
projection_update_allocated_numerator_usd3673.444742USD/numerator-period
projection_update_allocated_usd0.000015USD/business-unit
projection_update_fully_loaded_numerator_usd4423.444742USD/numerator-period
projection_update_fully_loaded_usd0.000018USD/business-unit
projection_update_denominator246240000.0business-units
retained_audit_year_marginal_numerator_usd1493.778969USD/numerator-period
retained_audit_year_marginal_usd746.889485USD/business-unit
retained_audit_year_allocated_numerator_usd14693.778969USD/numerator-period
retained_audit_year_allocated_usd7346.889485USD/business-unit
retained_audit_year_fully_loaded_numerator_usd17693.778969USD/numerator-period
retained_audit_year_fully_loaded_usd8846.889485USD/business-unit
retained_audit_year_denominator2.0business-units
scenario_half_marginal_usd1269.295808USD/month
scenario_half_accepted_order_marginal_usd0.000008USD/business-unit
scenario_half_accepted_order_allocated_usd0.000151USD/business-unit
scenario_half_accepted_order_fully_loaded_usd0.000184USD/business-unit
scenario_half_execution_fill_marginal_usd0.000007USD/business-unit
scenario_half_execution_fill_allocated_usd0.000126USD/business-unit
scenario_half_execution_fill_fully_loaded_usd0.000153USD/business-unit
scenario_half_million_market_updates_marginal_usd0.068558USD/business-unit
scenario_half_million_market_updates_allocated_usd1.256829USD/business-unit
scenario_half_million_market_updates_fully_loaded_usd1.526891USD/business-unit
scenario_half_active_account_month_marginal_usd0.002539USD/business-unit
scenario_half_active_account_month_allocated_usd0.046539USD/business-unit
scenario_half_active_account_month_fully_loaded_usd0.056539USD/business-unit
scenario_half_projection_update_marginal_usd0.000002USD/business-unit
scenario_half_projection_update_allocated_usd0.000028USD/business-unit
scenario_half_projection_update_fully_loaded_usd0.000034USD/business-unit
scenario_half_retained_audit_year_marginal_usd380.788742USD/business-unit
scenario_half_retained_audit_year_allocated_usd6980.788742USD/business-unit
scenario_half_retained_audit_year_fully_loaded_usd8480.788742USD/business-unit
scenario_double_marginal_usd4930.303231USD/month
scenario_double_accepted_order_marginal_usd0.000008USD/business-unit
scenario_double_accepted_order_allocated_usd0.000044USD/business-unit
scenario_double_accepted_order_fully_loaded_usd0.000052USD/business-unit
scenario_double_execution_fill_marginal_usd0.000007USD/business-unit
scenario_double_execution_fill_allocated_usd0.000036USD/business-unit
scenario_double_execution_fill_fully_loaded_usd0.000043USD/business-unit
scenario_double_million_market_updates_marginal_usd0.066574USD/business-unit
scenario_double_million_market_updates_allocated_usd0.363642USD/business-unit
scenario_double_million_market_updates_fully_loaded_usd0.431158USD/business-unit
scenario_double_active_account_month_marginal_usd0.002465USD/business-unit
scenario_double_active_account_month_allocated_usd0.013465USD/business-unit
scenario_double_active_account_month_fully_loaded_usd0.015965USD/business-unit
scenario_double_projection_update_marginal_usd0.000002USD/business-unit
scenario_double_projection_update_allocated_usd0.000008USD/business-unit
scenario_double_projection_update_fully_loaded_usd0.00001USD/business-unit
scenario_double_retained_audit_year_marginal_usd1479.090969USD/business-unit
scenario_double_retained_audit_year_allocated_usd8079.090969USD/business-unit
scenario_double_retained_audit_year_fully_loaded_usd9579.090969USD/business-unit
scenario_double_fanout_marginal_usd3347.042662USD/month
scenario_double_fanout_accepted_order_marginal_usd0.000011USD/business-unit
scenario_double_fanout_accepted_order_allocated_usd0.000082USD/business-unit
scenario_double_fanout_accepted_order_fully_loaded_usd0.000099USD/business-unit
scenario_double_fanout_execution_fill_marginal_usd0.000009USD/business-unit
scenario_double_fanout_execution_fill_allocated_usd0.000069USD/business-unit
scenario_double_fanout_execution_fill_fully_loaded_usd0.000082USD/business-unit
scenario_double_fanout_million_market_updates_marginal_usd0.090391USD/business-unit
scenario_double_fanout_million_market_updates_allocated_usd0.684527USD/business-unit
scenario_double_fanout_million_market_updates_fully_loaded_usd0.819557USD/business-unit
scenario_double_fanout_active_account_month_marginal_usd0.003347USD/business-unit
scenario_double_fanout_active_account_month_allocated_usd0.025347USD/business-unit
scenario_double_fanout_active_account_month_fully_loaded_usd0.030347USD/business-unit
scenario_double_fanout_projection_update_marginal_usd0.000002USD/business-unit
scenario_double_fanout_projection_update_allocated_usd0.000015USD/business-unit
scenario_double_fanout_projection_update_fully_loaded_usd0.000018USD/business-unit
scenario_double_fanout_retained_audit_year_marginal_usd1004.112799USD/business-unit
scenario_double_fanout_retained_audit_year_allocated_usd7604.112799USD/business-unit
scenario_double_fanout_retained_audit_year_fully_loaded_usd9104.112799USD/business-unit
scenario_replay_marginal_usd3961.683055USD/month
scenario_replay_accepted_order_marginal_usd0.000013USD/business-unit
scenario_replay_accepted_order_allocated_usd0.000084USD/business-unit
scenario_replay_accepted_order_fully_loaded_usd0.000101USD/business-unit
scenario_replay_execution_fill_marginal_usd0.000011USD/business-unit
scenario_replay_execution_fill_allocated_usd0.00007USD/business-unit
scenario_replay_execution_fill_fully_loaded_usd0.000084USD/business-unit
scenario_replay_million_market_updates_marginal_usd0.10699USD/business-unit
scenario_replay_million_market_updates_allocated_usd0.701126USD/business-unit
scenario_replay_million_market_updates_fully_loaded_usd0.836157USD/business-unit
scenario_replay_active_account_month_marginal_usd0.003962USD/business-unit
scenario_replay_active_account_month_allocated_usd0.025962USD/business-unit
scenario_replay_active_account_month_fully_loaded_usd0.030962USD/business-unit
scenario_replay_projection_update_marginal_usd0.000002USD/business-unit
scenario_replay_projection_update_allocated_usd0.000016USD/business-unit
scenario_replay_projection_update_fully_loaded_usd0.000019USD/business-unit
scenario_replay_retained_audit_year_marginal_usd1188.504916USD/business-unit
scenario_replay_retained_audit_year_allocated_usd7788.504916USD/business-unit
scenario_replay_retained_audit_year_fully_loaded_usd9288.504916USD/business-unit
scenario_replay_kinesis_usd1351.93566USD/month
scenario_replay_efo_retrieval_usd74.519813USD/month
scenario_replay_consumer_compute_usd119.232207USD/month
scenario_replay_sink_projection_usd559.17216USD/month
scenario_replay_idempotency_usd1122.31008USD/month
scenario_replay_reconciliation_usd27.086141USD/month
scenario_one_replica_marginal_usd3188.596816USD/month
scenario_one_replica_accepted_order_marginal_usd0.00001USD/business-unit
scenario_one_replica_accepted_order_allocated_usd0.000082USD/business-unit
scenario_one_replica_accepted_order_fully_loaded_usd0.000098USD/business-unit
scenario_one_replica_execution_fill_marginal_usd0.000009USD/business-unit
scenario_one_replica_execution_fill_allocated_usd0.000068USD/business-unit
scenario_one_replica_execution_fill_fully_loaded_usd0.000082USD/business-unit
scenario_one_replica_million_market_updates_marginal_usd0.086112USD/business-unit
scenario_one_replica_million_market_updates_allocated_usd0.680248USD/business-unit
scenario_one_replica_million_market_updates_fully_loaded_usd0.815278USD/business-unit
scenario_one_replica_active_account_month_marginal_usd0.003189USD/business-unit
scenario_one_replica_active_account_month_allocated_usd0.025189USD/business-unit
scenario_one_replica_active_account_month_fully_loaded_usd0.030189USD/business-unit
scenario_one_replica_projection_update_marginal_usd0.000002USD/business-unit
scenario_one_replica_projection_update_allocated_usd0.000015USD/business-unit
scenario_one_replica_projection_update_fully_loaded_usd0.000018USD/business-unit
scenario_one_replica_retained_audit_year_marginal_usd956.579045USD/business-unit
scenario_one_replica_retained_audit_year_allocated_usd7556.579045USD/business-unit
scenario_one_replica_retained_audit_year_fully_loaded_usd9056.579045USD/business-unit
scenario_one_replica_topology_stateGLOBAL_TABLE_ALL_REGIONS_BASE_RWRU_GSI_WRUstate
scenario_one_replica_region_count2.0Regions
scenario_one_replica_base_rwru_usd1118.34432USD/month
scenario_one_replica_gsi_wru_usd279.58608USD/month

Framing: F19,F20; claims: C49,C102,C112,C113,C114,C115,C116. Mutable AWS routes retrieved 2026-08-22: A44,A45,A46,A51,A67,A75,A95,A99,A100,A101,A102,A103, A104,A105,A107,A123,A124,A125,A126,A127. Publications: Lambda 2026-08-19T22:47:03Z, ECS 2026-07-07T16:06:51Z, DynamoDB 2026-08-15T03:52:56Z, Kinesis 2026-08-13T19:39:54Z, S3 2026-08-18T18:11:13Z. Workload/people values are illustrative planning assumptions, not service promises or production measurements.

The useful result is a conditional decision, not a memorized monthly price. You should be able to keep units through rounding, expose the busiest physical lane, include recovery and fixed ownership costs, and show a sensitivity that reverses the conclusion. Next, turn those workload and correctness constraints into signals, access boundaries, and release gates in Observability, security, and operations.

Reading layout adapted from SSE reading notes by Mohammed Balila, MIT. Source manifest · Attribution