поиск:
Полезные ссылки

  • Форум по MySQL

  • Статьи по MySQL

  • Вопросы по MySQL

  • MySQL.com


  • Базы данных

  • MySQL

  • PostgreSQL


  • PHP конференция 2005
    Подробности!

    5.1.4. Набор тестов MySQL (The MySQL Benchmark Suite)

    В данном разделе будет находиться техническое описание набора эталонных тестов MySQL (и crash-me), но оно пока еще не написано. В настоящее время можно получить хорошее представление об эталонном тесте, глядя на код и результаты в каталоге sql-bench любого исходного дистрибутива MySQL.

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

    Обратите внимание: этот эталонный тест - однопоточный, так что в нем измеряется минимальное время выполнения операций. В будущем мы планируем добавить в данный набор большое количество многопоточных тестов.

    Например (выполнено на одной машине под NT 4.0):

    Чтение 2000000 строк по индексу Секунды Секунды
    mysql 367 249
    mysql_odbc 464
    db2_odbc 1206
    informix_odbc 121126
    ms-sql_odbc 1634
    oracle_odbc 20800
    solid_odbc 877
    sybase_odbc 17614
    Вставка 350768 строк Секунды Секунды
    mysql 381 206
    mysql_odbc 619
    db2_odbc 3460
    informix_odbc 2692
    ms-sql_odbc 4012
    oracle_odbc 11291
    solid_odbc 1801
    sybase_odbc 4802

    В предыдущем тесте MySQL запускался с 8-мегабайтным индексным кэшем.

    Гораздо больше результатов тестов вы сможете найти по адресу https://www.mysql.com/information/benchmarks.html.

    Обратите внимание: данные об Oracle отсутствуют - по просьбе компании Oracle вся информация по их продукту была удалена. Все эталонные тесты для Oracle должны быть пропущены через компанию Oracle! Мы считаем, однако, что при таком способе тестирования результаты эталонных тестов для Oracle будут в очень высокой степени различаться, поскольку приведенные на сайте результаты призваны показывать на что способна стандартная инсталляция для одного клиента.

    Чтобы выполнить набор эталонных тестов, необходимо загрузить исходный дистрибутив MySQL, установить драйвер perl DBI, драйвер perl DBD для той базы данных, которую нужно проверить, а затем выполнить:

    cd sql-bench
    perl run-all-tests --server=#
    

    где # - один из поддерживаемых серверов. Список всех опций и поддерживаемых серверов можно получить, выполнив run-all-tests --help.

    Программа crash-me пытается определить, какие функции поддерживаются СУБД, и какие возможности и ограничения имеют эти функции при выполнении запросов. Например, она определяет следующее:

    • какие типы столбцов поддерживаются

    • сколько индексов поддерживается

    • какие функции поддерживаются

    • насколько большим может быть запрос

    • насколько большим может быть столбец VARCHAR

    Результат, полученные crash-me для большого количества различных СУБД, можно найти по адресу: https://www.mysql.com/information/crash-me.php.

     
    © 1997-2005 PHP Club Team
    Rambler's Top100