02 2021 档案
摘要:Borg架构 在了解k8s架构之前,不得不提到Borg架构。brog是google内部的大规模集群管理架构。负责内部核心服务的调度与管理。 架构图: 组件功能介绍: BorgMaster是整个集群的大脑,负责维护整个集群的状态,并将数据持久化到Paxos存储中。 Scheduer负责任务的调度,根据
阅读全文
摘要:Kubernetes是什么? Kubernetes简称k8s,在之后的笔记中,都将这么表示。 k8s是Google开源的容器集群管理系统,为容器化的应用提供资源调度、部署运行、服务发现、弹性伸缩等功能。 k8s有着以下的优秀特性: 强大的容器编排能力,目前很多公司都使用k8s来进行docker容器管
阅读全文
摘要:前言 Elasticsearch会自动创建索引,但是要较好的应用Elasticsearch的话,必须要了解Elasticsearch索引的相关管理。(Elasticserch权威指南读书笔记) 创建索引 我们可以通过Elasticsearch的接口来手动的创建索引。 PUT /index { "ma
阅读全文
摘要:前言 本篇笔记主要简单记录一下Elasticsearch在分布式环境中是怎么执行的?(Elasticserch权威指南读书笔记) 查询阶段 在初始查询阶段时,查询会广播到索引中每一个分片拷贝(主分片或者副本分片)。每个分片在本地执行搜索并构建一个匹配文档的优先队列。 这里使用官方的一张图来说明查询过
阅读全文
摘要:前言 Elasticsearch的搜索返回结果默认是以相关性排序,但是在实际业务中,可能需要按照热度排序,甚至需要按照多字段排序。 排序 Elasticsearch 中,相关性得分由一个浮点数进行表示,并在搜索结果中通过_score参数返回,默认排序是_score降序。 简单排序 如果我们的搜索需要
阅读全文
摘要:前言 在前面的笔记中,记录了Elasticsearch的轻量查询,同时也说明了不推荐轻量查询,这篇笔记主要记录如何使用Elasticsearch请求体查询。 它不仅可以处理自身的查询请求,还允许你对结果进行片段强调(高亮)、对所有或部分结果进行聚合分析,同时还可以给出 你是不是想找 的建议,这些建议
阅读全文
摘要:前言 该篇笔记主要记录在Elasticsearch中文件是如何分布到集群的,又是如何从集群中获取的。(官方原话: 不必了解这么深入也无妨。个人也只是简单了解一下) 文档如何路由到分片中? 当我们创建一个新的文档时,文档将会存储到一个主分片中,但是Elasticsearch是如何决定将这个文档存储在哪
阅读全文
摘要:前言 Elasticsearch是一个文档存储系统,但是它更是一个搜索和数据分析引擎。了解Elasticsearch,就不得不认识elasticsearch的搜索与分析。该篇笔记主要记录Elasticsearch的搜索与分析。 空搜索 搜索API的最基础的形式是没有指定任何查询的空搜索,它简单地返回
阅读全文
摘要:说明 本篇笔记部分案例使用ElasticSearch官方教程案例。 什么是文档? ElasticSearch是面向文档的,它可以存储整个对象或文档,并且索引每个文档的内容使其可以被搜索。其使用Json作为文档序列化格式,Json目前已经被大多语言支持,并且成为NoSQL领域的标准格式,具有简洁、易读
阅读全文
摘要:前言 本文主要简单记录一下Elasticsearch的一些相关概念。 NRT: 近实时-NRT,ES是一个近实时的搜索平台,从数据的添加到能够被搜索只有很少的延迟。 集群 集群这一概念已经遍及天下了,在Elasticsearch中也不例外,可以将多台Elasticsearch节点组成集群使用,可以在
阅读全文
摘要:集群 一个运行中的Elasticsearch被称为一个节点,而集群就是由一个或者多个拥有相同cluster.name的配置节点组成,它们共同承担数据负载与压力。当集群减员或者增员时,集群将会重新平均分布所有的数据。 当一个节点被选择成为主节点时,它将会负责集群内的所有变更,包括增加删除索引、增加删除
阅读全文
摘要:前言 本文档主要简单记录一下在ElasticSearch中的一些搜索语句(基于阿里云ElasticSearch环境)。 轻量搜索 最简单的搜索应该就是一个简单的get了,如下使用get来获取数据: GET /index_name/_search 返回结果: { "took" : 1, "timed_
阅读全文
摘要:docker安装与简单使用 docker是Paas提供商dotCloud开源的一个高级容器引擎,docker自诞生以来,一直都受到了业内的高度关注。在云计算的背景下,docker的影响越来越大。本文就docker的安装与简单使用进行一个的记录。 环境:centos7 docker安装: curl -
阅读全文
摘要:欢迎各位大佬评论补充!!! 1.什么是Redis? Redis是一个开源、高性能、基于内存的key-value数据库。 2.Redis数据类型? Redis支持多种数据类型,较为常用的有String、Hash、List、Set、Zset,也还包括了HyperLogLog、Geo等高级类型。甚至还有R
阅读全文
摘要:什么是Redis集群? Redis集群是一个分布式、容错的实现,集群可以使用的功能是单机Redis功能的子集。 Redis集群中不存在中心节点与代理节点,集群一个主要的设计目标就是达到线性可扩展性。 Redis集群为了保证数据一致性而牺牲了部分容错性(系统在保证对网络断线和节点怠机具有有限抵抗力的前
阅读全文
摘要:Redis持久化: Redis提供了多种不同级别的持久化方式: 1)RDB持久化可以在指定的时间间隔内生成数据集的时间点快照。 2)AOF持久化记录服务器执行的所有写存在命令,并在服务器启动时,并在服务器启动时,重新执行这些命令来还原数据。AOF 文件中的命令全部以 Redis 协议的格式来保存,新
阅读全文
摘要:本文主要记录一下redis内部命令。 命令总览: 1.MIGRATE 2.DUMP 3.RESTORE 4.SYNC 5.PSYNC 命令介绍: 1.MIGRATE 可用版本: >=2.6.0 时间复杂度: O(N) 命令格式: MIGRATE host post key destination-d
阅读全文
摘要:本文主要记录一下redis调试相关的命令。 命令总览: 1.PING 2.ECHO 3.OBJECT 4.SLOWLOG 5.MONITOR 6.DEBUG_OBJECT 7.DEBUG_SEGFAULT 命令介绍: 1.PING 可用版本: >=1.0.0 时间复杂度: O(1) 命令格式: PI
阅读全文
摘要:本文主要记录一下redis配置相关的命令。 命令总览: 1.CONFIG_SET 2.CONFIG_GET 3.CONFIG_RESETSTAT 4.CONFIG_REWRITE 命令介绍: 1.CONFIG_GET 可用版本: >=2.0.0 时间复杂度: O(N),其中N为命令返回配置选项数量
阅读全文
摘要:本文主要记录一下redis客户端与服务器的一些命令。 命令总览: 1.AUTH 2.QUIT 3.INFO 4.SHUTDOWN 5.TIME 6.CLIENT_GETNAME 7.CLIENT_KILL 8.CLIENT_LIST 9.CLIENT_SETNAME 命令介绍: 1.AUTH 可用版
阅读全文
摘要:该笔记记录redis 复制的命令。 1.slaveof 可用版本: >=1.0.0 1.1) 时间复杂度: O(N),其中 N 是要同步的数据数量。 命令格式: slaveof host port 作用: 将当前服务器转变为指定服务器的从属服务器。 返回值: 总是返回OK 其它: 如果当前服务器已经
阅读全文
摘要:该笔记记录redis 发布与订阅的命令。 1.publish 可用版本: >=2.0.0 时间复杂度: O(N+M),其中 N 是频道 channel 的订阅者数量,而 M 则是使用模式订阅(subscribed patterns)的客户端的数量。 命令格式: publish channel mes
阅读全文
摘要:本笔记主要记录redis持久化命令。 1.save 可用版本: >=1.0.0 时间复杂度: O(N),N为要保存到数据库中key的数量 命令格式: save 作用: SAVE 命令执行一个同步保存操作,将当前 Redis 实例的所有数据快照(snapshot)以 RDB 文件的形式保存到硬盘。 一
阅读全文
摘要:简介: redis脚本使用lua解释器来执行脚本。 常用命令: 1.eval 2.evalsha 3.script_load 4.script_exists 5.script_flush 6.script_kill 命令详解: 1.eval 可用版本: >=2.6.0 时间复杂度: 寻找要被执行脚本
阅读全文