Skip to content

Commit d2e561b

Browse files
committed
Add JsonBenchmark
1 parent 9eb1e83 commit d2e561b

File tree

2 files changed

+177
-65
lines changed

2 files changed

+177
-65
lines changed
Lines changed: 112 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,112 @@
1+
================================================================================================
2+
Benchmark for performance of JSON parsing
3+
================================================================================================
4+
5+
Preparing data for benchmarking ...
6+
OpenJDK 64-Bit Server VM 11.0.4+11-LTS on Linux 3.10.0-862.3.2.el7.x86_64
7+
Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz
8+
JSON schema inferring: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative
9+
------------------------------------------------------------------------------------------------------------------------
10+
No encoding 70863 71147 417 1.4 708.6 1.0X
11+
UTF-8 is set 133520 133658 131 0.7 1335.2 0.5X
12+
13+
Preparing data for benchmarking ...
14+
OpenJDK 64-Bit Server VM 11.0.4+11-LTS on Linux 3.10.0-862.3.2.el7.x86_64
15+
Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz
16+
count a short column: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative
17+
------------------------------------------------------------------------------------------------------------------------
18+
No encoding 44462 44655 313 2.2 444.6 1.0X
19+
UTF-8 is set 89342 89386 53 1.1 893.4 0.5X
20+
21+
Preparing data for benchmarking ...
22+
OpenJDK 64-Bit Server VM 11.0.4+11-LTS on Linux 3.10.0-862.3.2.el7.x86_64
23+
Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz
24+
count a wide column: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative
25+
------------------------------------------------------------------------------------------------------------------------
26+
No encoding 58617 59071 541 0.2 5861.7 1.0X
27+
UTF-8 is set 102650 102948 493 0.1 10265.0 0.6X
28+
29+
Preparing data for benchmarking ...
30+
OpenJDK 64-Bit Server VM 11.0.4+11-LTS on Linux 3.10.0-862.3.2.el7.x86_64
31+
Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz
32+
select wide row: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative
33+
------------------------------------------------------------------------------------------------------------------------
34+
No encoding 168197 168256 61 0.0 336393.0 1.0X
35+
UTF-8 is set 191539 191724 186 0.0 383078.2 0.9X
36+
37+
Preparing data for benchmarking ...
38+
OpenJDK 64-Bit Server VM 11.0.4+11-LTS on Linux 3.10.0-862.3.2.el7.x86_64
39+
Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz
40+
Select a subset of 10 columns: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative
41+
------------------------------------------------------------------------------------------------------------------------
42+
Select 10 columns 18983 18998 22 0.5 1898.3 1.0X
43+
Select 1 column 23544 23575 32 0.4 2354.4 0.8X
44+
45+
Preparing data for benchmarking ...
46+
OpenJDK 64-Bit Server VM 11.0.4+11-LTS on Linux 3.10.0-862.3.2.el7.x86_64
47+
Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz
48+
creation of JSON parser per line: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative
49+
------------------------------------------------------------------------------------------------------------------------
50+
Short column without encoding 9336 9402 66 1.1 933.6 1.0X
51+
Short column with UTF-8 13310 13870 489 0.8 1331.0 0.7X
52+
Wide column without encoding 112821 113012 202 0.1 11282.1 0.1X
53+
Wide column with UTF-8 156408 156910 776 0.1 15640.8 0.1X
54+
55+
Preparing data for benchmarking ...
56+
OpenJDK 64-Bit Server VM 11.0.4+11-LTS on Linux 3.10.0-862.3.2.el7.x86_64
57+
Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz
58+
JSON functions: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative
59+
------------------------------------------------------------------------------------------------------------------------
60+
Text read 743 744 1 13.5 74.3 1.0X
61+
from_json 22379 22566 279 0.4 2237.9 0.0X
62+
json_tuple 32201 32271 89 0.3 3220.1 0.0X
63+
get_json_object 21973 22405 375 0.5 2197.3 0.0X
64+
65+
Preparing data for benchmarking ...
66+
OpenJDK 64-Bit Server VM 11.0.4+11-LTS on Linux 3.10.0-862.3.2.el7.x86_64
67+
Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz
68+
Dataset of json strings: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative
69+
------------------------------------------------------------------------------------------------------------------------
70+
Text read 3771 3780 8 13.3 75.4 1.0X
71+
schema inferring 34808 35213 506 1.4 696.2 0.1X
72+
parsing 36917 38889 1757 1.4 738.3 0.1X
73+
74+
Preparing data for benchmarking ...
75+
OpenJDK 64-Bit Server VM 11.0.4+11-LTS on Linux 3.10.0-862.3.2.el7.x86_64
76+
Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz
77+
Json files in the per-line mode: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative
78+
------------------------------------------------------------------------------------------------------------------------
79+
Text read 11928 11955 38 4.2 238.6 1.0X
80+
Schema inferring 44716 44921 220 1.1 894.3 0.3X
81+
Parsing without charset 35749 35838 77 1.4 715.0 0.3X
82+
Parsing with UTF-8 50521 50530 12 1.0 1010.4 0.2X
83+
84+
OpenJDK 64-Bit Server VM 11.0.4+11-LTS on Linux 3.10.0-862.3.2.el7.x86_64
85+
Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz
86+
Write dates and timestamps: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative
87+
------------------------------------------------------------------------------------------------------------------------
88+
Create a dataset of timestamps 2473 2487 18 4.0 247.3 1.0X
89+
to_json(timestamp) 16100 16284 236 0.6 1610.0 0.2X
90+
write timestamps to files 13226 13852 676 0.8 1322.6 0.2X
91+
Create a dataset of dates 2661 2680 16 3.8 266.1 0.9X
92+
to_json(date) 10696 10730 55 0.9 1069.6 0.2X
93+
write dates to files 8543 8926 384 1.2 854.3 0.3X
94+
95+
OpenJDK 64-Bit Server VM 11.0.4+11-LTS on Linux 3.10.0-862.3.2.el7.x86_64
96+
Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz
97+
Read dates and timestamps: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative
98+
------------------------------------------------------------------------------------------------------------------------
99+
read timestamp text from files 2822 2829 8 3.5 282.2 1.0X
100+
read timestamps from files 34884 34900 23 0.3 3488.4 0.1X
101+
infer timestamps from files 70310 71551 1079 0.1 7031.0 0.0X
102+
read date text from files 2649 2655 6 3.8 264.9 1.1X
103+
read date from files 22875 22904 33 0.4 2287.5 0.1X
104+
timestamp strings 4025 4059 31 2.5 402.5 0.7X
105+
parse timestamps from Dataset[String] 43040 43157 115 0.2 4304.0 0.1X
106+
infer timestamps from Dataset[String] 81762 81927 144 0.1 8176.2 0.0X
107+
date strings 4899 4913 21 2.0 489.9 0.6X
108+
parse dates from Dataset[String] 33530 33560 27 0.3 3353.0 0.1X
109+
from_json(timestamp) 60762 60877 142 0.2 6076.2 0.0X
110+
from_json(date) 52482 52620 150 0.2 5248.2 0.1X
111+
112+

0 commit comments

Comments
 (0)