本月博客排行
-
第1名
龙儿筝 -
第2名
johnsmith9th -
第3名
wy_19921005 - zysnba
- sgqt
- lemonhandsome
- sichunli_030
年度博客排行
-
第1名
宏天软件 -
第2名
青否云后端云 -
第3名
龙儿筝 - gashero
- wallimn
- vipbooks
- benladeng5225
- wy_19921005
- fantaxy025025
- e_e
- zysnba
- ssydxa219
- sam123456gz
- javashop
- arpenker
- tanling8334
- kaizi1992
- xpenxpen
- wiseboyloves
- xiangjie88
- ranbuijj
- ganxueyun
- sichunli_030
- xyuma
- wangchen.ily
- jh108020
- lemonhandsome
- zxq_2017
- jbosscn
- Xeden
- johnsmith9th
- luxurioust
- lzyfn123
- zhanjia
- forestqqqq
- ajinn
- nychen2000
- wjianwei666
- hanbaohong
- daizj
- 喧嚣求静
- silverend
- mwhgJava
- kingwell.leng
- lchb139128
- lich0079
- kristy_yy
- jveqi
- java-007
- sunj
最新文章列表
【赵强老师】使用Oracle的目录数据库Catalog DataBase
一、什么是目录数据库?
你可能从其他人或书上听过RMAN恢复目录(也有可能是其他名字,RMAN Recovery Catalog的翻译较多较杂,以下简称恢复目录),旁人的表达或书中模糊不清的描述,导致很多朋友一直对其实际意义和作用感到疑惑。在我看来,可以将其视作存储RMAN备份恢复相关信息的数据库(在物理形式上可以对应成Oracle中的一个SCHEMA)。 当没有恢复目录时,RMAN ...
【赵强老师】NoSQL数据库之Cassandra基础
一、Cassandra简介
Cassandra是一个混合型的非关系的数据库,类似于Google的BigTable。其主要功能比Dynamo (分布式的Key-Value存储系统)更丰富,但支持度却不如文档存储MongoDB(介于关系数据库和非关系数据库之间的开源产品,是非关系数据库当中功能最丰富,最像关系数据库的。支持的数据结构非常松散,是类似json的bjson格式,因此可以存储比较复杂的 ...
【赵强老师】MongoDB中的索引(下)
(四)索引的类型三:复合索引(Compound Index)
MongoDB支持复合索引,即将多个键组合到一起创建索引。该方式称为复合索引,或者也叫组合索引,该方式能够满足多键值匹配查询使用索引的情形。其次复合索引在使用的时候,也可以通过前缀法来使用索引。MongoDB中的复合索引与关系型数据库基本上一致。在关系型数据库中复合索引使用的一些原则同样适用于MongoDB。
在前面的内容 ...
【赵强老师】MongoDB中的索引(上)
索引是提高查询查询效率最有效的手段。索引是一种特殊的数据结构,索引以易于遍历的形式存储了数据的部分内容(如:一个特定的字段或一组字段值),索引会按一定规则对存储值进行排序,而且索引的存储位置在内存中,所在从索引中检索数据会非常快。如果没有索引,MongoDB必须扫描集合中的每一个文档,这种扫描的效率非常低,尤其是在数据量较大时。
一、索引的基础知识
下面以关系型数据库Oracle为例,介绍 ...
【赵强老师】在MongoDB中使用MapReduce方式计算聚合
MapReduce 能够计算非常复杂的聚合逻辑,非常灵活,但是,MapReduce非常慢,不应该用于实时的数据分析中。MapReduce能够在多台Server上并行执行,每台Server只负责完成一部分wordload,最后将wordload发送到Master Server上合并,计算出最终的结果集,返回客户端。 MapReduce的基本思想,如下图所示:
在这个例子中,我们以一个求和为 ...
【赵强老师】Redis的慢查询日志
Redis慢查询日志帮助开发和运维人员定位系统存在的慢操作。慢查询日志就是系统在命令执行前后计算每条命令的执行时间,当超过预设阀值,就将这条命令的相关信息(慢查询ID,发生时间戳,耗时,命令的详细信息)记录下来。
Redis客户端一条命令分为如下四部分执行:
需要注意的是,慢查询日志只是统计步骤3)执行命令的时间,所以慢查询并不代表客户端没有超时问题。需要注意的是,慢查询日志只是统 ...
【赵强老师】Redis的RDB持久化
Redis 提供了多种不同级别的持久化方式:
RDB 持久化可以在指定的时间间隔内生成数据集的时间点快照(point-in-time snapshot)。
AOF (Append-only file)持久化记录服务器执行的所有写操作命令,并在服务器启动时,通过重新执行这些命令来还原数据集。 AOF 文件中的命令全部以 Redis 协议的格式来保存,新命令会被追加到文件的末尾。 Redis ...
【赵强老师】MySQL高可用架构:MHA
MHA(Master HA)是一款开源的 MySQL 的高可用程序,它为 MySQL 主从复制架构提供了 automating master failover 功能。MHA 在监控到 master 节点故障时,会提升其中拥有最新数据的 slave 节点成为新的master 节点,在此期间,MHA 会通过于其它从节点获取额外信息来避免一致性方面的问题。MHA 还提供了 master 节点的在线 ...
【赵强老师】MongoDB管理用户的认证机制
一、MongoDB用户认证机制简介
为了认证客户端,你必须要添加一个对应的用户到MongoDB。基本的步骤分为以下几步:
用户管理接口:db.createUser()方法可以创建一个用户,添加完成后可以分配角色给用户,第一个用户必须是管理员,用来管理其他用户。你也可以更新存在的用户,必须修改密码和权限。
认证数据库:当添加一个用户后,你在某个指定的数据库中添加该用户,那么这个数 ...
【赵强老师】什么是PL/SQL?
一、什么是PL/SQL?
PL/SQL(Procedure Language/SQL)是oracle在标准的sql语言上的扩展。ql/sql不仅允许嵌入sql语言,还可以定义变量和常量,允许私用条件语句和循环语句,允许使用例外处理各种错误,这使得它的功能变得更加强大。
PL/SQL开发工具主要有:
SQL*PLUS开发工具。SQL*PLUS是oracle公司提供的一个命令行工具,我们可 ...
【赵强老师】在MongoDB中使用游标
一、什么是游标?
游标(Cursor)是处理数据的一种方法,为了查看或者处理结果集中的数据,游标提供了在结果集中一次一行或者多行前进或向后浏览数据的能力。
游标实际上是一种能从包括多条数据记录的结果集中每次提取一条记录的机制。游标可以被看作是一个查询结果集(可以是零条、一条或由相关的选择语句检索出的多条记录)和结果集中指向特定记录的游标位置组成的一个临时文件,提供了在查询结果集中向前或向后 ...
【赵强老师】Redis的消息发布与订阅
Redis 作为一个publish/subscribe server,起到了消息路由的功能。订阅者可以通过subscribe和psubscribe命令向Redis server订阅自己感兴趣的消息类型,当发布者通过publish命令向Redis server发送特定类型的消息时。订阅该消息类型的全部client都会收到此消息。这里消息的传递是多对多的。一个client可以订阅多个channe ...
【赵强老师】使用MongoDB的命令行工具:mongoshell
一、启动mongo shell
安装好MongoDB后,直接在命令行终端执行下面的命令:
mongo
如下图所示:
可选参数如下:
也可以简写为:
在mongo shell中使用外部编辑器,如:vi,只需设置环境变量:
export EDITOR=vi
启动mongo shel即可。下面我们在mongoshell中编辑一个函数:
定义函数:
...
【赵强老师】Redis案例分析:用setbit统计活跃用户
一、需求背景
首先,我们来看一下需求:网站统计用户登录的次数,具体如下:
网站有1亿个用户,有经常登录的,也有不经常登录的
如何来记录用户的登录信息
如何查询活跃用户:比如:一周内,登录3次的
二、使用传统的关系型数据库
我们使用传统的关系型数据库(比如:Oracle)来存储这样的数据,如下图所示。
每周产生7亿条数据,对于任何一个关系型数据库来说,都是非常不好维护的, ...
【赵强老师】MongoDB的inMemory存储引擎
一、MongoDB的存储引擎概述
存储引擎(Storage Engine)是MongoDB的核心组件,负责管理数据如何存储在硬盘(Disk)和内存(Memory)上。从MongoDB 3.2 版本开始,MongoDB 支持多数据存储引擎(Storage Engine),MongoDB支持的存储引擎有:WiredTiger,MMAPv1和In-Memory。从MongoDB 3.2 版本开始 ...
【赵强老师】使用MongoDB的Web控制台
MongoDB可以通过web界面监控数据库,默认情况下该选项是关闭的,需要在启动的时候开启。启用web 控制台,需要在启动mongodb的时候,加上:--httpinterface
启动MongoDB,观察输出的日志信息:
使用浏览器访问28017端口,即可看到MongoDB的Web Console界面。
最近博客热门TAG
Oracle(49876) MySQL(37268) SQL Server(17623) Access(9329) DB2(4271) Redis(3181) Sybase(2414) 数据挖掘(2098) MongoDB(2014) SQLite(1817) PostgreSQL(1635) HBase(1492) NoSQL(1000) HSQLDB(620) Informix(581) Derby(578) Cassandra(375) PowerBuilder(333) CouchDB(113) TokyoCabinet(87)