您的位置:首页 > 其它

elasticsearch插入数据

2017-01-19 15:11 267 查看
1、单条插入(推荐设定主键id防止重复)

      public static String addIndex(String index,String type,HashMap<String, Object> hashMap){  

                  hashMap.put("id", "3");  //这里如果不指定id的话elasticsearch会自动创建主键id,

                  hashMap.put("title","双宿双飞从");

                  hashMap.put("describe", "测试123");  

                  hashMap.put("author", "测试doc");  

                TransportClient client=EsClientPool.getInstance().getClient();

                try {  

                    IndexResponse response = client.prepareIndex(index, type,hashMap.get("id").toString())

                            .setSource(hashMap).execute().actionGet();

                    System.out.println(response.getId());

                    return response.getId();  //返回主键

                } catch (Exception e) {

                    // TODO: handle exception

                    return null;

                }finally{

                    client.close();//关闭连接

                }

            }

2、批量插入

      public static void addAllIndex(String index,String type,HashMap<String, Object> hashMap){

                      hashMap.put("title","双宿双飞从");

                      hashMap.put("describe", "测试123");  

                      hashMap.put("author", "测试doc");  

                    TransportClient client=EsClientPool.getInstance().getClient();

                    try {

                        BulkRequestBuilder bulkRequest = client.prepareBulk();

                        for (int i = 0; i < 10000; i++) {

                            bulkRequest.add(client.prepareIndex(index, type).setSource(hashMap));

                            // 每1000条提交一次

                            if (i % 10000 == 0) {

                                bulkRequest.execute().actionGet();

                            }

                        }

                    } catch (Exception e) {

                    }finally{

                        client.close();

                    }

            }

     
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  elasticsearch