consultando colección en memoria

Tengo una colección, una lista de mapas, el mapa esMap<String, String>. Necesito consultar esta colección con comparación, lógica, no, en operadores. Algo parecido a SQL.

Estaré rellenando la lista desde un procedimiento almacenado de la base de datos, por lo que no estoy seguro del tamaño. Pero, supongo que el tamaño no debe ser más de 10.000 registros.

Mientras publico esto, estoy echando un vistazo a los funtores de Apache, no sé si ayudarán aquí.

Otra forma en la que estoy pensando es usando la base de datos en memoria Derby para lograr esto.

Por favor, avíseme de cualquier biblioteca de Java o de cualquier otra forma de hacer esto.

Los mapas en la lista serán los siguientes:

Map<String, String> m1 = new Map<String, String>();
m1.put("name","Mark");
m1.put("age","21");
m1.put("city","some city");

Map<String, String> m1 = new Map<String, String>();
m1.put("name","David");
m1.put("age","25");
m1.put("city","other city");

Necesito consultar la lista para obtener el mapa que tiene:

name=Markname=Mark and age > 30city not in "other city"

Respuestas a la pregunta(4)

Su respuesta a la pregunta