Why are joins bad when considering scalability?

后端 未结 16 2994
猫巷女王i
猫巷女王i 2020-12-12 11:32

Why are joins bad or \'slow\'. I know i heard this more then once. I found this quote

The problem is joins are relatively slow, especially over very

16条回答
  •  难免孤独
    2020-12-12 12:25

    Joins do require extra processing since they have to look in more files and more indexes to "join" the data together. However, "very large data sets" is all relative. What is the definition of large? I the case of JOINs, I think its a reference to a large result set, not that overall dataset.

    Most databases can very quickly process a query that selects 5 records from a primary table and joins 5 records from a related table for each record (assuming the correct indexes are in place). These tables can have hundreds of millions of records each, or even billions.

    Once your result set starts growing, things are going to slow down. Using the same example, if the primary table results in 100K records, then there will be 500K "joined" records that need to be found. Just pulling that much data out of the database with add delays.

    Don't avoid JOINs, just know you may need to optimize/denormalize when datasets get "very large".

提交回复
热议问题