I have created two DBs.
It took quite a bit of time 
User count: 3,000 users
neo4j.conf: default
Neo4j version: 4.0.4
PC: Mac is a 2010 model Core2Duo with 8GB memory.
Surely you can search faster if you embed the card type and date.
Long Relationship Name (41 ms)
(:User)-[:HAS_CREDIT_CARD_VISA_REGULATION_GDPR_DETECTED_ON_2012_01_01]->(:Sensibleinfo)
PROFILE MATCH (n:User {name:'Braylen Wilkinson'})-[r:HAS_CREDIT_CARD_AMEX_REGULATION_GDPR_DETECTED_ON_2020_03_18]->(s:SensibleInfo)
RETURN *
Cypher version: CYPHER 4.0, planner: COST, runtime: PIPELINED. 29 total db hits in 41 ms.
Short Same Relationship Name (91 ms)
(:User)-[:HAS_CREDIT_CARD]->(:SensibleInfo)
PROFILE MATCH (n:User {name:'Braylen Wilkinson'})-[r:HAS_CREDIT_CARD]->(s:SensibleInfo {type:'AmEx',gdpr:'2020-03-18'})
RETURN *
Cypher version: CYPHER 4.0, planner: COST, runtime: PIPELINED. 66 total db hits in 91 ms.
However, I think people with long relationships are at a disadvantage when they specify multiple cards or time periods.
The reason is that when you search, the names of the relationships have to be a perfect match.
If the User has Visa and AmEx, I don't know how to designate them.
I think it will be slower than the one that has a common relationship with [:HAS_CREDIT_CARD].
The data set with long relationships was created by 3000 users as follows.
CREATE INDEX name FOR (n:User) ON (n.name);
CREATE (:User {name: 'Nickolas Mahoney'})-[:HAS_CREDIT_CARD_VISA_REGULATION_GDPR_DETECTED_ON_2012_01_01]->(:Sensibleinfo),
(:User {name: 'Holden Esparza'})-[:HAS_CREDIT_CARD_VISA_REGULATION_GDPR_DETECTED_ON_2012_01_02]->(:SensibleInfo),
(:User {name: 'Danny Vaughan'})-[:HAS_CREDIT_CARD_VISA_REGULATION_GDPR_DETECTED_ON_2012_01_03]->(:SensibleInfo),
(:User {name: 'Denisse Cochran'})-[:HAS_CREDIT_CARD_VISA_REGULATION_GDPR_DETECTED_ON_2012_01_04]->(:SensibleInfo)
etc..
The data set with short relationships was created as follows.
CREATE INDEX name FOR (n:User) ON (n.name);
CREATE INDEX type_gdpr FOR (n:SensibleInfo) ON (n.type,n.gdpr);
LOAD CSV WITH HEADERS FROM 'file:///CreditCard.csv' AS line
CREATE (:User {name: line.User})-[:HAS_CREDIT_CARD]->(:SensibleInfo {type: line.Type, gdpr: line.Date})
Short Same Relationship Name is very Easy!!
- Give me all the User that have Visa card.
MATCH (n:User)-[r:HAS_CREDIT_CARD]->(s:SensibleInfo {type: 'Visa'})
RETURN DISTINCT (n.name)
- Give me all the User that have a Visa card between two date
MATCH (n:User)-[r:HAS_CREDIT_CARD]->(s:SensibleInfo {type: 'Visa'})
WHERE s.gdpr >= '2012-01-01' AND s.gdpr <= '2012-02-28'
RETURN DISTINCT (n.name)
- Give me all the sensible info of User "John"
MATCH (n:User {name:'John'})-[r:HAS_CREDIT_CARD]->(s:SensibleInfo)
RETURN s