Estou começando a usar o Elasticsearch e um dos principais casos de uso que já vi é sua escalabilidade com pesquisas em grandes conjuntos de dados, mas além disso, quando você deseja usá-lo para criar consultas SQL com um RDBMS tradicional?
Estou começando a usar o Elasticsearch e um dos principais casos de uso que já vi é sua escalabilidade com pesquisas em grandes conjuntos de dados, mas além disso, quando você deseja usá-lo para criar consultas SQL com um RDBMS tradicional?
Respostas:
Existem dois casos de uso principais do Elasticsearch:
Você deseja o Elasticsearch quando faz muita pesquisa de texto, em que os bancos de dados RDBMS tradicionais não apresentam um desempenho muito bom (configuração ruim, funciona como uma caixa preta, desempenho ruim). O Elasticsearch é altamente personalizável, extensível através de plugins. Você pode criar uma pesquisa robusta sem muito conhecimento rapidamente.
Outro caso extremo é que muitas pessoas usam o Elasticsearch para armazenar logs de várias fontes (para centralizá-los), para que possam analisá-los e fazer sentido com isso. Nesse caso, Kibana se torna útil. Ele permite que você se conecte ao cluster Elasticsearch e crie visualizações imediatamente. Por exemplo, o Loggly é construído usando o Elasticsearch e o Kibana.
Lembre-se de que você não gostaria de usar o Elasticsearch como seu armazenamento de dados principal. Razões aqui: Quão confiável é o ElasticSearch como um armazenamento de dados primário em relação a fatores como perda de gravação, disponibilidade de dados
Eu senti que a segunda parte não é mais nervosa, é realmente o que a Elastic como empresa tem feito muito bem no ano passado. Com o movimento atual do DevOps, os pipelines de CI / CD, aumentando a quantidade de métricas de várias fontes, o ELK se tornou uma opção padrão para o monitoramento da infraestrutura, não é mais apenas um mecanismo de pesquisa de texto RESTful distribuído. Tem um incrível conjunto de produtos:
Um ecossistema, construído pela comunidade, está crescendo em torno da pilha ELK que expande os recursos atuais, alguns deles dignos de menção:
Para adicionar a outra resposta, o log ainda é um caso de uso importante, além de pesquisas, mas agora métricas e análises estão se tornando mais importantes.
Acredito que este post resume as mudanças no mercado que está gerando novos casos de uso para Big Data. Tudo o que você realmente precisa saber sobre bancos de dados de código aberto
Com o advento da Web 2.0, as páginas estáticas da Web se tornaram dinâmicas e as mídias sociais estão à nossa volta. Todo mundo está twittando, postando, blogando, vlogging, compartilhando fotos, conversando e comentando. A Internet das Coisas (IoT) está emergindo - uma rede que cresce rapidamente de dispositivos conectados que coletam e trocam dados, como sensores e dispositivos inteligentes. Existem alguns ótimos exemplos aqui.
No total, isso gera enormes quantidades de novos dados que as empresas desejam absorver e usar para permanecer à frente, fornecendo recursos como recomendações de produtos e uma melhor experiência do cliente. Os dados podem ser analisados em busca de padrões para aplicativos como detecção de fraude e análise de comportamento. Muitos dos novos dados não são estruturados, o que significa que eles não podem ser armazenados ordenadamente em um banco de dados tabular.
Imagine tentar criar um banco de dados para armazenar dados sobre suas compras - o que você gosta, com que frequência você o compra, se prefere leite ou creme com seu café. São necessários novos tipos de bancos de dados para armazenar os novos dados, e eles precisam ser não relacionais e, idealmente, de baixo custo. Tocar alguns sinos? Não é relacional como no NoSQL e de baixo custo como no código aberto.
Um dos arquitetos da Elasticsearch com quem falei disse que 80% dos dados com os quais a Elasticsearch trabalha nas empresas não são estruturados, enquanto 20% são estruturados. São os dados não estruturados que as empresas procuram para descobrir padrões de dados raros ou incomuns. Eles também estão usando o Elasticsearch para monitorar padrões de dados. Por exemplo, um grande varejista está fazendo rastreamento em tempo real com o Elasticsearch para garantir suprimentos de dinheiro adequados nas lojas para que as pessoas façam cheques nos dias de pagamento.
Na minha própria experiência com nosso caso de uso de pesquisa, não usamos apenas pesquisas difusas, mas evoluímos para pesquisas automáticas e rápidas. Pelo que vi, depois de começar a trabalhar com o Elasticsearch, você começa a evoluir para outros casos de uso que complementam o que você já possui. Agora que estabelecemos o Elasticsearch como um mecanismo de pesquisa confuso em nossa empresa, agora temos outras equipes analisando análises e métricas para registro.
Aqui estão alguns recursos adicionais que são mais detalhados sobre este tópico: