1. A method, implemented on a machine having at least one processor, storage, and a communication platform capable of making a connection to a network for information search, comprising the steps of: receiving, by an input content receiver via the communication platform, input data from one or more data sources; analyzing, by an input processor, the input data to obtain an input feature vector characterizing the input data; generating, by an indexing unit, an index of the input data based on the input feature vector; archiving, by an archiving unit, the input data in an inventory database based on a value of the index, wherein the value of the index for the input data is computed based on an improved fast Johnson-Lindenstrass transformation (FJLT) process comprising the steps of: randomly flipping the signs of the features in the input feature vector to obtain a flipped vector, applying a Hadamard transformation to the flipped vector to obtain a transformed vector, and computing an inner product between the transformed vector and a sparse vector to obtained a base vector; and determining the value of the index based on the base vector.