Node.js

[Node] node를 이용한 ElasticSearch에 데이터 넣기

SongMinu 2019. 6. 5. 14:45
728x90

기본적으로 elasticsearch라는 모듈이 설치 되어 있어야함

없다면 설치

npm install elasticsearch

var elasticsearch= require('elasticsearch');

var els_id = "test";
var els_pw = "test":
var els_ip = "192.168.0.222";
var client = new elasticsearch.Client({
     hosts: ["https://" + els_id + ":" + els_pw + "@" + els_ip + ":9200"]
});

function run () {
   client.index({
       index: 'indexName',
       type: 'doc',
       id: '_id', //_id값이 없으면 입력된 값으로 insert 되고 값을 랜덤 생성할꺼면 이부분 없애면됨
       body: {
          doc: {
             fieldName: "value",
             fieldName: "value"
          }
       }
   }).then(function (rs) {
       
   }, function (err) {
      
   };
}

run();

간략하게 짠 소스이고 응용 방법은 다양하다.

한가지 예를 들면

function run (data) {
   client.index({
       index: 'indexName',
       type: 'doc',
       id: '_id', //_id값이 없으면 입력된 값으로 insert 되고 값을 랜덤 생성할꺼면 이부분 없애면됨
       body: data
       }
   }).then(function (rs) {
       
   }, function (err) {
      
   };
}

function setData () {
   var data = {};
   data.name = "minu";
   data.age = 28;
   data.pNum = "010-1111-2222"
   run(data):   
}

이런식으로 객체로 담에서 사용 가능.

조금만 응용하면 다양한 방법으로 만들 수 있다.

 

현재 2019년에 이레스틱 7버전이 나온 시점부터는 type: 'doc'를 type: "_doc"로 해야한다.

반응형