All Products
Search
Document Center

ApsaraDB for MongoDB:Makalah putih kinerja

Last Updated:Jun 04, 2026

Hasil benchmark YCSB untuk ApsaraDB for MongoDB pada arsitektur server fisik dan disk cloud, mencakup berbagai spesifikasi instans serta rasio baca/tulis.

Lingkungan pengujian

Parameter

ECS untuk uji stres

ApsaraDB for MongoDB (Server Fisik)

ApsaraDB for MongoDB (Cloud Disk)

Wilayah dan zona

China (Hangzhou) Zona H

China (Hangzhou) Zona H

China (Hangzhou) Zona H

Jenis jaringan

VPC

VPC

VPC

Family instans

c6e (Dioptimalkan komputasi, kinerja ditingkatkan)

Tujuan Umum dan Khusus

Spesifikasi khusus

Jenis instans

ecs.c6e.2xlarge (8 core, 16 GB)

Hasil pengujian

Hasil pengujian

Jenis penyimpanan

Disk cloud ESSD PL1

Local SSD

Disk cloud ESSD PL1

Ruang penyimpanan

-

500 GB

500 GB

Topologi

-

Kumpulan replika tiga node standar (satu primary, satu secondary, dan satu node tersembunyi)

Kumpulan replika tiga node standar (satu primary, satu secondary, dan satu node tersembunyi)

Versi image

Alibaba Cloud Linux 3.2104 LTS 64-bit

3.10.0-327.ali2017.alios7.x86_64

4.19.81-17.2.al7.x86_64

Versi kernel instance

-

MongoDB 4.2 (versi minor garis dasar 4.2.13)

MongoDB 4.4 (versi minor garis dasar 4.4.1)

Konfigurasi konsistensi

-

Default read/write concern

Default read/write concern

Catatan

Instans ECS dan ApsaraDB for MongoDB berada di wilayah dan zona yang sama. Round-trip time (RTT): sekitar 0,104 ms.

Tool pengujian

Pengujian ini menggunakan YCSB 0.17.0 untuk benchmarking.

Catatan

YCSB adalah alat benchmarking berbasis Java untuk berbagai database.

Prosedur pengujian

  1. Tambahkan primary private IP address instans ECS ke daftar putih ApsaraDB for MongoDB. Ubah daftar putih.

    Catatan

    Anda dapat login ke Konsol ECS dan melihat primary private IP address instans ECS di bagian Network Information pada halaman Instance Details.

  2. Sambungkan ke instans ECS. Sambungkan ke instans ECS.

  3. Muat data uji menggunakan alat YCSB.

    ./bin/ycsb load mongodb -s -p workload=site.ycsb.workloads.CoreWorkload -p recordcount=1000000 -p mongodb.url="mongodb://test:****@dds-bp13e84d11****.mongodb.rds.aliyuncs.com:3717/admin" -threads 8

    Modifikasi parameter berikut:

    • recordcount=1000000: Jumlah total catatan yang dimuat ke instans ApsaraDB for MongoDB.

    • mongodb.url="mongodb://test:****@dds-bp13e84d11****.mongodb.rds.aliyuncs.com:3717/admin": Titik akhir instans ApsaraDB for MongoDB. Pada contoh ini, akun database adalah test dan database-nya adalah admin.

      Catatan

      Anda dapat masuk ke konsol ApsaraDB for MongoDB dan melihat titik akhir di bagian Private Connection - VPC pada halaman Database Connection.

    • threads 8: Jumlah thread konkuren untuk klien.

  4. Jalankan perintah berikut untuk melakukan uji stres.

    ./bin/ycsb run mongodb -s -p workload=site.ycsb.workloads.CoreWorkload -p recordcount=1000000 -p operationcount=5000000 -p insertproportion=0 -p readproportion=50 -p updateproportion=50 -p requestdistribution=zipfian -p mongodb.url="mongodb://test:****@dds-bp13e84d11****.mongodb.rds.aliyuncs.com:3717/admin" -threads 8

    Modifikasi parameter berikut:

    • recordcount=1000000: Jumlah total catatan data yang dimuat ke instans ApsaraDB for MongoDB.

    • operationcount=5000000: Jumlah operasi baca dan tulis yang akan dilakukan.

    • insertproportion=0: Proporsi operasi insert.

    • readproportion=50: Proporsi operasi baca.

    • updateproportion=50: Proporsi operasi update.

    • mongodb.url="mongodb://test:****@dds-bp13e84d11****.mongodb.rds.aliyuncs.com:3717/admin": Titik akhir instans ApsaraDB for MongoDB. Pada contoh ini, akun database adalah test dan database-nya adalah admin.

      Catatan

      Anda dapat login ke Konsol ApsaraDB for MongoDB lalu melihat titik akhir instans di bagian Internal Connections - VPC pada halaman Database Connections.

    • threads 8: Jumlah thread konkuren pada klien.

Hasil pengujian

Skenario

  • r:w=100:0: 100% baca, 0% tulis.

  • r:w=95:5: 95% baca, 5% tulis.

  • r:w=50:50: 50% baca, 50% tulis.

  • r:w=5:95: 5% baca, 95% tulis.

  • r:w=0:100: 0% baca, 100% tulis.

Parameter

  • recordcount: Total catatan yang dimuat ke instans ApsaraDB for MongoDB.

  • operationcount: Total operasi baca dan tulis.

  • threads: Thread klien konkuren.

  • throughput: Operasi per detik (OPS).

  • RAL: Latensi baca rata-rata dalam mikrodetik (µs).

  • WAL: Latensi tulis rata-rata dalam mikrodetik (µs).

Catatan

Jika RAL atau WAL bernilai 0, berarti tidak ada operasi baca atau tulis yang dilakukan.

Tabel dan grafik berikut membandingkan arsitektur server fisik dan disk cloud pada berbagai rasio baca/tulis.

Instans server fisik (MongoDB 4.2)

Muat data uji

CPU/Memori

Spesifikasi instans

Recordcount

Threads

Throughput

RAL

WAL

1:2

1 core, 2 GB (tujuan umum)

1000000

4

3589

0

1110

2 core, 4 GB (tujuan umum)

2000000

8

7629

0

521

4 core, 8 GB (tujuan umum)

4000000

16

24300

0

654

8 core, 16 GB (tujuan umum)

8000000

32

26745

0

1191

1:4

8 core, 32 GB (tujuan umum)

16000000

32

29090

0

1095

16 core, 64 GB (tujuan umum)

32000000

128

41098

0

3033

1:8

2 core, 16 GB (spesifikasi khusus)

8000000

8

6553

0

1217

4 core, 32 GB (spesifikasi khusus)

16000000

16

14526

0

1097

8 core, 64 GB (spesifikasi khusus)

32000000

32

35437

0

899

16 core, 128 GB (spesifikasi khusus)

64000000

160

60078

0

2658

r:w=100:0

CPU:memori

Spesifikasi instans

Jumlah operasi

Threads

Throughput

RAL

WAL

1:2

1 core, 2 GB (tujuan umum)

1.000.000

4

6.387

623

0

2 core, 4 GB (tujuan umum)

2.000.000

8

12.893

616

0

4 core, 8 GB (tujuan umum)

4.000.000

16

37.016

427

0

8 core, 16 GB (tujuan umum)

8.000.000

32

48.014

658

0

1:4

8 core, 32 GB (tujuan umum)

16.000.000

32

44.251

1.589

0

16 core, 64 GB (tujuan umum)

32.000.000

128

57.252

2.226

0

1:8

2 core, 16 GB (spesifikasi khusus)

8.000.000

8

12.436

641

0

4 core, 32 GB (spesifikasi khusus)

16.000.000

16

20.551

773

0

8 core, 64 GB (spesifikasi khusus)

32.000.000

32

50.246

632

0

16 core, 128 GB (spesifikasi khusus)

64.000.000

160

66.876

2.385

0

r:w=95:5

CPU:Memori

Jenis instans

Operationcount

Threads

Throughput

RAL

WAL

1:2

1 core, 2 GB (tujuan umum)

1000000

4

4556

864

1079

2 core, 4 GB (tujuan umum)

2000000

8

10391

757

914

4 core, 8 GB (tujuan umum)

4000000

16

34411

453

561

8 core, 16 GB (tujuan umum)

8000000

32

41095

763

925

1:4

8 core, 32 GB (tujuan umum)

16000000

32

39920

785

926

16 core, 64 GB (tujuan umum)

32000000

128

55148

2305

2381

1:8

2 core, 16 GB (spesifikasi khusus)

8000000

8

8869

871

1394

4 core, 32 GB (spesifikasi khusus)

16000000

16

18206

856

1192

8 core, 64 GB (spesifikasi khusus)

32000000

32

47111

664

861

16 core, 128 GB (spesifikasi khusus)

64000000

160

68801

2312

2449

r:w=50:50

CPU:Memori

Jenis instans

Operationcount

Threads

Throughput

RAL

WAL

1:2

1 core, 2 GB (tujuan umum)

1000000

4

3062

1207

1399

2 core, 4 GB (tujuan umum)

2000000

8

6610

1128

1318

4 core, 8 GB (tujuan umum)

4000000

16

19743

743

864

8 core, 16 GB (tujuan umum)

8000000

32

22750

987

1809

1:4

8 core, 32 GB (tujuan umum)

16000000

32

21763

1010

1907

16 core, 64 GB (tujuan umum)

32000000

128

43498

2162

3696

1:8

2 core, 16 GB (spesifikasi khusus)

8000000

8

5680

1345

1930

4 core, 32 GB (spesifikasi khusus)

16000000

16

10470

1064

1971

8 core, 64 GB (spesifikasi khusus)

32000000

32

20427

790

2329

16 core, 128 GB (spesifikasi khusus)

64000000

160

29445

2944

7891

r:w=5:95

CPU:Memori

Spesifikasi instans

Jumlah operasi

Threads

Throughput

RAL

WAL

1:2

1 core, 2 GB (tujuan umum)

1000000

4

2431

1511

1649

2 core, 4 GB (tujuan umum)

2000000

8

5336

1406

1608

4 core, 8 GB (tujuan umum)

4000000

16

14496

858

1110

8 core, 16 GB (tujuan umum)

8000000

32

14573

958

2253

1:4

8 core, 32 GB (tujuan umum)

16000000

32

13812

995

2377

16 core, 64 GB (tujuan umum)

32000000

128

20663

2831

6348

1:8

2 core, 16 GB (spesifikasi khusus)

8000000

8

4079

3201

8066

4 core, 32 GB (spesifikasi khusus)

16000000

16

7154

1080

2288

8 core, 64 GB (spesifikasi khusus)

32000000

32

12585

783

2626

16 core, 128 GB (spesifikasi khusus)

64000000

160

17083

4241

9615

Beban kerja 100% tulis

CPU:Memori

Spesifikasi Instance

Jumlah operasi

Threads

Throughput

RAL

WAL

1:2

1 core, 2 GB (tujuan umum)

1.000.000

4

2.429

0

1.642

2 core, 4 GB (tujuan umum)

2.000.000

8

5.238

0

1.643

4 core, 8 GB (tujuan umum)

4.000.000

16

13.794

0

1.154

8 core, 16 GB (tujuan umum)

8.000.000

32

14.566

0

2.189

1:4

8 core, 32 GB (tujuan umum)

16.000.000

32

13.485

0

2.361

16 core, 64 GB (tujuan umum)

32.000.000

128

19.758

0

6.461

1:8

2 core, 16 GB (spesifikasi khusus)

8.000.000

8

3.939

0

8.097

4 core, 32 GB (spesifikasi khusus)

16.000.000

16

6.940

0

2.298

8 core, 64 GB (spesifikasi khusus)

32.000.000

32

12.567

0

2.539

16 core, 128 GB (spesifikasi khusus)

64.000.000

160

16.325

0

9.770

Instans arsitektur disk cloud (MongoDB 4.4)

Kinerja pemuatan data

CPU:memori

Spesifikasi instans

Recordcount

Threads

Throughput

RAL

WAL

1:2

4 core, 8 GB (spesifikasi khusus)

4000000

16

18235

0

871

8 core, 16 GB (spesifikasi khusus)

8000000

32

35643

0

891

16 core, 32 GB (spesifikasi khusus)

16000000

64

65345

0

971

1:4

2 core, 8 GB (spesifikasi khusus)

4000000

8

6613

0

1202

8 core, 32 GB (spesifikasi khusus)

16000000

64

45952

0

1385

16 core, 64 GB (spesifikasi khusus)

32000000

96

61973

0

1539

1:8

2 core, 16 GB (spesifikasi khusus)

8000000

8

6224

0

1280

4 core, 32 GB (spesifikasi khusus)

16000000

16

18603

0

857

r:w=100:0

CPU:memori

Spesifikasi instans

Operationcount

Threads

Throughput

RAL

WAL

1:2

4 core, 8 GB (spesifikasi khusus)

4000000

16

24945

634

0

8 core, 16 GB (spesifikasi khusus)

8000000

32

33270

938

0

16 core, 32 GB (spesifikasi khusus)

16000000

64

55703

1136

0

1:4

2 core, 8 GB (spesifikasi khusus)

4000000

8

10989

723

0

8 core, 32 GB (spesifikasi khusus)

16000000

64

36039

1740

0

16 core, 64 GB (spesifikasi khusus)

32000000

96

59960

1585

0

1:8

2 core, 16 GB (spesifikasi khusus)

8000000

8

11298

703

0

4 core, 32 GB (dedicated)

16000000

16

24306

653

0

r:w=95:5

CPU:memori

Spesifikasi instans

Operationcount

Threads

Throughput

RAL

WAL

1:2

4 core, 8 GB (spesifikasi khusus)

4000000

16

22471

797

1161

8 core, 16 GB (spesifikasi khusus)

8000000

32

29543

1064

1199

16 core, 32 GB (spesifikasi khusus)

16000000

64

53466

1178

1300

1:4

2 core, 8 GB (spesifikasi khusus)

4000000

8

8986

854

1480

8 core, 32 GB (spesifikasi khusus)

16000000

64

34128

1829

1970

16 core, 64 GB (spesifikasi khusus)

32000000

96

78363

1196

1420

1:8

2 core, 16 GB (dedicated)

8000000

8

8806

867

1619

4 core, 32 GB (spesifikasi khusus)

16000000

16

20132

770

1181

r:w=50:50

CPU:memori

Spesifikasi instans

Operationcount

Threads

Throughput

RAL

WAL

1:2

4 core, 8 GB (spesifikasi khusus)

4000000

16

14127

1009

1238

8 core, 16 GB (spesifikasi khusus)

8000000

32

19887

1496

1670

16 core, 32 GB (spesifikasi khusus)

16000000

64

23120

2680

2819

1:4

2 core, 8 GB (spesifikasi khusus)

4000000

8

5132

1370

1735

8 core, 32 GB (spesifikasi khusus)

16000000

64

18929

2930

3615

16 core, 64 GB (spesifikasi khusus)

32000000

96

25612

3675

4363

1:8

2 core, 16 GB (spesifikasi khusus)

8000000

8

4841

1438

1855

4 core, 32 GB (spesifikasi khusus)

16000000

16

13051

1080

1356

r:w=5:95

CPU:memori

Spesifikasi instans

Operationcount

Threads

Throughput

RAL

WAL

1:2

4 core, 8 GB (spesifikasi khusus)

4000000

16

10266

1141

1570

8 core, 16 GB (spesifikasi khusus)

8000000

32

13556

2141

2351

16 core, 32 GB (spesifikasi khusus)

16000000

64

14447

4295

4412

1:4

2 core, 8 GB (spesifikasi khusus)

4000000

8

4226

1591

1902

8 core, 32 GB (spesifikasi khusus)

16000000

64

12055

5109

5210

16 core, 64 GB (spesifikasi khusus)

32000000

96

15216

5877

8503

1:8

2 core, 16 GB (spesifikasi khusus)

8000000

8

3874

1792

2072

4 core, 32 GB (spesifikasi khusus)

16000000

16

10083

1106

1605

r:w=0:100

CPU:memori

Spesifikasi instans

Operationcount

Threads

Throughput

RAL

WAL

1:2

4 core, 8 GB (spesifikasi khusus)

4000000

16

9960

0

1592

8 core, 16 GB (spesifikasi khusus)

8000000

32

13064

0

2423

16 core, 32 GB (spesifikasi khusus)

16000000

64

13743

0

4615

1:4

2 core, 8 GB (spesifikasi khusus)

4000000

8

4287

0

1860

8 core, 32 GB (spesifikasi khusus)

16000000

64

11611

0

5441

16 core, 64 GB (spesifikasi khusus)

32000000

96

14391

0

8746

1:8

2 core, 16 GB (spesifikasi khusus)

8000000

8

3854

0

2067

4 core, 32 GB (spesifikasi khusus)

16000000

16

9711

0

1638

Perbandingan kinerja

CPU:memori=1:2

  • Jenis instans: 4 core, memori 8 GB4 cores 8 GB benchmark data

  • Jenis instans: 8 core, memori 16 GB8 cores 16 GB benchmark data

CPU:memori=1:4

  • Jenis instans: 8 core, memori 32 GB8 cores 32 GB benchmark data

  • Jenis instans: 16 core, memori 64 GB16 cores 64 GB benchmark data

CPU:memori=1:8

  • Jenis instans: 2 core, memori 16 GB2 cores 16 GB benchmark data

  • Jenis instans: 4 core, memori 32 GB4 cores 32 GB benchmark data

Analisis hasil pengujian

  • Untuk CPU:Memory=1:2, server fisik mengungguli disk cloud sebesar 7%–50%, terutama pada konfigurasi 4 core, 8 GB.

  • Untuk CPU:Memory=1:4, selisihnya menyempit menjadi sekitar 10%. Server fisik cocok untuk beban kerja yang banyak menulis; disk cloud cocok untuk beban kerja yang banyak membaca.

  • Untuk CPU:Memory=1:8:

    • Server fisik dan disk cloud memberikan kinerja yang hampir identik.

    • Saat kapasitas memori meningkat, disk cloud secara signifikan mengungguli server fisik, terutama pada konfigurasi 4 core, 32 GB.

Catatan

Arsitektur disk cloud menawarkan keunggulan berikut:

  • Sumber daya khusus menghilangkan persaingan dari server fisik bersama.

  • Skalabilitas komputasi dan penyimpanan independen tanpa migrasi data.

  • Mendukung tingkat kinerja ESSD PL1, PL2, dan PL3 dengan penagihan pay-as-you-go yang hemat biaya.