非关系型数据库
整理常见的几类非关系型数据库的安装和使用方式。包括Redis、MongoDB、Cassandra等。
清平乐的技术博客
学如逆水行舟,不进则退。
展开
-
Linux安装部署MongoDB 3.6(十步完成安装和使用)
Linux环境:基于centos7安装mongoDB3.6版本的社区版mongoDB安装。1.官网下载安装包社区版下载地址:https://www.mongodb.com/try/download/community一般你会看到下面的两种界面,操作是一样的。下载好可以用传输工具上传,也可以直接用步骤2,用wget下载2.、进入到/opt/下 执行下载[root@mail ~]# cd /opt/[root@mail opt]# wget https://fastdl.mongodb.org原创 2020-06-17 19:41:47 · 2076 阅读 · 2 评论 -
Python实现MySQL到MongoDB数据库的数据同步
一、数据准备MySQL 5.7--创建数据库CREATE DATABASE test01;-- 建表语句CREATE TABLE `saleorder` ( `order_id` int(11) NOT NULL, `order_time` date DEFAULT NULL, `order_num` int(11) DEFAULT NULL, PRIMARY KEY (`order_id`) USING BTREE) ENGINE=InnoDB DEFAULT CHARSET原创 2020-05-25 16:31:52 · 706 阅读 · 2 评论 -
【Cassandra】 数据存储结构
Cassandra 的数据模型是基于列族(Column Family)的四维或五维模型。它借鉴了 Amazon 的 Dynamo 和 Google’s BigTable 的数据结构和功能特点,采用 Memtable 和 SSTable 的方式进行存储。在 Cassandra 写入数据之前,需要先记录日志 ( CommitLog ),然后数据开始写入到 Column Family 对应的 Memtable 中,Memtable 是一种按照 key 排序数据的内存结构,在满足一定条件时,再把 Memtable原创 2020-05-25 14:39:23 · 1352 阅读 · 0 评论 -
【Cassandra】CQL查询语句的特殊规则
表结构:CREATE TABLE employee( name TEXT, age SMALLINT, phone TEXT, bornDate DATE, createDate timestamp, PRIMARY KEY ((bornDate),name, age,phone, createDate)) WITH compression = { 'chunk_length_in_k原创 2020-05-23 16:38:33 · 4010 阅读 · 0 评论 -
【Cassandra】数据类型和基础语法
1.cassandra的数据类型CQL提供了一组丰富的内置数据类型,包括集合类型。除了这些数据类型,用户还可以创建自己的自定义数据类型。(1)普通类型:(2)集合类型:list 列表(或称数组)是一个或多个有序元素的集合。map 地图是键值对的集合。set 集合是一个或多个元素的集合。(3)自定义2.键空间操作-- 查看所有键空间DESCRIBE KEYSPACES;--创建键空间CREATE KEYSPACE test01 WITH replication = {'class'原创 2020-05-23 16:16:41 · 4337 阅读 · 0 评论 -
【Cassandra】简介和windows安装
一、简介这里引用百度百科的介绍:Cassandra 是一套开源分布式 NoSQL 数据库系统。它最初由 Facebook 开发,用于储存收件箱等简单格式数据,集 GoogleBigTable 的数据模型与 Amazon Dynamo 的完全分布式的架构于一身 Facebook 于 2008 将 Cassandra 开源,此后,由于 Cassandra 良好的 可扩展性,被 Digg、Twitter 等知名 Web 2.0 网站所采纳,成为了一种流行的分布式结构化数据存储方案。简单来说,就是一个分布原创 2020-05-21 09:15:32 · 780 阅读 · 0 评论 -
大数据常用非关系型数据库汇总(NoSQL)
通常数据库分为关系型数据库和非关系型数据库,关系型数据库的优势到现在也是无可替代的,比如MySQL、Oracle、SQL Server、DB2、SyBase、Informix、PostgreSQL以及比较小型的Access等等数据库,这些数据库支持复杂的SQL操作和事务机制,适合小量数据读写场景;但是到了大数据时代,人们更多的数据和物联网加入的数据已经超出了关系数据库的承载范围。大数据时代初期,随着数据请求并发量大不断增大,一般都是采用的集群同步数据的方式处理,就是将数据库分成了很多的小库,每个数据库的数原创 2020-05-17 18:55:36 · 7505 阅读 · 0 评论 -
数据库学习04_Redis操作
数据库学习04–NoSQL和Redis一、非关系型数据库(NoSQL)1.简介NoSQL(NoSQL = Not Only SQL ),意即”不仅仅是SQL”。NoSQL用于超大规模数据的存储。(例如谷歌或Facebook每天为他们的用户收集万亿比特的数据)。这些类型的数据存储不需要固定的模式,无需多余操作就可以横向扩展。所以非关系型数据库更适合大数据!2.关系型数据库遵循...原创 2019-11-10 15:21:04 · 311 阅读 · 0 评论 -
关系型数据库和非关系型数据库的原则
一、关系型数据库——ACID规则事务在英文中是transaction,和现实世界中的交易很类似,它有如下四个特性:(1)A (Atomicity) 原子性原子性很容易理解,也就是说事务里的所有操作要么全部做完,要么都不做,事务成功的条件是事务里的所有操作都成功,只要有一个操作失败,整个事务就失败,需要回滚。比如银行转账,从A账户转100元至B账户,分为两个步骤:1)从A账户取100元;2)...原创 2019-11-09 13:46:08 · 855 阅读 · 0 评论 -
Redis数据库笔记01_NoSQL非关系型数据库
要学习Redis 之前首先必须要搞懂什么是非关系型数据库,因为Redis数据库是非关系型数据库的代表。1.简介NoSQL(NoSQL = Not Only SQL ),意即"不仅仅是SQL"。NoSQL用于超大规模数据的存储。(例如谷歌或Facebook每天为他们的用户收集万亿比特的数据)。这些类型的数据存储不需要固定的模式,无需多余操作就可以横向扩展。所以非关系型数据库更适合大数据!2....原创 2019-07-06 10:21:40 · 273 阅读 · 0 评论 -
Redis数据库笔记02_各系统安装和运行命令
一、Redis系统介绍1.Redis(REmote DIctionary Server)数据库是一个由Salvatore Sanfilippo写的key-value存储系统。 是一个基于内存的数据库,**以字典的键值对形式,键值对,**根据键立马就可以得到值。计算机里面,有内存,有硬盘文件都在硬盘中存放,代码在运行的时候,有一个变量a。内存:读写快,但是断电消失,容量不大硬盘:读写慢,但是可...原创 2019-07-06 10:32:42 · 251 阅读 · 0 评论 -
Redis数据库笔记03——五种数据类型
Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。1.String(字符串)string 是 redis 最基本的类型,一个 key 对应一个 value。redis 的 string 可以包含任何数据。比如jpg图片或者序列化的对象。string 类型是 Redis 最基本的数据类型,str...原创 2019-07-06 11:46:24 · 241 阅读 · 0 评论 -
Redis数据库笔记04——常用键命令
Redis数据库知识04——常用键命令具体的键应用实例请查看菜鸟教程链接序号命令及描述1DEL key 该命令用于在 key 存在时删除 key。2DUMP key 序列化给定 key ,并返回被序列化的值。3EXISTS key 检查给定 key 是否存在。4EXPIRE key seconds 为给定 key 设置过期时间,以秒计。5...原创 2019-07-06 14:15:52 · 356 阅读 · 0 评论 -
Redis数据库笔记05——常用字符串命令
set key value 创建键值对 get key 获取键 getrange key start end 字符串提取,字符串从0开始,包含start和end getset key value 设置key的值,返回的是旧值,新值会设置成功 setex key seconds value 设置key的值,过期时间为seconds,如果存在...原创 2019-07-06 16:30:17 · 161 阅读 · 0 评论 -
Redis数据库笔记06——哈希常用指令
hset key field value 给对应的key设置属性和属性值 hsetnx key field value 该key中不存在的field才设置为value hget key field 获取指定key的field属性 hdel key field1 field2 删除对应key中指定的属性 hexists key field 对应的key中是否存在这个属性...原创 2019-07-06 16:31:31 · 238 阅读 · 0 评论 -
Redis数据库笔记07——列表常用命令
lpush key value1 value2 依次将value1和value2从左边插入到队列key中 lrange key start stop #注意没有lget,列表需要拿的是范围 依次的显示队列key中从start开始到stop结束的所有元素 start 0。。。。 stop -1代表最后一个 lpushx key value 当队列key存在的时候才...原创 2019-07-06 16:33:38 · 155 阅读 · 0 评论 -
MongoDB笔记02_数据库结构和基础crud
一、和MySQL的对应关系MySQLMongoDB数据库数据库数据表集合(collection)一行数据文档(document)字段键二、数据库基础操作1、创建数据库 语法:use 数据库名 注意:如果数据库不存在则创建数据库,否则切换到指定的数据库 注意:如果刚刚创建的数据库不在列表内,如果要显示它,我们需要向...原创 2019-07-08 10:18:21 · 213 阅读 · 0 评论 -
MongoDB数据库笔记06——用python操作mongo数据库
一、安装库和导包pip install pymongofrom pymongo import MongoClient二、连接服务器端口号 27017连接MongoDB连接MongoDB我们需要使用PyMongo库里面的MongoClient,一般来说传入MongoDB的IP及端口即可,第一个参数为地址host,第二个参数为端口port,端口如果不传默认是27017。 conn ...原创 2019-07-08 11:15:19 · 334 阅读 · 0 评论 -
mongodb与sql语句对比
上边是mongodb查询语句,下边是sql语句。对照着用,挺方便。db.users.find() select * from users db.users.find({"age" : 27}) select * from users where age = 27 db.users.find({"username" : "joe", "age" : 27}) select...原创 2019-07-08 15:36:00 · 1617 阅读 · 0 评论 -
MongoDB数据库笔记04——文档操作
一、插入文档方式一:使用insert()方法插入文档语法:db.集合名.insert(文档)插入一个:db.student.insert({name:"刘欢", age:19,address:"北京", isDelete:0})语法:db.集合名.insert([文档1, 文档2, ……, 文档n])插入多个:db.student.insert([{name:"马德华", age:1...原创 2019-07-08 10:54:40 · 302 阅读 · 0 评论 -
MongoDB数据库笔记05——几款可视化工具(附下载链接)
例如,最近我需要为收集的大量网站进行分类。实际情况是,一个网站可能同时有多个标签,想象一下新浪网,它既是门户站点,也是社区站点,还是新闻、军事的热门站点。传统的关系型数据库需要使用从表来记录这些类别标签,而使用Mongodb就不会有这个问题,而且按照类别筛选站点非常方便,后面我将详细解释。下面,是几款Mongodb的可视化工具MongoBooster下载地址:http://mongoboos...原创 2019-07-08 11:02:18 · 2134 阅读 · 0 评论 -
MongoDB数据库笔记03——集合增删改查
1.查看集合查看当前数据库下有哪些集合 show collections 或者show tables2.创建集合方式一: 语法:db.createCollection("集合名") 示例:db.createCollection("class") 方式二: 语法:db.集合名.insert(文档) 示例:db.student.i...原创 2019-07-08 10:37:45 · 262 阅读 · 0 评论 -
Redis数据库笔记13——设置密码和取消密码
一、临时设置密码 获取密码 config get requirepass 设置密码 config set requirepass 123456 当有密码的时候登录时需要密码登录 auth 密码 取消密码 config set requirepass ''设置好密码此时登录不输密码会报错二、永...原创 2019-07-08 09:52:50 · 9711 阅读 · 6 评论 -
Redis数据库笔记12——用Python操作Redis
1.安装库和导包redis的操作命令及时代码也是函数pycharm安装三方库===pip install redis(全小写)导入redis import redis2.连接数据库import redis# 连接redis数据库'''host : 主机port : 端口号db : 数据库password : 密码'''r = redis.StrictRedis(h...原创 2019-11-15 13:49:42 · 1133 阅读 · 0 评论 -
Redis数据库学习11_两种持久化机制
Redis是一种高级key-value数据库。数据可以持久化,而且支持的数据类型很丰富。有字符串,列表,集合和有序集合。支持在服务器端计算集合的交、并、补集(difference)等,还支持多种排序功能。所以Redis也可以被看成是一个数据结构服务器。一、什么是持久化Redis的所有数据都是保存在内存中,然后不定期的通过异步方式保存到磁盘上(这称为“半持久化模式”);也可以把每一次数据变化都写...原创 2019-07-08 09:38:27 · 180 阅读 · 0 评论 -
Redis数据库笔记10——命令补充
指令参考手册;redisdoc.com1.创建===set创建一个邮箱172.18.182.114:6379> set email zhang@123.comOK2.获取===get返回 key 所关联的字符串值。如果 key 不存在那么返回特殊值 nil 。假如 key 储存的值不是字符串类型,返回一个错误,因为 GET 只能用于处理字符串值172.18.182.114...原创 2019-07-06 16:41:12 · 477 阅读 · 0 评论 -
Redis数据库笔记09——有序集合常用指令
有序集合zadd key score member 将分值为score的成员member加入到有序集合key中 zcard key 得到集合key中元素的个数 zcount key start stop 得到集合key中分值在start到stop之间的元素的个数 闭区间 [start stop] 这个写分值 zincrby key number member 给集合...原创 2019-07-06 16:38:32 · 278 阅读 · 0 评论 -
Redis数据库笔记08——set集合常用指令
集合集合具有无序性、唯一性 sadd key value1 value2 value3 往集合key中插入多个值 scard key 得到集合中元素的个数(注意不是用length) smembers key 查看集合key中所有的元素 sdiff key1 key2 key3 保留key1中key2和key3没有的元素 key1不变,结果返回给你 sdiffst...原创 2019-07-06 16:36:22 · 231 阅读 · 0 评论 -
MongoDB笔记01_各系统中的安装步骤
一、认识MongoDBMongoDB也是一个数据库,是一个NoSQL,非关系型数据库, 直接保存在硬盘中,保存的数据类似json格式,字典格式 MongoDB开源免费,你可以去官网下载安装包还有文档,文档写了如何安装和使用,但是都是英文看不懂,而且这个源码包下载不下来。支持-windows、linux、mac二、 安装MongoDB默认MongoDB监听的端口是270171.window...原创 2019-07-08 10:10:13 · 250 阅读 · 0 评论