Jump to content

ТПК-С

Измерение TPC-C в испытательной лаборатории, c. 2008 год

TPC-C , сокращение от Transaction Processing Performance Council Benchmark C , — это тест, используемый для сравнения производительности систем онлайн-обработки транзакций (OLTP). Этот отраслевой стандарт был опубликован в августе 1992 года и в конечном итоге заменил более ранний TPC-A, который был объявлен устаревшим в 1995 году. Он претерпел ряд изменений, чтобы сохранить его актуальность, поскольку производительность компьютера выросла на несколько порядков с текущей версией. по состоянию на 2021 год , 5.11, выпущенная в 2010 году. В 2006 году к пакету был добавлен новый тест OLTP, TPC-E, но TPC-C по-прежнему широко используется.

Система TPC-C моделирует оптовую операцию с несколькими складами, известную просто как «Компания». В минимальном тесте у компании есть десять складов, на каждом из которых установлено десять пользовательских терминалов. Каждый склад обслуживает десять определенных торговых районов, в каждом из которых обслуживается 3000 клиентов, которые делают заказы по каталогу продукции, состоящему из 100 000 позиций. Наиболее частыми транзакциями являются заказы клиентов (в среднем по десять позиций в каждом заказе) и платежи клиентов. Менее частые запросы запрашивают статус заказов и складских запасов, отгружают заказы и пополняют запасы, которые заканчиваются. Чтобы протестировать производительность конкретной системы, количество складов увеличивается до необходимого минимума, необходимого для измерения целевого уровня производительности. [1]

Результаты теста измеряются в транзакциях в минуту, известных как tpmC . Первый результат tpmC был опубликован в сентябре 1992 года для IBM AS/400 и дал результат 54 tpmC. К 2000-м годам средний результат для высокопроизводительных машин составил 2,4 миллиона tpmC, и компании создавали системы очень больших размеров, пытаясь побить рекорд. Текущий рекорд был установлен в 2020 году с использованием облачных вычислений , обеспечивших 707,3 млн tpmC. Недавние результаты для небольших локальных систем были сосредоточены на снижении стоимости tpmC.

IBM модифицировала TPC-C, чтобы создать упрощенную версию, известную как рабочая нагрузка коммерческой обработки , для собственного внутреннего использования. Подобные преобразования являются обычным явлением, но обычно не известны за пределами соответствующих компаний.

Предыдущая работа

[ редактировать ]

Выпуск реляционных баз данных , таких как Oracle, привел к дебатам в отрасли между реляционной моделью и более старыми концепциями CODASYL . Из этих дебатов выросло желание предложить реалистичные оценки производительности. В 1985 году Джим Грей из Tandem Computers стал соавтором статьи, ныне известной как «Anon et.al.», в которой был изложен потенциальный стандарт под названием DebitCredit. [2]

Это быстро привело к множеству модификаций и сравнению яблок с апельсинами, что, в свою очередь, привело к попытке Тома Сойера и Омри Серлина в июне 1988 года стандартизировать систему и опубликовать новую версию. [3] Публикация этой версии и продолжающиеся разногласия по поводу ее использования привели к созданию в августе 1988 года отраслевого консорциума под названием «Совет по производительности обработки транзакций» или TPC, который взял на себя эту работу и создал официальный отраслевой стандарт. [4]

Компания TPC разработала свой первый стандартный эталонный тест под названием TPC-A на основе DebitCredit с добавлением полных свойств ACID . Другие требования были в первую очередь организационными; Чтобы представить результат, теперь нужно было предоставить полную информацию о системе и тестировании, с предложением провести аудит третьей стороной, а любая информация о ценах должна была включать контракты на техническое обслуживание на пятилетний период. Вскоре после этого был выпущен аналогичный тест под названием TPC-B, который отличался главным образом тем, что использовал пакетный ввод, а не эмулировал ввод с терминала. [5]

Ввод заказов

[ редактировать ]
Подкомитет TPC-C в Париже в 1992 году отмечает выпуск версии 1.0.

Примерно в то время, когда TPC-A завершалась, Digital Equipment Corporation (DEC) работала над новой распределенной системой баз данных RdbStar. Это привело к разработке нового теста для измерения производительности новой системы баз данных. Группа производительности RdbStar исследовала многие существующие тесты до TPC, такие как тест Wisconsin, AS3AP и Set Query Benchmark. Они также изучили реальные варианты использования баз данных на основе опроса клиентов европейского подразделения DEC. В конечном итоге они выбрали компоненты неопубликованной рабочей нагрузки Остина из Консорциума микроэлектроники и компьютеров , которая имитировала складские операции. Команда использовала эту рабочую нагрузку в качестве основы для своего собственного теста, известного как Order-Entry. [6]

К моменту публикации TPC-B в августе 1990 года уже существовали опасения, что дебет/кредит слишком прост и не моделирует типичные рабочие нагрузки. В ноябре начались новые усилия с призывом к отрасли предоставить новый эталон. IBM ответила своим RAMP-C, а DEC предложила ввод заказов. Предложение DEC было выбрано, а его основной автор, Франсуа Рааб, был выбран техническим руководителем усилий по стандартизации. [6] Эти усилия длились восемнадцать месяцев и завершились выпуском версии TPC-C 1.0 13 августа 1992 года. [7]

Пост-релиз

[ редактировать ]

В течение следующих нескольких лет спецификация тестов TPC-C претерпела несколько незначительных изменений. Версия 1.1 от июня 1993 г. прояснила некоторые формулировки и потребовала определения цены тестируемой системы на стороне клиента. В версии 2.0 от октября 1993 г. были изменены различные требования к отчетности и добавлены формулировки, исключающие любые улучшения, специфичные для эталонных тестов. В версии 3.0 от февраля 1996 года добавлено отслеживание транзакций, новые поля для добавления изображений (в конечном итоге никогда не использовавшиеся) и исключение терминалов из общей стоимости системы, поскольку к этому времени стоимость серверов настолько снизилась, что стоимость терминалы стали составлять слишком большую часть общей стоимости. [7]

Тест продолжал развиваться, чтобы приспособиться к появлению новых вычислительных архитектур, таких как модель клиент-сервер , и уточнить правила, регулирующие правильное выполнение этапов тестирования и необходимую отчетность. Наиболее существенные изменения произошли в 2000 году и заключались в переводе цен на техническое обслуживание с пяти до трех лет и с пяти 8-часовых дней (5х8) на семь 24-часовых дней (7х24), сокращении продолжительности измерений с восьми до двух часов и сокращение потребности в архивном пространстве в три раза. Эти три основных изменения были выпущены в версии 5.0 26 февраля 2001 года. Незначительные изменения были внесены после уточнения различных требований, изложенных в спецификации эталонного теста. По состоянию на 2021 год , последняя редакция — 5.11, опубликована 11 февраля 2010 г. [8]

Первый опубликованный результат нового теста был опубликован в сентябре 1992 года при температуре 54 tpmC. [9] С тех пор рекорды TPC-C со временем увеличивались почти точно по закону Мура . Первоначальные результаты исчислялись десятками, но через год их количество достигло сотен, и к январю 1998 года рекорд составил 52 871 человек. [9] К 2010 году эта цифра достигла миллиона. В 2000-е годы количество рекордов уменьшилось, поскольку стоимость установления рекорда значительно выросла. В этот период Microsoft переключила свое внимание на новый тест TPC-E , предоставив Oracle возможность создавать огромные системы и неоднократно устанавливать рекорды, которые другие не могли себе позволить. [10]

Попытки установить рекорд после этого момента были относительно немногочисленны до появления облачных вычислений в конце 2010-х годов. Текущий рекордсмен — Ant Financial , чья OceanBase обеспечивает работу Alibaba . В августе 2019 года они установили рекорд чуть более 60 миллионов, что стало первой попыткой после результата Oracle в 8 миллионов в 2013 году. Другие поспешили отметить, что рекорд Oracle был установлен на одной рабочей станции , в то время как Ant требовалась полноценная вычислительная ферма. Чтобы положить конец таким жалобам, в мае 2020 года Ant опубликовал новый рекорд — 707 миллионов. Этот рекорд стоит и по сей день. [11]

Описание

[ редактировать ]

TPC-C основан на рабочей нагрузке ввода заказов, представленной TPC компанией DEC. Более ранний тест TPC-A был сосредоточен в первую очередь на обновлениях баз данных , соответствующих операциям в упрощенной дебетовой/кредитной бухгалтерской системе, которая не соответствовала реальным моделям использования. Выборка производственных рабочих нагрузок показала, что для более адекватного представления закономерностей реального мира необходимо более сложное сочетание вставок, чередующихся с обновлениями и операциями только для чтения. Более того, база данных TPC-A не отличалась особой сложностью; Реальные системы распределяют свои данные по множеству таблиц разного размера и сложности. [12]

TPC-C использует схему базы данных , состоящую всего из девяти таблиц. Структура определяется в первую очередь таблицей Warehouse, которая содержит ряд складских записей, обозначенных W. W имеет минимальное значение 10 и должно быть увеличено, чтобы соответствовать уровню насыщения тестируемых систем, используя W в качестве коэффициента масштабирования. Заявленный показатель производительности не может превышать 12,86 x Вт. [1] На всех складах имеется один и тот же каталог товаров. Таблица «Товар» содержит 100 000 строк, а таблица «Акции» — Ш x 100 000 строк. Вторая ветвь схемы — это Районы с 10 записями для каждого Склада. У районов есть клиенты, по 3000 на каждый район. Они генерируют заказы от 5 до 15 строк заказов на заказ. Это означает, что Order-Line — это самая большая таблица, примерно с W(площади) x 3000 (Клиенты) x 10 (первоначальные заказы) x 10 (строки заказов) = W x 300 000 записей. Процесс заполнения заказа взаимодействует с записями запасов, связанными с одним или несколькими складами. [13]

Деятельность состоит из серии виртуальных терминалов W x 10, вводящих транзакции в соответствии с полуслучайной формулой; основная транзакция — New-Order, которая создает один заказ. Каждый заказ приводит к одной Платежной операции и одной Доставке. Для каждых десяти транзакций нового заказа генерируется одна транзакция «Статус заказа» и одна транзакция «Уровень запаса». «Эмулятор удаленного терминала» (RTE) запрограммирован для имитации ввода данных пользователем, задержек при наборе текста, задержек между полями и между транзакциями. RTE также отслеживает время между запросом пользователя каждой транзакции и ее завершением, называемое временем ответа . Скорость выполнения транзакций новых заказов в минуту отображается как значение tpmC (транзакций в минуту C) и представляет собой основной показатель производительности эталонного теста. [12]

Предварительные результаты показали, что по сравнению с TPC-A рабочая нагрузка TPC-C была примерно в десять раз сложнее. Только один тип транзакции из пяти, 44% от общего числа, включается в результат TPC-C по транзакциям в минуту, тогда как TPC-A измеряется в транзакциях в секунду и включает каждую транзакцию. Это означает, что эти два числа невозможно напрямую сравнить без некоторого преобразования: умножения на 60 для учета секунд и минут и на 2,3 для учета подмножества включенных транзакций. Если рассматривать одну машину, IBM RS/6000 Model 570, TPC-A возвращает значение 129 tpsA, тогда как TPC-C возвращает 365,45 tpmC. Умножив tpmC на 2,3, а затем разделив на 60 для преобразования в tpsA, результат составит 13,5, разница в производительности примерно в 9,5 раз. [14]

Для подачи результата TPC-C также необходимо раскрыть подробную информацию о ценах на протестированную конфигурацию, включая обслуживание оборудования и программного обеспечения с круглосуточным обслуживанием в течение трехлетнего периода. Оплачиваемая система должна включать не только саму систему, но и достаточно места для хранения данных, сгенерированных при работе системы с указанной скоростью tpmC в течение 60 дней. Теоретически, tpmC, равный 1, будет генерировать 252 КБ записей в истории, 133 КБ в заказах и 1325 КБ в строке заказов. [15] Общая стоимость системы объединяется с измеренным значением tpmC для получения показателя цена/производительность. В то время как некоторые опубликованные результаты нацелены на получение максимально возможного значения tpmC, многие другие опубликованные результаты нацелены на первое место в конкурентоспособной категории «цена/производительность», иногда с относительно низким значением tpmC. [14]

Тестирование обычно выполняется поставщиком одного из основных компонентов (например, системы баз данных, внутреннего сервера и т. д.), который должен предоставить отчет о раскрытии информации с полной информацией о конфигурации системы, ее настройке, условиях тестирования. и все результаты собраны. [16] Вся реализация эталонного теста, все этапы тестирования, измеренные результаты, цены на систему и отчет о раскрытии информации должны быть проверены независимым аудитором, сертифицированным TPC. [17]

Библиография

[ редактировать ]
  • Серлин, Омри (1991). «История дебиткредита и TPC». Справочник по эталонным тестам для систем баз данных и обработки транзакций . Издательство М. Кауфманн. стр. 19–38. CiteSeerX   10.1.1.90.6123 . ISBN  9781558601598 .
  • Чен, Янпей; Рааб, Франсуа; Кац, Рэнди. От TPC-C к тестам больших данных: модель функциональной рабочей нагрузки . Семинар по тестированию больших данных. стр. 28–43. дои : 10.1007/978-3-642-53974-9_4 .
  • Намбияр, Рагунатх; Поэсс, Майкель (2011). «Эффективность транзакций против закона Мура: анализ тенденций». Конспекты лекций по информатике . Конспекты лекций по информатике. Том. 6417. Шпрингер-Верлаг. стр. 110–120. Бибкод : 2011LNCS.6417..110N . дои : 10.1007/978-3-642-18206-8_9 . ISBN  978-3-642-18205-1 .
  • TPC Benchmark C, версия 5.11 (PDF) (Технический отчет). Совет по производительности обработки транзакций. Февраль 2010.
  • Шенли, Ким (февраль 1998 г.). «Истоки ТПК и первые 10 лет» . Совет по производительности обработки транзакций .
  • Рааб, Франсуа; Колер, Уолт; Шах, Амитабх. «Обзор теста TPC-C, тест ввода заказов» . Совет по производительности обработки транзакций .
  • Рааб, Франсуа (1998). Грей, Джим (ред.). Справочник по эталонным тестам (PDF) .
  • Морган, Тимоти Прикетт (29 сентября 2009 г.). «TPC дает Oracle пощечину по поводу заявлений о тестах производительности» . Регистр .
  • «ТПК-С» . Тараканьи лаборатории .
  • Веверс, Лесли; Хофстра, Маттейс; Тамменс, Менно; Ван Кеулен, Морис (январь 2015 г.). Эталон онлайн-преобразований неблокирующих схем . 4-я Международная конференция по технологиям и приложениям управления данными. дои : 10.5220/0005500202880298 .
  • «OceanBase побивает рекорд TPC-C: диалог с финансовыми экспертами Ant» . Облако Алибаба . 5 июня 2020 г.
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 9e1109ab7b2ccbbdcae75aa865f6c0b1__1722370380
URL1:https://arc.ask3.ru/arc/aa/9e/b1/9e1109ab7b2ccbbdcae75aa865f6c0b1.html
Заголовок, (Title) документа по адресу, URL1:
TPC-C - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)