ElasticSearch 同义词匹配
synonym.txt
电脑, 计算机, 主机
复印纸, 打印纸, A4纸, 纸, A3
平板电脑, Pad
DELETE /es_sku_index_20_20250109
PUT /es_sku_index_20_20250109
{"settings": {"index": {"number_of_shards": "5","number_of_replicas": "1","analysis": {"filter": {"light_english_stemmer": {"type": "stemmer","language": "light_english"},"sku_synonym": {"type": "synonym","synonyms_path": "synonym/synonym.txt"}},"analyzer": {"optik_smart_with_synonym": {"type": "custom","tokenizer": "ik_smart","filter": ["lowercase","light_english_stemmer","sku_synonym"]},"optik_with_synonym": {"type": "custom","tokenizer": "ik_max_word","filter": ["lowercase","light_english_stemmer","sku_synonym"]},"optik_smart": {"type": "custom","tokenizer": "ik_smart","filter": ["lowercase", "light_english_stemmer"]},"optik": {"type": "custom","tokenizer": "ik_max_word","filter": ["lowercase", "light_english_stemmer"]},"sku_synonym_analyzer": {"type": "custom","tokenizer": "standard","filter": ["lowercase", "sku_synonym"]}}}}},"mappings": {"sku": {"properties": {"chiefQualifications": {"type": "text"},"agreementStatus": {"type": "long"},"sellPrice": {"type": "double"},"saleAttributes": {"type": "nested","properties": {"attrNames": {"search_analyzer": "optik_smart","analyzer": "optik","type": "text"},"value": {"type": "long"},"key": {"type": "long"}}},"contactTel": {"type": "text"},"categoryKeyWord": {"search_analyzer": "optik_smart","analyzer": "optik","type": "text"},"isAgent": {"type": "integer"},"skuNameSearch": {"type": "keyword"},"cName": {"type": "text","fields": {"cName_search": {"type": "text","analyzer": "optik_smart_with_synonym","search_analyzer": "optik_smart_with_synonym"},"cName_view": {"type": "keyword"}}},"modelCode": {"search_analyzer": "optik_smart","analyzer": "optik","type": "text"},"modified": {"format": "yyyy-MM-dd HH:mm:ss","type": "date"},"shelfSkuTime": {"type": "text","fields": {"keyword": {"ignore_above": 256,"type": "keyword"}}},"shopId": {"type": "long"},"skuId": {"type": "long"},"policyAttributes": {"type": "nested","properties": {"valueName": {"type": "keyword"},"value": {"type": "integer"},"key": {"type": "keyword"}}},"created": {"format": "yyyy-MM-dd HH:mm:ss","type": "date"},"listingTime": {"format": "yyyy-MM-dd","type": "date"},"pictureUrl": {"type": "keyword"},"brandKeyWord": {"type": "text","analyzer": "sku_synonym_analyzer","search_analyzer": "optik_smart"},"itemId": {"type": "long"},"praiseRate": {"type": "float"},"brandNameCh": {"type": "keyword"},"publishType": {"type": "integer"},"brandId": {"type": "long"},"minPrice": {"type": "double"},"keyAttributesNum": {"type": "integer"},"maxPrice": {"type": "double"},"cid": {"type": "long"},"secondTel": {"type": "text"},"supplierId": {"type": "long"},"categoryAttributes": {"type": "nested","properties": {"value": {"type": "long"},"key": {"type": "long"}}},"shopName": {"type": "text","fields": {"shopName_view": {"type": "keyword"},"shopName_search": {"type": "text","analyzer": "optik_smart_with_synonym","search_analyzer": "optik_smart_with_synonym"}}},"enterpriseScale": {"type": "integer"},"agentNum": {"type": "integer"},"skuName": {"type": "text","analyzer": "optik_smart_with_synonym","search_analyzer": "optik_smart_with_synonym"},"saleAttributesNum": {"type": "integer"},"supplierName": {"type": "keyword"},"saleCount": {"type": "long"},"secondContacts": {"type": "text"},"keyAttributes": {"type": "nested","properties": {"attrNames": {"search_analyzer": "optik_smart","analyzer": "optik","type": "text"},"value": {"type": "long"},"key": {"type": "long"}}},"platformId": {"type": "long"},"saleStatus": {"type": "integer"},"otherQualifications": {"type": "text"},"agreementNo": {"type": "keyword"},"brandNameEn": {"type": "keyword"},"sourceSkuId": {"search_analyzer": "optik_smart","analyzer": "optik","type": "text"},"categoryAttributesNum": {"type": "integer"},"brandNameChEn": {"type": "text","fields": {"brandNameChEn_agg": {"type": "keyword"},"brandNameChEn_ik": {"type": "text","analyzer": "optik_smart_with_synonym","search_analyzer": "optik_smart_with_synonym"}}},"contacts": {"type": "text"}}}},"aliases": {"es_sku_index_alias_20": {}
}
}
POST _reindex
{"source": {"index": "es_sku_index_20_20221008"},"dest": {"index": "es_sku_index_20_20250109"}
}
POST /_aliases
{"actions": [{ "add": { "index": "es_sku_index_20_20250109", "alias": "es_sku_index_alias_20" } },{ "remove": { "index": "es_sku_index_20_20221008", "alias": "es_sku_index_alias_20" } }]
}
GET /es_sku_index_20_20250109/_analyze
{"analyzer": "optik_smart_with_synonym","text": "复印纸"
}
GET /es_sku_index_20_20250109/_analyze
{"analyzer": "optik_smart_with_synonym","text": "打印纸"
}
相关文章:
ElasticSearch 同义词匹配
synonym.txt 电脑, 计算机, 主机 复印纸, 打印纸, A4纸, 纸, A3 平板电脑, Pad DELETE /es_sku_index_20_20250109 PUT /es_sku_index_20_20250109 {"settings": {"index": {"number_of_shards": "5","number_of_replicas&quo…...
linux RT-Preempt spin lock实现
一、spin_lock概述 Spinlock是linux内核中常用的一种互斥锁机制,和mutex不同,当无法持锁进入临界区的时候,当前执行线索不会阻塞,而是不断的自旋等待该锁释放。正因为如此,自旋锁也是可以用在中断上下文的。也正是因为…...
PySpark广播表连接解决数据倾斜的完整案例
使用PySpark解决数据倾斜问题的完整案例,通过广播表连接的方式来优化性能。 准备数据 假设我们有两张表,一张大表 big_table 和一张小表 small_table ,小表将作为广播表。 from pyspark.sql import SparkSession# 初始化SparkSession spar…...
Chromium CDP 开发(十二):为自己的Domain建立custom_config.json
引言 本章详细介绍了如何为自定义的 CDP Domain 创建 custom_config.json 文件,并通过修改 BUILD.gn 文件来确保自定义的配置文件参与编译。我们通过 inspector_protocol_generate 配置段自动生成自定义 Domain 的头文件和实现文件,并成功将其集成到构建…...
【Vue】全局/局部组件使用流程(Vue2为例)
全局组件和局部组件区别 如何使用 全局组件:全局注册后,可以在任意页面中直接使用。局部组件:在页面中需要先导入子组件路径,注册组件才能使用。 适用场景 全局组件:适用于高频使用的组件,如导航栏、业…...
Vue.js组件开发详解
在现代前端开发中,Vue.js 凭借其简洁、高效、灵活的特性,成为了众多开发者的首选框架之一,而组件化开发则是 Vue.js 的核心优势。组件可以将复杂的 UI 界面拆分成一个个独立的、可复用的小块,极大地提高了开发效率和代码的可维护性…...
解决:ubuntu22.04中IsaacGymEnv保存视频报错的问题
1. IsaacGymEnvs项目介绍 IsaacGymEnvs:基于NVIDIA Isaac Gym的高效机器人训练环境 IsaacGymEnvs 是一个基于 NVIDIA Isaac Gym 的开源 Python 环境库,专为机器人训练提供高效的仿真环境。Isaac Gym 是由 NVIDIA 开发的一个高性能物理仿真引擎…...
深度学习camp-第J7周:对于ResNeXt-50算法的思考
🍨 本文为🔗365天深度学习训练营 中的学习记录博客🍖 原作者:K同学啊 📌你需要解决的疑问:这个代码是否有错?对错与否都请给出你的思考 📌打卡要求:请查找相关资料、逐步…...
java: 错误: 无效的源发行版:17解决办法
遇到“java: 错误: 无效的源发行版:17”的问题,通常是因为项目设置中指定的Java版本与当前环境不一致导致的。以下是几种可能的解决方案: 检查并升级Java版本:确保你已经安装了支持Java 17的JDK版本。你可以通过命令行输入java -v…...
Docker 安装开源的IT资产管理系统Snipe-IT
一、安装 1、创建docker-compose.yaml version: 3services:snipeit:container_name: snipeitimage: snipe/snipe-it:v6.1.2restart: alwaysports:- "8000:80"volumes:- ./logs:/var/www/html/storage/logsdepends_on:- mysqlenv_file:- .env.dockernetworks:- snip…...
Go语言封装加解密包(AES/DES/RSA)
Go语言封装加解密包(AES/DES/RSA) 1. Base64编码与解码2. AES加解密3. DES加解密4. RSA加解密5. SHA256哈希6. 单元测试1. AES加解密单元测试2. DES加解密单元测试3. RSA加解密单元测试4. SHA256哈希单元测试测试用例说明 总结 在现代软件开发中…...
sql server 对 nvarchar 类型的列进行 SUM() 运算
因为 SUM() 是一个数值聚合函数,不能直接应用于字符串类型的数据。为了正确汇总标准数量,你需要确保该列的数据类型是数值类型,如 int、decimal 或 float。 假设要统计数量列的和,由于数量列是 nvarchar 类型,你需要先…...
java中json字符串键值获取
<dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.83</version> </dependency>使用fastjson依赖 JSONObject jsonObject JSON.parseObject(s); 这个jsonObject本质就是一个map&…...
MPLS原理及配置
赶时间可以只看实验部分 由来:90年代中期,互联网流量的快速增长。传统IP报文依赖路由器查询路由表转发,但由于硬件技术存在限制导致转发性能低,查表转发成为了网络数据转发的瓶颈。 因此,旨在提高路由器转发速度的MPL…...
口碑很好的国产LDO芯片,有哪些?
在几乎任何一个电路设计中,都可能会使用LDO(低压差线性稳压器)这个器件。 虽然LDO不是什么高性能的IC,但LDO芯片市场竞争异常激烈。最近几年,诞生了越来越多的精品国产LDO,让人看得眼花缭乱。 业内人士曾经…...
【流程设计】类似钉钉的流程设计功能样式demo
对于一些审批流程,可能会用到这个功能,通过这样一层层的加下来,弄一个审批流程的数组,然后根据这个来审核是否都通过审批,这里是简单的弄一个样式的demo,功能自由发挥 <!DOCTYPE html> <html>…...
ChatGPT入门之文本情绪识别:先了解LSTM如何处理文字序列
文章目录 0. 首先聊聊什么是RNN1. 理解LSTM,从数据如何喂给 LSTM开始2. LSTM每个门是如何处理序列数据的?2.1 遗忘门(Forget Gate):该忘掉哪些信息?2.2 输入门(Input Gate)ÿ…...
测试开发之面试宝典
目录 session和cookie的区别 session和cookie的区别 1.session和cookie都是鍵值对应的 2.session和cookie都是服务器生成的,session的ID,即服各器用来识别读取session对象的一把钥匙 3.session是保存在服各器端,而cookie是返回給客戶端的&…...
399. 除法求值【 力扣(LeetCode) 】
文章目录 零、LeetCode 原题一、题目描述二、测试用例三、解题思路3.1 图的路径搜索3.2 路径压缩 四、参考代码4.1 图的路径搜索4.2 路径压缩 零、LeetCode 原题 399. 除法求值 一、题目描述 给你一个变量对数组 equations 和一个实数值数组 values 作为已知条件,…...
算法日记1:洛谷p2678跳石头(二分答案)
1、题目 二、题解: 2.1解题思路: 1.题目要求求出最小值最大,明显的二分答案题目,所以我们可以二分可以跳跃距离int l-1,rL1; 2.此时我们思考lmid和rmid的处理,当我们的check(mid)为true时候 表明我们此时的mid是符合要求的, 那么…...
使用分级同态加密防御梯度泄漏
抽象 联邦学习 (FL) 支持跨分布式客户端进行协作模型训练,而无需共享原始数据,这使其成为在互联和自动驾驶汽车 (CAV) 等领域保护隐私的机器学习的一种很有前途的方法。然而,最近的研究表明&…...
【Redis技术进阶之路】「原理分析系列开篇」分析客户端和服务端网络诵信交互实现(服务端执行命令请求的过程 - 初始化服务器)
服务端执行命令请求的过程 【专栏简介】【技术大纲】【专栏目标】【目标人群】1. Redis爱好者与社区成员2. 后端开发和系统架构师3. 计算机专业的本科生及研究生 初始化服务器1. 初始化服务器状态结构初始化RedisServer变量 2. 加载相关系统配置和用户配置参数定制化配置参数案…...
【SQL学习笔记1】增删改查+多表连接全解析(内附SQL免费在线练习工具)
可以使用Sqliteviz这个网站免费编写sql语句,它能够让用户直接在浏览器内练习SQL的语法,不需要安装任何软件。 链接如下: sqliteviz 注意: 在转写SQL语法时,关键字之间有一个特定的顺序,这个顺序会影响到…...
spring:实例工厂方法获取bean
spring处理使用静态工厂方法获取bean实例,也可以通过实例工厂方法获取bean实例。 实例工厂方法步骤如下: 定义实例工厂类(Java代码),定义实例工厂(xml),定义调用实例工厂ÿ…...
如何为服务器生成TLS证书
TLS(Transport Layer Security)证书是确保网络通信安全的重要手段,它通过加密技术保护传输的数据不被窃听和篡改。在服务器上配置TLS证书,可以使用户通过HTTPS协议安全地访问您的网站。本文将详细介绍如何在服务器上生成一个TLS证…...
新能源汽车智慧充电桩管理方案:新能源充电桩散热问题及消防安全监管方案
随着新能源汽车的快速普及,充电桩作为核心配套设施,其安全性与可靠性备受关注。然而,在高温、高负荷运行环境下,充电桩的散热问题与消防安全隐患日益凸显,成为制约行业发展的关键瓶颈。 如何通过智慧化管理手段优化散…...
【Zephyr 系列 10】实战项目:打造一个蓝牙传感器终端 + 网关系统(完整架构与全栈实现)
🧠关键词:Zephyr、BLE、终端、网关、广播、连接、传感器、数据采集、低功耗、系统集成 📌目标读者:希望基于 Zephyr 构建 BLE 系统架构、实现终端与网关协作、具备产品交付能力的开发者 📊篇幅字数:约 5200 字 ✨ 项目总览 在物联网实际项目中,**“终端 + 网关”**是…...
Spring Boot+Neo4j知识图谱实战:3步搭建智能关系网络!
一、引言 在数据驱动的背景下,知识图谱凭借其高效的信息组织能力,正逐步成为各行业应用的关键技术。本文聚焦 Spring Boot与Neo4j图数据库的技术结合,探讨知识图谱开发的实现细节,帮助读者掌握该技术栈在实际项目中的落地方法。 …...
GitHub 趋势日报 (2025年06月08日)
📊 由 TrendForge 系统生成 | 🌐 https://trendforge.devlive.org/ 🌐 本日报中的项目描述已自动翻译为中文 📈 今日获星趋势图 今日获星趋势图 884 cognee 566 dify 414 HumanSystemOptimization 414 omni-tools 321 note-gen …...
拉力测试cuda pytorch 把 4070显卡拉满
import torch import timedef stress_test_gpu(matrix_size16384, duration300):"""对GPU进行压力测试,通过持续的矩阵乘法来最大化GPU利用率参数:matrix_size: 矩阵维度大小,增大可提高计算复杂度duration: 测试持续时间(秒&…...
