背景:现在人脸流水库有大概8W人脸数据需要提供给WEB组一个人脸检索接口(根据检索条件从ES中检索出相关数据 然后和传过来的人脸图片进行特征比对 筛选符合条件的数据 ):
方案:根据上传的图片,已经相关查询条件:
String place_id = json.getString("site_code");
float start_time = json.getFloatValue("start_time");
float end_time = json.getFloatValue("end_time");
String image = json.getString("image");//人脸图片base64编码
float similarity = json.getFloatValue("similarity")*0.01F;
String gender = json.getString("gender");//性别 男0女1
String min_age = json.getString("min_age");//最大年龄
String max_age = json.getString("max_age");//最小年龄
相关查询条件:
核心思路:根据相关查询条件:将查询语句已设备为单位根据 device_id 为单位 将一个查询语句拆分成若干个查询语句
通过多线程异步提交任务 将查询到相关结果 保存到结果索引里面:
核心代码如下;
ExecutorService threadPools &#