Jeśli Twoje dane nie muszą natychmiast trafiać do bazy danych, możesz gdzieś buforować swoje dane wstawiania, a następnie wydać jedną większą instrukcję wstawiania, np.
wstaw do nazwa_tabeli (x, y, z) wartości (x1, y1, z1), (x2, y2, z2), ... (xN, yN, zN) przy zduplikowanej aktualizacji ...;
Żeby było jasne, zachowałbym listę oczekujących wstawek. W tym przypadku lista trojaczków (x,z,y). Następnie, gdy Twoja lista przekroczy pewien próg (N), generujesz instrukcję wstawiania i wydajesz ją.
Nie mam dla ciebie dokładnych danych dotyczących czasu, ale zwiększyło to wydajność około 10 razy w porównaniu z wstawianiem każdego wiersza osobno.
Nie bawiłem się też wartością N, ale stwierdziłem, że 1000 działa ładnie. Oczekuję, że na optymalną wartość mają wpływ ustawienia sprzętu i bazy danych.
Mam nadzieję, że to pomoże (ja też używam MyIsam).