Session data lookup is one select to database that gives 0..1 rows and uses index. In most cases this is not something you need to worry about.
Can even put it in redis too, if you have performance issues from looking for it in memory then you have probably have more users than google.
If you have multiple services in multiple locations however, you may want to replicate this data, so in this case revocation list as it's much smaller would be far easier to replicate for much less latency overhead.
I agree. The storage space, however, is a different story. Your session DB can grow huge, depending on your session lifetime and your users logout behaviour. Plus, it is a concern in a distributed system (i.e. a token can be validated on every node, vs. a session lookup must be globally in sync)