As I'm insering data only for the user,
I'm making precleaning - getting all the records (in my case with filter by user_id), then remove from array I'm going to batch insert that already in base.
If you are not using any filter and have lots of records try to find more about transactions. If I've got the docs you can start transaction make 1k insert ignore queries and the process transaction maybe it will go in a single request. But not sure if it works.