usa tutorial que puerto para instalar index funciona elastic crear como comandos elasticsearch full-text-search search-engine nosql

elasticsearch - tutorial - para que se usa elastic search



¿Qué tan confiable es ElasticSearch como un almacén de datos primario frente a factores como la pérdida de escritura y la disponibilidad de datos? (2)

En general, es una buena idea diseñar soluciones de almacenamiento de datos redundantes. Por ejemplo, podría ser un enfoque rápido y confiable para primero empujar todo como datos planos a un almacenamiento estático como s3 y luego tener datos ES pull e indexar desde allí. Si necesita más flexibilidad aprovechando algunos ORM, podría tener una capa RDS o Redshift en el medio. De esta manera, los datos siempre se pueden reconstruir en ES.

Depende de sus necesidades y requisitos cómo establecer el equilibrio entre redundancia y flexibilidad / rendimiento. Si hay muchos datos involucrados, puede almacenar los datos sin procesar de forma estática y simplemente indexar algunas partes de ellos por ES.

Amazon Lambda ofrece excelentes funciones:

Muchos desarrolladores almacenan objetos en Amazon S3 mientras usan Amazon DynamoDB para almacenar e indexar los metadatos del objeto y habilitar la búsqueda de alta velocidad. AWS Lambda facilita mantener todo sincronizado al ejecutar una función para actualizar automáticamente el índice en Amazon DynamoDB cada vez que se agregan o actualizan objetos desde Amazon S3.

Estoy trabajando en un proyecto con el requisito de crear un tablero genérico donde los usuarios puedan hacer diferentes tipos de agrupación, filtrado y profundización en diferentes campos. Para esto estamos buscando una tienda de búsqueda que permita cortar y cortar datos.

Habría múltiples fuentes de datos y los estaría almacenando en la Tienda de búsqueda. Puede haber algún cálculo previo requerido en los datos de origen que puede realizar un componente intermedio.

He revisado varios blogs para comprender si ES también se puede usar de manera confiable como un almacén de datos primario. Depende principalmente del caso de uso que estamos buscando. Parte de la información sobre el caso de uso que tenemos:

  • Alrededor de 300 millones de registros cada año con 1-2 KB.
  • Suponiendo que almacenamos datos de 1 año, hoy tenemos 300 GB, pero el caso de uso puede llegar a 400-500 GB dado el crecimiento de datos.
  • A partir de ahora no estoy seguro, cómo enviaremos los datos, pero aproximadamente, puede llegar a ~ 2-3 millones de registros por 5 minutos.
  • La solicitud de búsqueda es baja, pero requiere consultas complejas que pueden buscar datos de las últimas 6 semanas a 6 meses.
  • El documento se indexará en casi todos los campos del documento.

Algunos blogs dicen que es lo suficientemente confiable como para usarlo como un almacén de datos primario:

Y algunos blogs dicen que los ES tienen pocas limitaciones:

¿Alguien ha usado Elastic Search como la única verdad de los datos sin tener un almacenamiento primario como PostgreSQL, DynamoDB o RDS? He buscado que ES tenga ciertos problemas, como cerebros divididos y corrupción de índices, donde puede haber un problema con la pérdida de datos. Entonces, estoy buscando saber si alguien ha usado ES y ha tenido problemas con los datos

Gracias.


Respuesta corta: depende de su caso de uso, pero probablemente no quiera usarlo como tienda principal.

Respuesta más larga: realmente debe comprender todos los posibles problemas que pueden surgir en torno a la resistencia y la pérdida de datos. Elastic tiene una excelente documentación de estos problemas que realmente debe comprender antes de usarla como un almacén de datos primario. Además, la publicación de Aphyr sobre el tema es un buen recurso.

Si comprende los riesgos que está asumiendo y cree que esos riesgos son aceptables (p. Ej., Porque la pequeña pérdida de datos no es un problema para su aplicación), entonces debe sentirse libre de seguir adelante y probarlo.