Elasticsearch Node.js

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
简介: npm安装elasticsearch node客户端npm install @elastic/elasticsearch@6兼容性说明:Node.js最低版本v8该类库支持所有5.x以上版本,但推荐使用与ES实例相同大版本的类库。

npm安装elasticsearch node客户端

npm install @elastic/elasticsearch@6

兼容性说明:
20190716225825.jpg

Node.js最低版本v8
该类库支持所有5.x以上版本,但推荐使用与ES实例相同大版本的类库。本例使用阿里云Elasticsearch6.7.0,因此安装:@elastic/elasticsearch@6

预先在kibana创建好索引

PUT game-of-thrones
'use strict'

const {Client} = require('@elastic/elasticsearch')
const client = new Client({
    node: 'http://elastic:***@es-cn-***.public.elasticsearch.aliyuncs.com:9200'
})

async function run () {
    // Let's start by indexing some data
    await client.index({
        index: 'game-of-thrones',
        type: '_doc',
        body: {
            character: 'Ned Stark',
            quote: 'Winter is coming.'
        }
    })

    await client.index({
        index: 'game-of-thrones',
        type: '_doc',
        body: {
            character: 'Daenerys Targaryen',
            quote: 'I am the blood of the dragon.'
        }
    })

    await client.index({
        index: 'game-of-thrones',
        type: '_doc',
        // here we are forcing an index refresh,
        // otherwise we will not get any result
        // in the consequent search
        refresh: true,
        body: {
            character: 'Tyrion Lannister',
            quote: 'A mind needs books like a sword needs a whetstone.'
        }
    })

    // Let's search!
    const { body } = await client.search({
        index: 'game-of-thrones',
        type: '_doc',
        body: {
            query: {
                match: {
                    quote: 'winter'
                }
            }
        }
    })

    console.log(body.hits.hits)
}

run().catch(console.log)

在命令行运行,得到搜索的返回结果。

GarydeMacBook-Pro:web_design gary$ node es.js
[ { _index: 'game-of-thrones',
    _type: '_doc',
    _id: '8Y4q-2sBjFTorFehKRRK',
    _score: 0.2876821,
    _source: { character: 'Ned Stark', quote: 'Winter is coming.' } } ]
相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
目录
相关文章
|
4月前
|
存储 缓存 监控
|
4月前
|
存储 负载均衡 监控
检索服务elasticsearch节点(Node)
【8月更文挑战第23天】
62 5
|
4月前
|
存储 负载均衡 算法
|
4月前
|
存储 缓存 监控
|
负载均衡 JavaScript 前端开发
Elasticsearch.js 发布 —— 在Node.js和浏览器中调用Elasticsearch
继PHP、Ruby、Python和Perl之后,Elasticsearch最近发布了Elasticsearch.js,Elasticsearch的JavaScript客户端库。可以在Node.js和浏览器中使用。
292 0
Elasticsearch.js 发布 —— 在Node.js和浏览器中调用Elasticsearch
|
负载均衡 JavaScript 前端开发
带你读《Elastic Stack 实战手册》之66:——3.5.19.2.Elasticsearch语言开发(Node.js)(上)
带你读《Elastic Stack 实战手册》之66:——3.5.19.2.Elasticsearch语言开发(Node.js)(上)
105 0
|
资源调度 JavaScript 前端开发
带你读《Elastic Stack 实战手册》之66:——3.5.19.2.Elasticsearch语言开发(Node.js)(中)
带你读《Elastic Stack 实战手册》之66:——3.5.19.2.Elasticsearch语言开发(Node.js)(中)
102 0
|
JavaScript Java
十、.net core(.NET 6)搭建ElasticSearch(ES)系列之Java环境搭建和Node.js环境搭建
安装java jdk环境:我此处使用的是jdk16版本。下载地址:https://www.oracle.com/java/technologies/javase-jdk16-downloads.html然后运行,直接默认都是下一步进行安装:
173 0
十、.net core(.NET 6)搭建ElasticSearch(ES)系列之Java环境搭建和Node.js环境搭建
|
存储 JSON 应用服务中间件
【Elastic Engineering】Elasticsearch 中的一些重要概念: cluster, node, index, document, shards 及 replica
Elasticsearch 中的一些重要概念: cluster, node, index, document, shards 及 replica
19832 0
【Elastic Engineering】Elasticsearch 中的一些重要概念: cluster, node, index, document, shards 及 replica
|
机器学习/深度学习 存储 安全