Что такое пропускная способность базы данных?

#sql #oracle #database-design #oltp

#sql #Oracle #база данных-дизайн #oltp

Вопрос:

Ну, кроме вопроса, особо спрашивать не о чем. Что вы имеете в виду, когда говорите, что OLTP DB должна иметь высокую пропускную способность.

Переходим к wiki.

«В сетях связи, таких как Ethernet или пакетная радиосвязь, пропускная способность или пропускная способность сети — это средняя скорость успешной доставки сообщений по каналу связи. Эти данные могут доставляться по физической или логической ссылке или проходить через определенный сетевой узел. Пропускная способность обычно измеряется в битах в секунду (бит/с или бит/с), а иногда в пакетах данных в секунду или пакетах данных за временной интервал.»

Значит ли это, что базы данных OLTP должны иметь высокую / быструю скорость вставки (т. Е. избегать взаимоблокировок и т.д.)??

У меня всегда было впечатление, что если мы берем базу данных, скажем, для авиационной отрасли, она должна иметь быструю вставку, но в то же время быстрое время отклика, поскольку это критически важно для ее работы. И во многих отношениях это не должно быть ограничено протоколом, участвующим в доставке сообщения / данных в базу данных?

Я не пытаюсь выделить «единственную» характеристику OLTP-систем. В целом я хотел бы понять, какие характеристики присущи системе OLTP.

Приветствия!

Комментарии:

1. кстати: предотвращение взаимоблокировок больше относится к дизайну приложения и менее актуально, когда речь идет о производительности.

2. если быть излишне упрощенным: среды oltp (во всяком случае, с точки зрения БД) обычно связаны с оптимизацией DML (вставки / обновления / удаления). Вы не имеете дела со сводкой / aggregate / rollup, которая больше подходит для хранилищ / витрин данных BI / DSS.

Ответ №1:

В общем, когда вы говорите о «пропускной способности» базы данных OLTP, вы имеете в виду количество транзакций в секунду. Сколько заказов система может принимать в секунду, сколько запросов веб-страниц она может обслуживать, сколько запросов клиентов она может обработать. Это, как правило, связано с обсуждениями того, как масштабируется система OLTP — например, если вы удваиваете количество клиентов, посещающих ваш сайт каждый месяц, потому что бизнес набирает обороты, смогут ли системы OLTP справиться с возросшей пропускной способностью.

Это в отличие от систем OLAP / DSS, которые предназначены для выполнения относительно небольшого числа транзакций над гораздо большими объемами данных. Здесь вас гораздо меньше беспокоит количество транзакций, которые вы можете выполнить, чем то, как эти транзакции замедляются по мере добавления большего количества данных. Если вы такая невероятно успешная компания, вы, вероятно, хотите, чтобы в вашей OLAP-системе отображалось такое же количество и частота отчетов о продажах продуктов по регионам, поскольку вы генерируете экспоненциальный рост продаж. Но теперь вам нужно обрабатывать экспоненциально больше данных, что требует настройки базы данных только для поддержания постоянной производительности отчета.

Ответ №2:

Пропускная способность не имеет единого фиксированного значения в этом контексте. Грубо говоря, это означает количество транзакций в секунду, но транзакции «записи» отличаются от транзакций «чтения», а устойчивые скорости отличаются от пиковых. (И, конечно, 10-байтовая строка отличается от 1000-байтовой строки.)

Я наткнулся на показатели производительности и бенчмарки: Berkeley DB на днях, когда искал что-то еще. Это неплохое введение в различные способы измерения «насколько быстро». Кроме того, эта статья о тестах баз данных является интересным чтением.