Skip to content

isitinme/node-elasticsearch-scroll

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

elasticsearch-scroll

Build Status

This helps out when you scan & scroll. This manages the scrolling so that you are returned all of the hits.

Installation

npm install --save elasticsearch-scroll

Usage

If I start with an index foo with 20 documents of type bar,

var elasticsearch = require('elasticsearch'),
  client = new elasticsearch.Client(),
  identity = require('lodash.identity'),
  scrollToEnd = require('../index')(client);

client.search({
  index: 'foo',
  type: 'bar',
  scroll: '30s'
})
  .then(scrollToEnd(identity, []))
  .tap(function (results) {
    console.log(results);
  });

will yield an array containing all 20 of your documents. Without scrollToEnd you would just get 10 documents.

API

  • module(client): a function which accepts an [elasticsearch] client and returns a function, scrollToEnd.
  • scrollToEnd(mapper, initial, response): a curried function which takes a mapper (a function which maps results from elastic search), the initial value of the results to return and a response from elasticsearch.

Testing

Run elasticsearch locally and npm test.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •