У меня есть сервер баз данных MySql 8, работающий локально на приличном игровом ноутбуке. Когда я пытаюсь вставить количество записей (500 КБ), хранящихся в структуре в памяти в Java, с помощью следующего кода, это очень медленно, мы говорим, может быть, самое большее 1000 записей в минуту.
Я действительно не знаю, где искать отладочную информацию или какие показатели я должен предоставить здесь, чтобы помочь ответить на этот пост, поэтому, если у вас есть какие-либо рекомендации или дополнительная информация, которую я могу предоставить, пожалуйста, дайте мне знать.
Я временно работал над этим, сохраняя данные в базе данных H2 в памяти, но на самом деле я хотел бы сохранить их и запросить их на досуге, используя MySql workbench.
PreparedStatement ps = conn.prepareStatement(insertSQL);
ArrayList<String> stocks = new ArrayList<String>();
for (Spread spread : spreads) {
ps.setInt(1, spread.buyFeedId);
ps.setInt(2, spread.sellFeedId);
ps.setString(3, spread.stock);
ps.setString(4, spread.buyExchange);
ps.setString(5, spread.sellExchange);
ps.setTimestamp(6, new Timestamp(spread.spreadDateTime.toInstant().toEpochMilli()));
ps.setDouble(7, spread.buyPrice);
ps.setDouble(8, spread.sellPrice);
ps.setDouble(9, spread.diff);
ps.setInt(10, spread.askSize);
ps.setInt(11, spread.bidSize);
ps.execute();