1. A computer-implemented method comprising: at a server computer accessible via a data network to a plurality of client computing devices, receiving a first digital asset from one of the plurality of client computing devices over the data network; generating a first feature vector and a unique identifier for the first digital asset; determining a first search tree leaf node of a first search tree data structure maintained at the server computer is associated with a second feature vector that is close in distance to the first feature vector generated for the first digital asset, wherein the second feature vector is associated with a second digital asset; based on determining the first search tree leaf node is associated with the second feature vector that is close in distance to the first feature vector, assigning the first feature vector and the unique identifier for the first digital asset to the first search tree leaf node, wherein the first digital asset is added to a second search tree data structure maintained at the server computer by assigning the unique identifier for the first digital asset to a second search tree leaf node of the second search tree data structure; and storing the first digital asset in association with the unique identifier, wherein the first digital asset is retrievable from storage based on a retrieval request comprising the unique identifier.