MatchingWorkflow
The MatchingWorkflow resource allows you to create and manage AWS EntityResolution MatchingWorkflows for identifying and resolving entities within your data sets.
Minimal Example
Section titled “Minimal Example”Create a basic matching workflow with required properties and one optional description:
import AWS from "alchemy/aws/control";
const basicMatchingWorkflow = await AWS.EntityResolution.MatchingWorkflow("basicMatchingWorkflow", { ResolutionTechniques: { Matching: { Threshold: 0.8, Similarity: "Jaccard" } }, Description: "A basic matching workflow to resolve entities.", InputSourceConfig: [ { SourceType: "S3", SourcePath: "s3://my-bucket/input-data/" } ], WorkflowName: "BasicMatchingWorkflow", OutputSourceConfig: [ { DestinationType: "S3", DestinationPath: "s3://my-bucket/output-data/" } ], RoleArn: "arn:aws:iam::123456789012:role/MyMatchingWorkflowRole"});
Advanced Configuration
Section titled “Advanced Configuration”Configure a matching workflow with incremental run configuration and tags for better organization:
const advancedMatchingWorkflow = await AWS.EntityResolution.MatchingWorkflow("advancedMatchingWorkflow", { ResolutionTechniques: { Matching: { Threshold: 0.85, Similarity: "Cosine" } }, Description: "An advanced matching workflow with incremental run configuration.", InputSourceConfig: [ { SourceType: "S3", SourcePath: "s3://my-bucket/input-data/" } ], WorkflowName: "AdvancedMatchingWorkflow", IncrementalRunConfig: { StartTime: "2023-01-01T00:00:00Z", EndTime: "2023-12-31T23:59:59Z" }, OutputSourceConfig: [ { DestinationType: "S3", DestinationPath: "s3://my-bucket/output-data/" } ], RoleArn: "arn:aws:iam::123456789012:role/MyMatchingWorkflowRole", Tags: [ { Key: "Environment", Value: "Production" }, { Key: "Project", Value: "EntityResolution" } ]});
Using Existing Resources
Section titled “Using Existing Resources”Set the adopt
property to true to adopt an existing matching workflow instead of failing if it already exists:
const adoptedMatchingWorkflow = await AWS.EntityResolution.MatchingWorkflow("adoptedMatchingWorkflow", { ResolutionTechniques: { Matching: { Threshold: 0.75, Similarity: "Levenshtein" } }, WorkflowName: "AdoptedMatchingWorkflow", InputSourceConfig: [ { SourceType: "RDS", SourcePath: "my-database-instance" } ], OutputSourceConfig: [ { DestinationType: "RDS", DestinationPath: "my-output-database" } ], RoleArn: "arn:aws:iam::123456789012:role/MyMatchingWorkflowRole", adopt: true});