Hardware - разное

Характеристики рабочей нагрузки (тесты TPC)


В компьютерной индустрии термин " транзакция " (transaction)может означать почти любой вид взаимодействия или обмена информацией. Однако в мире бизнеса " транзакция " имеет вполне определенный смысл: коммерческий обмен товарами, услугами или деньгами. В настоящее время практически все бизнес-транзакции выполняются с помощью компьютеров. Наиболее характерными примерами систем обработки транзакций являются системы управления учетом, системы резервирования авиабилетов и банковские системы. Таким образом, необходимость стандартов и тестовых пакетов для оценки таких систем все больше усиливается. Чтобы решить эти проблемы, в 1988 году была создана организация TPC (Transaction Processing Performance Council), основной задачей которой является точное определение тестовых пакетов для оценки систем обработки транзакций и баз данных, а также для распространения объективных, проверяемых данных в промышленности.

TPC публикует спецификации тестовых пакетов, которые регулируют вопросы, связанные с работой тестов. Эти спецификации гарантируют, что покупатели имеют объективные значения данных для сравнения производительности различных вычислительных систем. Хотя реализация спецификаций оценочных тестов оставлена на усмотрение индивидуальных спонсоров тестов, сами спонсоры, объявляя результаты TPC, должны представить TPC детальные отчеты, документирующие соответствие всем спецификациям. Эти отчеты, в частности, включают конфигурацию системы, методику калькуляции цены, диаграммы значений производительности и документацию, показывающую, что тест соответствует требованиям атомарности, согласованности, изолированности и долговечности (ACID atomicity, consistency, isolation, and durability), которые гарантируют, что все транзакции из оценочного теста обрабатываются должным образом.

TPC определяет и управляет форматом нескольких тестов для оценки производительности OLTP (On-Line Transaction Processing), включая тесты TPC-A, TPC-B, TPC-C,TPC-D и TPC-E. Хотя упомянутые тесты TPC не являются непосредственно тестами для оценки производительности баз данных, системы реляционных баз данных- ключевые компоненты любой системы обработки транзакций.


Следует отметить, что, как и любой другой тест, ни один тест TPC не может измерить производительность системы, которая применима для любой возможной среды обработки транзакций, но эти тесты действительно могут помочь пользователю справедливо сравнивать похожие системы. Однако, когда пользователь делает покупку или планирует решение о покупке, он должен понимать, что никакой тест не может заменить его конкретную прикладную задачу.

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

На сегодня в промышленности приняты следующие типы характеристик нагрузки, генерируемой приложением базы данных: "легкая", "средняя","тяжелая" и "очень тяжелая". Категория "легкая" приравнивается к рабочим нагрузкам, которые доминируют в операциях, подобным транзакциям дебет/кредит, определенным в оценочных тестах TPC-A. Нагрузками "средней" тяжести считаются транзакции, определенные стандартом теста TPC-C. Тяжелыми рабочими нагрузками считаются нагрузки, которые ассоциируются с очень большими приложениями, такими как Oracle*Financials. Такие нагрузки по крайней мере в 5-10 раз тяжелее, чем принятые в тесте TCP-A.

Основным классом приложений, которые попадают в категорию "оченьтяжелой" нагрузки, являются системы поддержки принятия решений. Из-за очень больших различий в характере самих запросов к системе поддержки принятия решений, администраторы баз данных или самой СУБД сталкиваются с серьезными проблемами по обеспечению широкомасштабной оптимизации. Запросы к системе поддержки принятия решений часто приводят к формированию существенно большего числа запросов к нижележащей системе из-за необходимости выполнения многонаправленных соединений, агрегирования, сортировки и т.п. Тест TPC-D был специально разработан для оценки работы приложений поддержки принятия решений.

Подробно о структуре тестов TPC см. [4].


Содержание раздела