>- если мы используем какой-нибудь SQL-сервер мы выигрываем в транзакциях, но несомненно
>проигрываем в скорости работы, т.к. появляеися еще одно промежуточное звено.
>- вопрос: насколько выигрываем, насколько проигрываем?
Все зависит от грамотности построения SQL базы и индексов, а токже формы запросов (запрос записи по ключу и выборка с ORDER BY или группировкой - вещи разной весовой категории). Несомненный плюс SQL - минимизация трудозатрат программиста, используя SQL некоторые вещи реализуются на несколько порядков проще, причем для увеличения производительности критичных участков можно кэшировать контент минимизирую обращение к SQL серверу.
>(иначе: что лучше, плоская база с собственным поиском, или, скажем, MySQL)
>насколько что-нибудь, вроде flock может справиться с одновременным обращением к базе?
flock привносит множество скользких моментов, приходится наряду с флоком использовать дополнительные средства, как например локи флаговым файлом.