diff --git a/hadoop-yarn-project/CHANGES.txt b/hadoop-yarn-project/CHANGES.txt index 32d76f46f8d..a29194a0652 100644 --- a/hadoop-yarn-project/CHANGES.txt +++ b/hadoop-yarn-project/CHANGES.txt @@ -607,6 +607,9 @@ Release 2.8.0 - UNRELEASED YARN-4248. REST API for submit/update/delete Reservations. (curino) + YARN-4341. add doc about timeline performance tool usage (Chang Li via + sjlee) + OPTIMIZATIONS YARN-3339. TestDockerContainerExecutor should pull a single image and not diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-site/src/site/markdown/TimelineServer.md b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-site/src/site/markdown/TimelineServer.md index 2048012d59e..3e589d3d275 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-site/src/site/markdown/TimelineServer.md +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-site/src/site/markdown/TimelineServer.md @@ -26,6 +26,10 @@ The YARN Timeline Server * [Publishing of application specific data](#Publishing_of_application_specific_data) * [Timeline Server REST API](#Timeline_Server_REST_API_v1) * [Generic Data REST APIs](#GENERIC_DATA_REST_APIS) +* [Timelnine Server Performance Test Tool](#TIMELINE_SERVER_PERFORMANCE_TEST_TOOL) + * [Highlights](#HIGHLIGHTS) + * [Usage](#USAGE) + * [Sample Runs](#SAMPLE_RUNS) Overview --------- @@ -2033,3 +2037,77 @@ This hides details of other domains from an unauthorized caller. this failure *will not* result in an HTTP error code being retured. A status code of 200 will be returned —however, there will be an error code in the list of failed entities for each entity which could not be added. + + Timelnine Server Performance Test Tool +---------- +###Highlights + +The timeline server performance test tool helps measure timeline server's write performance. The test +launches SimpleEntityWriter mappers or JobHistoryFileReplay mappers to write timeline +entities to the timeline server. At the end, the transaction rate(ops/s) per mapper and the total transaction rate +will be measured and printed out. Running the test with SimpleEntityWriter mappers +will also measure and show the IO rate(KB/s) per mapper and the total IO rate. + +###Usage + +Mapper Types Description: + + 1. SimpleEntityWriter mapper + Each mapper writes a user-specified number of timeline entities + with a user-specified size to the timeline server. + + 2. JobHistoryFileReplay mapper + Each mapper replays jobhistory files under a specified directory + (both the jhist file and its corresponding conf.xml are required to + be present in order to be replayed. The number of mappers should be no more + than the number of jobhistory files). + Each mapper will get assigned some jobhistory files to replay. For each + job history file, a mapper will parse it to get jobinfo and then create + timeline entities. Each mapper also has the choice to write all the + timeline entities created at once or one at a time. + +Options: + + [-m ] number of mappers (default: 1) + [-v] timeline service version + [-mtype ] + 1. simple entity write mapper + 2. jobhistory files replay mapper + [-s <(KBs)test>] number of KB per put (mtype=1, default: 1 KB) + [-t] package sending iterations per mapper (mtype=1, default: 100) + [-d ] root path of job history files (mtype=2) + [-r ] (mtype=2) + 1. write all entities for a job in one put (default) + 2. write one entity at a time + +###Sample Runs + +Run SimpleEntityWriter test: + + bin/hadoop jar performanceTest.jar timelineperformance -m 4 -mtype 1 -s 3 -t 200 + +Example output of SimpleEntityWriter test : + + TRANSACTION RATE (per mapper): 20000.0 ops/s + IO RATE (per mapper): 60000.0 KB/s + TRANSACTION RATE (total): 80000.0 ops/s + IO RATE (total): 240000.0 KB/s + +Run JobHistoryFileReplay mapper test + + $ bin/hadoop jar performanceTest.jar timelineperformance -m 2 -mtype 2 -d /testInput -r 2 + +Example input of JobHistoryFileReplay mapper test: + + $ bin/hadoop fs -ls /testInput + /testInput/job_1.jhist + /testInput/job_1_conf.xml + /testInput/job_2.jhist + /testInput/job_2_conf.xml + +Eample output of JobHistoryFileReplay test: + + TRANSACTION RATE (per mapper): 4000.0 ops/s + IO RATE (per mapper): 0.0 KB/s + TRANSACTION RATE (total): 8000.0 ops/s + IO RATE (total): 0.0 KB/s