mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-12-11 00:42:29 +00:00
121 lines
3.3 KiB
Plaintext
121 lines
3.3 KiB
Plaintext
AMPLab Big Data Benchmark: https://amplab.cs.berkeley.edu/benchmark/
|
|
|
|
|
|
1. Register free account on aws.amazon.com. You will need credit card, e-mail and phone number.
|
|
2. Create new access key on https://console.aws.amazon.com/iam/home?nc2=h_m_sc#security_credential
|
|
3. sudo apt-get install s3cmd
|
|
4.
|
|
|
|
mkdir tiny; cd tiny;
|
|
s3cmd sync s3://big-data-benchmark/pavlo/text-deflate/tiny/ .
|
|
cd ..
|
|
mkdir 1node; cd 1node;
|
|
s3cmd sync s3://big-data-benchmark/pavlo/text-deflate/1node/ .
|
|
cd ..
|
|
mkdir 5nodes; cd 5nodes;
|
|
s3cmd sync s3://big-data-benchmark/pavlo/text-deflate/5nodes/ .
|
|
cd ..
|
|
|
|
5.
|
|
|
|
CREATE TABLE rankings_tiny
|
|
(
|
|
pageURL String,
|
|
pageRank UInt32,
|
|
avgDuration UInt32
|
|
) ENGINE = Log;
|
|
|
|
CREATE TABLE uservisits_tiny
|
|
(
|
|
sourceIP String,
|
|
destinationURL String,
|
|
visitDate Date,
|
|
adRevenue Float32,
|
|
UserAgent String,
|
|
cCode FixedString(3),
|
|
lCode FixedString(6),
|
|
searchWord String,
|
|
duration UInt32
|
|
) ENGINE = MergeTree(visitDate, visitDate, 8192);
|
|
|
|
CREATE TABLE rankings_1node
|
|
(
|
|
pageURL String,
|
|
pageRank UInt32,
|
|
avgDuration UInt32
|
|
) ENGINE = Log;
|
|
|
|
CREATE TABLE uservisits_1node
|
|
(
|
|
sourceIP String,
|
|
destinationURL String,
|
|
visitDate Date,
|
|
adRevenue Float32,
|
|
UserAgent String,
|
|
cCode FixedString(3),
|
|
lCode FixedString(6),
|
|
searchWord String,
|
|
duration UInt32
|
|
) ENGINE = MergeTree(visitDate, visitDate, 8192);
|
|
|
|
CREATE TABLE rankings_5nodes_on_single
|
|
(
|
|
pageURL String,
|
|
pageRank UInt32,
|
|
avgDuration UInt32
|
|
) ENGINE = Log;
|
|
|
|
CREATE TABLE uservisits_5nodes_on_single
|
|
(
|
|
sourceIP String,
|
|
destinationURL String,
|
|
visitDate Date,
|
|
adRevenue Float32,
|
|
UserAgent String,
|
|
cCode FixedString(3),
|
|
lCode FixedString(6),
|
|
searchWord String,
|
|
duration UInt32
|
|
) ENGINE = MergeTree(visitDate, visitDate, 8192);
|
|
|
|
|
|
6.
|
|
|
|
for i in tiny/rankings/*.deflate; do echo $i; zlib-flate -uncompress < $i | clickhouse-client --host=example-perftest01j --query="INSERT INTO rankings_tiny FORMAT CSV"; done
|
|
|
|
for i in tiny/uservisits/*.deflate; do echo $i; zlib-flate -uncompress < $i | clickhouse-client --host=example-perftest01j --query="INSERT INTO uservisits_tiny FORMAT CSV"; done
|
|
|
|
for i in 1node/rankings/*.deflate; do echo $i; zlib-flate -uncompress < $i | clickhouse-client --host=example-perftest01j --query="INSERT INTO rankings_1node FORMAT CSV"; done
|
|
|
|
for i in 1node/uservisits/*.deflate; do echo $i; zlib-flate -uncompress < $i | clickhouse-client --host=example-perftest01j --query="INSERT INTO uservisits_1node FORMAT CSV"; done
|
|
|
|
for i in 5nodes/rankings/*.deflate; do echo $i; zlib-flate -uncompress < $i | clickhouse-client --host=example-perftest01j --query="INSERT INTO rankings_5nodes_on_single FORMAT CSV"; done
|
|
|
|
for i in 5nodes/uservisits/*.deflate; do echo $i; zlib-flate -uncompress < $i | clickhouse-client --host=example-perftest01j --query="INSERT INTO uservisits_5nodes_on_single FORMAT CSV"; done
|
|
|
|
|
|
7.
|
|
|
|
SELECT pageURL, pageRank FROM rankings_1node WHERE pageRank > 1000
|
|
|
|
|
|
SELECT substring(sourceIP, 1, 8), sum(adRevenue) FROM uservisits_1node GROUP BY substring(sourceIP, 1, 8)
|
|
|
|
|
|
SELECT
|
|
sourceIP,
|
|
sum(adRevenue) AS totalRevenue,
|
|
avg(pageRank) AS pageRank
|
|
FROM rankings_1node ALL INNER JOIN
|
|
(
|
|
SELECT
|
|
sourceIP,
|
|
destinationURL AS pageURL,
|
|
adRevenue
|
|
FROM uservisits_1node
|
|
WHERE (visitDate > '1980-01-01') AND (visitDate < '1980-04-01')
|
|
) USING pageURL
|
|
GROUP BY sourceIP
|
|
ORDER BY totalRevenue DESC
|
|
LIMIT 1
|