2011-02-05 3 views
1

Я пытаюсь реализовать игру в своей текущей работе. И мой менеджер спросил меня, как играть в рамочную сделку с 1 миллионом записей и MySql (я знаю, что это глупо) ... Я ответил, что любая проблема JPA может адресовать, PLAY также может ... Но он хочет, чтобы какой-то отчет ...[Play Framework]: Тестирование производительности с помощью MySql

Итак, я подумал о создании тестового метода с игрой UnitTest ... простой запрос из базы данных с миллионом записей в некоторой таблице.

Вопрос: Есть ли способ имитировать одну миллионную запись в базе данных mysql?

PS: Я знаю, что может быть, это не может быть вопрос, связанный ВОСПРОИЗВЕДЕНИЕ ...

ответ

3

Нечто подобное поможет:

MyController extends Controller { 
    public static void doInsert() { 
     for (int i=0;i<1000000;i++) { 
      final SampleEntity entity = new SampleEntity(); 
      entity.firstName = "First Name "+i; 
      entity.anotherProperty = i; 
      //etc 
      entity.save(); 
     } 
    } 
} 

Вам, возможно, придется иметь дело немного с промывкой соединения каждый так часто (это из памяти, может быть не совсем верно), чтобы избежать проблем с Hibernate/JPA так много строк:

if (i % 50000 == 0) { 
    em().flush(); 
} 
4

Вставьте миллион записей в таблицу. Это займет не более нескольких минут. Вы не можете имитировать реальную производительность без реальных данных.

Смежные вопросы