Comparison – Disk vs. MOT

The following table briefly compares the various features of the openGauss disk-based storage engine and the MOT storage engine.

Table 1 Comparison – Disk-based vs. MOT

Feature

openGauss

Disk Store

openGauss

MOT Engine

Intel x86 + Kunpeng ARM

Yes

Yes

SQL and Feature-set Coverage

100%

98%

Scale-up (Many-cores, NUMA)

Low Efficiency

High Efficiency

Throughput

High

Extremely High

Latency

Low

Extremely Low

Distributed (Cluster Mode)

Yes

Yes

Isolation Levels

  • RC+SI
  • RR
  • Serializable
  • RC
  • RR
  • RC+SI (in V2 release)

Concurrency Control

Pessimistic

Optimistic

Data Capacity (Data + Index)

Unlimited

Limited to DRAM

Native Compilation

No

Yes

Replication, Recovery

Yes

Yes

Replication Options

2 (sync, async)

3 (sync, async, group-commit)

Legend –

  • RR = Repeatable Reads
  • RC = Read Committed
  • SI = Snapshot Isolation

Appendices

References

[1] Y. Mao, E. Kohler, and R. T. Morris. Cache craftiness for fast multicore key-value storage. In Proc. 7th ACM European Conference on Computer Systems (EuroSys), Apr. 2012.

[2] K. Ren, T. Diamond, D. J. Abadi, and A. Thomson. Low-overhead asynchronous checkpointing in main-memory database systems. In Proceedings of the 2016 ACM SIGMOD International Conference on Management of Data, 2016.

[3] https://e.huawei.com/en/products/servers/taishan-server/taishan-2280-v2.

[4] https://e.huawei.com/en/products/servers/taishan-server/taishan-2480-v2.

[5] Tu, S., Zheng, W., Kohler, E., Liskov, B., and Madden, S. Speedy transactions in multicore in-memory databases. In Proceedings of the Twenty-Fourth ACM Symposium on Operating Systems Principles (New York, NY, USA, 2013), SOSP ’13, ACM, pp. 18–32.

[6] H. Avni at al. Industrial-Strength OLTP Using Main Memory and Many-cores, VLDB 2020.

[7] Bernstein, P. A., and Goodman, N. Concurrency control in distributed database systems. ACM Comput. Surv. 13, 2 (1981), 185–221.

[8] Felber, P., Fetzer, C., and Riegel, T. Dynamic performance tuning of word-based software transactional memory. In Proceedings of the 13th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPOPP 2008, Salt Lake City, UT, USA, February 20-23, 2008 (2008),

pp. 237–246.

[9] Appuswamy, R., Anadiotis, A., Porobic, D., Iman, M., and Ailamaki, A. Analyzing the impact of system architecture on the scalability of OLTP engines for high-contention workloads. PVLDB 11, 2 (2017),

121–134.

[10] R. Sherkat, C. Florendo, M. Andrei, R. Blanco, A. Dragusanu, A. Pathak, P. Khadilkar, N. Kulkarni, C. Lemke, S. Seifert, S. Iyer, S. Gottapu, R. Schulze, C. Gottipati, N. Basak, Y. Wang, V. Kandiyanallur, S. Pendap, D. Gala, R. Almeida, and P. Ghosh. Native store extension for SAP HANA. PVLDB, 12(12):

2047–2058, 2019.

[11] X. Yu, A. Pavlo, D. Sanchez, and S. Devadas. Tictoc: Time traveling optimistic concurrency control. In Proceedings of the 2016 International Conference on Management of Data, SIGMOD Conference 2016, San Francisco, CA, USA, June 26 - July 01, 2016, pages 1629–1642, 2016.

[12] V. Leis, A. Kemper, and T. Neumann. The adaptive radix tree: Artful indexing for main-memory databases. In C. S. Jensen, C. M. Jermaine, and X. Zhou, editors, 29th IEEE International Conference on Data Engineering, ICDE 2013, Brisbane, Australia, April 8-12, 2013, pages 38–49. IEEE Computer Society, 2013.

[13] S. K. Cha, S. Hwang, K. Kim, and K. Kwon. Cache-conscious concurrency control of main-memory indexes on shared-memory multiprocessor systems. In P. M. G. Apers, P. Atzeni, S. Ceri, S. Paraboschi, K. Ramamohanarao, and R. T. Snodgrass, editors, VLDB 2001, Proceedings of 27th International Conference on Very Large Data Bases, September 11-14, 2001, Roma, Italy, pages 181–190. Morga Kaufmann, 2001.

Glossary

Table 2 Glossary

Acronym

Definition/Description

2PL

2-Phase Locking

ACID

Atomicity, Consistency, Isolation, Durability

AP

Analytical Processing

ARM

Advanced RISC Machine, a hardware architecture alternative to x86

CC

Concurrency Control

CPU

Central Processing Unit

DB

Database

DBA

Database Administrator

DBMS

Database Management System

DDL

Data Definition Language. Database Schema management language

DML

Data Modification Language

ETL

Extract, Transform, Load or Encounter Time Locking

FDW

Foreign Data Wrapper

GC

Garbage Collector

HA

High Availability

HTAP

Hybrid Transactional-Analytical Processing

IoT

Internet of Things

IM

In-Memory

IMDB

In-Memory Database

IR

Intermediate Representation of a source code, used in compilation and optimization

JIT

Just In Time

JSON

JavaScript Object Notation

KV

Key Value

LLVM

Low-Level Virtual Machine, refers to a compilation code or queries to IR

M2M

Machine-to-Machine

ML

Machine Learning

MM

Main Memory

MO

Memory Optimized

MOT

Memory Optimized Tables storage engine (SE), pronounced as /em/ /oh/ /tee/

MVCC

Multi-Version Concurrency Control

NUMA

Non-Uniform Memory Access

OCC

Optimistic Concurrency Control

OLTP

Online Transaction Processing

PG

PostgreSQL

RAW

Reads-After-Writes

RC

Return Code

RTO

Recovery Time Objective

SE

Storage Engine

SQL

Structured Query Language

TCO

Total Cost of Ownership

TP

Transactional Processing

TPC-C

An On-Line Transaction Processing Benchmark

Tpm-C

Transactions-per-minute-C. A performance metric for TPC-C benchmark that counts new-order transactions.

TVM

Tiny Virtual Machine

TSO

Time Sharing Option

UDT

User-Defined Type

WAL

Write Ahead Log

XLOG

A PostgreSQL implementation of transaction logging (WAL - described above)

Feedback
编组 3备份
    openGauss 2024-05-06 00:44:54
    cancel