Question 1 · choose 1
A bank is designing a fraud detection service that must find, within milliseconds, whether a new card transaction is linked through shared devices, addresses or phone numbers to accounts already flagged for fraud, following links several hops deep. Which database best fits this access pattern?
- AAmazon Neptune, with accounts, devices and addresses stored as vertices connected by edges
- BAmazon Redshift, with nightly joins between transaction and account tables
- CAmazon DynamoDB, with one item per account and a list of linked accounts in each item
- DAmazon OpenSearch Service, with one document per transaction and full-text search on the fields
Show the answer and why
AAmazon Neptune, with accounts, devices and addresses stored as vertices connected by edges
Correct
Neptune is a graph database built to store relationships and run queries that navigate highly connected data, such as fraud rings that share devices or addresses.
BAmazon Redshift, with nightly joins between transaction and account tables
Incorrect
Redshift is a data warehouse for analytic queries over large data sets. Nightly batch joins do not answer within milliseconds per transaction.
CAmazon DynamoDB, with one item per account and a list of linked accounts in each item
Incorrect
DynamoDB is fast for key-based access, but following links several hops deep needs many dependent lookups that the application must perform itself.
DAmazon OpenSearch Service, with one document per transaction and full-text search on the fields
Incorrect
OpenSearch Service is built for search and log analytics. It does not traverse relationships between entities several hops deep.
Multi-hop relationship queries are the defining access pattern of a graph database.
AWS documentation