elasticsearch用什么语言,elasticsearch是用什么语言写的

首页 > 经验 > 作者:YD1662022-11-04 04:20:32

将数据集编入索引后RediSearch 的吞吐量较Elasticsearch快了 4 倍,RediSearch 延迟稍好一些,平均为 8 毫秒,而 Elasticsearch 为 10 毫秒

elasticsearch用什么语言,elasticsearch是用什么语言写的(5)


Elasticsearch

介绍

Elasticsearch 是一个分布式、RESTful 风格的搜索和数据分析引擎。Elasticsearch是用Java语言开发的,并作为Apache许可条款下的开放源码发布,是一种流行的企业级搜索引擎。Elasticsearch 以其易用性迅速赢得了许多用户,被用在网站搜索、日志分析等诸多方面。由于 ES 强大的横向扩展能力,甚至很多人也会直接把 ES 当做 NoSQL 来用。

elasticsearch用什么语言,elasticsearch是用什么语言写的(6)

特性

搜索引擎:通过 Elasticsearch,您能够执行及合并多种类型的搜索(结构化数据、非结构化数据、地理位置、指标),搜索方式随心而变

分析引擎:对的是十亿行日志,Elasticsearch 聚合让您能够从大处着眼,探索数据的趋势和规律

检索性能:通过有限状态转换器实现了用于全文检索的倒排索引,实现了用于存储数值数据和地理位置数据的 BKD 树,以及用于分析的列存储

可扩展性:能够水平扩展,每秒钟可处理海量事件,同时能够自动管理索引和查询在集群中的分布方式,以实现极其流畅的操作

检索能力:基于各项元素(从词频或新近度到热门度等)对搜索结果进行排序。将这些内容与功能进行混搭,以优化向用户显示结果的方式

数据容错:通过跨集群复制功能,辅助集群可以作为热备份随时投入使用。

实时互动:在 Kibana 中通过炫酷的可视化来探索您的数据,从华夫饼图到热点图,再到时序数据分析,应有尽有

elasticsearch用什么语言,elasticsearch是用什么语言写的(7)

数据结构

Index(索引): 索引是文档(Document)的容器,是一类文档的集合,类比传统的关系型数据库来说,索引相当于SQL中的一个数据库(Database)

Type(类型):从 6.0.0开始单个索引只能有一个类型,7.0.0以后将不建议使用,8.0.0以后完全不支持

Document(文档):Document Index 里面单条的记录成为Document(文档)。等同于关系型数据库表中的行

Field(字段):属性Fieldl类似于关系型数据库的字段的概念,一样的,每个属性有自己不同的类型,类型包括核心类型、复杂类型(对象类型[object]和嵌套类型[nested])、地理类型以及特殊类型

集群

Elasticsearch 可以横向扩展至数百(甚至数千)的服务器节点,同时可以处理PB级数据。ElasticSearch 的主旨是随时可用和按需扩容。而扩容可以通过购买性能更强大( 垂直扩容 ,或 纵向扩容 ) 或者数量更多的服务器( 水平扩容 ,或 横向扩容 )来实现。虽然 Elasticsearch 可以获益于更强大的硬件设备,但是垂直扩容是有极限的。真正的扩容能力是来自于水平扩容—为集群添加更多的节点,并且将负载压力和稳定性分散到这些节点中。对于大多数的数据库而言,通常需要对应用程序进行非常大的改动,才能利用上横向扩容的新增资源。与之相反的是,ElastiSearch天生就是 分布式的 ,它知道如何通过管理多节点来提高扩容性和可用性。这也意味着你的应用无需关注这个问题 。

集群支持如下功能:

elasticsearch用什么语言,elasticsearch是用什么语言写的(8)

上一页123下一页

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.