collection数据准备
use shijiange
db.myuser.insert( {name:"shijiange1", age: 20} )
db.myuser.insert( {name:"shijiange2", age: 28} )
db.myuser.insert( {name:"shijiange3", age: 38} )
db.myuser.insert( {name:"zhangsa...
mongodb的基础概念介绍
database #数据库
collection #集合,类似于mysql中的表
filed #类似于mysql中字段
document #每行的记录
mongo客户端的命令自动提示功能
使用tab键
查询所有的库,默认自带三个库
...
mongodb提供一个mongo客户端,类似于mysql提供的客户端命令
/usr/local/mongodb/bin/mongo 127.0.0.1:27017
/usr/local/mongodb/bin/mongo #默认连接到127.0.0.1:27017
mongodb启动优化说明
WARNING: Using the XFS fil...
实战环境
centos7系统、64位
iptables和selinux关闭
mongodb简介
mongodb是个非关系型数据库,但操作跟关系型数据最类似。mysql是关系型数据库
mongodb是面向文档存储的非关系型数据库,数据以json的格式进行存储
mongodb可用来...
package main
import (
"fmt"
"github.com/go-redis/redis"
"time"
)
// 定义redis链接池
var RedisTest *redis.Client
// 初始化redis链接池
func init() {
RedisTest = redis.NewClient(&redis.Options...
检查连接是否正常
PING
使用客户端向 Redis 服务器发送一个 PING ,如果客户端与服务器之间的连接正常,并且服务器的运作也正常的话,那么命令将返回一个 PONG 。
通常用于测试网络连接和服务器状态,或者用于测量延迟值。
...
持久化
因为 Redis 服务器将数据储存在内存里面,而一旦服 务器被关闭、或者运行服务器的主机本身被关闭的话,储存在内存里面的数据就会消失不 见。
如果我们仅仅是将 Redis 用作缓存的话,那么这种数据丢失带来的问题并不是非常...
配置选项
Redis 服务器提供了一些配置选项(configuration option),通过修改这些选项的值,可以改变选项对应功能的行为。
举个例子,前面介绍 SELECT 命令时曾经说过,Redis 服务器默认会创建 0 号至 15 号共十六个数据库以供用...
创建用户账号
注册一个新的微博账号,有三样信息是必须的:
1. 邮箱地址,不能和已有的 邮箱地址相同(实际上也可以使用手机来注册,但 这里只考虑邮箱)。
2. 密码
3. 名字,不能和已有的名字相同。
需要解决的问题:
1. 实现...
Redis 从 2.6 版本开始在服务器内部嵌入了一个 Lua 解释器,使得用户可以在服务器端执行 Lua 脚本。
这个功能有以下好处:
1. 使用脚本可以直接在服 务器端执行 Redis 命令,一般的数据处理操作可以直接使用 Lua 语言或者Lua 解释器...
事务
Redis 的事务功能允许用户将多个命令包裹起来,然后一次性地、按 顺序地执行被包裹的所有命令。保证部分的原子性。
Redis已经子系统内部进行了功能的简化,这样可以保证更快的运行速度,因为Redis不需要事务的回滚能力。
在事...
go-redis对redis执行批量操作的类是Pipeliner,具体示例如下.
运行该示例可在redis服务端依次接收到:
MULTI
incr tx_pipeline_counter
expire tx_pipeline_counter 3600
EXEC
多条命令采用批量处理不止节省网络时...
发布与订阅功能
Redis 的发布与订阅功能可以让用户将消息同时发送给多个客户端。
这个功能由几个不同的角色 协作组成:
• 发布者(publisher):发布消息的客户端。
• 频道(channel):构建在服务器内部,负责接收发布者发送的消...
键过期功能的相关命令
设置生存时间: EXPIRE 命令和 PEXPIRE 命令。
设置过期时间: EXPIREAT 命令和 PEXPIREAT 命令。
查看剩余生存时间: TTL 命令和 PTTL 命令。
删除生存时间或过期时间: PERSIST 命令。
设置...
HyperLogLog 介绍
HyperLogLog 可以接受多个元素作为输入,并给出输入元素的基数估算值:
• 基数:集合中不同元素的数量。比如 {'apple', 'banana', 'cherry', 'banana', 'apple'} 的基数就是 3 。
• 估算值:算法给出的基数并不是...