Case Study: Scale an MES solution
- Last UpdatedNov 22, 2024
- 2 minute read
A case study is helpful to see an example of the scaling of the system.
In this case study, the plant had been operating for 1 year with 12 lines. They want to know the server requirements for 60 lines, 120 lines, and 200 lines. The estimates provided are not exact, as even within a plant loading will vary. It is recommended to determine the scaling in stages and to reevaluate the system after each stage.
In this example, a Line consisted of 6 objects, including the UCO. It does Downtime and OEE with work order management.
The following steps were performed to evaluate the server specifications:
-
The current CPU and memory usages were evaluated and a loading was determined in terms of CPU/line and memory/line for each server. This evaluation was both analytical and speculative.
-
For the CPU, the current CPU profile was analyzed and then the desired CPU/line was speculated.
-
For the memory, the memory usage of the applications was divided by the number of lines.
From this evaluation, the following table shows the scaling that was performed by number of lines and the resulting CPU and memory sizing results.
|
Server |
CPU |
RAM |
||||||
|---|---|---|---|---|---|---|---|---|
|
12 lines |
60 |
120 |
200 |
12 |
60 |
120 |
200 |
|
|
Database |
15 line/CPU |
8 GB Base + 150 MB/Line |
||||||
|
2 |
4 |
8 |
12 |
9.8 |
17 |
26 |
38 |
|
|
Historian |
50 line/CPU |
4 GB Base + 5 MB/Line |
||||||
|
1 |
1 |
2 |
4 |
4.1 |
4.3 |
4.6 |
5 |
|
|
Application |
12 line/CPU |
8 GB Base + 20 MB/Line |
||||||
|
1 |
5 |
10 |
17 |
8.24 |
9.2 |
10.4 |
12 |
|
|
Terminal |
12 line/CPU |
4 GB Base + 150 MB/Line |
||||||
|
1 |
5 |
10 |
17 |
5.8 |
13 |
22 |
34 |
|
|
Report |
20 line/CPU |
8 GB Base + 50 MB/Line |
||||||
|
1 |
3 |
6 |
10 |
8.6 |
11 |
14 |
18 |
|
Next, some logical adjustments were performed based on the following:
-
Database loading is not linear
-
Application and Terminal Server loading is linear
-
Requirements are rounded to appropriate purchasable sizes
|
Server |
CPU |
RAM |
||||||
|---|---|---|---|---|---|---|---|---|
|
12 lines |
60 |
120 |
200 |
12 |
60 |
120 |
200 |
|
|
Database |
2 |
4 |
8 |
12 |
8 |
16 |
24 |
40 |
|
Historian |
1 |
1 |
2 |
4 |
4 |
4 |
4 |
4 |
|
Application |
1 |
4 |
8 |
16 |
8 |
8 |
12 |
12 |
|
Terminal |
1 |
4 |
8 |
16 |
8 |
16 |
24 |
32 |
|
Report |
1 |
2 |
4 |
8 |
8 |
12 |
16 |
24 |
The number of servers was determined and the load was split, making sure to not split the database, Historian, or Report Server. Application Servers were scaled by the number of MES objects. A standard server with 8 GB of RAM was used for scaling the Terminal Servers.
|
Server |
Number of Servers |
|||
|---|---|---|---|---|
|
12 |
60 |
120 |
200 |
|
|
Database |
1 |
1 |
1 |
1 |
|
Historian |
1 |
1 |
1 |
1 |
|
Application |
1 |
1 |
2 |
4 |
|
Terminal |
1 |
2 |
3 |
4 |
|
Report |
1 |
1 |
1 |
1 |
The hard disks were also scaled using this method.
The following diagram shows the resulting topology.
