¿Un DAO basado en Apache Lucene?

Estoy creando una aplicación web con un servicio web de back-end tranquilo.

Una de mis tablas es bastante independiente, es decir, filas a las que solo se hace referencia desde otra tabla de una manera en la que puedo vivir felizmente sin unirme y solo buscar por clave principal cuando lo necesito. Sin embargo, esta tabla contiene muchas filas y las búsquedas realizadas contra ella gritan "Lucene". MySQL no puede manejar estas consultas con un tiempo de respuesta razonable.

Entonces me gustaría usar Lucene para buscar en esta tabla. En el pasado, he usado Solr ampliamente, así que estoy familiarizado con los conceptos y la terminología. Estaba pensando que dadas las circunstancias descritas anteriormente, en lugar de la sincronización de índice de SQL a Lucene, no puedo ver una razón por la que no debería simplemente usar Lucene como el almacenamiento canónico para esta entidad en particular. Básicamente, me gustaría tener una implementación de "Lucene DAO" que reemplace la implementación actual de Hibernate DAO para esta tabla en particular.

Entonces mis preguntas son:

  1. ¿Hay alguna razón por la que deba evitar eso y mantener la sincronización de SQL a índice?
  2. Si un "Lucene DAO" es un enfoque viable, ¿hay alguna biblioteca que ofrezca la base para algo así? Traté de buscar pero no pude encontrar ninguno.
  3. Me he encontrado con Hibernate Search. Solo hace la mitad de lo que estoy buscando, pero puedo intentar usarlo solo para buscar. ¿Alguien tiene alguna experiencia con Hibernate Search?

Editar : ahora me he encontrado con Compass, que a simple vista parece ser lo que estoy buscando. ¿Alguien tiene alguna experiencia con eso?


Edición n. ° 2 : La brújula ha sido descontinuada y reemplazada por ElasticSearch, que no es lo mismo (servicio en lugar de un componente). Hibernate Search tampoco resultó ser lo que estaba buscando. La conclusión es que este es un enfoque válido, pero por el momento uno tiene que implementar tal DAO ellos mismos.

Respuesta 1

Sigo las pautas de Android y establezco dimensiones de texto en unidades "sp". En uno de mis diseños utilizados para una fila ListView, todos los tamaños de TextView se establecen en 8sp o 12sp. Probé la aplicación en emulador con todo lo posible ...

Tengo varias subclases de una clase "A", digamos B, C y D. Almaceno varias de ellas en un material genérico ArrayList <A>; B, C y D no tienen absolutamente ningún miembro de datos diferente que A. La única forma ...

Quiero hacer algo como esto: File root = new File ("C: /file.txt"); pero en una carpeta que se comparte en una red local. Entonces, digamos que el archivo está en 192.168.1.28, ¿cómo hacerlo con el comando anterior? ...

No sé qué está causando que esto suceda. ¿Es porque lo estoy construyendo mal en Netbeans? Puedo construirlo y ejecutarlo bien en Netbeans. Pero cuando ejecuto el Jar haciendo clic en él, nada ...