mongoDB——前序(NoSQL)

MongoDB是非关系型数据库的一种。在进入mongoDB的学习之前,我们先来了解一下非关系型数据库(NoSQL)。        一、NoSQL的产生             随着web2.0的兴起,特别是超大规模和高并发的网站对数据库提出了进一步的需求(大数据量引发的一系列问题),而关系型数据库面对这些新的需求,显得有些力不从心,例如:             1. 面对数据库高并发读写
阅读本文

mongoDB——简介

通过上篇博客应该对NoSQL有了一定的理解,NoSQL数据库也是有很多种的,接下来主要学习其中的MongoDB数据库。      一、简介      mongoDB是一个开源的,基于分布式的,面向文档存储的非关系型数据库。是非关系型数据库当中功能最丰富、最像关系数据库的。      mongoDB可以运行在Windows、unix、OSX、Solaris系统上,支持32位和64位应用,提供多种编程
阅读本文

阿铭带你学linux第五期教程

腾讯的运维工程师讲解的linux运维课程,第五期的完整视频,老师讲解注重实战,知识点讲解清楚易懂,是入门linux运维的好教程。 课程可在线观看,但是请下载到本地,这样会更加清晰,附带配套教材: 第一阶段课程Linux系统初讲 Linux系统精讲 Linux系统提高 Linux平台日常运维管理 Shell编程入门 第二阶段课程 LAMP架构搭建与优化 LNMP架构搭建与优化 Li
阅读本文

mongoDB——主从复制介绍及简单实现

mongoDB有一个主要特性就是复制,有多种复制形式,其中,主从复制是比较常用的一种。       主从复制的工作原理:首先要有两个或更多的服务器,其中一个是主节点,负责处理客户端的请求,其他的都是从节点,负责映射主节点的数据。主节点记录在其上执行的所有操作,从节点定期轮询主节点获得的这些操作,然后执行这些操作。由于从节点和主节点执行了相同的操作,从节点就能保持与主节点的数据同步。      简单
阅读本文

mongoDB——通过客户端理解mongoDB体系结构

通过之前的博客,我们了解了NoSQL,MongoDB的一些基本概念,其中,被提到最多的是mongoDB的存储理念:面向文档的存储、模式自由,还有集合、文档等名词,在没有接触mongoDB之前,可能觉得这些名词比较抽象,下面,我们通过对mongoDB的CRUD操作,借助可视化工具mongoVUE来看一下mongoDB中的结构,相信一定会对理解这些基本概念有更形象的认识。      通过shell命令
阅读本文

Redis非关系型数据库(上)

Redis是众多非关系型数据库中常用的一种,经常安装在Linus系统上使用,这样我们就不能误认为redis只能运行在Linux系统上,同样在Windows系统下可是可以的,只是安装执行的步骤有些不同。相比之下在Linux系统下更加容易操作而已。    Redis是开源的,使用C语言编写而成,是高性能的Key-Value数据库,它的开发工作由VMnare主持。【关系型数据库VS非关系型数据库
阅读本文

大型网站技术核心原理与案例分析

网站性能优化第一定律:优先考虑使用缓存优化性能1.大型互联网应用系统特点高并发,大流量: 高并发用户,大流量访问。高可用: 系统7*24小时不间断服务。海量数据: 存储管理海量数据,需要使用大量服务器。用户分布广泛,网络情况复杂: 大型互联网为全球用户提供服务。安全环境恶劣: 互联网的开放性,更容易受到攻击。需求快速变更,发布频繁: 互联网产品为快速适应市场,满足用户需求,产品发布频
阅读本文

MongoDB 3.4 高可用集群搭建(二)replica set 副本集

NoSQL的产生就是为了解决大数据量、高扩展性、高性能、灵活数据模型、高可用性。但是光通过主从模式的架构远远达不到上面几点,由此MongoDB设计了副本集和分片的功能。 mongoDB官方已经不建议使用主从模式了,替代方案是采用副本集的模式: 那什么是副本集呢? 由图可以看到客户端连接到整个副本集,不关心具体哪一台机器是否挂掉。主服务器负责整个副本集的读写,副本集定期同步数据备份,
阅读本文

MongoDB 3.4 高可用集群搭建(三)shard 分片

数据压力大到机器支撑不了的时候能否做到自动扩展? 在系统早期,数据量还小的时候不会引起太大的问题,但是随着数据量持续增多,后续迟早会出现一台机器硬件瓶颈问题的。而MongoDB主打的就是海量数据架构,他不能解决海量数据怎么行!不行!“分片”就用这个来解决这个问题。 传统数据库怎么做海量数据读写?其实一句话概括:分而治之。上图看看就清楚了,如下 taobao岳旭强在infoq
阅读本文

Redis学习笔记之NoSQL

前段时间学习了尚硅谷周阳老师的教学视频,顺便记录一些想记下来的东西 NoSQL的概念 NoSQL(NoSQL = Not Only SQL ),意即“不仅仅是SQL”,泛指非关系型的数据库。随着互联网web2.0网站的兴起,传统的关系数据库在应付web2.0网站, 特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题,而非关系型的数据库则由于其本
阅读本文

告别 MongoDB 2.x 拥抱 3.x 版本的5大理由

据不完全统计,目前还有很多同学在生产环境使用着 MongoDB 2.x 版本的服务,偶尔也会听到一些抱怨,但有些抱怨其实很没道理,因为抱怨的问题在最新版本的MongoDB里已经解决了,你缺的只是一次版本升级。1. 更安全的数据库3.x 版本默认WriteConcern 为{w:1},2.x 较早的版本为 {w: 0}3.x 默认使用更安全的 SCRAM-SHA-1 算法鉴权,代替了2.x 版本默认
阅读本文

[译]Redis大冒险

一篇对使用Redis在NoSQL的世界中冒险之旅的总结。 The legs of our journey 像每次出发一样,先对我们这次的旅程路线做个介绍: 探索之一:Redis? What is it? 简而言之,Redis是一种强大的key-value数据库,之所以强大有两点:响应速度快(所以数据内存存储,只在必要时写入磁盘),特性丰富(支持多种数据类型,以及各类型上的复杂操作)。
阅读本文

HBase--阿里未来发展

最近家里没网络,在公司加班写哈博客。HBase是一个开源的非关系型分布式数据库(NoSQL),基于谷歌的BigTable建模,是一个高可靠性、高性能、高伸缩的分布式存储系统,使用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群。 未来发展随着2016天猫双十一的GMV定格在1207亿,HBase的大促目标圆满完成,然而完美的结果只是开始,阿里HBase团队追求卓越的心永远不会变
阅读本文

BOM对象以及方法极简介

前几天面试,在做笔试题的时候遇到了题目为“列出并简述dom对象及其常用方法(每种对象写出一个即可),例如:location对象,常用方法有href:获得当前地址。”的面试题,当时有点懵逼;总想着题目好像不太对,但是自己对这方面的基础打得不牢,准备亦不足,没有敢点明题目错误之处。回家查询资料后发现的确题目的“dom对象”应该是改为“bom对象”,再此重新复习一遍BOM的最基本概念与知识(也警示下自
阅读本文

应对表扩展的一列

需求缘起产品第一版:用户有用户名、密码、昵称等三个属性,对应表设计:user(uid, name, passwd, nick)第二版,产品经理增加了年龄,性别两个属性,表结构可能要变成:user(uid, name, passwd, nick, age, sex) 假设数据量和并发量比较大,怎么变?(1)alter table add column?不太可行,锁表时间长(2)新表+触发器?如果数据
阅读本文

.NET/C# 开源资源收集

RPC(Remote Procedure Call Protocol)远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。 Microsoft .NET Remoting 提供了一种允许对象通过应用程序域与另一对象进行交互的框架,一种分布式处理方式。 MES(Manufacturing Execution System)系统即制造企业生产
阅读本文

编程思想之——人是活的,程序是死的

“人是活的,程序是死的“这句话我时常提起,可能很多人不是很理解我为什么会这样说,下面我就简单来谈谈我对这句话的理解。1.不要因为技术而技术,技术选型的初衷是需求。现在很多人在做项目的时候,开口就提项目用的NoSql、大数据处理、分布式系统等等技术。技术真的这么重要吗?技术在软件开发过程中的地位是不言而喻的,但是一个项目选择合适的技术去实现是很有必要,也是一个很好的学习机会。比如做一个简单的人事管理
阅读本文

【GraphView】GraphView用户手册翻译——GraphView 介绍

GraphView 介绍 什么是GraphViewGraphView 是一个用扩展SQL语言在数据表中存储和查询图数据的、基于SQL Server或者微软云Azure SQL DB实例的类库。GraphView不是一个独立的数据库,而是一个接受图数据操作语言并转化成SQL Server和Azure SQL Database 能运行的T-SQL语言的中间件。所以GraphView可以被看作一个连接到
阅读本文

HTML5 本地数据库IndexedDB数据库

在HTML 5中,新增一种被称为indexedDB的数据库,该数据库是一种存储在客户端本地的NoSQL数据库。window.indexedDB=window.indexedDB||window.webkitIndexedDB||window.mozIndexedDB||window.msIndexedDB;window.IDBTransaction=window.IDBTransaction||w
阅读本文