Forrest  Falk
Tera Guru

My name is Forrest Falk, and I am a ServiceNow Certified Master Architect (CMA). I have had the opportunity to test both RaptorDB and RaptorDB Pro instances. With these tools, I have decided to start a series in the community where I will be testing different features of RaptorDB and RaptorDB Pro compared to MariaDB. This series should provide us with valuable insights into the advantages and disadvantages of RaptorDB and RaptorDB Pro in comparison to MariaDB. I will do my best to share the testing methods and results with everyone. If you have any questions, I would be happy to explain my testing process, and I encourage you to share any suggestions on what I should test next. I would love to keep the series interactive.

 

For the first test, I want to focus on the raw speed of inserting records using each database. In this test, we will measure how quickly each database can insert records into the system. For the example, we will be creating one thousand incidents as quickly as possible to see how long the process takes. Since we know the exact number of records, we can also calculate the average speed of each database across all one thousand records. I also plan to run multiple tests on the instances to account for any unrelated system activities such as scheduled jobs, scripts, or workflows that might affect the results.

 

Below is the script I created to help test the insertion of incidents. The script measures how long it takes to create one thousand incidents. To make it easier to track these records, I included the phrase "Incident speed test V2" in both the short description and the description fields. I mainly did this to facilitate future testing of record update and deletion performance.

 

Instance Version: glide-zurich-07-01-2025__patch0-07-15-2025

 

Script to Insert Records:

  // Initialize timer
  var start = new GlideDateTime();

  // Create 1000 incident records
  for (var i = 1; i <= 1000; i++) {
    var gr = new GlideRecord('incident');
    gr.initialize();
    gr.short_description = 'Incident speed test V2 ' + i;
    gr.description       = 'Incident speed test V2' + i;
    gr.insert();
  }

  // Capture end time and calculate durations
  var end        = new GlideDateTime();
  var totalMs    = GlideDateTime.subtract(start, end).getNumericValue();
  var averageMs  = totalMs / 1000;

  // Log results
  gs.print('FF: Total time to create 1000 incidents: ' + totalMs + ' ms');
  gs.print('FF: Average time per incident: ' + averageMs.toFixed(2) + ' ms');
  gs.log('FF: Total time to create 1000 incidents: ' + totalMs + ' ms');
  gs.log('FF: Average time per incident: ' + averageMs.toFixed(2) + ' ms');

 

 

Test Results:

Test 1

MariaDB:

*** Script: FF: Total time to create 1000 incidents: 129816 ms

*** Script: FF: Average time per incident: 129.82 ms

 

RaptorDB (3.09 times faster than MariaDB):

*** Script: FF: Total time to create 1000 incidents: 41975 ms

*** Script: FF: Average time per incident: 41.98 ms

 

RaptorDB Pro (3.17 times faster than MariaDB):

*** Script: FF: Total time to create 1000 incidents: 40972 ms

*** Script: FF: Average time per incident: 40.97 ms

 

 

Test 2

MariaDB:

*** Script: FF: Total time to create 1000 incidents: 140359 ms

*** Script: FF: Average time per incident: 140.36 ms

 

RaptorDB (3.50 times faster than MariaDB):

*** Script: FF: Total time to create 1000 incidents: 40083 ms

*** Script: FF: Average time per incident: 40.08 ms 

 

RaptorDB Pro (3.63 times faster than MariaDB):

*** Script: FF: Total time to create 1000 incidents: 38639 ms

*** Script: FF: Average time per incident: 38.64 ms

 

 

Test 3

MariaDB:

*** Script: FF: Total time to create 1000 incidents: 147083 ms

*** Script: FF: Average time per incident: 147.08 ms

 

RaptorDB (3.73 times faster than MariaDB):

*** Script: FF: Total time to create 1000 incidents: 39430 ms

*** Script: FF: Average time per incident: 39.43 ms

 

RaptorDB Pro (3.68 times faster than MariaDB):

*** Script: FF: Total time to create 1000 incidents: 39997 ms

*** Script: FF: Average time per incident: 40.00 ms

 

To calculate how much faster RaptorDB and RaptorDB Pro were I used the following formula:

(Old Time / New Time)  = times faster

 

For each test, I used MariaDB as the baseline and then calculated how much faster RaptorDB and RaptorDB Pro performed in comparison. The fastest result was achieved in Test 2, where RaptorDB completed the task in 38,639 milliseconds. The slowest result occurred with MariaDB, which took 147,083 milliseconds during Test 3. By reviewing the table below and averaging the results, we can determine the mean times for each database. Using these averages, we can also calculate how many times faster RaptorDB and RaptorDB Pro were throughout our tests.

 

Test #

MariaDB (ms)

RaptorDB (ms)

RaptorDB Pro (ms)

1

129816

41975

40972

2

140359

40083

38639

3

147083

39430

39997

Average Times:

139086

40496

39869

Times Faster than MariaDB:

1

3.43

3.49

 

After examining the results, we can observe that in this record insertion test, RaptorDB and RaptorDB Pro are approximately 3.5 times faster than MariaDB. However, it's important to note that this single test does not provide a comprehensive comparison between MariaDB and RaptorDB; it simply offers some insight into their raw performance.

 

The views, thoughts, and opinions expressed here belong solely to me, and not necessarily to my employer, organization, committee, or any other group or individual.