Can I use projections to map one aggregate stream to multible ID’s representing the same object?
We are rewriting an application using EventStore and need to keep original, external and internal ID’s for the same business objects.
We receive data from external sources that references e.g. customer #1001 which needs to be mapped to the internal GUID that we use for our aggregates.
Once mapped the user need to be able to search a customer by the original migrated database id 50007 which he/she has learned to use.
We want to use GUID’s for our internal aggregate ID’s to avoid a central store for creating unique ID’s.
So do I use projections to map one aggregate stream to multiple ID’s and thereby avoid a look-up-database?
This would give us Customer_GUID = Customer_EX_ID = Customer_MigratedI_D and we can load an aggregate without first having to look up the internal GUID from a database tabel.
We have a lot of customer objects so performance is an issue.