Description

This article describes how to configure the REST request payload to run multiple partitioned GenRocket instances.


Request Payload Parameters

The GenRocket Partition Engine requires a payload containing the following parameters:

  • numberOfRecords  
    • Defines the total number of records to generate across all servers and partitions.
    • The numberOfRecords value must be a number that can be evenly distributed across all instances.
  • numberOfServers  
    • Defines the total number servers that will be used for partitioning.
  • instancesPerServer  
    • Defines the total number of GenRocket instances to launch on each server.
    • The numberOfServers multiplied by the numberOfInstances must evenly divide the numberOfRecords to be generated.  
  • serverNumber 
    • Defines which server within the total set of servers is being launched on the given computer.
    • If two computers are given the same serverNumber, the same data will be generated to the same output location.
    • If a serverNumber is defined outside the range of numberOfServers, the engine will not be started.
  • scenarioPath  
    • The directory location of the Scenario to run.  
    • The directory location must be on the same computer where the REST engine is running.
  •  scenario
    • Defines the name of the Scenario to run.
    • The same Scenario must be run on all instances or the results will be unpredictable.
  • attributes
    • Defines the set of Attributes, within the Scenario's primary Domain, whose Generators will be modified to start generating data, at the appropriate number according to their partition.


Example Payload:

The following example presents a payload configuration for generating 100 million users, to be evenly partitioned across 10 servers with each server launching 10 GenRocket instances.


{
    "numberOfRecords": 100000000,
    "numberOfServers": 1,
    "instancesPerServer": 10,
    "serverNumber": 1,
    "scenarioPath": "/Users/guest/Scenarios/Partition/",
    "scenario": "UserScenario.grs",
    "attributes": [
        "id",
        "ssn",
        "creditCard"
    ]
}