Все, импорт прошел успешно :)
{ "data": { "startImportProcessor": { "success": true, "message": "", "errors": [], "data": { "id": "cjodrhwegbp8q0850k7n6x2a4", "createdAt": "2018-11-12T03:42:18.952Z", "updatedAt": "2018-11-12T03:47:07.834Z", "name": "Импорт со старого сайта", "status": "Completed", "CreatedBy": null, "Logs": [ { "id": "cjodrhwjybp8x0850m230niby", "level": "Info", "objectType": "Import", "message": "Было получено 3567 пользователей", "stack": null }, { "id": "cjodrj8s7bxib0850w1980w3w", "level": "Info", "objectType": "Import", "message": "Записано: 3567, пропущено: 0, ошибок: 0", "stack": null }, { "id": "cjodrj8sxbxij0850gbp8sckf", "level": "Info", "objectType": "Import", "message": "Было получено 42 блогов", "stack": null }, { "id": "cjodrj9labxnb08508c1gfcee", "level": "Info", "objectType": "Import", "message": "Записано: 42, пропущено: 0, ошибок: 0", "stack": null }, { "id": "cjodrj9nkbxnj0850xj09epwc", "level": "Info", "objectType": "Import", "message": "Было получено 1169 топиков", "stack": null }, { "id": "cjodrk6cxc2610850yfujjbrp", "level": "Info", "objectType": "Import", "message": "Записано: 1169, пропущено: 0, ошибок: 0", "stack": null }, { "id": "cjodrk6kuc2690850c270wz6b", "level": "Info", "objectType": "Import", "message": "Было получено 8032 комментариев", "stack": null }, { "id": "cjodro3akcx8b0850g4wv3bn3", "level": "Info", "objectType": "Import", "message": "Записано: 8032, пропущено: 0, ошибок: 0", "stack": null } ] } } } }
Меньше 5 минут. Блоги, топики, комменты, 9243 документа. И 3567 пользователей. Это при том, что для многих топиков и комментариев еще тексты из обычного текста конвертировались в draft-js. Красота! :)

Вообще, в этом как раз сильная сторона javascript - в то время, как "php создан, чтобы умирать", запущенный javascript-процесс крутится постоянно. Если он завершился, значит он умер. Вот и получается, что импортеры можно писать такие, которые просто часами могут работать, перелопатив не только тысячи, но и миллионы записей. Короче, мой ранее выпущенный modImporter - детский сад по сравнению с ним.

Если кому интересно, исходники выложил: https://github.com/MODX-Club/import-old-site

Модифицировав его, можно не только из одной базы данных в другую перегонять данные, но и собирать данные с нескольких источников, обрабатывать их и распределять в другие точки. Если кому-то что-то надо в таком плане, обращайтесь.

А теперь осталось только интерфейсы сайта актуализировать и в бой.

Вернуться к списку комментариев