diff --git a/src/components/TechNotes/RouterResourceEstimator.js b/src/components/TechNotes/RouterResourceEstimator.js
index 683cd9b04..0444e4a85 100644
--- a/src/components/TechNotes/RouterResourceEstimator.js
+++ b/src/components/TechNotes/RouterResourceEstimator.js
@@ -31,6 +31,7 @@ const RouterResourceEstimator = () => {
const [peakRequestRatePerSecond, setPeakRequestRatePerSecond] = useState('');
const [baselineSubgraphLatency, setBaselineSubgraphLatency] = useState('100');
const [clientRequestSize, setClientRequestSize] = useState('0.1');
+ const [averageQueryPlanFetchNodes, setAverageQueryPlanFetchNodes] = useState('1');
const [clientResponseSize, setClientResponseSize] = useState('0.1');
const [numberOfInstances, setNumberOfInstances] = useState('3');
const [baseMemory, setBaseMemory] = useState('100');
@@ -42,6 +43,8 @@ const RouterResourceEstimator = () => {
const Ls = parseFloat(baselineSubgraphLatency) / 1000;
const Sreq = parseFloat(clientRequestSize);
const Sres = parseFloat(clientResponseSize);
+ // If you average more than 2 subgraphs fetches add a multiplier
+ const Sqp = parseFloat(averageQueryPlanFetchNodes) / 2 + 1;
const I = parseFloat(numberOfInstances);
const Mb = parseFloat(baseMemory);
const Mq = parseFloat(queryPlannerMemory);
@@ -60,7 +63,7 @@ const RouterResourceEstimator = () => {
// Rate per vcpu, assuming 80% utilization
const Rc = 0.8 / (L - Ls);
// Memory usage per vcpu
- const Mc = (Sreq + Sres) * Rc * L;
+ const Mc = (Sreq * Sqp + Sres) * Rc * L;
// Number of vCPUs needed
const vBaseline = Math.max(Math.round(R / Rc), 1);
// Number of vCPUs needed for peak traffic
@@ -174,6 +177,30 @@ const RouterResourceEstimator = () => {
+ // Client Request Query Plan Size
+
+
+ Average Request Query Plan Size
+
+
+ setAverageQueryPlanFetchNodes(value)}
+ >
+
+
+
+
+
+ The average number of fetch nodes (subgraph calls) in your query plans
+
+
+
+
// Client Response Size
diff --git a/src/content/technotes/TN0045-router_resource_estimator.mdx b/src/content/technotes/TN0045-router-resource-estimator.mdx
similarity index 100%
rename from src/content/technotes/TN0045-router_resource_estimator.mdx
rename to src/content/technotes/TN0045-router-resource-estimator.mdx