A computer-implemented method comprising: generating matches between a first set of entities in a first dataset from a first data provider and a second set of entities in a second dataset from a second data provider based on comparisons of a first set of fields in the first dataset with a second set of fields in the second dataset; modifying a join query for joining the first and second datasets to include one or more operators representing one or more compliance rules for the first or second datasets, wherein the join query comprises a join predicate represented by the generated matches, wherein said modifying comprises adding, to a query of the derived dataset, an operator that enforces an access control policy for an entity for which the query is performed; executing the modified join query to produce, from the first and second datasets, a joined dataset that adheres to the one or more compliance rules; storing data related to the joined dataset within a platform that logically isolates the joined dataset from one or more additional datasets that are not from the first and second data providers, wherein said storing comprises storing, in the platform, a derived dataset that is produced from one or more fields in the joined dataset and comprises storing the derived dataset in one or more data stores within the platform based on a schema for the derived dataset by: identifying, based on the schema, a searchable field in the derived dataset and a unique field in the derived dataset; storing a first set of values of the searchable field from the derived dataset in a search index; and storing a second set of values of the unique field in the derived dataset in a key-value store; and during processing of queries of the stored data, modifying the queries to include one or more additional operators that enforce one or more access control policies for the data. generating matches between a first set of entities in a first dataset from a first data provider and a second set of entities in a second dataset from a second data provider based on comparisons of a first set of fields in the first dataset with a second set of fields in the second dataset; modifying a join query for joining the first and second datasets to include one or more operators representing one or more compliance rules for the first or second datasets, wherein the join query comprises a join predicate represented by the generated matches, wherein said modifying comprises adding, to a query of the derived dataset, an operator that enforces an access control policy for an entity for which the query is performed; executing the modified join query to produce, from the first and second datasets, a joined dataset that adheres to the one or more compliance rules; storing data related to the joined dataset within a platform that logically isolates the joined dataset from one or more additional datasets that are not from the first and second data providers, wherein said storing comprises storing, in the platform, a derived dataset that is produced from one or more fields in the joined dataset and comprises storing the derived dataset in one or more data stores within the platform based on a schema for the derived dataset by: identifying, based on the schema, a searchable field in the derived dataset and a unique field in the derived dataset; storing a first set of values of the searchable field from the derived dataset in a search index; and storing a second set of values of the unique field in the derived dataset in a key-value store; and identifying, based on the schema, a searchable field in the derived dataset and a unique field in the derived dataset; storing a first set of values of the searchable field from the derived dataset in a search index; and storing a second set of values of the unique field in the derived dataset in a key-value store; and during processing of queries of the stored data, modifying the queries to include one or more additional operators that enforce one or more access control policies for the data.