记录ElasticSearch6.2.4+Jest开发笔记(3)- 数据导入ES
2018-07-19 11:39
441 查看
一、导入数据推荐使用批量导入
1、首先查询本地的所有数据进行导入,如果本地数据过大,也可以将本地数据分批次导入。
2、校验数据是否合法,因为我在导入数据的时候可能是测试的数据,存在脏数据,导致每次都不能成功导入数据,所以,在这里我加入对数据的校验。
3、将数据导到相对应的索引和类型下,我使用的是批量导入,所以,需要先将数据添加到列表,再执行下一步操作。
4、Bulk是ES的批量操作对象,也可以使用单个导入数据的方法(此方法一般使用在单个添加的时候使用,具体要看工作中的具体业务处理)。
[code]if (ElasticIndexEnum.BEAUTY_LOG.getValue().equals(indexName)) { List<BeautyLog> beautyLogs = mongoTemplate.find(query, BeautyLog.class); List<Index> indexList = new ArrayList<>(); for (BeautyLog beautyLog : beautyLogs) { if (PubMethod.isEmpty(beautyLog)) { continue; } Index index = new Index.Builder(beautyLog).index(ElasticIndexEnum.BEAUTY_LOG.getValue().toLowerCase()). type(ElasticIndexTypeEnum.BEAUTY_LOG_INDEX_TYPE.getValue()).id(beautyLog.getId() + "").build(); indexList.add(index); } Bulk bulk = new Bulk.Builder() .defaultIndex(ElasticIndexEnum.BEAUTY_LOG.getValue().toLowerCase()) .defaultType(ElasticIndexTypeEnum.BEAUTY_LOG_INDEX_TYPE.getValue()) .addAction(indexList).build(); BulkResult execute = jestClient.execute(bulk); if (!execute.isSucceeded()) { logger.info("导入帖子数据失败!!!" + execute.getJsonString()); return Boolean.FALSE; } logger.info("导入索引indexName:{}数据成功!!!", indexName.toLowerCase()); return Boolean.TRUE;
二、Jest的操作
使用Jest来操作ElasticSearch具体来说,还是很方便的,只需要很简单的几行API,就可以实现对ES底层很好的封装,省去很多麻烦。
阅读更多相关文章推荐
- 记录ElasticSearch6.2.4+Jest开发笔记(4)- 搜索附近的XX
- ES学习笔记-elasticsearch-hadoop导入hive数据到es的实现探究
- Elasticsearch系列(十)----使用webmagic爬取数据导入到ES
- Elasticsearch全文检索企业开发记录总结(四):数据同步
- Android开发笔记:SQLite导入导出数据
- Android开发笔记:SQLite导入导出数据
- C#开发学习笔记:C#利用代码导入Excel数据
- 【Android】Parse开发笔记(2)—— 从Mysql导入数据到Parse Data
- 超详细之Spring Boot结合Jest实现对ElasticSearch的全文检索(从mysql导入数据)
- Asp.NET开发笔记--文本框的数据绑定与操作
- Asp.NET开发笔记--文本框的数据绑定与操作
- [导入][Flash开发笔记] List控件--删除指定label或data的项
- 没头没尾--项目开发笔记:异常处理与日志记录代码自动生成(工具能生成多少代码!?续一)
- [导入][Flash开发笔记] AS中保留多少位小数的函数
- [导入][Flash开发笔记] ComboBox,List组件的二个函数
- [导入][Flash开发笔记] 系列
- [导入][FMS开发笔记]理解应用程序实例(聊天室房间的划分)
- .net开发笔记之十一:取数据到Datagrid的一般步骤
- Java开发学习笔记之六:servlet-处理客户form数据
- Java开发学习笔记之三:HTTP客户请求数据格式