ENG-4863: Cache the buffer used to load stream snapshot data on each site

Each StreamSnapshotSink used to cache its own buffer used for load table. During
join, a single site can have multiple StreamSnapshotSinks, but only one of them
will be used to restore data at once. Cache the buffer at the site level so that
each site doesn't end up allocating more buffers than needed.