Methods for searching a large face database
If you can transform your problem into the following "given a set of vectors find the N ones with the smallest euclidian distance to the query", there are well-known methods (Ball-trees, Locality-sensitive hashing...) for solving it on large datasets. With this approach, PCA / LDA is thus just a pre-processing step for transforming the set of features produced by your feature extractor into a lower-dimensionality feature vector.