自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 资源 (5)
  • 收藏
  • 关注

原创 Mark 我的人生要达成的100件事~

1. 看极光2. 一次无计划的旅程3. 勇敢的告白一次4. 写信给未来的自己5. 去爱豆的演唱会6. 毫无顾忌地大醉一场7. 潜水8. 认真道别一次9. 完整地看完一次日出/日落10. 拿到驾照11. 拥有一个死党12. 开一家店13. 经济独立14. 会一种乐器15. 拍一次全家福16. 打卡书籍/影视中的经典地标17. 献血18. 看完1000本书19. 看完1000部电影20. 拥有自己的房子21. 拜访恩师22. 打

2020-07-27 18:09:42 1094 3

原创 《领域驱动设计精简版》读书笔记

实体对象与值对象:聚合根:工厂与资源库:工厂创建新的对象,资源库用来发现创建过的对象。

2021-02-20 11:00:17 141

原创 《卓有成效的管理者》读书笔记

1 才能本身并不是成果。2 对体力工作而言,所重视的只是效率。所谓效率,可以说是"把事情做对"的能力,而不是"做对的事情的能力"。3

2021-02-05 14:57:35 163

原创 跟我学Elasticsearch(24) full text和exact value的查询演示

文章目录我们先写入三条演示数据PUT /product/book/1{ "post_date": "2020-01-01", "title": "my first book"}PUT /product/book/2{ "post_date": "2020-01-02", "title": "my second book"}PUT /product/book/3{ "post_date": "2020-01-03", "title": "my thrid book

2020-09-04 10:07:31 332

原创 跟我学Elasticsearch(23) 分词器的内部组成以及内置分词器介绍

文章目录1、什么是分词器2、内置分词器介绍1、什么是分词器分词器是在建立倒排索引前的一系列操作,目的是提升召回率,增加能够搜索到的结果的数量(1) character filter:分词前的预处理,比如过滤html标签,特殊符号转换成英文单词<span>hello<span> --> helloI&you --> I and you(2) tokenizer:分词,比如hello you and me --> hello, you, and

2020-09-02 10:58:59 234

原创 spring cloud快速指引

spring cloud-->restTemplateeureka:注册中心,客户端注册,配置eureka server地址ribbon:负载均衡,@LoadBalanced,可自定义负载均衡策略feign:通过feignClient调用微服务,使用spring mvc注解@RequestMapping或feign注解@RequestLinehystrix:降级/熔断, 监控状况:http://localhost:7901/health 获取当前服务实例的监控...

2020-09-01 16:05:02 91

原创 跟我学Elasticsearch(22) 倒排索引核心原理

我们看看下面2个doc是怎么建立倒排索引的doc1:I really liked my small dogs, and I think my mom also liked them.doc2:He never liked any dogs, so I hope that my mom will not expect me to liked him.worddoc1doc2I**really*liked**my**small*dog

2020-09-01 15:30:56 175

原创 跟我学Elasticsearch(21) 精确匹配与全文索引的对比分析

文章目录1、exact value(精确匹配)2、full text(全文索引)1、exact value(精确匹配)对"2020-01-01"进行精确搜索的时候,必须用关键字2020-01-01才能搜索出来,如果搜关键字01,是搜索不出来的2、full text(全文索引)(1) 对"2020-01-01"进行全文索引时,搜关键字2017或01都是可以搜索出来的(2) 对"china"进行全文索引时,搜关键字cn,也可以将china搜索出来(3) 对"likes"进行全文索引时,搜关键字lik

2020-09-01 14:16:39 295

原创 跟我学Elasticsearch(20) query string search语法以及_all metadata原理揭秘

文章目录1、query string语法2、_all metadata的语法及原理1、query string语法#1和2效果是一样的,查询test_type下test_field字段中包含test关键字的document(1) GET /test_index/test_type/_search?q=test_field:test(2) GET /test_index/test_type/_search?q=+test_field:test#查询test_type下test_field字段中不包含

2020-09-01 10:54:09 300

原创 跟我学Elasticsearch(19) 分页搜索以及deep paging性能问题深度图解

文章目录1、分页搜索2、什么是deep paging?3、deep paging性能问题1、分页搜索语法#搜索第1000页的10条数据GET /test_index/test_type/_search?from=10000&size=102、什么是deep paging?简单来说,就是分页搜索的特别深。比如有个index有3个primary shard,共60000条数据,每个shard上分了20000条数据。现在要进行分页查询取第1000页的10条数据。整个过程是这样的(1) 分页

2020-08-31 14:59:13 128

原创 跟我学Elasticsearch(18) _search的multi-index&multi-type搜索模式

所谓multi-index和multi-type搜索模式就是我们可以一次性搜索多个index和多个type下的数据(1) /_search:所有索引,所有type下的所有数据都搜索出来(2) /index1/_search:指定一个index,搜索其下所有type的数据(3) /index1,index2/_search:同时搜索两个index下的数据(4) /*1,*2/_search:按照通配符去匹配多个索引(5) /index1/type1/_search:搜索一个index下指定的type

2020-08-17 17:34:33 152

原创 跟我学Elasticsearch(17) _search结果分析及其timeout机制

文章目录1、搜索结果分析2、_search的timeout机制1、搜索结果分析GET /_searchtook:整个搜索请求花费了1毫秒hits.total:本次搜索,返回了1条结果hits.max_score:本次搜索的所有结果中,最大的相关度分数是多少hits.hits:默认查询前10条数据,完整数据,按_score降序排序shards:这次查询路由到的primary shard和replica shardtimeout:默认无timeout,可以手动指定timeout,走timeo

2020-08-17 16:53:52 545

原创 跟我学Elasticsearch(16) _bulk api的奇特json格式与底层性能关系

文章目录1、bulk的执行过程2、假如采用比较良好的json数组格式3、es支持的json格式1、bulk的执行过程一次bulk请求可能包含了多个增删改document的操作,因此bulk的每个操作都可能要转发到不同的es node的primary shard去执行,这个过程就包含了json数据的传输。2、假如采用比较良好的json数组格式假如使用比较良好的json数组格式,会是这个样子POST /_bulk{ "update": { "_index": "test_index", "_type

2020-08-17 15:54:51 368

原创 跟我学Elasticsearch(15) 主副分片写一致性原理以及quorum机制

文章目录1、es5.0前,采用写入前检查存活shard的方式(1)consistency(2)quorum机制(3)quorum不齐全时不会直接拒绝写入2、es5.0后,采用写入后才确认的方式简单说就是primary shard写完,会同步到replica shard上,两者最终可能会出现不一致的情况。那es是如何确定主副分片的写一致性的呢?1、es5.0前,采用写入前检查存活shard的方式(1)consistency我们在发送任何一个增删改请求的时候,比如说put /product/book/i

2020-08-05 17:27:00 769 1

原创 跟我学Elasticsearch(14) document数据路由原理

文章目录1、document路由到shard上是什么意思?2、路由算法3、使用默认routing或手动指定routing4、为什么primary shard数量不可变1、document路由到shard上是什么意思?我们知道,1个index的数据会被分配到多个shard中,1个document只会被放到其中1个primary shard中。也就是说,当我们创建document的时候,es就要决定这个document是放在这个index的哪个shard上,这个过程就称为document routing(

2020-08-03 17:09:41 184

原创 跟我学Elasticsearch(13) 使用bulk进行批量增删改

使用bulk语法可以进行批量增删改操作,bulk语法有严格的要求,每个json串不能换行,两个json串必须换行,下面演示下#删除POST /_bulk{ "delete": { "_index": "test_index", "_type": "test_type", "_id": "1" }} #强制创建POST /_bulk{ "create": { "_index": "test_index", "_type": "test_type", "_id": "1" }}{ "test_f

2020-08-03 14:39:08 479

原创 跟我学Elasticsearch(12) 使用mget进行批量查询

文章目录1、为什么要批量查询2、mget的语法(1) 同一index同一type(2) 同一index不同type(3) 不同idex1、为什么要批量查询假如我们要查100个document,一个一个id查的话,需要发送100次网络请求,占用网络开销,用mget进行批量查询的话,只要发送1次网络请求,网络开销减小100倍。2、mget的语法(1) 同一index同一typeGET /test_index/test_type/_mget{ "ids": [1, 2]}(2) 同一ind

2020-08-03 10:38:12 202

原创 跟我学Elasticsearch(11) 图解es并发冲突的发生过程和解决办法

文章目录1、什么是并发冲突2、并发冲突的解决办法(1) 悲观锁思路(2) 乐观锁思路3、es内部如何基于_version进行乐观锁并发控制4、基于_version进行乐观锁并发控制5、使用partial update进行乐观锁并发控制6、基于external version进行乐观锁并发控制1、什么是并发冲突举个例子,我跟你在淘宝在同一时间下单买了同一本书,两个线程同时去es扣这本书的库存,库存有100本书,正常情况扣完库存后应该变成98本,但如果两个线程并发冲突,就会变成这样可以看到库存的值变成了

2020-07-31 22:51:41 937

原创 跟我学Elasticsearch(10) partial update的原理和使用

文章目录1、什么是partial update?2、partial update如何使用3、基于groovy脚本进行partial update1、什么是partial update?我们用document的全量替换来对比一下partial update。全量替换时,我们需要把document里的所有field给到es进行替换,而partial update只需要把document id和需要更新的部分字段给到es就行,两种方式对document的修改结果是一样的。既然如此那为何还要用partial

2020-07-31 22:22:59 271

原创 跟我学Elasticsearch(9) 讲透document看这篇文章就够了

文章目录1、document的核心元数据(1) _index元数据(2) _type元数据(3) _id元数据(4) _source元数据2、 document的全量替换3、document的删除(lazy delete机制)1、document的核心元数据我们针对一次查询结果来解析它的元数据[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zVqXAmNE-1596093636821)(https://img2020.cnblogs.com/blog/1405862/20

2020-07-30 15:20:58 228

原创 跟我学Elasticsearch(8) 图解es集群的shard分配、扩容和容错机制

文章目录1、index、document和shard的关系2、单个node下shard是如何分配的3、2个node下shard是如何分配的4、node扩容的意义5、node容错机制(主备切换、数据恢复)1、index、document和shard的关系(1) 1个index的多个document会被均匀分配到多个shard;每个shard都是一个最小工作单元,承载1个index的部分document。(2) 1个document只存在于某1个primary shard以及其对应的replica sha

2020-07-28 17:57:32 2661

原创 跟我学Elasticsearch(7) es的嵌套聚合,下钻分析,聚合分析

文章目录1、统计每个标签对应的商品数量2、对商品名称包含shu的商品,统计每个标签对应的商品数量3、计算每个标签对应的商品的平均价格4、计算每个标签对应的商品的平均价格并按平均价格降序排序5、按价格区间进行分组,然后在每组内计算每个标签对应的商品的平均价格演示前先往es写入三条商品数据用来演示查询PUT /product/book/1{ "product_name": "yuwen shu", "price": 20, "all_tags": ["bad","ugly"]}PUT /pro

2020-07-27 15:41:36 963

原创 跟我学Elasticsearch(6) es的多种搜索方式

文章目录1、query string search2、query DSL3、query filter4、full-text search(全文检索)5、phrase search(短语搜索)6、highlight search(高亮显示搜索结果)演示前先往es写入两条商品数据,接下来用各种查询方式来演示PUT /product/book/1{ "product_name": "yuwen shu", "price": 20, "tags": ["boring","bad"]}PUT /pr

2020-07-21 17:31:40 463

原创 跟我学Elasticsearch(5) es的CRUD演示

下面以一本书为1个document为例演示下es的CRUD1、新增商品:新增documentPUT /product/book/1{ "product_name" : "追风筝的人", "price" : 10, "tags": [ "忠诚", "赎罪" ]}第一次新增document时es会自动建立index和type,不需要提前创建,es默认会对document每个field都建立倒排索引,让其可以被全文检索。2、查询商品:查询documentGET /pro

2020-07-14 19:44:15 172

原创 跟我学Elasticsearch(4) es集群健康检查和简单的索引操作

文章目录1、检查集群的健康状况2、查看集群中有哪些索引3、简单的索引操作这篇文章以kibana自带的例子来逐个讲解1、检查集群的健康状况GET /_cat/health?v意思是这样的:epoll/timestamp:时间戳/时间。cluster:集群名称。默认是elasticsearchstatus:集群状态。green–>健康;yellow->分配了所有primary shard,但至少缺少一个replica shard;red–>部分主分片不可用,可能已经丢失数据

2020-07-14 19:38:52 843

原创 俗话说单点登录(SSO)的三种实现原理

文章目录1、什么是单点登录?2、三种原理1、第一种实现原理2、第二种实现原理3、第三种实现原理1、什么是单点登录?我们现在有千度和万度两个web服务比如我们在一个浏览器登录了千度,接着再去访问万度,在访问万度的时候是不需要再次登录就可以直接访问的,这就是单点登录。那么怎样才能达到这个目的呢?我这里给基于三种原理的实现方式。2、三种原理1、第一种实现原理让浏览器记住千度的session,访问万度也用这个session。让服务器记住千度的session,万度的登录认证也用这个session去认证

2020-07-14 15:06:36 1146

原创 跟我学Elasticsearch(3) 安装Elasticsearch、kibana

下面关于es的工具我都是在centos7上安装的,不知道怎么搭虚拟机的也没关系,看一下我这篇文章就会了,很简单:Windows下傻瓜Vagrant+VirtualBox快速创建centos7虚拟机演示所需安装包:jdk-8u251-linux-x64.tar.gzelasticsearch-5.2.0.tar.gzkibana-5.2.0-linux-x86_64.tar.gz我这边提供了一份,自行下载:链接:https://pan.baidu.com/s/1O1kHY3QV3iXF5sgm4

2020-07-14 11:06:41 174

原创 Windows下傻瓜Vagrant+VirtualBox+shell快速创建3台安装好docker的centos7虚拟机

目标:在Windows上快速创建三台能ping通局域网及公网的安装好docker(自己想装什么软件就装什么软件)的centos7虚拟机manager:192.168.205.10 worker1:192.168.205.11 worker2:192.168.205.12提示:没有看上一篇的请先移步完成上一篇的傻瓜式任务(傻瓜式Vagrant+virtualBox快速创建centos7虚拟机):https://blog.csdn.net/nowitzkis/article/details/107256

2020-07-10 17:54:27 361

原创 Windows下傻瓜Vagrant+VirtualBox快速创建centos7虚拟机

目标:在Windows上快速创建一台能ping通局域网及公网的centos7虚拟机1 下载并安装附件中的软件先安装VirtualBox:www.virtualbox.org/wiki/Downlo…再安装Vagrant:www.vagrantup.com/downloads.h…下载需要的box:app.vagrantup.com/boxes/searc…以上资源我百度云也提供了一份:https://pan.baidu.com/s/1_dkzDme_4ZoCWJuYqg9sCQ 提取码:

2020-07-10 17:25:58 508

原创 跟我学Elasticsearch(2) Elasticsearch的核心概念

文章目录(1)NRT(Near Realtime)(2)Node(3)Cluster(4)index(索引),type(类型),document,field(5)primary shard(6)replica shard这篇文章我们开始真正走进es闲聊一下他的核心概念(1)NRT(Near Realtime)近实时,两个意思,从写入数据到数据可以被搜索到有一个小延迟(大概1秒);基于es执行搜索和分析可以达到秒级。(2)Node节点,安装完es这个es就是1个es节点,节点名称名称可以通过配置文

2020-07-08 18:14:44 186

原创 跟我学Elasticsearch(1) 什么是Elasticsearch

文章目录1、什么是搜索?2、如果用数据库做搜索会怎么样?3、什么是倒排索引、全文检索和Lucene?4、什么是Elasticsearch?这是我的es系列文章开篇,我会尽量用聊天的方式跟大家去聊明白这门技术。说到底mysql,redis,lucene,hadoop本质上就是一个存储介质,核心功能就是CRUD,只是各自的实现方式不一样,es同理,不过是去透彻理解ES的CRUD细节的一个过程,just so so。。不同技术有它在特定场景下的优势,比如mysql在于事务特性保证数据强一致性,redis在于

2020-07-07 20:30:27 208

原创 oracle自动备份与恢复

自动备份:法一:(每日都会有备份)在安装oracle时勾选“每日备份”并设定时间,dmp文件会每日定时保存在C:\Windows\SysWOW64。可以用搜索功能把备份的文件找到(根据命名中包含的时间)。法二:(可以根据需要一天,一周,或一月备份一次)在记事本写如下代码:1 echo 正在备份oracle数据库,请稍后......exp userid=用户名/密码@...

2012-07-28 15:56:50 238

原创 64位win7下安装oracle报“ORA-12154: TNS: 无法解析指定的连接标识符”

64位win7下安装oracle报“ORA-12154: TNS: 无法解析指定的连接标识符” 在64位win7下安装oracle 10g,经测试一切正常。但是在装完PL/SQL Developer 8后,输入正缺的用户名和密码后,却报出“ORA-12154: TNS: 无法解析指定的连接标识符”。经查看tnsnames.ora和listener.ora两个配置文件均无问题。在从网上查查原因,...

2012-07-28 15:52:42 338

114243 用哈夫曼编码实现文件压缩 doc

114243 用哈夫曼编码实现文件压缩 doc

2013-11-18

怎么把用c语言开发的程序变成软件

怎么把用c语言开发的程序变成软件

2013-10-05

jQueryAPI_CHM

一份jquery 的帮助文档,不要分哦,亲。快下载用吧

2012-11-15

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除