精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

以 100GB SSB 性能測試為例,通過 ByteHouse 云數(shù)倉開啟你的數(shù)據(jù)分析之路

云計算 云原生
ByteHouse 作為云原生的數(shù)據(jù)平臺,從架構(gòu)層面入手,通過存儲和計算分離的云原生架構(gòu)完美適配云上基礎(chǔ)設(shè)施。ByteHouse 作為云原生的數(shù)據(jù)平臺,從架構(gòu)層面入手,通過存儲和計算分離的云原生架構(gòu)完美適配云上基礎(chǔ)設(shè)施。

I. 傳統(tǒng)數(shù)倉的演進:云數(shù)倉

近年來,隨著數(shù)據(jù)“爆炸式”的增長,越來越多的數(shù)據(jù)被產(chǎn)生、收集和存儲。而挖掘海量數(shù)據(jù)中的真實價值,從其中提取商機并洞見未來,則成了現(xiàn)代企業(yè)和組織不可忽視的命題。

隨著數(shù)據(jù)量級和復(fù)雜度的增大,數(shù)據(jù)分析處理的技術(shù)架構(gòu)也在不斷演進。在面對海量數(shù)據(jù)分析時,傳統(tǒng) OLAP 技術(shù)架構(gòu)中的痛點變得越來越明顯,如擴容縮容耗時長,導(dǎo)致資源利用率偏低,成本居高不下;以及運維配置復(fù)雜,需要專業(yè)的技術(shù)人員介入等。

為了解決這類問題,云數(shù)倉的概念應(yīng)運而生。和傳統(tǒng)數(shù)倉架構(gòu)不同的是,云原生數(shù)倉借助于云平臺的基礎(chǔ)資源,實現(xiàn)了資源的動態(tài)擴縮容,并最大化利用資源,從而達到 Pay as you go 按實際用量付費的模式。

ByteHouse 作為云原生的數(shù)據(jù)平臺,從架構(gòu)層面入手,通過存儲和計算分離的云原生架構(gòu)完美適配云上基礎(chǔ)設(shè)施。在字節(jié)跳動內(nèi)部,ByteHouse 已經(jīng)支持 80% 的分析應(yīng)用場景,包括用戶增長業(yè)務(wù)、廣告、A/B 測試等。除了極致的分析性能之外,ByteHouse 開箱即用,按實際使用付費的特性也極大地降低了企業(yè)和個人的上手門檻,能夠在短短數(shù)分鐘內(nèi)體驗到數(shù)據(jù)分析的魅力。Talk is cheap, 接下來就讓我們通過一個實戰(zhàn)案例來體驗下 ByteHouse 云數(shù)倉的強大功能。

II. 快速上手 ByteHouse —— 輕量級云數(shù)倉

本章節(jié)通過使用 ByteHouse 云數(shù)倉進行 SSB 基準測試,在帶領(lǐng)讀者了解產(chǎn)品性能的同時,也一并熟悉產(chǎn)品中各個模塊的功能,開啟你的數(shù)據(jù)分析之路,通過分析海量數(shù)據(jù),加速數(shù)據(jù)洞察。ByteHouse 的架構(gòu)總覽如下。

圖片

SSB 基準測試

SSB(Star Schema Benchmark)是由麻省州立大學(xué)波士頓校區(qū)的研究員定義的基于現(xiàn)實商業(yè)應(yīng)用的數(shù)據(jù)模型。SSB 是在 TPC-H 標準的基礎(chǔ)上改進而成,主要將 TPC-H 中的雪花模型改成了更為通用的的星型模型,將基準查詢從復(fù)雜的 Ad-hoc 查詢改成了結(jié)構(gòu)更加固定的 OLAP 查詢,從而主要用于模擬測試 OLAP 引擎和輕量數(shù)倉場景下的查詢性能。由于 SSB 基準測試較為中立,并貼近現(xiàn)實的商業(yè)場景,因此在學(xué)界及工業(yè)界有廣泛的應(yīng)用。

SSB 基準測試中對應(yīng)的表結(jié)構(gòu)如下所示,可以看到 SSB 主要采用星型模型,其中包含了 1 個事實表 lineorder 和 4 個維度表 customer, part, dwdate 以及 supplier,每張維度表通過 Primary Key 和事實表進行關(guān)聯(lián)。測試通過執(zhí)行 13 條 SQL 進行查詢,包含了多表關(guān)聯(lián),group by,復(fù)雜條件等多種組合。更多詳細信息請參考 SSB 文獻 (??https://www.cs.umb.edu/~poneil/StarSchemaB.pdf??)。

圖片

步驟一:官網(wǎng)注冊并開通 ByteHouse

訪問ByteHouse 云數(shù)倉火山引擎官網(wǎng),注冊火山引擎賬戶,完成實名認證后,即可登錄到產(chǎn)品控制臺。開通產(chǎn)品進行測試,目前 ByteHouse 支持包年包月和按量付費兩種模式的實例,便于您根據(jù)業(yè)務(wù)需求進行選擇。

ByteHouse 云數(shù)倉火山引擎官網(wǎng)

??https://www.volcengine.com/product/bytehouse-cloud??

產(chǎn)品控制臺

??https://console.volcengine.com/bytehouse??

圖片

步驟二:創(chuàng)建計算組

登錄到控制臺后,可以看到數(shù)據(jù)庫表管理、數(shù)據(jù)加載、SQL 工作表、計算組、查詢歷史和角色管理等幾大模塊。分別具有如下作用:

數(shù)據(jù)庫表管理:用于創(chuàng)建和管理數(shù)據(jù)庫、數(shù)據(jù)表以及視圖等數(shù)據(jù)對象 數(shù)據(jù)加載:用于從不同的離線和實時數(shù)據(jù)源如對象存儲、Kafka 等地寫入數(shù)據(jù) SQL 工作表:在界面上編輯、管理并運行 SQL 查詢 計算組:創(chuàng)建和管理虛擬的計算資源,用于執(zhí)行數(shù)據(jù)查詢等操作 查詢歷史:用于查看 SQL 的歷史執(zhí)行記錄、狀態(tài)和查詢詳情等

圖片

為了方便進行后續(xù)的建庫建表和查詢等操作,首先在 ByteHouse 控制臺創(chuàng)建型號為 L 的計算組,如下圖所示

圖片

計算組是 Bytehouse 中的計算資源集群,可按需進行橫向擴展。計算組提供所需的資源如 CPU、內(nèi)存及臨時存儲等,用于執(zhí)行數(shù)據(jù)查詢 DQL、DML 等操作。ByteHouse 計算組能夠?qū)崿F(xiàn)彈性擴縮容,讀寫分離、存算分離等,并且能對資源進行細粒度的權(quán)限控制。

步驟三:創(chuàng)建數(shù)據(jù)庫表

在控制臺頁面中創(chuàng)建名為 ssb_``100 的數(shù)據(jù)庫

圖片

創(chuàng)建完畢后,進入到 SQL 工作表模塊,通過如下建表語句建立四個數(shù)據(jù)表(事實表),并保存對應(yīng)的 SQL 語句。

CREATE TABLE ssb_100.customer
(
C_CUSTKEY UInt32,
C_NAME String,
C_ADDRESS String,
C_CITY LowCardinality(String),
C_NATION LowCardinality(String),
C_REGION LowCardinality(String),
C_PHONE String,
C_MKTSEGMENT LowCardinality(String),
C_PLACEHOLDER Nullable(String)
)
ENGINE = CnchMergeTree ORDER BY (C_CUSTKEY);
CREATE TABLE ssb_100.lineorder
(
LO_ORDERKEY UInt32,
LO_LINENUMBER UInt8,
LO_CUSTKEY UInt32,
LO_PARTKEY UInt32,
LO_SUPPKEY UInt32,
LO_ORDERDATE Date,
LO_ORDERPRIORITY LowCardinality(String),
LO_SHIPPRIORITY UInt8,
LO_QUANTITY UInt8,
LO_EXTENDEDPRICE UInt32,
LO_ORDTOTALPRICE UInt32,
LO_DISCOUNT UInt8,
LO_REVENUE UInt32,
LO_SUPPLYCOST UInt32,
LO_TAX UInt8,
LO_COMMITDATE Date,
LO_SHIPMODE LowCardinality(String),
LO_PLACEHOLDER Nullable(String)
)
ENGINE = CnchMergeTree PARTITION BY toYear(LO_ORDERDATE) ORDER BY (LO_ORDERDATE, LO_ORDERKEY);
CREATE TABLE ssb_100.part
(
P_PARTKEY UInt32,
P_NAME String,
P_MFGR LowCardinality(String),
P_CATEGORY LowCardinality(String),
P_BRAND LowCardinality(String),
P_COLOR LowCardinality(String),
P_TYPE LowCardinality(String),
P_SIZE UInt8,
P_CONTAINER LowCardinality(String),
P_PLACEHOLDER Nullable(String)
)
ENGINE = CnchMergeTree ORDER BY P_PARTKEY;
CREATE TABLE ssb_100.supplier
(
S_SUPPKEY UInt32,
S_NAME String,
S_ADDRESS String,
S_CITY LowCardinality(String),
S_NATION LowCardinality(String),
S_REGION LowCardinality(String),
S_PHONE String,
S_PLACEHOLDER Nullable(String)
)
ENGINE = CnchMergeTree ORDER BY S_SUPPKEY;
CREATE TABLE ssb_100.dwdate
(
D_DATEKEY UInt32,
D_DATE String,
D_DAYOFWEEK String, -- defined in Section 2.6 as Size 8, but Wednesday is 9 letters
D_MONTH String,
D_YEAR UInt32,
D_YEARMONTHNUM UInt32,
D_YEARMONTH String,
D_DAYNUMINWEEK UInt32,
D_DAYNUMINMONTH UInt32,
D_DAYNUMINYEAR UInt32,
D_MONTHNUMINYEAR UInt32,
D_WEEKNUMINYEAR UInt32,
D_SELLINGSEASON String,
D_LASTDAYINWEEKFL UInt32,
D_LASTDAYINMONTHFL UInt32,
D_HOLIDAYFL UInt32,
D_WEEKDAYFL UInt32,
S_PLACEHOLDER Nullable(String)
)
ENGINE=CnchMergeTree() ORDER BY (D_DATEKEY);

SQL 執(zhí)行完畢后,在控制臺左側(cè)對應(yīng)的數(shù)據(jù)對象頁面會展示出創(chuàng)建完成的五個工作表,分別為 customer,dwdate,lineorder以及part 和 supplier

圖片

步驟四:從對象存儲中導(dǎo)入 SSB 數(shù)據(jù)

通過預(yù)先生成 SSB_100 GB 的數(shù)據(jù)集并存儲在對象存儲(如 AWS S3 或者 火山引擎 TOS),我們可以方便且快速的將數(shù)據(jù)導(dǎo)入到 ByteHouse 中進行分析。本次實踐中通過配置 火山引擎 TOS 的數(shù)據(jù)源對數(shù)據(jù)進行導(dǎo)入。

首先在數(shù)據(jù)加載模塊,新建對象存儲數(shù)據(jù)源,并配置對應(yīng)的秘鑰連接火山引擎對象存儲

圖片

圖片

連接新的數(shù)據(jù)源后,選擇 bytehouse-shared-dataset 的儲存桶和ssb_100/lineorder.csv 相應(yīng)的路徑

圖片

圖片

選擇之前建的數(shù)據(jù)庫ssb_100和對應(yīng)標表lineorder,然后按創(chuàng)建。重復(fù)步驟為其他四個工作表數(shù)據(jù)加載。

圖片

數(shù)據(jù)源中存儲的數(shù)據(jù)條數(shù)如下所示。用于導(dǎo)入完成后,對數(shù)據(jù)表的行數(shù)進行統(tǒng)計,進行準確性校驗。

圖片

創(chuàng)建導(dǎo)入任務(wù)完成后,點擊“開始”啟動導(dǎo)入任務(wù),任務(wù)啟動后會在幾秒鐘內(nèi)分配資源并初始化導(dǎo)入任務(wù),并在導(dǎo)入過程中展示預(yù)估的時間和導(dǎo)入進度。在導(dǎo)入任務(wù)的執(zhí)行詳情中,可以查看導(dǎo)入狀態(tài)、導(dǎo)入詳細日志、配置信息等。

圖片

圖片

步驟五:數(shù)據(jù)處理及分析

1、原始查詢測試

通過執(zhí)行 SSB 的 13 條查詢語句,對于多表關(guān)聯(lián)和排序等場景進行性能測試。查詢語句如下所示:

-- pre-warm
select * from ssb_100.customer order by C_CUSTKEY desc limit 100;
select * from ssb_100.dwdate order by D_DATEKEY desc limit 100;
select * from ssb_100.lineorder order by LO_ORDERKEY desc limit 100;
select * from ssb_100.part order by P_PARTKEY desc limit 100;
select * from ssb_100.supplier order by S_SUPPKEY desc limit 100;
select * from ssb_100.lineorder_flat order by LO_ORDERKEY desc limit 100;

-- Q1.1
select sum(LO_EXTENDEDPRICE*LO_DISCOUNT) as revenue
from ssb_100.lineorder
where toYear(LO_ORDERDATE) = 1993
and LO_DISCOUNT between 1 and 3
and LO_QUANTITY < 25;

-- Q1.2
select sum(LO_EXTENDEDPRICE*LO_DISCOUNT) as revenue
from ssb_100.lineorder
where toYYYYMM(LO_ORDERDATE) = 199401
and LO_DISCOUNT between 4 and 6
and LO_QUANTITY between 26 and 35;

-- Q1.3
select sum(LO_EXTENDEDPRICE*LO_DISCOUNT) as revenue
from ssb_100.lineorder
where toISOWeek(LO_ORDERDATE) = 6
and toYear(LO_ORDERDATE)= 1994
and LO_DISCOUNT between 5 and 7
and LO_QUANTITY between 26 and 35;

-- Q2.1
select sum(LO_REVENUE), toYear(LO_ORDERDATE) AS d_year, P_BRAND
from ssb_100.lineorder, ssb_100.part, ssb_100.supplier
where LO_PARTKEY = P_PARTKEY and LO_SUPPKEY = S_SUPPKEY
and P_CATEGORY = 'MFGR#53' and S_REGION = 'AMERICA'
GROUP BY d_year, P_BRAND;

-- Q2.2
SELECT sum(LO_REVENUE), toYear(LO_ORDERDATE) AS year, P_BRAND
FROM ssb_100.lineorder, ssb_100.part, ssb_100.supplier
WHERE LO_PARTKEY = P_PARTKEY and LO_SUPPKEY = S_SUPPKEY
and P_BRAND >= 'MFGR#2221' and P_BRAND <= 'MFGR#2228' and S_REGION = 'ASIA'
GROUP BY year, P_BRAND
ORDER BY year, P_BRAND;

-- Q2.3
SELECT sum(LO_REVENUE), toYear(LO_ORDERDATE) AS year, P_BRAND
FROM ssb_100.lineorder, ssb_100.part, ssb_100.supplier
WHERE LO_PARTKEY = P_PARTKEY and LO_SUPPKEY = S_SUPPKEY
and P_BRAND = 'MFGR#2239'and S_REGION = 'EUROPE'
GROUP BY year, P_BRAND
ORDER BY year, P_BRAND;

-- Q3.1
SELECT C_NATION, S_NATION, toYear(LO_ORDERDATE) AS year, sum(LO_REVENUE) AS revenue
FROM ssb_100.lineorder, ssb_100.part, ssb_100.supplier, ssb_100.customer
WHERE LO_PARTKEY = P_PARTKEY and LO_SUPPKEY = S_SUPPKEY and LO_CUSTKEY = C_CUSTKEY
and C_REGION = 'ASIA' AND S_REGION = 'ASIA' AND year >= 1992 AND year <= 1997
GROUP BY C_NATION, S_NATION, year
ORDER BY year ASC, revenue DESC;

-- Q3.2
SELECT C_CITY, S_CITY, toYear(LO_ORDERDATE) AS year, sum(LO_REVENUE) AS revenue
FROM ssb_100.lineorder, ssb_100.part, ssb_100.supplier, ssb_100.customer
WHERE LO_PARTKEY = P_PARTKEY and LO_SUPPKEY = S_SUPPKEY and LO_CUSTKEY = C_CUSTKEY
and C_NATION = 'UNITED STATES' AND S_NATION = 'UNITED STATES' AND year >= 1992 AND year <= 1997
GROUP BY C_CITY, S_CITY, year
ORDER BY year ASC, revenue DESC;

-- Q3.3
SELECT C_CITY, S_CITY, toYear(LO_ORDERDATE) AS year, sum(LO_REVENUE) AS revenue
FROM ssb_100.lineorder, ssb_100.part, ssb_100.supplier, ssb_100.customer
WHERE LO_PARTKEY = P_PARTKEY and LO_SUPPKEY = S_SUPPKEY and LO_CUSTKEY = C_CUSTKEY
and (C_CITY = 'UNITED KI1' OR C_CITY = 'UNITED KI5') AND (S_CITY = 'UNITED KI1' OR S_CITY = 'UNITED KI5') AND year >= 1992 AND year <= 1997
GROUP BY C_CITY, S_CITY, year
ORDER BY year ASC, revenue DESC;

-- Q3.4
SELECT C_CITY, S_CITY, toYear(LO_ORDERDATE) AS year, sum(LO_REVENUE) AS revenue
FROM ssb_100.lineorder, ssb_100.part, ssb_100.supplier, ssb_100.customer
WHERE LO_PARTKEY = P_PARTKEY and LO_SUPPKEY = S_SUPPKEY and LO_CUSTKEY = C_CUSTKEY
and (C_CITY = 'UNITED KI1' OR C_CITY = 'UNITED KI5') AND (S_CITY = 'UNITED KI1' OR S_CITY = 'UNITED KI5') AND toYYYYMM(LO_ORDERDATE) = 199712
GROUP BY C_CITY, S_CITY, year
ORDER BY year ASC, revenue DESC;

-- Q4.1
SELECT toYear(LO_ORDERDATE) AS year, C_NATION, sum(LO_REVENUE - LO_SUPPLYCOST) AS profit
FROM ssb_100.lineorder, ssb_100.part, ssb_100.supplier, ssb_100.customer
WHERE LO_PARTKEY = P_PARTKEY and LO_SUPPKEY = S_SUPPKEY and LO_CUSTKEY = C_CUSTKEY
and C_REGION = 'AMERICA' AND S_REGION = 'AMERICA' AND (P_MFGR = 'MFGR#1' OR P_MFGR = 'MFGR#2')
GROUP BY year, C_NATION
ORDER BY year ASC, C_NATION ASC;

-- Q4.2
SELECT toYear(LO_ORDERDATE) AS year, S_NATION, P_CATEGORY, sum(LO_REVENUE - LO_SUPPLYCOST) AS profit
FROM ssb_100.lineorder, ssb_100.part, ssb_100.supplier, ssb_100.customer
WHERE LO_PARTKEY = P_PARTKEY and LO_SUPPKEY = S_SUPPKEY and LO_CUSTKEY = C_CUSTKEY
and C_REGION = 'AMERICA' AND S_REGION = 'AMERICA' AND (year = 1997 OR year = 1998) AND (P_MFGR = 'MFGR#1' OR P_MFGR = 'MFGR#2')
GROUP BY year, S_NATION, P_CATEGORY
ORDER BY year ASC, S_NATION ASC, P_CATEGORY ASC;

-- Q4.3
SELECT toYear(LO_ORDERDATE) AS year, S_CITY, P_BRAND, sum(LO_REVENUE - LO_SUPPLYCOST) AS profit
FROM ssb_100.lineorder, ssb_100.part, ssb_100.supplier
WHERE LO_PARTKEY = P_PARTKEY and LO_SUPPKEY = S_SUPPKEY
and S_NATION = 'UNITED STATES' AND (year = 1997 OR year = 1998) AND P_CATEGORY = 'MFGR#14'
GROUP BY year, S_CITY, P_BRAND
ORDER BY year ASC, S_CITY ASC, P_BRAND ASC;

2.打平表測試

為了方便對 SSB 數(shù)據(jù)集進行測試,我們可以通過改寫 SSB,將星型模型打平轉(zhuǎn)換為大寬表進行分析

注:為了確保打平表的執(zhí)行,需要配置參數(shù) SET max_memory_usage = 20000000000; 此外需要在 ByteHouse 控制臺中配置查詢超時為 3600s (我的賬戶 > 查詢配置 > 查詢超時),避免執(zhí)行超時導(dǎo)致的失敗。

SET max_memory_usage = 20000000000;
SET send_timeout = 3600;
SET receive_timeout = 3600;
CREATE TABLE IF NOT EXISTS ssb_100.lineorder_flat
engine = CnchMergeTree
partition by toYear(LO_ORDERDATE)
order by (LO_ORDERDATE, LO_ORDERKEY) as
select
L.LO_ORDERKEY as LO_ORDERKEY,
L.LO_LINENUMBER as LO_LINENUMBER,
L.LO_CUSTKEY as LO_CUSTKEY,
L.LO_PARTKEY as LO_PARTKEY,
L.LO_SUPPKEY as LO_SUPPKEY,
L.LO_ORDERDATE as LO_ORDERDATE,
L.LO_ORDERPRIORITY as LO_ORDERPRIORITY,
L.LO_SHIPPRIORITY as LO_SHIPPRIORITY,
L.LO_QUANTITY as LO_QUANTITY,
L.LO_EXTENDEDPRICE as LO_EXTENDEDPRICE,
L.LO_ORDTOTALPRICE as LO_ORDTOTALPRICE,
L.LO_DISCOUNT as LO_DISCOUNT,
L.LO_REVENUE as LO_REVENUE,
L.LO_SUPPLYCOST as LO_SUPPLYCOST,
L.LO_TAX as LO_TAX,
L.LO_COMMITDATE as LO_COMMITDATE,
L.LO_SHIPMODE as LO_SHIPMODE,
C.C_NAME as C_NAME,
C.C_ADDRESS as C_ADDRESS,
C.C_CITY as C_CITY,
C.C_NATION as C_NATION,
C.C_REGION as C_REGION,
C.C_PHONE as C_PHONE,
C.C_MKTSEGMENT as C_MKTSEGMENT,
S.S_NAME as S_NAME,
S.S_ADDRESS as S_ADDRESS,
S.S_CITY as S_CITY,
S.S_NATION as S_NATION,
S.S_REGION as S_REGION,
S.S_PHONE as S_PHONE,
P.P_NAME as P_NAME,
P.P_MFGR as P_MFGR,
P.P_CATEGORY as P_CATEGORY,
P.P_BRAND as P_BRAND,
P.P_COLOR as P_COLOR,
P.P_TYPE as P_TYPE,
P.P_SIZE as P_SIZE,
P.P_CONTAINER as P_CONTAINER
from ssb_100.lineorder as L
inner join ssb_100.customer as C on C.C_CUSTKEY = L.LO_CUSTKEY
inner join ssb_100.supplier as S on S.S_SUPPKEY = L.LO_SUPPKEY
inner join ssb_100.part as P on P.P_PARTKEY = L.LO_PARTKEY;

建表完成后,通過執(zhí)行查詢語句進行 SSB 性能測試,如下所示:

-- F1.1
SELECT sum(LO_EXTENDEDPRICE * LO_DISCOUNT) AS revenue
FROM ssb_100.lineorder_flat
WHERE toYear(LO_ORDERDATE) = 1993
AND LO_DISCOUNT BETWEEN 1 AND 3
AND LO_QUANTITY < 25;
-- F1.2
SELECT sum(LO_EXTENDEDPRICE * LO_DISCOUNT) AS revenue
FROM ssb_100.lineorder_flat
WHERE toYYYYMM(LO_ORDERDATE) = 199401
AND LO_DISCOUNT BETWEEN 4 AND 6
AND LO_QUANTITY BETWEEN 26 AND 35;
-- F1.3
SELECT sum(LO_EXTENDEDPRICE * LO_DISCOUNT) AS revenue
FROM ssb_100.lineorder_flat
WHERE toISOWeek(LO_ORDERDATE) = 6
AND toYear(LO_ORDERDATE) = 1994
AND LO_DISCOUNT BETWEEN 5 AND 7
AND LO_QUANTITY BETWEEN 26 AND 35;
-- F2.1
SELECT sum(LO_REVENUE), toYear(LO_ORDERDATE) AS year, P_BRAND
FROM ssb_100.lineorder_flat
WHERE P_CATEGORY = 'MFGR#12' AND S_REGION = 'AMERICA'
GROUP BY year, P_BRAND
ORDER BY year, P_BRAND;
-- F2.2
SELECT sum(LO_REVENUE), toYear(LO_ORDERDATE) AS year, P_BRAND
FROM ssb_100.lineorder_flat
WHERE P_BRAND >= 'MFGR#2221' AND P_BRAND <= 'MFGR#2228' AND S_REGION = 'ASIA'
GROUP BY year, P_BRAND
ORDER BY year, P_BRAND;
-- F2.3
SELECT sum(LO_REVENUE), toYear(LO_ORDERDATE) AS year, P_BRAND
FROM ssb_100.lineorder_flat
WHERE P_BRAND = 'MFGR#2239' AND S_REGION = 'EUROPE'
GROUP BY year, P_BRAND
ORDER BY year, P_BRAND;
-- F3.1
SELECT C_NATION, S_NATION, toYear(LO_ORDERDATE) AS year, sum(LO_REVENUE) AS revenue
FROM ssb_100.lineorder_flat
WHERE C_REGION = 'ASIA' AND S_REGION = 'ASIA' AND year >= 1992 AND year <= 1997
GROUP BY C_NATION, S_NATION, year
ORDER BY year ASC, revenue DESC;
-- F3.2
SELECT C_CITY, S_CITY, toYear(LO_ORDERDATE) AS year, sum(LO_REVENUE) AS revenue
FROM ssb_100.lineorder_flat
WHERE C_NATION = 'UNITED STATES' AND S_NATION = 'UNITED STATES' AND year >= 1992 AND year <= 1997
GROUP BY C_CITY, S_CITY, year
ORDER BY year ASC, revenue DESC;
-- F3.3
SELECT C_CITY, S_CITY, toYear(LO_ORDERDATE) AS year, sum(LO_REVENUE) AS revenue
FROM ssb_100.lineorder_flat
WHERE (C_CITY = 'UNITED KI1' OR C_CITY = 'UNITED KI5') AND (S_CITY = 'UNITED KI1' OR S_CITY = 'UNITED KI5') AND year >= 1992 AND year <= 1997
GROUP BY C_CITY, S_CITY, year
ORDER BY year ASC, revenue DESC;
-- F3.4
SELECT C_CITY, S_CITY, toYear(LO_ORDERDATE) AS year, sum(LO_REVENUE) AS revenue
FROM ssb_100.lineorder_flat
WHERE (C_CITY = 'UNITED KI1' OR C_CITY = 'UNITED KI5') AND (S_CITY = 'UNITED KI1' OR S_CITY = 'UNITED KI5') AND toYYYYMM(LO_ORDERDATE) = 199712
GROUP BY C_CITY, S_CITY, year
ORDER BY year ASC, revenue DESC;
-- F4.1
SELECT toYear(LO_ORDERDATE) AS year, C_NATION, sum(LO_REVENUE - LO_SUPPLYCOST) AS profit
FROM ssb_100.lineorder_flat
WHERE C_REGION = 'AMERICA' AND S_REGION = 'AMERICA' AND (P_MFGR = 'MFGR#1' OR P_MFGR = 'MFGR#2')
GROUP BY year, C_NATION
ORDER BY year ASC, C_NATION ASC;
-- F4.2
SELECT toYear(LO_ORDERDATE) AS year, S_NATION, P_CATEGORY, sum(LO_REVENUE - LO_SUPPLYCOST) AS profit
FROM ssb_100.lineorder_flat
WHERE C_REGION = 'AMERICA' AND S_REGION = 'AMERICA' AND (year = 1997 OR year = 1998) AND (P_MFGR = 'MFGR#1' OR P_MFGR = 'MFGR#2')
GROUP BY year, S_NATION, P_CATEGORY
ORDER BY year ASC, S_NATION ASC, P_CATEGORY ASC;
-- F4.3
SELECT toYear(LO_ORDERDATE) AS year, S_CITY, P_BRAND, sum(LO_REVENUE - LO_SUPPLYCOST) AS profit
FROM ssb_100.lineorder_flat
WHERE S_NATION = 'UNITED STATES' AND (year = 1997 OR year = 1998) AND P_CATEGORY = 'MFGR#14'
GROUP BY year, S_CITY, P_BRAND
ORDER BY year ASC, S_CITY ASC, P_BRAND ASC;

III. 查詢結(jié)果和成本分析

執(zhí)行完畢后,統(tǒng)計查詢結(jié)果如下所示:

注:查詢結(jié)果因配置參數(shù)和資源配置的不同,耗時也有差異,歡迎聯(lián)系 ByteHouse 進行查詢優(yōu)化。

圖片

圖片

查詢完成后,在 ByteHouse 計算組詳情頁面可以查看工作負載,包括總查詢條數(shù)和 CPU/Mem 利用率等,從而確認計算資源的使用情況。

圖片

根據(jù)本次壓測進行預(yù)估,消耗計算和存儲資源如下表所示,由于 ByteHouse 云數(shù)倉版本按使用量計費的能力,在空閑時支持自動關(guān)閉計算組并不收取閑置費用,從而能夠極大的節(jié)省資源。測試完成后,預(yù)估的總體消耗約為 31.23 元。

圖片

責任編輯:龐桂玉 來源: 字節(jié)跳動技術(shù)團隊
相關(guān)推薦

2010-12-22 17:03:32

西蒙協(xié)同測試

2024-03-06 14:48:54

云原生

2023-12-25 21:59:18

2012-11-09 13:42:33

Google Clou

2025-08-07 15:59:06

2011-12-15 09:38:38

100Gb以太網(wǎng)100Gb以太網(wǎng)

2016-12-20 12:34:46

存儲MySQL流程

2014-04-22 22:05:52

A10應(yīng)用交付

2023-01-03 17:43:39

網(wǎng)易郵箱數(shù)倉

2018-04-20 12:12:18

數(shù)據(jù)分析可視化數(shù)據(jù)挖掘

2016-12-15 21:15:58

大數(shù)據(jù)

2017-09-15 10:23:06

可視化Bug數(shù)據(jù)分析

2015-11-18 17:34:55

Mellanox

2011-08-04 09:57:03

dbmonsterMySQL

2009-12-30 11:03:26

ADO.Net性能

2023-05-26 20:08:35

點贊
收藏

51CTO技術(shù)棧公眾號

精品久久久久久中文字幕大豆网| 国产麻豆成人精品| 亚洲欧美在线一区二区| 日韩毛片在线免费看| 国产美女性感在线观看懂色av| 久久av中文字幕片| 韩国一区二区电影| 久久久久亚洲AV成人无在| 国产电影一区二区| 欧美日韩国产在线| 中文字幕第50页| 欧美精品少妇| 国产一区福利在线| 欧美与黑人午夜性猛交久久久| 18精品爽国产三级网站| 国产色噜噜噜91在线精品 | 久久精品国产999大香线蕉| 欧美成年人视频网站欧美| 亚洲蜜桃精久久久久久久久久久久| 91综合国产| 亚洲成a人片综合在线| 亚洲国产精品视频一区| 三级网站免费观看| 精品一区二区三区在线视频| 欧美亚洲国产视频| 国产成人无码aa精品一区| 国产欧美日韩精品一区二区免费| 日韩精品一区二区三区老鸭窝 | 欧美丰满艳妇bbwbbw| 国产成人1区| 亚洲国产精品免费| 亚洲一级片免费观看| av在线不卡精品| 精品日韩美女的视频高清| 蜜臀精品一区二区| 国产一区久久精品| 国产精品久久久久久久久免费丝袜 | 国产精品嫩草久久久久| 久久99精品久久久久久三级| 国产成人精品av在线观| 久久精品999| 国产精品成人免费视频| www欧美在线| 99精品热视频只有精品10| 欧美裸体男粗大视频在线观看| 香蕉久久久久久久| 精品色999| 亚洲欧美一区二区激情| 欧美 变态 另类 人妖| 国产精品网在线观看| 欧美哺乳videos| 妖精视频在线观看| 国产欧美日韩电影| 日韩欧美一区在线观看| 亚洲综合20p| 青草伊人久久| 欧美一级二级三级蜜桃| 日韩欧美中文视频| 欧美三级一区| 欧美tk—视频vk| 日韩av成人网| 中文字幕 亚洲一区| 亚洲 欧美 中文字幕| 国产精品日韩| 欧美亚洲视频在线看网址| 日本在线视频免费| 国产精品一二| 日本在线精品视频| 成人免费一级片| 麻豆视频观看网址久久| 国产一区二区丝袜高跟鞋图片| 中文字幕在线观看免费| 极品少妇xxxx精品少妇| 91探花福利精品国产自产在线 | 日韩精品一级中文字幕精品视频免费观看 | 亚洲午夜在线观看| 欧美成年黄网站色视频| 成人免费在线播放视频| 国产精品一二三在线观看| 欧美高清另类hdvideosexjaⅴ| 一区二区国产视频| 9久久9毛片又大又硬又粗| 韩国久久久久久| 欧美日韩精品一区二区天天拍小说| 黄色一级片免费播放| julia中文字幕一区二区99在线| 亚洲国产精品福利| 99久久精品免费视频| 婷婷亚洲五月色综合| 欧美激情精品久久久久久变态| 三级黄色在线视频| 日韩电影免费在线看| 亚洲一区久久久| 天堂av资源网| 国产精品天美传媒沈樵| 99久久99久久精品| jizz内谢中国亚洲jizz| 91精品国产综合久久久久久| 大尺度做爰床戏呻吟舒畅| 国产精品中文字幕亚洲欧美| 久久久精品一区二区三区| 五月天婷婷丁香| 蜜臀va亚洲va欧美va天堂| 99久久精品久久久久久ai换脸| 暖暖视频在线免费观看| 亚洲男人的天堂一区二区| 亚洲熟妇国产熟妇肥婆| 97色婷婷成人综合在线观看| 日韩av一区在线观看| 开心激情五月网| 国产欧美日韩综合一区在线播放| 国产欧美亚洲视频| 天堂а√在线8种子蜜桃视频| 国产精品家庭影院| 免费看日本毛片| 91精品一区| 亚洲视频国产视频| 久久久久性色av无码一区二区| 视频一区二区中文字幕| 国产精品嫩草在线观看| 日本美女在线中文版| 色伊人久久综合中文字幕| 国产a级片视频| 99久久精品费精品国产风间由美| 欧美洲成人男女午夜视频| 精品人妻一区二区三区日产乱码 | 日本午夜在线观看| 秋霞午夜鲁丝一区二区老狼| 精品在线观看一区二区| 欧美hdxxx| 欧美一区二区三区精品| 手机av在线不卡| 老司机精品福利视频| 精品欧美国产| segui88久久综合9999| 欧美一级淫片007| 伊人久久久久久久久久久久久久| 日韩一区欧美二区| 日本一区二区在线视频| xxxxxx欧美| 日韩电影网在线| 日本一区二区不卡在线| 成人网在线免费视频| 欧美在线观看视频免费| 欧美区一区二区| 欧美成人黑人xx视频免费观看| 夜夜嗨av禁果av粉嫩avhd| 久久久精品黄色| 日韩免费高清在线| 国产欧美一区二区精品久久久| 欧洲成人性视频| 欧美视频综合| 色婷婷亚洲一区二区三区| 粉嫩av蜜桃av蜜臀av| 久久久久国产精品午夜一区| 欧美日韩在线一区二区三区| 高清不卡亚洲| 一区二区三区天堂av| 国产成人麻豆免费观看| 中文欧美字幕免费| 一二三级黄色片| 一个色综合网| 99国产在线| av2020不卡| 亚洲精品一区二区三区婷婷月| 欧美啪啪小视频| 久久久久久久久久看片| 免费看涩涩视频| 888久久久| 波多野结衣一区二区三区在线观看| 宅男在线观看免费高清网站| 欧美大片在线观看| 国产情侣在线视频| 国产欧美日本一区二区三区| 亚洲18在线看污www麻豆| 欧美激情综合| 久久国产精品 国产精品| 国产精品伦理| www.欧美精品| 亚洲AV无码国产精品午夜字幕| 亚洲第一综合色| 黄色a一级视频| 奇米一区二区三区| 热久久最新网址| 少妇一区二区三区| 国产精品午夜一区二区欲梦| 影音先锋在线视频| 日韩精品在线第一页| 一本大道伊人av久久综合| 亚洲最色的网站| 婷婷色一区二区三区| 国产一区二区三区视频在线播放| 男女视频网站在线观看| 欧美日韩一区二区综合| 99一区二区三区| 蜜桃精品在线| 欧美日韩高清在线观看| 极品白浆推特女神在线观看| 在线综合视频播放| www.国产高清| 亚洲欧美日本韩国| 一区二区三区四区免费| 成人亚洲一区二区一| 少妇黄色一级片| 好看不卡的中文字幕| 午夜一区二区三区| 韩国女主播一区二区三区| 国产精品情侣自拍| 中文字幕在线视频久| 欧美大片欧美激情性色a∨久久| 韩国精品视频| 亚洲大胆人体av| 国产99久久九九精品无码免费| 日本韩国欧美一区二区三区| 国产污片在线观看| 亚洲视频一二区| 国产黄色录像视频| 91视频一区二区三区| www.久久com| 喷水一区二区三区| 97xxxxx| 亚洲电影在线| 丁香六月激情网| 亚洲色图网站| 在线观看欧美亚洲| 欧美手机在线| 日本一区二区免费看| 亚洲宅男一区| 久久精品国产第一区二区三区最新章节 | 中文字幕乱码在线| 国产999精品久久久久久| aaaaaaaa毛片| 国产一区不卡视频| 亚洲另类第一页| 蜜桃av噜噜一区| 日本熟妇人妻中出| 日韩av成人高清| 网站一区二区三区| 日韩在线一区二区| 亚洲色成人一区二区三区小说| 亚洲欧美亚洲| 一区二区三区的久久的视频| 欧美色就是色| 欧美日韩在线精品| 97视频一区| 亚洲综合在线播放| 亚洲日日夜夜| 91在线观看免费高清| 福利一区和二区| 国产激情视频一区| 亚洲成人激情社区| 国产精品狠色婷| av成人在线播放| 欧美又大又粗又长| 忘忧草在线www成人影院| 欧美综合一区第一页| 日本乱理伦在线| 欧美激情综合亚洲一二区| 性欧美videos高清hd4k| 中文字幕精品久久| 欧美日韩在线资源| 色噜噜狠狠色综合网图区 | 精品中文字幕乱| 国产福利在线播放麻豆| 欧美另类精品xxxx孕妇| 欧美人与禽猛交乱配| 久久艳片www.17c.com| 羞羞视频在线观看免费| 欧美黑人xxxx| 午夜影院一区| 国产精品永久免费视频| 欧美成年网站| 国内精品久久国产| 日韩在线麻豆| 亚洲一区三区电影在线观看| 日产精品一区二区| 91免费视频黄| 亚洲精品极品| 国产极品美女高潮无套久久久| 蜜臀va亚洲va欧美va天堂 | 免费极品av一视觉盛宴| 红桃视频国产精品| 无罩大乳的熟妇正在播放| 日本欧美在线观看| 三日本三级少妇三级99| 国产成人亚洲精品青草天美| 日本aaa视频| 中文字幕精品—区二区四季| 国产三级aaa| 五月天激情综合| 一二三区免费视频| 欧美日韩国产综合一区二区| 欧美一级特黄aaaaaa大片在线观看| 日韩黄色在线免费观看| 国产精品一区二区婷婷| 欧美日本中文字幕| 日韩理论视频| 国产精品中文久久久久久久| 精品综合久久88少妇激情| 免费一区二区三区| 99久久精品费精品国产风间由美| www国产精品内射老熟女| 美女在线一区二区| 野战少妇38p| 亚洲欧洲国产日韩| 国产无码精品在线播放| 欧美午夜在线一二页| 婷婷色在线视频| 日韩在线观看网址| 丁香花在线高清完整版视频| 国产美女搞久久| 久久精品66| 日韩国产欧美精品| 亚洲国产第一| 中文字幕天天干| 国产精品12区| 午夜激情福利电影| 午夜精品一区二区三区三上悠亚| www.av88| 亚洲黄页视频免费观看| 黄色免费在线看| 国产精品女人网站| 理论片一区二区在线| 一区二区在线不卡| 丝袜国产日韩另类美女| 佐佐木明希电影| 国产精品乱人伦| 免费无码国产精品| 精品国产电影一区二区| 欧美日韩伦理片| 欧美亚洲午夜视频在线观看| 色妞ww精品视频7777| 咪咪色在线视频| 日韩制服丝袜先锋影音| 李丽珍裸体午夜理伦片| 亚洲一区二区在线免费观看视频| 亚洲一区中文字幕永久在线| 亚洲裸体xxxx| 原纱央莉成人av片| 99久久国产免费免费| 欧美gvvideo网站| 九九九在线观看视频| 久久亚区不卡日本| 中文字幕av影院| 亚洲福利视频专区| 超碰最新在线| 91免费在线视频网站| 日韩精品欧美| 在线播放av中文字幕| 国产精品无码永久免费888| 国产一级免费av| 亚洲激情视频在线观看| 国产91足控脚交在线观看| 国产精品一区在线观看| 午夜亚洲福利| 免费欧美一级片| 亚洲一区二区三区免费视频| 99热这里是精品| 久久国产精品影视| 国产精品tv| 国产va亚洲va在线va| 91小视频免费观看| 日韩一区二区视频在线| 日韩精品视频免费在线观看| 性欧美1819sex性高清| 久久久久天天天天| 美国毛片一区二区三区| 91香蕉视频网| 欧美一区二区三区色| 爱草tv视频在线观看992| 久久免费看av| 免费精品99久久国产综合精品| 日本美女bbw| 欧美日韩大陆一区二区| 日本中文字幕中出在线| 国产精品推荐精品| 日韩极品在线观看| 中文字幕精品亚洲| 欧美一区二视频| 九色porny自拍视频在线观看| 免费久久久一本精品久久区| 琪琪一区二区三区| 欧美三级小视频| 精品国产凹凸成av人导航| 高清电影一区| 伊人久久99| 99国内精品久久| 亚洲天堂中文字幕在线| 久久亚洲精品视频| 一道在线中文一区二区三区| 手机看片福利盒子久久| 亚洲夂夂婷婷色拍ww47| 神马电影在线观看| 成人精品视频99在线观看免费| 欧美先锋影音| 日韩人妻无码精品综合区| 日韩免费视频线观看| 亚洲人成午夜免电影费观看| 中文字幕一区二区三区四区五区六区| 国产成人av网站|