文章分类 - 数据库
摘要:1 安装JDK环境 因为ElasticSearch是用Java语言编写的,要用ES软件最起码要有JVM(java虚拟机),所以我们先安装JDK的环境,因为JDK内含了jre(jdk叫java开发环境, jre叫java运行环境,jvm叫java虚拟机)并且是JDK 1.8以上,具体操作步骤自行百度
阅读全文
摘要:1 Elasticsearch产生背景 1.1 大规模数据如何检索 如:当系统数据量上了10亿、100亿条的时候,我们在做系统架构的时候通常会从以下角度去考虑问题: 1)用什么数据库好?(mysql、oracle、mongodb、hbase…) 2)如何解决单点故障;(lvs、F5、A10、Zook
阅读全文
摘要:1 子进程开销和优化 1 cpu 开销:rdb和aof文件生成,属于cpu密集型 优化:不做cpu绑定,不和cpu密集型的服务一起部署 2 内存 开销:fork内存开销,copy-on-write, 优化:单机部署尽量少重写 3 硬盘 开销:aof和rdb写入,可以结合分析工具使用 优化: 1 不要
阅读全文
摘要:1 搭建MySQL主从 mysql主从搭建 2 在settings中配置 settings.py DATABASES = { # 主库 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'test', 'USER': 'root',
阅读全文
摘要:1 主从配置原理 mysql主从配置的流程大体如图: 1)master会将变动记录到二进制日志(binlog)里面; 2)master有一个I/O线程将二进制日志发送到slave; 3) slave有一个I/O线程把master发送的二进制写入到relay日志里面;没有直接读,做了一个缓冲; 4)s
阅读全文
摘要:在实际的业务场景中,Redis 一般和其他数据库搭配使用,用来减轻后端数据库的压力,比如和关系型数据库 MySQL 配合使用。Redis 会把 MySQL 中经常被查询的数据缓存起来,比如热点数据,这样当用户来访问的时候,就不需要到 MySQL 中去查询了,而是直接获取 Redis 中的缓存数据,从
阅读全文
摘要:1 主从复制高可用 在 Redis 主从复制模式中,因为系统不具备自动恢复的功能,所以当主服务器(master)宕机后,需要手动把一台从服务器(slave)切换为主服务器。在这个过程中,不仅需要人为干预,而且还会造成一段时间内服务器处于不可用状态,同时数据安全性也得不到保障,因此主从模式的可用性较低
阅读全文
摘要:1 什么是主从复制 在软件的架构中,主从模式(Master-Slave)是使用较多的一种架构。主(Master)和从(Slave)分别部署在不同的服务器上,当主节点服务器写入数据时,同时也会将数据同步至从节点服务器,通常情况下,主节点负责写入数据,而从节点负责读取数据。 机器故障;容量瓶颈;QPS瓶
阅读全文
摘要:1 持久化的作用 1.1 什么是持久化 Redis 是一款基于内存的非关系型数据库,它会将数据全部存储在内存中。但是如果 Redis 服务器出现某些意外情况,比如宕机或者断电等,那么内存中的数据就会全部丢失。因此必须有一种机制能够保证 Redis 储存的数据不会因故障而丢失,这就是 Redis 的数
阅读全文
摘要:1 慢查询 1.1 生命周期 我们配置一个时间,如果查询时间超过了我们设置的时间,我们就认为这是一个慢查询. 慢查询发生在第三阶段 客户端超时不一定慢查询,但慢查询是客户端超时的一个可能因素 1.2 两个配置 1.2.1 slowlog-max-len 慢查询是一个先进先出的队列,决定 slow l
阅读全文
摘要:1 通用命令 1.1 通用命令 1-keys 可以匹配正则 #打印出所有redis的name,for循环把所有的name全拿出来,时间复杂度是o(n),表示从头到尾循环一次,如果循环多次才能获取结果,时间复杂度更高 keys * #打印出所有以he开头的name keys he* #打印出所有以he
阅读全文
摘要:Python 使用 Redis 相对比较简单,Python 专门提供了操作 Redis 的第三方模块,即 redis 模块,该模块可以直接使用 Python 包管理工具pip来安装。 安装redis模块 pip3 install redis 1 Python操作Redis之普通连接 redis-py
阅读全文
摘要:1 Redis下载和安装(Windows系统) Redis 官方网站没有提供 Windows 版的安装包,Windows 安装包是某位民间“大神”根据 Redis 源码改造的,并非 Redis 官方网站提供。 下载地址 下载msi微软格式的安装包,进行安装: 1.1 选择“添加Redis目录到环境变
阅读全文
摘要:1 Redis初识 1.1 Redis是什么 介绍: Redis 全称 Remote Dictionary Server(即远程字典服务),它是一个基于内存实现的键值型非关系(NoSQL)数据库,由意大利人 Salvatore Sanfilippo 使用 C 语言编写。 Redis 遵守 BSD 协
阅读全文
摘要:1 介绍 SQLAlchemy是一个基于Python实现的ORM框架。该框架建立在 DB API之上,使用对象关系映射进行数据库操作,简言之便是:将类和对象转换成SQL,然后使用数据API执行SQL并获取执行结果。django ORM只能django中使用,SQLAlchemy可以单独使用,我们可以
阅读全文