Speed up the migration

Hello dears,
I running the migration successfully (from 1.1.9 to 2.2.8) in a staging environment (quad core Intel(R) Xeon(R) CPU 2.8 GHz, 16 GB ram, memcached, PHP 7.1-fpm) on Google Cloud using your fantastic tool (v3.1.8).
For about 42k products and 70k orders, the migration time was about 7 hours. So good.
Now I’m testing the migration on the production server on AWS. It’s a quad core Intel(R) Xeon(R) CPU E5-2686 v4 @ 2.30GHz with 16 GB of RAM, memcached and PHP 7.1-fpm.
I started the migration more than 24 hours ago and is still not finished.
I used the same cli command:

php bin/ubdatamigration run --limit=2000

the source and target databases are in a local environment (mariadb).
The following is the results of memcstat --servers=localhost 11211:

Server: localhost (11211)
pid: 3884
uptime: 94514
time: 1583933471
version: 1.5.6
libevent: 2.1.8-stable
pointer_size: 64
rusage_user: 109.856388
rusage_system: 329.956499
max_connections: 1024
curr_connections: 2
total_connections: 142
rejected_connections: 0
connection_structures: 3
reserved_fds: 20
cmd_get: 7217265
cmd_set: 66458
cmd_flush: 7
cmd_touch: 0
get_hits: 6657179
get_misses: 560086
get_expired: 0
get_flushed: 3
delete_misses: 0
delete_hits: 0
incr_misses: 0
incr_hits: 0
decr_misses: 0
decr_hits: 0
cas_misses: 0
cas_hits: 0
cas_badval: 0
touch_hits: 0
touch_misses: 0
auth_cmds: 0
auth_errors: 0
bytes_read: 286763106
bytes_written: 3437013878
limit_maxbytes: 536870912
accepting_conns: 1
listen_disabled_num: 0
time_in_listen_disabled_us: 0
threads: 4
conn_yields: 0
hash_power_level: 16
hash_bytes: 524288
hash_is_expanding: 0
slab_reassign_rescues: 0
slab_reassign_chunk_rescues: 0
slab_reassign_evictions_nomem: 0
slab_reassign_inline_reclaim: 0
slab_reassign_busy_items: 0
slab_reassign_busy_deletes: 0
slab_reassign_running: 0
slabs_moved: 0
lru_crawler_running: 0
lru_crawler_starts: 14280
lru_maintainer_juggles: 1762137
malloc_fails: 0
log_worker_dropped: 0
log_worker_written: 0
log_watcher_skipped: 0
log_watcher_sent: 0
bytes: 14610364
curr_items: 64731
total_items: 66458
slab_global_page_pool: 0
expired_unfetched: 392
evicted_unfetched: 0
evicted_active: 0
evictions: 0
reclaimed: 1252
crawler_reclaimed: 11
crawler_items_checked: 590641
lrutail_reflocked: 14874
moves_to_cold: 185923
moves_to_warm: 144059
moves_within_lru: 198857
direct_reclaims: 0
lru_bumps_dropped: 0

So memcached seems works fine.
Any suggestions?

2 answers

Profile photo of Raffaele Baldi 130.00 $tone March 11, 2020
Public

Logs staging:

2020/02/19 18:47:55 - [Processing] Step #5 migration completed with 2000 Products;
2020/02/19 19:01:32 - [Processing] Step #5 migration completed with 2000 Products;
2020/02/19 19:26:28 - [Processing] Step #5 migration completed with 2000 Products;
2020/02/19 19:41:38 - [Processing] Step #5 migration completed with 2000 Products;
2020/02/19 19:56:14 - [Processing] Step #5 migration completed with 2000 Products;
2020/02/19 20:10:35 - [Processing] Step #5 migration completed with 2000 Products;
2020/02/19 20:27:07 - [Processing] Step #5 migration completed with 2000 Products;

Logs live:

2020/03/10 15:03:10 - [Processing] Step #5 migration completed with 2000 Products;
2020/03/10 16:09:20 - [Processing] Step #5 migration completed with 2000 Products;
2020/03/10 18:13:18 - [Processing] Step #5 migration completed with 2000 Products;
2020/03/10 19:21:40 - [Processing] Step #5 migration completed with 2000 Products;
2020/03/10 20:31:27 - [Processing] Step #5 migration completed with 2000 Products;
2020/03/10 21:33:04 - [Processing] Step #5 migration completed with 2000 Products;
2020/03/10 22:42:05 - [Processing] Step #5 migration completed with 2000 Products;
#1
Profile photo of ubdev Staff 98590.00 $tone March 12, 2020
Public

Hi Raffaele,
 
The actual migration performance associates with various factors including your database itself. 
 
In general, a few points below should be considered to improve the migration process: 

  • It’s always good to start with a good server. A minimum capacity you can consider: One with SSD hard disk, CPUs from 4 CPU cores @2.7 GHz, 16 GB RAM. The higher the better. 
  • Besides, you should enable PHP Memcached as indicated in the userguide of our migration tool.
  • Run the migration using the CLI mode
  • And if possible, when you can enable the Keep Original IDs options, it will help to improve the performance further (Please note, in order to enable Keep Original IDs, it’s mandatory that your M2 must be a fresh instance, as noted in this article).  

 
PS. Meanwhile, our current license allows you to migrate from one single Magento 1 database only. In case you plan to migrate from an additional Magento 1 database, a new license will be needed. 
 
Regards,
Ubertheme team

#2

Please login or Register to Submit Answer

Written By

Comments