PERFORMANCE
Just try it! Machbase has amazing data processing performance and ranked #1 in TPCx-IoT. Machbase DBMS, which is 3 to 17 times faster than others, take the best score with AMD in the TPCx-IoT evaluation.
Performance in AWS server
The Fastest Time Series DBMS for Indutrial IoT Data Machbase offers outstanding performance and dramatic powerful results.
Check out the amazing performance of Machbase Edge edition and Fog edition. Even if it is not a high-performance server, 1 million sensor data can be input per second and various statistical values can be inquired under second at the same time as data is stored. The outstanding performance of Machbase is possible due to the unique and innovative technology for real-time big data processing.

Inputs: Over 1 Million EPS! Queries: Less Than a 1 Second!

Input performance

Query performance

  • Q1 : Elapsed time to retrieve a specific tag for 1 day
  • Q2 : Average values per 60 seconds of a specific tag for 1 hour
  • Q3 : Average values per 15 minutes of a specific tag for 1 day

Test environment

Itemt3.xlarge instancec5d.2xlarge instance
CPUAIntel Skylake P-8175 @2.5Ghz 4 vCPUsIntel Xeon Platinum 8124M @3Ghz 8 vCPUs
Memory16GB16GB
Disk180GB NVMe SSD200GB NVMe SSD
OSAmazon Linux (Kernel 4.14.88-88.76.amzn2.x86_64)Amazon Linux (Kernel 4.14.88-88.76.amzn2.x86_64)
NIC1Gbps1Gbps
MachbaseMachbase Edge 6.1 ReleaseMachbase Fog 6.1 Release

Test results (input performance)

Itemt3.xlarge instancec5d.2xlarge instance
Total count of data5 billion (5,000,000,000)5 billion (5,000,000,000)
Data loading time (sec)12,391 seconds4,705 seconds
Inputs per second (Event / Sec)403,509 events /sec1,062,560 events /sec
CPU usage during data entry118% ~ 367% / (total 400%)275% ~ 616% / (total 800%)
Memory usage during data entryRRES 7.0 ~ 7.6 GB / (total16GB)RES 7.0 ~ 7.5 GB / (total16GB)
Disk Usage (GB)162 GB / (180GB total)162 GB / (200GB total)

Test results (query performance)

Edge Edition

ItemSQL QUERYResultsTime (seconds)
total count of dataSELECT COUNT(*) FROM TAG;50000000000.000
min and max of time range for all dataSELECT MIN(TIME), MAX(TIME) FROM TAG;2018-01-01 00:00:00, 2018-01-02 03:46:390.003
min and max of time range for a specific tagSELECT MIN(TIME), MAX(TIME) FROM TAG WHERE NAME = ‘EQ0^TAG567’;2018-01-01 00:00:00, 2018-01-02 03:46:390.085
retrieve 1 tag for 1 daySELECT COUNT(*) FROM(SELECT * FROM TAG WHERE NAME = "EQ0^TAG287" AND TIME BETWEEN TO_DATE("2018-01-01 00:00:00") AND TO_DATE("2018-01-01 23:59:59"));431,9960.061
retrieve 15 tags for 1 daySELECT COUNT(*) FROM (SELECT * FROM TAG WHERE NAME IN (("EQ0^TAG17", "EQ0^TAG27", "EQ0^TAG37", "EQ0^TAG47", "EQ0^TAG57", "EQ0^TAG127", "EQ0^TAG137", "EQ0^TAG287", "EQ0^TAG398", "EQ0^TAG467", "EQ0^TAG455", "EQ0^TAG512", "EQ0^TAG677", "EQ0^TAG834", "EQ0^TAG934") AND TIME BETWEEN TO_DATE("2018-01-01 00:00:00") AND TO_DATE("2018-01-01 23:59:59"));6,479,9400.827
average values per second of 1 tag for 8 hoursSELECT TIME ROLLUP 1 SEC AS TIME, AVG(VALUE) AS VALUE FROM TAG WHERE NAME = "EQ0^TAG187" AND TIME BETWEEN TO_DATE("2018-01-01 12:00:00") AND TO_DATE("2018-01-01 19:59:59") GROUP BY TIME ORDER BY TIME;28,8000.179
sum values per minute of 1 tag for 1 hourSELECT TIME ROLLUP 1 MIN AS TIME, SUM(VALUE) AS VALUE FROM TAG WHERE NAME = "EQ0^TAG678" AND TIME BETWEEN TO_DATE("2018-01-01 20:00:00") AND TO_DATE("2018-01-01 20:59:59") GROUP BY TIME ORDER BY TIME;600.001
maximum values per hour of 1 tag for 1 daySELECT TIME ROLLUP 1 HOUR AS TIME, MAX(VALUE) AS VALUE FROM TAG WHERE NAME = "EQ0^TAG24" AND TIME BETWEEN TO_DATE("2018-01-01 00:00:00") AND TO_DATE("2018-01-01 23:59:59") GROUP BY TIME ORDER BY TIME;240.001
average values per 15 seconds of 1 tag for 1 hourSELECT TIME ROLLUP 15 SEC AS TIME, AVG(VALUE) AS VALUE FROM TAG WHERE NAME = "EQ0^TAG587" AND TIME BETWEEN TO_DATE("2018-01-01 12:00:00") AND TO_DATE("2018-01-01 12:59:59") GROUP BY TIME ORDER BY TIME;2400.013
average values per 30 seconds of 1 tag for 1 hourSELECT TIME ROLLUP 30 SEC AS TIME, AVG(VALUE) AS VALUE FROM TAG WHERE NAME = "EQ0^TAG287 AND TIME BETWEEN TO_DATE("2018-01-01 12:00:00") AND TO_DATE("2018-01-01 12:59:59") GROUP BY TIME ORDER BY TIME;1200.010
average values per 60 seconds of 1 tag for 1 hourSELECT TIME ROLLUP 60 SEC AS TIME, AVG(VALUE) AS VALUE FROM TAG WHERE NAME = "EQ0^TAG987" AND TIME BETWEEN TO_DATE("2018-01-01 12:00:00") AND TO_DATE("2018-01-01 12:59:59") GROUP BY TIME ORDER BY TIME;600.012
average values per 5 minutes of 1 tag for 1 daySELECT TIME ROLLUP 5 MIN AS TIME, AVG(VALUE) AS VALUE FROM TAG WHERE NAME = "EQ0^TAG387" AND TIME BETWEEN TO_DATE("2018-01-01 00:00:00") AND TO_DATE("2018-01-01 23:59:59") GROUP BY TIME ORDER BY TIME;2880.251
average values per 10 minutes of 1 tag for 1 daySELECT TIME ROLLUP 10 MIN AS TIME, AVG(VALUE) AS VALUE FROM TAG WHERE NAME = "EQ0^TAG687" AND TIME BETWEEN TO_DATE("2018-01-01 00:00:00") AND TO_DATE("2018-01-01 23:59:59") GROUP BY TIME ORDER BY TIME;1440.249
average values per 15 minutes of 1 tag for 1 daySELECT TIME ROLLUP 15 MIN AS TIME, AVG(VALUE) AS VALUE FROM TAG WHERE NAME = "EQ0^TAG487" AND TIME BETWEEN TO_DATE("2018-01-01 00:00:00") AND TO_DATE("2018-01-01 23:59:59") GROUP BY TIME ORDER BY TIME;960.244

Fog Edition

ItemSQL QUERYResultsTime (seconds)
total count of dataSELECT COUNT(*) FROM TAG;50000000000.000
min and max of time range for all dataSELECT MIN(TIME), MAX(TIME) FROM TAG;2018-01-01 00:00:00, 2018-01-02 03:46:390.003
min and max of time range for a specific tagSELECT MIN(TIME), MAX(TIME) FROM TAG WHERE NAME = ‘EQ0^TAG567’;2018-01-01 00:00:00, 2018-01-02 03:46:390.065
retrieve 1 tag for 1 daySELECT COUNT(*) FROM(SELECT * FROM TAG WHERE NAME = "EQ0^TAG287" AND TIME BETWEEN TO_DATE("2018-01-01 00:00:00") AND TO_DATE("2018-01-01 23:59:59"));431,9960.053
retrieve 15 tags for 1 daySELECT COUNT(*) FROM (SELECT * FROM TAG WHERE NAME IN (("EQ0^TAG17", "EQ0^TAG27", "EQ0^TAG37", "EQ0^TAG47", "EQ0^TAG57", "EQ0^TAG127", "EQ0^TAG137", "EQ0^TAG287", "EQ0^TAG398", "EQ0^TAG467", "EQ0^TAG455", "EQ0^TAG512", "EQ0^TAG677", "EQ0^TAG834", "EQ0^TAG934") AND TIME BETWEEN TO_DATE("2018-01-01 00:00:00") AND TO_DATE("2018-01-01 23:59:59"));6,479,9400.723
average values per second of 1 tag for 8 hoursSELECT TIME ROLLUP 1 SEC AS TIME, AVG(VALUE) AS VALUE FROM TAG WHERE NAME = "EQ0^TAG187" AND TIME BETWEEN TO_DATE("2018-01-01 12:00:00") AND TO_DATE("2018-01-01 19:59:59") GROUP BY TIME ORDER BY TIME;28,8000.121
sum values per minute of 1 tag for 1 hourSELECT TIME ROLLUP 1 MIN AS TIME, SUM(VALUE) AS VALUE FROM TAG WHERE NAME = "EQ0^TAG678" AND TIME BETWEEN TO_DATE("2018-01-01 20:00:00") AND TO_DATE("2018-01-01 20:59:59") GROUP BY TIME ORDER BY TIME;600.001
maximum values per hour of 1 tag for 1 daySELECT TIME ROLLUP 1 HOUR AS TIME, MAX(VALUE) AS VALUE FROM TAG WHERE NAME = "EQ0^TAG24" AND TIME BETWEEN TO_DATE("2018-01-01 00:00:00") AND TO_DATE("2018-01-01 23:59:59") GROUP BY TIME ORDER BY TIME;240.000
average values per 15 seconds of 1 tag for 1 hourSELECT TIME ROLLUP 15 SEC AS TIME, AVG(VALUE) AS VALUE FROM TAG WHERE NAME = "EQ0^TAG587" AND TIME BETWEEN TO_DATE("2018-01-01 12:00:00") AND TO_DATE("2018-01-01 12:59:59") GROUP BY TIME ORDER BY TIME;2400.009
average values per 30 seconds of 1 tag for 1 hourSELECT TIME ROLLUP 30 SEC AS TIME, AVG(VALUE) AS VALUE FROM TAG WHERE NAME = "EQ0^TAG287 AND TIME BETWEEN TO_DATE("2018-01-01 12:00:00") AND TO_DATE("2018-01-01 12:59:59") GROUP BY TIME ORDER BY TIME;1200.008
average values per 60 seconds of 1 tag for 1 hourSELECT TIME ROLLUP 60 SEC AS TIME, AVG(VALUE) AS VALUE FROM TAG WHERE NAME = "EQ0^TAG987" AND TIME BETWEEN TO_DATE("2018-01-01 12:00:00") AND TO_DATE("2018-01-01 12:59:59") GROUP BY TIME ORDER BY TIME;600.008
average values per 5 minutes of 1 tag for 1 daySELECT TIME ROLLUP 5 MIN AS TIME, AVG(VALUE) AS VALUE FROM TAG WHERE NAME = "EQ0^TAG387" AND TIME BETWEEN TO_DATE("2018-01-01 00:00:00") AND TO_DATE("2018-01-01 23:59:59") GROUP BY TIME ORDER BY TIME;2880.194
average values per 10 minutes of 1 tag for 1 daySELECT TIME ROLLUP 10 MIN AS TIME, AVG(VALUE) AS VALUE FROM TAG WHERE NAME = "EQ0^TAG687" AND TIME BETWEEN TO_DATE("2018-01-01 00:00:00") AND TO_DATE("2018-01-01 23:59:59") GROUP BY TIME ORDER BY TIME;1440.191
average values per 15 minutes of 1 tag for 1 daySELECT TIME ROLLUP 15 MIN AS TIME, AVG(VALUE) AS VALUE FROM TAG WHERE NAME = "EQ0^TAG487" AND TIME BETWEEN TO_DATE("2018-01-01 00:00:00") AND TO_DATE("2018-01-01 23:59:59") GROUP BY TIME ORDER BY TIME;960.200
  • PRODUCT
  • Edge
  • Fog
  • Cluster
  • SOLUTION
  • EdgeMaster
  • PERFORMANCE
  • Local Server
  • AWS
  • USECASE
  • UseCase
  • RESOURCE
  • Download
  • Blog
  • Document
  • Support
  • GitHub
  • ABOUT
  • Company
MACHBASE.COM +1-408-621-0044 | sales@machbase.com | support@machbase.com @2020 MACHBASE All rights reserved.
facebooktwitterlinkedinslidershare