Elasticsearch - Elasticsearch
Autor (es) original (is) | Shay Banon | ||||
---|---|---|---|---|---|
Desenvolvedor (s) | Elastic NV | ||||
lançamento inicial | 8 de fevereiro de 2010 | ||||
Versão estável |
|
||||
Repositório | github |
||||
Escrito em | Java | ||||
Sistema operacional | Plataforma cruzada | ||||
Modelo | Pesquisar e indexar | ||||
Licença | Licença Elástica com licença dupla (proprietária; fonte disponível ) e Licença Pública do lado do servidor (proprietária; fonte disponível ) | ||||
Local na rede Internet |
www |
Elasticsearch é um mecanismo de busca baseado na biblioteca Lucene . Ele fornece um mecanismo de pesquisa de texto completo distribuído e com capacidade para vários locatários , com uma interface da web HTTP e documentos JSON sem esquema . Elasticsearch é desenvolvido em Java e tem licença dupla sob a Licença Pública do lado do servidor disponível na fonte e a licença Elastic, enquanto outras partes estão sob a Licença Elástica proprietária ( disponível na fonte ) . Os clientes oficiais estão disponíveis em Java , .NET ( C # ), PHP , Python , Apache Groovy , Ruby e muitas outras linguagens. De acordo com a classificação DB-Engines , Elasticsearch é o mecanismo de busca empresarial mais popular.
História
Shay Banon criou o precursor do Elasticsearch, chamado Compass, em 2004. Enquanto pensava na terceira versão do Compass, ele percebeu que seria necessário reescrever grandes partes do Compass para "criar uma solução de pesquisa escalável". Então, ele criou "uma solução construída do zero para ser distribuída" e usou uma interface comum, JSON sobre HTTP , adequada para linguagens de programação diferentes de Java também. Shay Banon lançou a primeira versão do Elasticsearch em fevereiro de 2010.
A Elastic NV foi fundada em 2012 para fornecer serviços comerciais e produtos em torno do Elasticsearch e software relacionado. Em junho de 2014, a empresa anunciou o levantamento de US $ 70 milhões em uma rodada de financiamento da Série C, apenas 18 meses após a formação da empresa. A rodada foi liderada pela New Enterprise Associates (NEA). Os financiadores adicionais incluem Benchmark Capital e Index Ventures . Esta rodada trouxe financiamento total para US $ 104 milhões.
Em março de 2015, a empresa Elasticsearch mudou seu nome para Elastic .
Em junho de 2018, a Elastic fez uma oferta pública inicial com uma avaliação estimada entre 1,5 e 3 bilhões de dólares. Em 5 de outubro de 2018, a Elastic foi listada na Bolsa de Valores de Nova York .
Histórico de lançamento
Lançamentos principais:
- 1.0.0 - 12 de fevereiro de 2014
- 2.0.0 - 28 de outubro de 2015
- 5.0.0 - 26 de outubro de 2016
- 6.0.0 - 14 de novembro de 2017
- 7.0.0 - 10 de abril de 2019
Alterações de licenciamento
Em janeiro de 2021, a Elastic anunciou que, a partir da versão 7.11, eles relicenciariam seu código licenciado Apache 2.0 em Elasticsearch e Kibana para ter uma licença dupla sob a Server Side Public License e a Elastic License, nenhuma das quais é reconhecida como uma licença de código aberto . A Elastic culpou a Amazon Web Services (AWS) por essa mudança, objetando que a AWS oferecesse Elasticsearch e Kibana como um serviço diretamente aos consumidores e alegando que a AWS não estava colaborando de forma adequada com a Elastic. Os críticos da decisão de licenciamento previram que isso prejudicaria o ecossistema do Elastic e observaram que o Elastic havia prometido "nunca ... alterar a licença do código Apache 2.0 de Elasticsearch, Kibana, Beats e Logstash". A Amazon respondeu com planos de bifurcar os projetos e continuar o desenvolvimento sob a Licença Apache 2.0. Outros usuários do ecossistema ElasticSearch, incluindo Logz.io , CrateDB e Aiven, também se comprometeram com a necessidade de um fork, levando a uma discussão sobre como coordenar os esforços de código aberto. Devido a possíveis problemas de marca registrada com o uso do nome "Elasticsearch", a AWS renomeou seu fork como "OpenSearch" em abril de 2021.
OpenSearch lançou seu primeiro beta em maio de 2021, e seu primeiro lançamento estável em julho de 2021.
Recursos
Elasticsearch pode ser usado para pesquisar qualquer tipo de documento. Ele fornece pesquisa escalonável, tem pesquisa quase em tempo real e oferece suporte a multilocação . "Elasticsearch é distribuído, o que significa que os índices podem ser divididos em fragmentos e cada fragmento pode ter zero ou mais réplicas. Cada nó hospeda um ou mais fragmentos e atua como um coordenador para delegar operações aos fragmentos corretos. Rebalanceamento e o encaminhamento é feito automaticamente ". Os dados relacionados geralmente são armazenados no mesmo índice, que consiste em um ou mais shards primários e zero ou mais shards de réplica. Depois que um índice é criado, o número de fragmentos primários não pode ser alterado.
Elasticsearch é desenvolvido juntamente com a coleta de dados e mecanismo de análise de log Logstash, a plataforma de análise e visualização Kibana e a coleção de remetentes de dados leves chamados Beats. Os quatro produtos são projetados para uso como uma solução integrada, conhecida como "Elastic Stack". (Anteriormente a "pilha ELK", abreviação de "Elasticsearch, Logstash, Kibana".)
Elasticsearch usa Lucene e tenta disponibilizar todos os seus recursos por meio da API JSON e Java . Ele suporta facetação e percolação, o que pode ser útil para notificar se novos documentos correspondem às consultas registradas. Outro recurso, "gateway", trata da persistência de longo prazo do índice; por exemplo, um índice pode ser recuperado do gateway no caso de uma pane no servidor. Elasticsearch oferece suporte a solicitações GET em tempo real , o que o torna adequado como um armazenamento de dados NoSQL , mas não possui transações distribuídas .
Em 20 de maio de 2019, a Elastic disponibilizou os principais recursos de segurança do Elastic Stack gratuitamente, incluindo TLS para comunicações criptografadas, arquivo e domínio nativo para criar e gerenciar usuários e controle de acesso baseado em função para controlar o acesso do usuário a APIs de cluster e índices. O código-fonte correspondente está disponível sob a “Licença Elástica”, uma licença disponível no código-fonte . Além disso, o Elasticsearch agora oferece SIEM e Machine Learning como parte dos serviços oferecidos.
Serviços gerenciados
Desenvolvido a partir da aquisição da Found pela Elastic em 2015, o Elastic Cloud é uma família de ofertas SaaS movidas pelo Elasticsearch que incluem o Elasticsearch Service, bem como o Elastic App Search Service e o Elastic Site Search Service, que foram desenvolvidos a partir da aquisição da Swiftype pela Elastic . No final de 2017, a Elastic formou parcerias com o Google para oferecer o Elastic Cloud no GCP e o Alibaba para oferecer o Elasticsearch e o Kibana no Alibaba Cloud.
O serviço Elasticsearch no Elastic Cloud é a oferta oficial hospedada e gerenciada do Elasticsearch e Kibana dos criadores do projeto desde agosto de 2018. Os usuários do serviço Elasticsearch podem criar implantações seguras com parceiros, Google Cloud Platform (GCP) e Alibaba Cloud .
A AWS oferece Elasticsearch como um serviço gerenciado desde 2015. Esses serviços gerenciados fornecem hospedagem, implantação, backup e outros tipos de suporte. A maioria dos serviços gerenciados também inclui suporte para Kibana .