Remix.run Logo
iLoveOncall 12 hours ago

Why are you comparing PostgreSQL to an in-memory SQLite instead of a file-based one? Wow, memory is faster than disk, who would have thought?

eurleif 12 hours ago | parent [-]

Because it doesn't make a difference, because `SELECT 1` doesn't need to touch the database:

    Running 100,000 `SELECT 1` queries:
    PostgreSQL (localhost): 2.71 seconds
    SQLite (in-memory): 0.07 seconds
    SQLite (tempfile): 0.07 seconds
(https://gist.github.com/leifkb/d8778422d450d9a3f103ed43258cc...)
oldsecondhand 12 hours ago | parent | next [-]

Why are you doing meaningless microbenchmarks?

saturn_vk 8 hours ago | parent [-]

Are you claiming that this does not show the speed difference between socket vs in process communication?

j45 2 hours ago | parent | prev | next [-]

Queries for small SaaS are usually in the thousands of records, if not hundreds.

nchmy 6 hours ago | parent | prev | next [-]

How about pg on Unix socket?

eurleif 3 hours ago | parent [-]

    Running 100,000 `SELECT 1` queries:
    PostgreSQL (localhost): 2.84 seconds
    PostgreSQL (Unix socket): 1.93 seconds
    SQLite (in-memory): 0.07 seconds
    SQLite (tempfile): 0.06 seconds
(https://gist.github.com/leifkb/b940b8cdd8e0432cc58670bbc0c33...)
nchmy 2 hours ago | parent [-]

seems about right

locknitpicker 11 hours ago | parent | prev [-]

> Because it doesn't make a difference, because `SELECT 1` doesn't need to touch the database:

I hope you understand that your claim boils down to stating that SQLite is faster at doing nothing at all, which is a silly case to make.

eurleif 11 hours ago | parent [-]

The original claim being discussed is about the overhead of an in-process database vs. a database server in a separate process, not about whether SQLite or PostgreSQL have a faster database engine.