Comments 5
Интересно бы и MSSQL потестировать
Разумеется, и мне тоже интересно.
Но у меня нет под рукой ни MS SQL, ни кучи других СУБД, а так же времени на свободном компьютере на прогон множества тестов, которые могут длиться, например, полную рабочую смену. Поэтому я ограничился указанными СУБД.
Но, с другой стороны, если вы просто запустите приложенный к тексту код на вашем компьютере, то через несколько часов вы получите результаты на MS SQL, или на любой другой СУБД. Мне бы очень хотелось надеяться на такой вариант.
Ну а если есть сложности с настройкой тестов - пишите, проконсультировать у меня времени хватит :)
Ну у меня точно такого же компа нет, а похожий - это все таки будет не то. И я не джавист.
MSSQL вас просто можно поставить бесплатную developer edition
Точно такой же не критичен. Можно ведь прогнать на вашем железе PostgreSQL или MariaDB и в результате получить коэффициенты пересчёта.
Но вы уже почувствовали запах рабочего пота? В смысле нет желания возиться а настройкой схем и пользователей в незнакомой СУБД. Так же и мне - я с MS SQL возился в довольно лохматом году, так что с нуля его проадминистрить = опять немного попотеть.
Ещё момент. Вряд ли у вас SSD с рекордными характеристиками, значит скорее всего ваш вполне сравним с мои. Количество ядер ЦП тоже не сильно критично в данном тесте для одной из СУБД - MariaDB ни в одном сценарии не показала полной загрузки 8-ми ядер. Хотя PostgreSQL при любом количестве потоков давала 100% загрузку ЦП. Может ей бы полегчало от большего количества.
Ну и есть же возможность сравнить что-то, что доступно вам в двух экземплярах. Например - у вас есть две машины, тогда можно сравнить MS SQL на двух конфигурациях. Или даже на одной машине - сначала MS SQL с одними настройками, потом с другими.
Поэтому приведу вам лишь пример того, как запустить код из текста.
Сначала создайте тестовый каталог, например так - c:/temp/db/test/DbTest.java.
DbTest.java - это код. Название критично, поэтому менять нельзя. Так же критично расположение в каталоге test. Остальное не критично. Поменяйте внутри SQL и подключение к СУБД (об это ниже).
Затем компилируете так: javac -d c:/temp/db --source-path c:/temp/db c:/temp/db/test/DbTest.java.
Здесь javac есть компилятор, который входит в состав JDK, который качается с сайта оракла, либо в open-source версии с сайта jakarta (первая ссылка в гугле). Опция -d задаёт место, куда ложить скомпилированное. В примере результат будет рядом с DbTest.java и будет называться DbTest.class. Остальное - где что искать компилятору.
После инсталляции Java она пропишет пути к javac и другим файлам, поэтому можно не искать, где оно лежит.
После компиляции можно запускать так - java -cp c:/temp/db;путьКJDBCДрайверу/driverName.jar test.DbTest.
JDBC driver качаете отсюда.
В DbTest, перед компиляцией, поправьте, например, конкатенацию строк для константы PostgreSQL (её ищите поиском). Строки - это привычный вам SQL, то есть если где-то у PostgreSQL синтаксис отличается - нужно править.
Так же поправьте (найдите поиском) место с переменной connectionString. Для варианта PostgreSQL исправьте на что-то подходящее для MS SQL. Формат строки подключения есть здесь. В этой строке укажите адрес сервера, схему и ;user=MyUserName;password=***** (это всё расписано по ссылке).
После компиляции и запуска код будет выводить в консоль результаты. Читайте, копируйте, получайте удовольствие.
А HDD нет от слова совсем
Оценка потенциальной производительности информационных систем на задачах OLTP