摘要:
DB shell数据操作shell命令操作语法和JavaScript很类似,其实控制台底层的查询语句都是用JavaScript脚本完成操作的。Ø 数据库 1、Help查看命令提示helpdb.help();db.yourColl.help();db.youColl.find().help();rs.help(); 2、切换/创建数据库>use yourDB;当创建一个集合(table)的时候会自动创建当前数据库 3、查询所有数据库show dbs; 4、删除当前使用数据库db.dropDatabase(); 5、从指定主机上克隆数据库db.cloneDatabase(“127. 阅读全文
随笔档案-2012年03月
mongodb之高可用架构
2012-03-31 10:36 by xlw, 935 阅读, 收藏, 编辑
摘要:
mongoDB 高可用mongoDB支持在多个机器中通过异步复制达到故障转移和实现冗余。多机器中同一时刻只有一台是用于写操作。正是由于这个情况,为mongoDB提供了数据一致性的保障。担当主角色的机器能把读操作分发给slaves/secondaries。mongodb 高可用可用分两种* Master-Slave Replication* Replica Sets以下为两个的架构图:官网中为选择这两种架构提供了以下意见:* if using <v1.6 : master/slave* if need automatic fail-over and recovery (easy admin 阅读全文
MongoDB分片群集(windows)
2012-03-31 10:26 by xlw, 553 阅读, 收藏, 编辑
摘要:
1、准备工作C:\Documents and Settings\Administrator>d:D:\>cd D:\mongodb-win32-i386-2.0.2D:\mongodb-win32-i386-2.0.2>mkdir dataD:\mongodb-win32-i386-2.0.2>cd dataD:\mongodb-win32-i386-2.0.2\data>mkdir configD:\mongodb-win32-i386-2.0.2\data>mkdir logD:\mongodb-win32-i386-2.0.2\data>mkdi 阅读全文
MongoDB安装部署及简介
2012-03-30 17:06 by xlw, 218 阅读, 收藏, 编辑
摘要:
MongoDB安装部署及简介http://dadloveu.blog.51cto.com/715500/787517http://dadloveu.blog.51cto.com/715500/787529 阅读全文
MongoDB资料汇总专题
2012-03-30 14:19 by xlw, 467 阅读, 收藏, 编辑
摘要:
1.MongoDB是什么MongoDB介绍PPT分享MongoDB GridFS介绍PPT两则初识 MongoDB GridFSMongoDB GridFS 介绍一个NoSQL与MongoDB的介绍PPTMongoDB:下一代MySQL?写给Python程序员的MongoDB介绍又一篇给Python程序员的MongoDB教程MongoDB源码研究系列文章白话MongoDB系列文章MongoDB Tailable Cursors 特性介绍MongoDB 文档阅读笔记 —— 优雅的 NoSQLMongoDB 身上的优势和劣势auto-sharding 无用论:auto-sharding vs. m 阅读全文
Redis能干啥?细看11种Web应用场景
2012-03-30 13:54 by xlw, 482 阅读, 收藏, 编辑
摘要:
下面列出11种Web应用场景,在这些场景下可以充分的利用Redis的特性,大大提高效率。1.在主页中显示最新的项目列表。Redis使用的是常驻内存的缓存,速度非常快。LPUSH用来插入一个内容ID,作为关键字存储在列表头部。LTRIM用来限制列表中的项目数最多为5000。如果用户需要的检索的数据量超越这个缓存容量,这时才需要把请求发送到数据库。2.删除和过滤。如果一篇文章被删除,可以使用LREM从缓存中彻底清除掉。3.排行榜及相关问题。排行榜(leader board)按照得分进行排序。ZADD命令可以直接实现这个功能,而ZREVRANGE命令可以用来按照得分来获取前100名的用户,ZRANK 阅读全文
mongodb sharding cluster(分片集群)
2012-03-30 13:48 by xlw, 532 阅读, 收藏, 编辑
摘要:
MongoDB的auto-sharding功能是指mongodb通过mongos自动建立一个水平扩展的数据库集群系统,将数据库分表存储在sharding的各个节点上。通过把Sharding和Replica Sets相结合,可以搭建一个分布式的,高可用性,自动水平扩展的集群。要构建MongoDB Sharding Cluster,需要三种角色:Shard Server: mongod 实例, 使用 Replica Sets,确保每个数据节点都具有备份、自动容错转移、自动恢复能力。用于存储实际的数据块,实际生产环境中一个shard server角色可由几台机器组个一个relica set承担,防止 阅读全文
对redis数据持久化的一些想法
2012-03-29 14:23 by xlw, 384 阅读, 收藏, 编辑
摘要:
数据持久化通俗讲就是把数据保存到磁盘上,保证不会因为断电等因素丢失数据。redis需要经常将内存中的数据同步到磁盘来保证持久化。redis支持两种持久化方式,一种是 Snapshotting(快照)也是默认方式,另一种是Append-only file(缩写aof)的方式。先介绍下这两种dump方式再讲讲自己遇到的一些现象和想法,前面的内容是从网上整理出来的。Snapshotting快照是默认的持久化方式。这种方式是就是将内存中数据以快照的方式写入到二进制文件中,默认的文件名为dump.rdb。可以通过配置设置自动做快照持久 化的方式。我们可以配置redis在n秒内如果超过m个key被修改就自 阅读全文
转:一致性 hash 算法( consistent hashing )
2012-03-29 09:57 by xlw, 220 阅读, 收藏, 编辑
摘要:
最近在研究cassandra,dynamo,bigtable等no sql数据库,其中的partition算法基于consistent hashing实现添加/删除节点主机时的单调性,以及各个主机之间的loadbalance。什么是consistent hashing(一致性哈希)?我觉得这篇文章写的很好!原文地址:http://blog.csdn.net/sparkliang/archive/2010/02/02/5279393.aspxconsistent hashing 算法早在 1997 年就在论文 Consistent hashing and random trees 中被提出,目前 阅读全文
Redis在Windows下的使用
2012-03-26 15:27 by xlw, 467 阅读, 收藏, 编辑
摘要:
Windows版的Redis可到此处下载,非官方版http://code.google.com/p/servicestack/wiki/RedisWindowsDownloadRedis文件夹有以下几个文件redis-server.exe:服务程序指定redis的配置文件,如没有指定,则使用默认设置D:\redis-2.0.0-rc2>redis-server.exe redis.confredis.conf配置选项如下daemonize 是否以后台进程运行,默认为nopidfile 如以后台进程运行,则需指定一个pid,默认为/var/run/redis.pidbind 绑定主机IP, 阅读全文
Redis主从服务器
2012-03-26 15:13 by xlw, 595 阅读, 收藏, 编辑
摘要:
配置主从服务器Redis主从服务器的搭建很简单,只要少许配置即可,为了演示的方便,我们就在一台服务器上配置:前提是你已经有了一台Redis服务器,如果没有可以参考我以前的文章安装。下面看看如何配置从服务器:假设主服务器的配置文件是:/etc/redis.conf,我们复制一份作为从服务器的配置文件:cp /etc/redis.conf /etc/redis_slave.conf并作修改:# vi /etc/redis_slave.confport 6380dbfilename dump_slave.rdbslaveof 127.0.0.1 6379主服务器的端口使用的是缺省的6379,从服务器 阅读全文
Redis指令文档
2012-03-26 15:10 by xlw, 228 阅读, 收藏, 编辑
摘要:
连接控制QUIT 关闭连接AUTH (仅限启用时)简单的密码验证适合全体类型的命令EXISTS key 判断一个键是否存在;存在返回 1;否则返回0;DEL key 删除某个key,或是一系列key;DEL key1 key2 key3 key4TYPE key 返回某个key元素的数据类型 ( none:不存在,string:字符,list,set,zset,hash)KEYS pattern 返回匹配的key列表 (KEYS foo*:查找foo开头的keys)RANDOMKEY 随机获得一个已经存在的key,如果当前数据库为空,则返回空字符串RENAME oldname newname更 阅读全文
zookeeper 安装配置(三)
2012-03-23 17:19 by xlw, 5191 阅读, 收藏, 编辑
摘要:
zookeeper NIOServerCnxn: Too many connections from /10.202.50.79 - max is 60 异常解决办法 今天在对zookeeper做连接的时候,发现只能连接10个,然后开始报zookeeper NIOServerCnxn: Too many connections 错误,调试了半天看不出问题所在,后来一次跟踪调试的时候,发现zkserver 出现too many 一闪而过,才发现是zookeeper 服务端配置问题。解决方法:将最大连接数我这设置成了300,后来发现仍然提示同样的问题,最大连接数并没有起作用,根据属性提示,直接修改 阅读全文
windows服务器安全之修改远程桌面连接端口
2012-03-23 09:50 by xlw, 1514 阅读, 收藏, 编辑
摘要:
一般Web服务器放在公网上以后,有些为了方便远程操作,所以打开了远程桌面连接。这样是很不安全的,黑客在扫描到服务器开启了3389端口以后很多都是利用这个端口发起攻击。为了降低风险而又想使用远程桌面连接,一个比较简单的方法就是修改远程桌面链接的3389端口。远程桌面终端服务默认端口为"3389",为防止他人进行恶意连接,就需要对默认端口进行更改。对此可打开注册表编辑器(运行regedit),依次展开"HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tc 阅读全文
ZooKeeper配置 (二)
2012-03-22 10:43 by xlw, 10003 阅读, 收藏, 编辑
摘要:
最近针对ZK一些比较疑惑的问题,再看了一下相关代码,列举如下。这里只列官方文档中没有的,或者不清晰的。以zookeeper-3.3.3为基准。以下用ZK表示ZooKeeper。一个ZooKeeper对象,代表一个ZK Client。应用通过ZooKeeper对象中的读写API与ZK集群进行交互。一个简单的创建一条数据的例子,只需如下两行代码:ZooKeeper zk = new ZooKeeper(serverList, sessionTimeout, watcher);zk.create("/test", new byte[0], Ids.OPEN_ACL_UNSAFE, 阅读全文
分布式实时统计系统--RAINBIRD
2012-03-20 17:15 by xlw, 561 阅读, 收藏, 编辑
摘要:
最近Twitter开发了一款分布式实时统计系统Rainbird。用处Rainbird可以用于实时数据的统计:1 统计网站中每一个页面,域名的点击次数2 内部系统的运行监控(统计被监控服务器的运行状态)3 记录最大值和最小值性能要求作为大型网站的分布式应用,需要具备以下性能:1 极高的写入性能,可以达到100,000的WPS2 非常高的读取性能,可以达到10,000s的RPS3 高度的可扩展性,包括读取和存储等等,能够扩展到100+ TB的量级4 读取速度响应间隔短,绝大多数的读取速度应该不超过100ms系统组件Rainbird一款基于Zookeeper, Cassandra, Scribe, 阅读全文
开源日志系统比较
2012-03-20 15:16 by xlw, 396 阅读, 收藏, 编辑
摘要:
1. 背景介绍许多公司的平台每天会产生大量的日志(一般为流式数据,如,搜索引擎的pv,查询等),处理这些日志需要特定的日志系统,一般而言,这些系统需要具有以下特征:(1) 构建应用系统和分析系统的桥梁,并将它们之间的关联解耦;(2) 支持近实时的在线分析系统和类似于Hadoop之类的离线分析系统;(3) 具有高可扩展性。即:当数据量增加时,可以通过增加节点进行水平扩展。本文从设计架构,负载均衡,可扩展性和容错性等方面对比了当今开源的日志系统,包括facebook的scribe,apache的chukwa,linkedin的kafka和cloudera的flume等。2. FaceBook的Sc 阅读全文
安装和配置Cassandra
2012-03-20 15:02 by xlw, 432 阅读, 收藏, 编辑
摘要:
Cassandra属于最近比较流行的一款NoSQL数据库,http://nosql-database.org/中给NoSQL的定义如下:下一代的数据库产品应该具备这几点:非关系型的,分布式的,开源的,可以线性扩展的。这类数据库最初的目的在于提供现代网站可扩展的数据库解决方案。这个运动开始于2009年初,目前正在迅速的发展。这种类型的数据库具有:自由的schema,数据多处备份,简单的编程API,数据的最终一致性保证等等。所以我们将这种类型的数据库称为NoSQL(不仅仅是SQL,全称为“not only sql”)。下面我们一起来看看如果分别在Windows和Linux环境下安装和部署Cassa 阅读全文
双机冗余备份和负载均衡策略(Mysql Cluster入门安装配置指南)
2012-03-17 21:26 by xlw, 357 阅读, 收藏, 编辑
摘要:
公布几家在baidu做seo无耻公司名单: http://www.byywee.com http://www.cosdiv.com切勿上当受骗通过在自已网站加入别人网站反连接,这种网站专门对新开通的网站做反连接,从而达到宣传他们自己目的,切勿上当受骗.http://www.renrenaj.com/about/copyright.htmlMySQL Cluster 是MySQL适合于分布式计算环境的高实用、高冗余版本。它采用了NDB Cluster 存储引擎,允许在1个 Cluster 中运行多个MySQL服务器。MySQL Cluster 是一种技术,该技术允许在无共享的系统中部署“内存中” 阅读全文
微博架构
2012-03-16 14:26 by xlw, 671 阅读, 收藏, 编辑
摘要:
其实微博是一个结构相对简单,但数据量却是很庞大的一种产品.标题所说的是千万级数据量也并不是一千万条微博信息而已,而是千万级订阅关系之间发布。在看我这篇文章之前,大多数人都看过sina的杨卫华大牛的微博开发大会上的演讲.我这也不当复读机了,挑重点跟大家说一下。 大家都知道微博的难点在于明星会员问题,什么是明星会员问题了,就是刘德华来咱这开了微博,他有几百万的粉丝订阅者,他发一条微博信息,那得一下子把微博信息发布到几百万的粉丝里去,如果黎明、郭富城等四大天王都来咱来开微博,那咱小站不是死翘翘了.所以这时消息队列上场了。在我的架构里 有一个异步publish集群,publish的任务都去zerom. 阅读全文
zookeeper windows安装和使用
2012-03-15 16:42 by xlw, 3963 阅读, 收藏, 编辑
摘要:
zookeeper介绍zookeeper是一个为分布式应用提供一致性服务的软件,它是开源的Hadoop项目中的一个子项目,并且根据google发表的论文来实现的,接下来我们首先来安装使用下这个软件,然后再来探索下其中比较重要一致性算法。zookeeper安装和使用zookeeper的安装基本上可以按照 http://hadoop.apache.org/zookeeper/docs/current/ zookeeperStarted.html 这个页面上的步骤完成安装,这里主要介绍下部署一个集群的步骤,因为这个官方页面似乎讲得并不是非常详细(Running Replicated Zookeepe 阅读全文
在.NET平台下使用C#通过Thrift访问Cassandra
2012-03-15 14:43 by xlw, 1051 阅读, 收藏, 编辑
摘要:
几家做seo无耻公司名单http://www.byywee.comhttp://www.cosdiv.com通过在自已网站加入别人网站连接,这种网站专门对新开通的网站做连接,从而达到宣传他们目的,http://www.renrenaj.com/about/copyright.html1、下载Thrift两个文件:thrift-0.7.0.tar.gzThrift compiler for Windows2、获取Thrift.dll解压后,找到源代码:thrift-0.7.0\lib\csharp\src,在Visual Studio中打开Thrift.csproj,重新编译生成dll。3、生成 阅读全文
Redis 查询
2012-03-15 12:56 by xlw, 2823 阅读, 收藏, 编辑
摘要:
字符串类型是Redis中最为基础的数据存储类型,它在Redis中是二进制安全的,这便意味着该类型可以接受任何格式的数据,如JPEG图像数据或Json对象描述信息等。在Redis中字符串类型的Value最多可以容纳的数据长度是512M。 1. SET/GET/APPEND/STRLEN:/> redis-cli#执行Redis客户端工具。 redis 127.0.0.1:6379>exists mykey#判断该键是否存在,存在返回1,否则返回0。 (integer) 0 redis 127.0.0.1:6379>append mykey "hello" # 阅读全文
Redis容量及使用规划
2012-03-15 12:23 by xlw, 375 阅读, 收藏, 编辑
摘要:
在使用Redis过程中,我们发现了不少Redis不同于Memcached,也不同于MySQL的特征。(本文主要讨论Redis未启用VM支持情况)1. SchemaMySQL: 需事先设计Memcached: 无需设计Redis: 小型系统可以不用,但是如果要合理的规划及使用Redis,需要事先进行类似如下一些规划数据项: value保存的内容是什么,如用户资料Redis数据类型: 如String, List数据大小: 如100字节记录数: 如100万条(决定是否需要拆分)⋯⋯上面的规划就是一种schema,为什么Redis在大型项目需要事先设计schema?因为Redis服务器有容量限制,数据 阅读全文
thrift 安装(1)
2012-03-15 10:32 by xlw, 506 阅读, 收藏, 编辑
摘要:
thrift背景:出自facebook,2007年提交给apache 作为一个开源项目.thrift解决的问题:解决facebook的各系统间大数据量的传输通信以及系统之间语言环境不同需要跨平台的特性,所以thrift可以支持多种程序语言.thrift支持的语言: C++, C#, Cocoa, Erlang, Haskell, Java, Ocami, Perl, PHP, Python, Ruby, Smalltalk等thrift的优势:跨平台,多语言,支持二进制高性能传输,体积超小,占用带宽小thrift的劣势:必须的先确定数据结构,当数据结构发生变化是,必须重新生成代码。thrift 阅读全文
看看thrift 是怎么玩的
2012-03-14 17:53 by xlw, 732 阅读, 收藏, 编辑
摘要:
1. 基本名词 Types: 为了满足多语言平台的要求,需要提供基本数据类型来进行转换。比如在C++的Map和Python的Dict之间能够相互转换。 Transport: 对于每一种语言,都应该有一个抽象的公共层来完成对应的双向数据传输。 Protocal: 数据需要有一种方式来使用对应的传输层的code,而不用关心传输层的具体实现细节。 Versioning:数据需要有自己的版本号来实现对应的健壮性。 Processing : 产生code来完成RPC调用。2. 类型 1. Goals: 1. 使用最基本的数据类型,不管上层使用怎么样的编程语言。 2. 不使用动态数... 阅读全文
Apache Thrift入门1-架构&介绍
2012-03-14 17:26 by xlw, 308 阅读, 收藏, 编辑
摘要:
Thrift 是什么? Thrift源于大名鼎鼎的facebook之手,在2007年facebook提交Apache基金会将Thrift作为一个开源项目,对于当时的facebook来说创造thrift是为了解决facebook系统中各系统间大数据量的传 输通信以及系统之间语言环境不同需要跨平台的特性。所以thrift可以支持多种程序语言,例如: C++, C#, Cocoa, Erlang, Haskell, Java, Ocami, Perl, PHP, Python, Ruby, Smalltalk. 在多种不同的语言之间通信thrift可以作为二进制的高性能的通讯中间件,支持数据(对象) 阅读全文