Apoc.merge.node VS merge query

Hi, Suppose i have import millions of data in my graph. so basically i have two option to create the nodes in graph.
First way is using simple Merge query as written below
MERGE (p:Landing{IP:row.IP,NUM:row.NUM})
ON CREATE SET
p.IP_Null='N',
p.REL_null='N',
p.NUM=row.NUM,
p.IP=row.IP
ON MATCH SET
p.IP_Null='N',
p.REL_null='N',
p.NUM=row.NUM,
p.IP=row.IP

return p

Second one is using apoc.,merge.node procedure.
call apoc.Merge.node ([p:Landing],{IP:row.IP,NUM:row.NUM},{
p.IP_Null='N',
p.REL_null='N',
p.NUM=row.NUM,
p.IP=row.IP},{p.IP_Null='N',
p.REL_null='N',
p.NUM=row.NUM,
p.IP=row.IP} yield node
return node

My doubt is how we can understand which query is much faster.
Note i am trying this query in neo4j V3.5.

I doubt these two would be noticeably different. I think the benefit of the apoc approach is the flexibility with setting the label dynamically.

Just a note, your label list in the apoc call should be [β€œLanding”], not [p:Landing]. Also, the property maps for creating and matching the node are neo4j maps. You have syntax similar to SET operations. Remove the reference to β€˜p’ and change the maps to key value pairs.

Also, your biggest performance will be gained with a composite index on the Landing label and the two properties IP and NUM.