Это-то понятно
Но как много можно в него запхнуть?
С точки зрения программы оно просто пишет в файловый дескриптор (fd), а fd в свою очередь ассоциирован либо с девайсом, файлом, сокетом или пайпом. Например, когда ты запускаешь программу из-под pts (из эмулятора терминала), то всё, что выводит программа, она кидает в твой pts, который в свою очередь кидает данные в процесс эмулятора терминала. И если процесс эмулятора терминала не успевает вычитывать данные с той же скоростью, с которой пишут в pts, то write со стороны "источника информации" просто останавливает работу программы (если мы говорим о синхронном I/O, который по умолчанию).
В случае с tar'ом у тебя просто два процесса, объединённые пайпом, нет никаких временных хранилищ на диске, максимум небольшой буфер в несколько килобайт-мегабайт. Если по ssh данные будут уходить медленнее, чем tar будет писать, то tar замедлится.