Witam, potrzebuje waszej pomocy :)
Muszę w Laravel kopiować dane z tabeli A do tabeli B, przy okazji modyfikować kilka danych (datę, przetłumaczyć kilka rzeczy...). do tej pory używałem fikcji "chunkById"

Crona do metody ustawiłem co godzinę, na początku funkcji zaznaczam w tabeli A że dane zostały już zaimportowane następnie importuje dane.
Problem polega na tym że zarażają się przypadki kiedy w tabeli A dane zostały oznaczone jako zaimportowane a w tabeli B ich nie ma. Domyślam się ze skrypt wysypuje się w połowie działania.

DB::table('list_of_cars_to_imports')->where('been_imported', null)->orderBy('id', 'ASC')->chunkById(100, function ($carInport) {
            foreach ($carInport as $car) {
                if (Car::where('stock', $car->id)->first() == null) {

                    DB::table('list_of_cars_to_imports')
                        ->where('id', $car->id)
                        ->update(['been_imported' => true]);

                    $Cars = new Car;
                    $Cars->stock = $car->id;
                    $Cars->vin = $car->VIN;
                    $Cars->save();

                }
            }
        });

Dodam że aktualnie w tabeli jest 300,000 rekordów a co dzień muszę przerzucać około 5.000 rekordów.
podpowiecie co robię źle i co muszę poprawić?