1. A computing system, comprising: one or more hardware computer processors; a network interface providing data communication with (1) a first electronic data store configured to store a plurality of matching algorithms associated with a corresponding plurality of online requesting entities, the plurality of matching algorithms each including one or more deterministic matching rule and one or more probabilistic matching rule, and (2) a second electronic data store configured to store a plurality of device profiles, each device profile associated with a different electronic communication device and including at least: a unique device identifier; and one or more device identifiers associated with the electronic communication device, each of the one or more device identifiers being associated with a respective identifier type of a plurality of identifier types; a non-transitory storage device storing executable software instructions that when executed: receive online event data including a plurality of device identifiers associated with a first device that has interacted with a first online requesting entity; access, from the first electronic data store, a first matching algorithm associated with the first online requesting entity, the first matching algorithm including a plurality of matching rules; until either a determination that a particular accessed device profile of the plurality of device profiles matches a selected matching rule of the first matching algorithm, or until all of the matching rules of the first matching algorithm are evaluated with reference to the online event data, in real-time: select a highest priority matching rule of the first matching algorithm that has not yet been evaluated with reference to the online event data; determine a selected identifier type indicated in the selected matching rule; determine a device identifier of the selected identifier type from the plurality of device identifiers of the online event data; for each of the plurality of device profiles: access a device profile identifier of the selected identifier type in the device profile; determine whether the device profile identifier matches the device identifier of the selected identifier type from the online event data; in response to determination that the device profile identifier matches the device identifier of the selected identifier type from the online event data, provide, to the requesting entity, the unique device identifier associated with the device profile in the second electronic data store; in response to determination that none of the matching rules of the first matching algorithm match the device profile of the plurality of device profiles: generate a new device profile associated with a unique device identifier and at least some of the online event data, and provide, to the requesting entity, the unique device identifier associated with the new device profile; and wherein the first matching algorithm is executed in real-time in response to receiving the online event data.