An apparatus, comprising: a memory including: a first data store storing a plurality of immutable data structures, and a second data store; a processor operably coupled to the memory and configured to convert intelligence input into a set of immutable data structures representing status information for a plurality of assets, the first data store storing the set of immutable data structures; the processor configured to generate an identity value for each immutable data structure from the set of immutable data structures based on an associated observation description attribute, so as to generate a first set of identity values, the second data store storing the first set of identity values; the processor configured to query the second data store using an identity value from the set of identity values; the processor configured to: store the immutable data structure associated with the identity value from the set of identity values in an immutable data structure data store when the identity value from the set of identity values is not found in the second data store, store a copy of the identity value from the set of identity values in the second data store when the identity value from the set of identity values is not found in the second data store, and not store the immutable data structure associated with the identity value from the set of identity values in the immutable data structure data store when the identity value from the set of identity values is found in the second data store; the processor configured to receive a request for intelligence status data; the processor configured, in response to the request, to query the second data store and at least one of the first data store or a third data store storing a plurality of immutable data structure, for a second set of identity values correlated with data included in the request, to retrieve intelligence status data correlated with each identity value in the second set of identity values; the processor configured to coalesce at least a portion of the retrieved intelligence status data into a snapshot data structure; and the processor configured to return the snapshot data structure in response to the request. a memory including: a first data store storing a plurality of immutable data structures, and a second data store; a processor operably coupled to the memory and configured to convert intelligence input into a set of immutable data structures representing status information for a plurality of assets, the first data store storing the set of immutable data structures; the processor configured to generate an identity value for each immutable data structure from the set of immutable data structures based on an associated observation description attribute, so as to generate a first set of identity values, the second data store storing the first set of identity values; the processor configured to query the second data store using an identity value from the set of identity values; the processor configured to: store the immutable data structure associated with the identity value from the set of identity values in an immutable data structure data store when the identity value from the set of identity values is not found in the second data store, store a copy of the identity value from the set of identity values in the second data store when the identity value from the set of identity values is not found in the second data store, and not store the immutable data structure associated with the identity value from the set of identity values in the immutable data structure data store when the identity value from the set of identity values is found in the second data store; store the immutable data structure associated with the identity value from the set of identity values in an immutable data structure data store when the identity value from the set of identity values is not found in the second data store, store a copy of the identity value from the set of identity values in the second data store when the identity value from the set of identity values is not found in the second data store, and not store the immutable data structure associated with the identity value from the set of identity values in the immutable data structure data store when the identity value from the set of identity values is found in the second data store; the processor configured to receive a request for intelligence status data; the processor configured, in response to the request, to query the second data store and at least one of the first data store or a third data store storing a plurality of immutable data structure, for a second set of identity values correlated with data included in the request, to retrieve intelligence status data correlated with each identity value in the second set of identity values; the processor configured to coalesce at least a portion of the retrieved intelligence status data into a snapshot data structure; and the processor configured to return the snapshot data structure in response to the request.