日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

持久內存型性能白皮書

本文介紹Tair(企業版)持久內存型性能測試的測試環境、測試工具、測試方法與測試結果。

產品概述

Tair持久內存型,基于持久內存技術,為您提供大容量、兼容Redis的內存數據庫產品。單實例成本對比Redis開源版最高可降低30%,且數據持久化不依賴傳統磁盤,保證每個操作持久化的同時提供近乎Redis開源版的吞吐和延時,極大提升業務數據可靠性。更多信息請參見持久內存型

測試環境

測試環境信息

說明

地域和可用區

所有測試均在華北3(張家口)地域的可用區A中完成。

實例架構

標準版(雙副本)架構,詳情請參見標準架構

部署壓測工具的機器

云服務器ECS實例,規格為ecs.g6e.8xlarge,詳情請參見實例規格族

持久內存型實例規格

本次測試以tair.scm.standard.32m.128d規格為例。

測試工具

采用開源社區的YCSB壓測工具進行壓測。YCSB是一款Java編寫的支持多種數據庫的性能測試工具,具體安裝和使用方法請參見YCSB

由于開源版本僅支持測試Hash結構的數據,下載YCSB工具后,需要將YCSB/redis/src/main/java/site/ycsb/db/RedisClient.java文件替換為RedisClient.java文件,用于測試String結構的數據。

工作負載

測試的總數據量8 GB,數據分布方法為zipfian,具體測試場景如下:

  • Load:100%的寫操作。

  • Workload C:100%的讀操作。

  • Workload A:50%的更新操作與50%的讀操作。

關于Workload的詳細介紹,請參見Core Workloads

說明

由于應用場景不同,Set、Zset中的復雜命令無法進行通用測試,您可以根據您的業務場景自行測試。

測試命令

#加載數據
workload=a
./bin/ycsb load redis -s -P workloads/workload${workload} -p "redis.host=${server_ip}" -p  "redis.port=${port}" -p "redis.password=${password}" -p "recordcount=${recordcount}" -p "operationcount=${operationcount}" -p "redis.timeout=30000" -p "redis.command_group=${command_group}" -p "fieldcount=${fieldcount}" -p "fieldlength=${fieldlength}" -threads ${threads}  -p "redis.password=***:*****"

#運行Workload C
workload=c
./bin/ycsb run redis -s -P workloads/workload${workload} -p "redis.host=${server_ip}" -p  "redis.port=${port}" -p "redis.password=${password}" -p "recordcount=${recordcount}" -p "operationcount=${operationcount}" -p "redis.timeout=30000" -p "redis.command_group=${command_group}" -p "fieldcount=${fieldcount}" -p "fieldlength=${fieldlength}" -threads ${threads} -p "redis.password=***:*****"

#運行Workload A
workload=a
./bin/ycsb run redis -s -P workloads/workload${workload} -p "redis.host=${server_ip}" -p  "redis.port=${port}" -p "redis.password=${password}" -p "recordcount=${recordcount}" -p "operationcount=${operationcount}" -p "redis.timeout=30000" -p "redis.command_group=${command_group}" -p "fieldcount=${fieldcount}" -p "fieldlength=${fieldlength}" -threads ${threads} -p "redis.password=***:*****" 

表 1. 參數說明

參數

說明

server_ip

實例的IP地址。

port

實例的服務端口。

password

根據選取賬號的不同,密碼的填寫格式有一定區別:

  • 使用默認賬號:直接填寫密碼即可。例如實例默認賬號為r-bp1zxszhcgatnx****,自定義密碼為Password21,密碼驗證命令為AUTH Password21

  • 使用新創建的賬號:密碼格式為user:password。例如自定義賬號為testaccount,密碼為Rp829dlwa,密碼驗證命令為AUTH testaccount:Rp829dlwa

說明

如果忘記密碼,請參見修改或重置密碼

recordcount

數據裝載階段準備的數據量。

operationcount

執行操作的數據量。

command_group

測試的數據結構,本案例中,依次測試下述數據結構:

  • String

  • Hash

  • List

  • Set

  • Zset

fieldcount

字段或元素個數,本案例中,String數據結構配置為1,其他數據結構配置為10。

fieldlength

值長度,根據測試需求配置。

threads

YCSB線程數,根據實例規格配置。

測試結果

測試指標

說明

QPS

每秒處理的讀寫操作數,單位為次/秒。

INSERT Average Latency

寫操作平均延遲,單位為微秒(us)。

INSERT 99th Percentile Latency

處理速度最快的99%寫操作中,最長的延遲時間,單位為微秒。例如該指標的值為500微秒,表示99%的請求可以在500微秒內被處理。

READ AverageLatency

讀操作平均延遲,單位為微秒。

READ 99thPercentileLatency

處理速度最快的99%讀操作中,最長的延遲時間,單位為微秒。

UPDATE AverageLatency

更新操作平均延遲,單位為微秒。

UPDATE 99thPercentileLatency

處理速度最快的99%更新操作中,最長延遲時間,單位為微秒。

Load場景測試結果

表 2. String數據結構

Value長度(字節)

QPS(次/秒)

INSERT Average Latency(微秒)

INSERT 99th Percentile Latency(微秒)

128字節

134,478

473

687

256字節

126,139

504

828

1024字節

99,775

638

1,051

2048字節

77,130

826

1,157

4096字節

60,646

1,050

1,534

表 3. Hash數據結構

Key中的Field數量

Value長度(字節)

QPS(次/秒)

INSERT Average Latency(微秒)

INSERT 99th Percentile Latency(微秒)

10

128

47,353

1,348

1,885

256

46,716

1,366

2,181

1,024

27,759

2,297

2,873

2,048

16,605

3,833

4,923

表 4. List數據結構

Key中的Element數量

Value長度(字節)

QPS(次/秒)

INSERT Average Latency(微秒)

INSERT 99th Percentile Latency(微秒)

10

128

64,950

979

1,310

256

47,157

1,348

1,752

1,024

26,719

2,386

3,457

2,048

16,714

3,811

4,751

4,096

10,129

6,279

7,891

表 5. Set數據結構

Key中的Member數量

Value長度(字節)

QPS(次/秒)

INSERT Average Latency(微秒)

INSERT 99th Percentile Latency(微秒)

10

128

63,670

1,001

1,514

256

44,707

1,427

2,129

1,024

25,375

2,513

3,239

2,048

14,318

4,451

5,619

4,096

8,378

7,608

9,095

表 6. Sorted Set數據結構

Key中的Element數量

Value長度(字節)

QPS(次/秒)

INSERT Average Latency(微秒)

INSERT 99th Percentile Latency(微秒)

10

128

40,292

1,585

2,469

256

34,168

1,869

2,569

1,024

21,347

2,989

3,905

2,048

12,868

4,956

6,255

4,096

7,864

8,101

9,599

Workload C場景測試結果

表 7. String數據結構

Value長度(字節)

QPS(次/秒)

READ AverageLatency(微秒)

READ 99thPercentileLatency(微秒)

128字節

170,699

362

546

256字節

163,829

380

565

1024字節

161,491

386

569

2048字節

130,189

487

729

4096字節

115,433

548

808

表 8. Hash數據結構

Key中的Field數量

Value長度(字節)

QPS(次/秒)

READ AverageLatency(微秒)

READ 99thPercentileLatency(微秒)

10

128

96,111

662

874

256

86,892

733

915

1,024

61,608

1,030

1,293

2,048

37,334

1,696

2,331

4,096

25,943

2,429

3,319

表 9. List數據結構

Key中的Element數量

Value長度(字節)

QPS(次/秒)

READ AverageLatency(微秒)

READ 99thPercentileLatency(微秒)

10

128

105,296

604

889

256

97,047

655

890

1,024

66,384

955

1,192

2,048

35,796

1,769

2,461

4,096

26,314

2,392

3,271

表 10. Set數據結構

Key中的Member數量

Value長度(字節)

QPS(次/秒)

READ AverageLatency(微秒)

READ 99thPercentileLatency(微秒)

10

128

97,825

651

896

256

80,954

787

970

1024

59,924

1060

1313

2048

33,356

1900

2637

4096

23,605

2677

3723

表 11. Sorted Set數據結構

Key中的Element數量

Value長度(字節)

QPS(次/秒)

READ AverageLatency(微秒)

READ 99thPercentileLatency(微秒)

10

128

58,380

1,093

1,341

256

56,287

1,133

1,390

1,024

47,468

1,338

1,688

2,048

30,073

2,096

2,783

4,096

21,850

2,880

3,765

Workload A場景測試結果

表 12. String數據結構

Value長度(字節)

QPS(次/秒)

READ AverageLatency(微秒)

READ 99thPercentileLatency(微秒)

UPDATE AverageLatency(微秒)

UPDATE 99thPercentileLatency(微秒)

128

141,120

451

616

450

618

256

137,551

463

617

461

618

1,024

124,165

516

724

508

725

2,048

92,652

695

881

678

871

4,096

78,994

819

1,042

791

1,024

表 13. Hash數據結構

Key中的Field數量

Value長度(字節)

QPS(次/秒)

READ AverageLatency(微秒)

READ 99thPercentileLatency(微秒)

UPDATE AverageLatency(微秒)

UPDATE 99thPercentileLatency(微秒)

10

128

99,495

646

831

633

820

256

88,235

731

985

712

966

1,024

72,013

892

1,159

863

2,049

2,048

45,790

1,379

1,898

1,354

2,821

4,096

32,912

1,891

2,931

1,915

7,887

表 14. List數據結構

Key中的Element數量

Value長度(字節)

QPS(次/秒)

READ AverageLatency(微秒)

READ 99thPercentileLatency(微秒)

UPDATE AverageLatency(微秒)

UPDATE 99thPercentileLatency(微秒)

10

128

71,696

591

775

1,185

1,383

256

66,294

638

800

1,281

1,456

1,024

53,402

791

1,006

1,581

1,865

2,048

36,519

1,221

1,581

2,232

2,831

4,096

28,390

1,618

2,113

2,803

3,777

表 15. Set數據結構

Key中的Member數量

Value長度(字節)

QPS(次/秒)

READ AverageLatency(微秒)

READ 99thPercentileLatency(微秒)

UPDATE AverageLatency(微秒)

UPDATE 99thPercentileLatency(微秒)

10

128

66,346

640

792

1,282

1,445

256

60,010

707

993

1,415

1,957

1,024

45,359

933

1,128

1,858

2,073

2,048

29,027

1,529

2,021

2,820

4,507

4,096

21,440

2,144

2,773

3,726

5,095

表 16. Sorted Set數據結構

Key中的Element數量

Value長度(字節)

QPS(次/秒)

READ AverageLatency(微秒)

READ 99thPercentileLatency(微秒)

UPDATE AverageLatency(微秒)

UPDATE 99thPercentileLatency(微秒)

10

128

49,695

861

1,050

1,707

1,912

256

48,036

891

1,084

1,763

1,970

1,024

39,795

1,081

1,386

2,107

2,563

2,048

28,415

1,597

1,981

2,855

3,589

4,096

21,317

2,247

2,821

3,665

4,787