Skip to content

widefix/demo-fast-sql

Repository files navigation

README

This is a demo app for the article - https://blog.widefix.com/importance-sql-for-rails-experts/

Preffered dependencies versions:

  • PostgreSQL 15
  • Ruby 3

Configure DB manually by changing config/database.yml or create DB user with the same name as your system username and then do this:

  • set DATABASE_URL env var: export DATABASE_URL="postgres://localhost:5432". Change the port 5432 to yours if it's running on another port
  • run the benchmark: ./run.sh

My results:

Warming up --------------------------------------
                ruby     1.000  i/100ms
                 sql    48.000  i/100ms
Calculating -------------------------------------
                ruby      7.169  (± 0.0%) i/s -     36.000  in   5.034830s
                 sql    521.333  (± 9.8%) i/s -      2.592k in   5.037741s

Comparison:
                 sql:      521.3 i/s
                ruby:        7.2 i/s - 72.72x  slower

Notes

This app was initially generated by the following command:

rails new demo-fast-sql -d postgresql --skip-action-mailer --skip-action-mailbox --skip-action-text --skip-active-job --skip-active-storage --skip-action-cable --skip-asset-pipeline --skip-javascript --skip-hotwire --skip-jbuilder --skip-test
--skip-system-test