The can connect to a high-performance environment embedded in the
for execution of jobs against small- to medium-sized datasets, called the
running environment.
By default, the running environment is enabled for new installations.
Features:
This section provides information on how to enable and configure the running environment.
NOTE: Some configuration is shared with the |
NOTE: For profiles executed in the |
The running environment is enabled by default. Please complete the following configuration to disable the running environment.
NOTE: A cluster-based running environment, such as Spark, must be available for processing jobs when this one is disabled. |
Steps:
To disable the running environment, apply the following configuration settings:
"webapp.runInTrifactaServer": false, "feature.enableSamplingScanOptions": false, "feature.enableFirstRowsSample": false, |
Save your changes and restart the platform.
The following configuration includes the default values.
"photon": { "cacheEnabled": true, "numThreads": 4, "enabled": true, "distroPath": "/photon/dist/centos6/photon", "traceExecution": false, "websocket": { "host": "localhost", "port": 8082 }, "mode": "wasm" }, |
Some of these values apply to the client. For more information, see Configure Photon Client.
Parameter | Description | |
---|---|---|
cacheEnabled | Debugging setting. Leave the default value. | |
numThreads | Maximum number of threads permitted to the | |
enabled | This value should be set to | |
distroPath | Please verify that this property is set to the following value, which works for all operating system distributions:
| |
traceExecution | Debugging setting. Leave the default value. | |
websocket.host | Internal parameter. Do not modify. | |
websocket.port | Internal parameter. Do not modify. | |
mode | Set this value is |
By default, the imposes no limit on execution of a
job. As needed, you can enable and configure a limit.
Steps:
"photon.timeoutEnabled": false, "photon.timeoutMinutes": 180, |
Setting | Description |
---|---|
timeoutEnabled | Set to false to disable job limiting. Set to true to enable the timeout specified below. |
timeoutMinutes | Defines the number of minutes that a |
When a job has failed due to exceeding a timeout, additional information is available in the job logs. The following is a good search term for this type of error:
java.lang.Exception: Photon job '<jobId>' timeout |
where <jobId>
is the internal job identifier.
Job logs can be downloaded from the Job page. See Jobs Page.
To prevent crashes, the running environment imposes a memory consumption limit for each job. If this memory timeout is exceeded, the job is automatically killed. As needed, you can disable this memory protection (not recommended) or change the memory threshold when jobs are killed.
Steps:
Locate the following settings:
"photon.memoryMonitorEnabled": false, "photon.memoryPercentageThresold": 60, |
Setting | Description | |
---|---|---|
memoryMonitorEnabled | Set to false to disable memory monitoring. Set to true to enable the threshold specified below. | |
memoryPercentageThreshold | Defines the percentage of total available system memory that a
|
When a job has failed due to exceeding this memory threshold, additional information is available in the job logs. The following is a good search term for this type of error:
java.lang.Exception: Photon job '<jobId>' failed with memory consumption over threshold |
where <jobId>
is the internal job identifier.
Below this line item, you may see the following entries, which can provide additional information to adjust the memory settings:
2017-05-04T02:26:40.549Z [job-id 740] com.trifacta.joblaunch.util.ProcessMonitorUtil [Thread-20] INFO com.trifacta.joblaunch.util.ProcessMonitorUtil - Global memory size: 8373186560 bytes 2017-05-04T02:26:40.555Z [job-id 740] com.trifacta.joblaunch.util.ProcessMonitorUtil [Thread-20] INFO com.trifacta.joblaunch.util.ProcessMonitorUtil - Available global memory size at process start: 2672959488 bytes ... 2017-05-04T02:29:15.690Z [job-id 740] com.trifacta.joblaunch.util.ProcessMonitorUtil [Thread-20] INFO com.trifacta.joblaunch.util.ProcessMonitorUtil - Current memory consumption: 5.614080429077148% 2017-05-04T02:29:15.691Z [job-id 740] com.trifacta.joblaunch.util.ProcessMonitorUtil [Thread-20] ERROR com.trifacta.joblaunch.util.ProcessMonitorUtil - Average memory consumption for the past 15 seconds over 5% threshold: 5.174326801300049 %. Current available global memory: 2244628480 bytes |
Item | Description |
---|---|
Global memory size | Total available global memory in bytes |
Available global memory size at process start | Total available memory in bytes when the job is launched |
Current memory consumption | Current memory usage for the job process as a percentage of the total. This metric is posted to the log every 30 seconds and can be used to debug memory leaks. |
Average memory consumption for the past 15 seconds over x% threshold | When the job fails due to the memory threshold, this metric identifies the average memory consumption percentage over the past 15 seconds. The defined threshold percentage is included. |
Current available global memory | When the job fails, this metric identifies the total available memory at the time of failure. |
Job logs can be downloaded from the Job page. See Jobs Page.
The default timeout settings for reading and writing of data from the client browser through running environment to the
should work in most cases.
Particularly when reading from large tables, you might discover errors similar to the following:
06:21:21.365 [Job 23] INFO com.trifacta.hadoopdata.photon.BatchPhotonRunner - terminating with uncaught exception of type Poco::TimeoutException: Timeout 06:21:21.375 [Job 23] INFO com.trifacta.hadoopdata.photon.BatchPhotonRunner - /vagrant/photon/dist/centos6/photon/bin/photon-cli: line 22: 15639 Aborted $ Unknown macro: {command[@]} |
Steps:
Locate the photon.extraCliArgs
node.
Add the following values to the extraCliArgs
entry:
"photon.extraCliArgs" : "-batch_vfs_read_timeout <300> -batch_vfs_write_timeout <300>" |
Argument | Description | |
---|---|---|
-batch_vfs_read_timeout | Timeout limit in seconds of read operations from the datastore. Default value is
| |
-batch_vfs_write_timeout | Timeout limit in seconds of write operations to the datastore. Default value is
|
For more information on tuning the performance of Photon, see Tune Application Performance.
The running environment interacts with backend datastores through the VFS service.
NOTE: The VFS service does not often need non-default configuration. |
For more information, see Configure VFS Service.
When executing a job, select the Photon option.
NOTE: Before you test, please be sure to complete all steps of Required Platform Configuration. |