Проблема с хранилищем BLOB-объектов заключается в необходимости обновления всего BLOB-объекта для всех изменений.Это не обязательно плохо.Используя ваш формат: (100000, 90000, ...), 7 *3600* 3 = ~ 75 Кбайт.Но это означает, что вы обновляете этот BLOB-объект размером 75 КБ для каждой пьесы каждую секунду.
И, конечно же, этот BLOB-объект непрозрачен для SQL, так что "какая секунда из того, что песня имеет больше всего воспроизведения",невозможный запрос на уровне SQL (это, в основном, сканирование таблицы всех данных, чтобы узнать это).
И есть много разборов, которые распределяют и вводят эти данные.
С другой сторонырука.Идентификатор подкаста (4 байта), второе смещение (2 байта без знака позволяют производить подкадры длиной до 18 часов), счетчик воспроизведения (4 байта) = 10 байтов в секунду.Таким образом, минус любые блокирующие накладные расходы, 3-часовая песня составляет 3600 * 3 * 10 = 108 Кбайт на песню.
Если вы сохранили ее как блоб, против текста (блок длинных), 4 *3600* 3 =43K.
Таким образом, структура второй / строки «всего» вдвое больше (в идеальном мире, обратитесь за подробностями к вашему серверу БД) двоичного двоичного объекта.Учитывая дополнительные преимущества, которые дает вам возможность запрашивать что-то, это, вероятно, стоит сделать.
Единственная обратная сторона секунды / строки - это если вам нужно много обновлений (несколько секунд одновременно).для одной песни) это большой трафик UPDATE к БД, тогда как при использовании метода blob это, скорее всего, одно обновление.
Ваши шаблоны трафика будут влиять на это больше, чем что-либо.