首页
学习
活动
专区
工具
TVP
发布

山行AI

山行AI(原开发架构二三事),后续专注于AI应用领域
专栏成员
303
文章
761443
阅读量
57
订阅数
es中的analyzer,tokenizer,filter你真的了解吗?
最近在做搜索推荐相关的需求,有一个场景中需要某一列能处理多种分词器的分词匹配,比如我输入汉字或拼音或语义相近的词都需要把匹配结果返回回来。经过一番调研,最终我们选择了elasticsearch来处理数据的索引与搜索,在配置分词器时会发现大多分词器配置中都需要配置analyzer、tokenizer、filter,那么这三个东西分别代表着什么,又有什么样的联系呢?这就是本文要重点讨论的事情。关于如何在elasticsearch中使用分词器[1]以及常用的中文分词器[2]和拼音分词器[3]是什么,该怎么样去配置这些问题不是本文要讨论的重点,链接都已经奉上,需要的自取。本文咱们就来聚焦讨论一下analyzer、tokenizer、filter之间的区别与联系。
山行AI
2021-07-23
6.9K0
Flink RocksDB State Backend:when and how
流处理应用程序通常是有状态的,“记住”已处理事件的信息,并使用它来影响进一步的事件处理。在Flink中,记忆的信息(即状态)被本地存储在配置的状态后端中。为了防止发生故障时丢失数据,状态后端会定期将其内容快照保存到预先配置的持久性存储中。该RocksDB[1]状态后端(即RocksDBStateBackend)是Flink中的三个内置状态后端之一。这篇博客文章将指导您了解使用RocksDB管理应用程序状态的好处,解释何时以及如何使用它,以及清除一些常见的误解。话虽如此,这不是一篇说明RocksDB如何深入工作或如何进行高级故障排除和性能调整的博客文章;如果您需要任何有关这些主题的帮助,可以联系Flink用户邮件列表[2]。
山行AI
2021-04-16
3.1K0
flink分析之Task的生命周期
之前有想过系统地来一番flink源码分析系列,谁曾想工作中需要完成的需求有些多,完整的flink源码分析系列只能一再往后拖了。之前公众号后台有想学习flink的朋友留言想看更多学习flink的资料,现在先发一些之前收藏的关于flink相关的文章,其中大多翻译自flink社区,希望能给大家带来一些帮助。本文[1]主要围绕flink任务的生命周期展开。
山行AI
2021-04-16
1.6K0
flink jobmanager与taskmanager内存配置源码分析
先来看一下官网上对flink内存设置的介绍。Flink JVM 进程的进程总内存(Total Process Memory)包含了由 Flink 应用使用的内存(Flink 总内存)以及由运行 Flink 的 JVM 使用的内存。Flink 总内存(Total Flink Memory)包括 JVM 堆内存(Heap Memory)和堆外内存(Off-Heap Memory)。其中堆外内存包括直接内存(Direct Memory)和本地内存(Native Memory)。
山行AI
2020-12-14
2.5K0
双数组Trie树与AC自动机简要总结
又称单词查找树,Trie 树,是一种树形结构,是一种哈希树的变种。它的优点是:利用字符串的公共前缀来减少查询时间,最大限度地减少无谓的字符串比较,能在常数时间 O(len)内实现插入和查询操作,是一种以空间换取时间的数据结构,广泛用于词频统计和输入统计领域。
山行AI
2019-10-31
3.3K0
shiro整合swagger需要注意的点
重新打开shiro,运行,swagger2页面访问正常,但是程序日志输出依然有权限访问出错
山行AI
2019-08-26
3.1K0
swagger 2.0对oauth2 token权限问题的解决
4. 访问http://localhost:8080/api/swagger-ui.html
山行AI
2019-08-26
5.2K0
shiro实战之改造成token格式的无状态restful api
通过调用context.setSessionCreationEnabled(false)表示不创建会话;如果之后调用Subject.getSession()将抛出DisabledSessionException异常。
山行AI
2019-08-13
5.4K2
nginx之rewrite模块
rewrite模块的指令有break, if, return, rewrite, set等,其中rewrite是比较关键的。
山行AI
2019-08-12
2.8K0
vue之vue组件component整理
组件是可复用的 Vue 实例,且带有一个名字:在这个例子中是。我们可以在一个通过 new Vue 创建的 Vue 根实例中,把这个组件作为自定义元素来使用:
山行AI
2019-07-30
6.7K0
vue之router文档
查看 dist 目录. 注意,dist 目录下的文件是最新稳定版,不会同步更新到 dev 分支上的最新代码
山行AI
2019-07-25
5.4K0
为何JUC中有大量代码将成员变量复制到本地变量后再操作?
总结:在性能核心部分,是有效果的(所以j.u.c和Netty大量这样搞)。 juc那么写是因为一开始就那么写(考虑到当时的jvm的现代化),而且单纯来看,local variable跟 get filed 是有性能差异,是否jvm能优化,在于是否同一个方法中重复使用了该字段,而且该jvm不会重复去reload。 讲的是其他引用类型,那写需要用 ALOAD_x 从LVT加载的引用类型。基本类型,又是final,在compile阶段就优化掉了。而且普遍来看,除非是为了追求“极致性能”,否则不建议这么做。
山行AI
2019-06-28
4660
没有更多了
社区活动
【纪录片】中国数据库前世今生
穿越半个世纪,探寻中国数据库50年的发展历程
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档