自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(199)
  • 收藏
  • 关注

原创 客户需求重于你的简历

客户需求重于你的简历工程师有的时候推荐技术,理念以及方法论来解决问题,这是有原因的,在内心深处仅仅是想丰富自己的简历,而并不是解决问题最佳之道。因此这样的心态很少能有好的结果。对于职业生涯最为骄傲的应该是,一大堆高兴的客户乐于推荐你,那是因为对于他们和项目,你做了正确的决定。这种声誉要比知道几门语言几门技术好得多。最重要的 甚至最新的趋势和技术,不应该消耗客户的成本。最重要的是要知道你的...

2011-09-12 00:38:33 201

原创 MongoDB 优化

优化一个简单的例子这部分主要讲解如何优化MongoDB的性能。让我们举个具体示例。假使我们的任务是现实blog的首页-我们希望现实最近发布的10条posts。ts为时间字段。语句如下articles = db.posts.find().sort({ts:-1}); // get blog posts in reverse time orderfo...

2011-04-12 15:44:55 161

原创 MongoDB Schema Design 数据库设计

介绍使用MongoDB设计数据库,就不要按照关系型数据库的思维来做,如范式化数据。因为MongoDB不支持服务端的join查询。一般来说,在对于顶端的对象都要用单独的collection进行存储。当然不需要望每个对象都要创建一个collection。可替代的策略是使用嵌入对象(embed object)。例子,在下面的图,有两个collection。分别是stud...

2011-04-11 19:26:31 607

原创 MongoDB 合法的键的名称Legal Key Names

合法的键的名称Legal Key Names键的名称有下面的限制: '$' 字符不能作为首字母。不能包含'.' 字符

2011-04-11 17:05:27 267

原创 MongoDB Inserting 插入数据

MongoDB Inserting 插入数据当我们要向MongoDB插入数据,数据格式就是document。document的数据结构和JSON基本一样。Python的dictionaries和ruby的hashes都是例子。 这个部分主要讲解MongoDB数据的插入。Document-Orientation面向文档面向文档的数据库存储docum...

2011-04-11 16:51:13 174

原创 MongoDB 关于索引的建议

MongoDB 关于索引的建议我们收到了很多关于索引的问题。这一部分解答了其中的一小部分。有几点要记住。第一,MongoDB索引和MySQL索引非常相似并且对于MySQL的索引优化有很多也适用于MongoDB。 第二,更重要的是,这些索引的建议对你的应用提高也是有限的。对于应用的最佳索引策略应该基于很多的重要因素。包含了你期望查询的类型,数...

2011-04-11 15:20:09 224

原创 MongoDB Multikeys(多个键)

Multikeys(多个键)MongoDB提供了 "multikey" 的特性可以自动索引数组每个元素。一个好的例子就是关于Tagging。假使一篇文章的tag$ dbshell> db.articles.save( { name: "Warm Weather", author: "Steve", ...

2011-04-11 11:57:33 1032

原创 MongoDB 后台中操作索引

MongoDB 后台中操作索引从服务器或者复制集的次服务器(Slaves and Secondaries)总是在前段来做索引的操作。 即使在主服务器设置参数background:true,当在 the slave/secondary创建索引的时候,仍然不能够提供查询服务。默认请款下 ensureIndex() 操作是阻塞的, 以及在操作完成之...

2011-04-11 11:24:49 356

原创 使用 Multikeys 模拟大数量的索引

使用 Multikeys 模拟大数量的索引数据如果有非常多的属性,可以使用multikey索引的特性。举例> x = {... _id : "abc",... cost : 33,... attribs : [... { color : 'red' },... { ...

2011-04-11 10:26:56 133

原创 MongoDB 索引

索引Indexes索引常常用来大幅度的提升查询的性能。 考虑应用程序的查询种类是非常重要的事情,因此你就要定义相关的索引。决定了之后,在MongoDB中创建索引是非常简单的。基础索引就是collection中一个document指定一个字段值的数据结构。MongoDB查询优化器可以使用这个数据结构快速分类整理以及排序document。一般来说,索引...

2011-04-11 03:12:58 73

原创 使用MongoDB GridFS的场景

使用MongoDB GridFS的场景这个页面还在更新中。。。使用GridFS的场景大量的文件。GridFS操作大量的文件(以千为单位)比很多文件系统要好。用户上传的文件。当用户上传了很多文件,并且希望把这些文件进行复制和备份。GridFS是存储这些文件的绝佳方案。你可以像管理数据那样管理文件。 你也可以按照用户,上传日期等条件来...

2011-04-09 14:19:13 339

原创 MongoDB GridFS

GridFSGridFS是MongoDB存储大文件的一个规范。所有的官方支持的驱动都实现了 GridFS spec.基本原理数据库支持在BSON对象内的二进制存储。然而BSON对象在MongoDB中限制大小了(老版本是4MB,1.7+为16MB)。GridFS规范提供了一个把大文件分为一些document的机制。可以存储大的对象,主要是大的文件,如视频...

2011-04-07 14:34:05 91

原创 MongoDB 使用大数据量的collection

使用大数据量的collection.在MongoDB存储信息用多个collection来替代一个collection。这样做每个重复的数据不必存在每个对象中,并且也不必再这个键上创建索引了。更重要的是性能,可以通过指定组来分布数据。举个例子,假使我们要存储日志。并且有N种类型,如dev,debug,ops等。我们用一个collection来存储。{ ...

2011-04-07 13:07:42 763

原创 MongoDB Capped Collections

Capped CollectionsCapped collections 就是固定大小的collection。 它有很高的性能以及队列过期的特性(过期按照插入的顺序). 有点和 "RRD" 概念类似。Capped collections是高性能自动的维护对象的插入顺序。它非常适合类似记录日志的功能。 创建一个 Capped Collection和标...

2011-04-07 10:44:56 190

原创 MongoDB 聚集 Collections

聚集CollectionsMongoDB collections就是一组document的命名。你可以把collection等同于关系型数据库中的表。细节一个MongoDB聚集是一些BSON document的集合。通常来说,这些documents结构都是相同的,但是由于MongoDB是schema-free数据库,所以这个条件也不是必须的。你可以在一个col...

2011-04-06 16:56:48 122

原创 MongoDB 验证命令(Validate Command)

验证命令(Validate Command)使用这个命令来验证collection是否有效并且做多种分析。这个命令会扫描整个collection和它的索引并且数据集较大的时候,这个过程是非常缓慢的。MongoDB Shell执行:> db.foo.validate(){"ns" : "test.foo" , "result" : "v...

2011-04-06 15:12:47 827

原创 MongoDB 查看和终止当前操作(Viewing and Terminating Current Operation)

查看当前进程的操作> db.currentOp();> // same as: db.$cmd.sys.inprog.findOne(){ inprog: [ { "opid" : 18 , "op" : "query" , "ns" : "mydb.votes" ,"query" : "{ score : 1.

2011-04-06 15:00:49 674

原创 MongoDB Last Error 命令

Last Error Commands当写入数据库,MongoDB默认的情况下不会响应结果。但是MongoDB提供了命令来保证这些操作是成功的。当在safe的模式下保存和更新数据库,一些驱动就会自动调用这些命令。我们这详细讲解getlasterror是如何运行的。getlasterrorgetlasterror是验证最后一次连接数据库操作。可以通过以下几种方式...

2011-04-06 14:38:41 523

原创 MongoDB 索引的命令 Index-Related Commands

 索引的命令创建索引ensureIndex() 是创建索引便捷方法。 它的实现其实就是创建一个索引添加到system.indexes这个collection中。> use test> db.myCollection.ensureIndex(<keypattern>);> // same a...

2011-04-03 13:25:02 83

原创 MongoDB 同步命令 fsync Command

fsync Command注意,只支持1.3+版本fsync命令允许我们刷新所有等待写入的操作刷新到数据文件中。更重要的是,它提供了锁的选项,这样会使备份更为简单。 fsync 命令强行将数据库刷新到数据文件中:> use admin> db.runCommand({fsync:1});这个...

2011-04-02 13:53:26 614

原创 MongoDB 复制数据库 Clone Database

复制数据库Clone DatabaseMongoDB有一个命令可以在不同的服务器之间拷贝数据库。// 从一个服务器复制一个完整的数据库到以一个服务器。忽略 <from_hostname> //是在同一服务器之间进行数据库复制// 这个命令必须运行于复制目标的服务器上。db.copyDatabase(<from_dbnam...

2011-04-02 10:33:12 894

原创 MongoDB里的database

 数据库每个MongoDB服务器都支持多个数据库。每个数据库都是互相独立的并且 每个数据库存储的数据也都是独立的。一个数据库由一个或者多个collection组成。document(object)保存在这些collection中, 以及我们可以对数据库进行权限控制。...

2011-04-01 23:34:26 94

原创 MongoDB的命令

 命令介绍MongoDB数据库有一个数据库命令的概念(database command)。数据库命令让让数据库执行特殊操作的一个方法,或者请求目前操作的状态的信息。发送到数据库的一个命令,实际上是对名称为$cmd的collection的一个查询。数据库命令的结果就是使用findOne()返回一个单独的document。语法如下:d...

2011-04-01 23:30:38 103

原创 MongoDB的连接

连接ConnectionsMongoDB是数据库服务器: 它运行在前端或者后端等待用户的连接. 当你启动MongoDB,会看到如下结果:~/$ ./mongod## some logging output#Tue Mar 9 11:15:43 waiting for connections on port 27017Tue Ma...

2011-04-01 17:45:44 202

原创 关于MongoDB 版本号的规则

 MongoDB 使用 奇数版本号作为开发版本。MongoDB主要有三个A,B,C版本A 是主要版本. 功能上要么不变要么就做很大的改动。B 是发行版本号. 这种版本经常更新功能,包括一些新的特性并且常常不向后兼容。偶数是稳定版本,奇数是开发版本。C 版本号是用来修改BUG和安全性。For example:1.0.0 : 第一个发行版。...

2011-03-31 10:04:09 638

原创 MongoDB 1.8 Release Notes

 1.8 Release NotesMongoDB1.8是取代1.6的升级版.升级很简单,只要停掉旧的mongod,启动新的mongod就可以了。*要注意的是,你应该更新最新的MongoDB客户端驱动1.8版本中,MapReduce命令有所改变, 对前一版本已经不兼容了。如果你使用MapReduce, 请查看如下文档Map Reduce Outpu...

2011-03-30 22:35:34 290

原创 MongoDB 1.6 Release Notes

1.6 Release NotesMongoDB是1.4版本一个升级. 升级很简单,只要停掉旧的mongod,启动新的mongod就可以了。* 要注意的是,你应该更新最新的MongoDB客户端驱动。所有的驱动都提供了连接replica sets的功能。数据分片(Sharding)Sharding 现在可以试用于产品环境了, 它可以使MongoDB水平扩展, 而...

2011-03-30 10:28:40 93

原创 MongoDB 1.4 Release Notes

 1.4 Release Notes我们很兴奋的宣布MongoDB 1.4终于release了。1.4主要取代1.2。升级非常简单,只要停掉mongodb,之后再重新启动新的版本mongod。1.4版本在1.2基础之上做了如下提升核心服务器(Core Server)的增强concurrency并发的提升索引内存的提升支持后台...

2011-03-30 00:37:45 294

原创 MongoDB 1.2.x Release Notes

 1.2.x Release Notes新特性每个collection支持多个索引提升创建索引的速度Map/Reduce存储javascript函数可配置同步时间很多小特性的添加与修复升级DB的必备条件如果版本<=1.0.x,需要进行一些更改。如果已经使用>=1.1.x,就不需要更改了。有两个方法...

2011-03-29 23:35:53 63

原创 MongoDB快速指南

获取MongoDB数据库请看这篇文章快速 体验MongoDB-windows版本 http://xiayuanfeng.iteye.com/blog/978729连接数据库这部分让我们通过MongoDB shell来操作数据库. (我们也可以使用各种语言的MongoDB的驱动.  shell是非常方便系统管理员操作的环境)启动MongoDB Shell环境...

2011-03-29 17:17:37 54

原创 MongoDB快速体验-windows版本

 下载安装MongoDB最简单的方法就是安装提前编译好的二进制版本。32-bit二进制包Download 并且解压缩。推荐选择产品版本。64-bit二进制包Download 并且解压缩注意:如果是64bit机器和操作系统,推荐下载和使用64bit的MongoDB。Unzip解压缩压缩文件到你想要安装的目录,最好给MongoDB目录命名,推荐...

2011-03-29 14:45:33 71

原创 MongoDB的设计哲学

 MongoDB的设计哲学数据库的用途越来越面向特别的需求与业务了 - 一个数据库满足所有的需求已经不适用了。减少了传统DB提供的事务,能使性能飞速提升并且水平扩展也更为简单。document的数据模型(JSON/BSON)更容易去编写, 容易去管理(schemaless),并且 把数据聚合在一起更能提升性能。一个非关系型数据库更容易进行水平扩展。...

2011-03-29 14:20:19 95

原创 MongoDB 介绍

简介 MongoDB并不是在实验室中的环境中设计的。我们是根据构建可伸缩,高可用,灵活系统的实际经验来构建MongoDB。我们并不是从头开始的,我们要去发现问题并去解决。因此我设想如果你要取代MySQL以及要改变关系模型,你可以选择MongoDB,并获得很多很好的特性:为了速度而优化的嵌入文档(embedded docs),可管理的,灵活schema数据库的敏捷开发,因为没有join,所以更加...

2011-03-29 11:37:48 102

web爬虫

这篇文章主要是对web爬虫有个大概的认知。 概览web爬虫web爬虫主要功能是从web中发现,下载以及存储内容。广泛应用于各种搜索引擎中。一个典型的web爬虫主要由以下的部分组成: 能被爬虫识别的URL库。文档下载模块,主要用于从web中下载内容。文档解析模块,用于解析下载文档中的内容,如解析HTML,PDF,Word等等。这个模块还要提取网页中的URL和一些对于...

2010-11-20 02:18:08 169

关于Google I/O的意义

一直以来对GOOGLE I/O这个大会的意义,不知所谓。。通过昨晚的熬夜观看GOOGLE I/O的大会,得知了I/O的意义 Vic Gundotra介绍了I/O的意义 WEB的精神协作的精神包容性创新开放当然考虑程序员:当开始编程的时候,程序员第一次要学的就是输入和输出INPUT/OUTPUT=I/O创新(innovation)和开放(Open)=I/O...

2010-05-20 20:42:47 167

原创 实践是检验真理的唯一标准 (转)

原文如下http://news.xinhuanet.com/politics/2008-05/09/content_8138077.htm 

2010-05-10 09:32:29 126

索引 - 概念上的索引文档(Conceptual document model)

在我们详细讲述Lucene索引API之前,来看看概念模型的内容。首先我们先从Lucene索引和搜索的基础单位开始,文档和字段(Documents and Fields),然后再看看Lucene和现代数据库模型的一些重要不同。 文档和字段一个文档是索引用来索引和搜索的最小单位。它实际上是一个包含很多字段的容器,依次保存了真正的内容。每个字段都有一个名字来区分它,一个文本或二进制值,以及一...

2010-03-29 16:26:27 100

索引 - 前言

此章的基本内容如下概念上的索引模型索引的基本操作在索引的时候,提升文档(Document)和字段(Field)的权重索引日期,数字和搜索结果排序的字段(Field)了解和使用影响索引性能和资源消耗的参数优化索引理解并发(Concurrency),多线程和锁的问题高级的索引功能你想要在硬盘中搜索已存储的文件,或者搜索邮件,网页,甚至是数据库中的数据。Lucen...

2010-03-29 11:26:45 127

节约用水

从小受到的教育就是要节约用水,但是并没有切身感受到什么叫缺水。这次中国大旱,原因各种,天灾人祸。但看到干旱的情况还是很触目惊心的。人活在这个世界上就是争夺稀缺资源的过程,水资源同样如此,一个工程 ,一些人有水喝了,有水用了。但却使另一部分人无水可喝,无水可用。 我生活在北京,并没有体会到干旱对我自身的影响。我改变不了什么,但是我唯一能做的就是节约用水。 希望2012年,上帝,众神,...

2010-03-26 16:38:29 119

MySQL数据库远程复制

MySQL常用功能。从本地复制到远程服务器或者从远程服务器复制到本地。 远程服务器复制到本地 mysqldump --user=YOURNAME --password=YOUR_PASSWORD --host=YOUR_HOST --opt YOUR_DATABASE|mysql --user=YOUR_NAME --password=YOUR_PASSWORD -C YOUR_D...

2010-03-22 10:35:25 450

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除