本文目录导航:
MongoDB 或许 redis 可以代替 memcached 吗
mongodb和memcached不是一个领域内的物品。
mongodb是文档型的非相关型数据库,其好处在于查问性能比拟弱小,能存储海量数据。
mongodb和memcached不存在谁交流谁的疑问。
和memcached更为凑近的是redis。
它们都是内存型数据库,数据保留在内存中,经过tcp间接存取,好处是速度快,并发高,缺陷是数据类型有限,查问性能不强,普通用作缓存。
在咱们团队的名目中,一开局用的是memcached,起初用redis代替。
相比memcached:1、redis具有耐久化机制,可以活期将内存中的数据耐久化到硬盘上。
2、redis具有binlog性能,可以将一切操作写入日志,当redis产生缺点,可依照binlog启动数据复原。
3、redis允许virtual memory,可以限定内存经常使用大小,当数据超越阈值,则经过相似LRU的算法把内存中的最不罕用数据保留到硬盘的页面文件中。
4、redis原生允许的数据类型更多,经常使用的构想空间更大。
5、前面有位好友所提及的分歧性哈希,用在redis的sharding中,普通是在负载十分高须要水平裁减时经常使用。
咱们还没有用到这方面的性能,普通的名目,单机足够撑持并发了。
redis 3.0将推出cluster,性能愈增弱小。
6、redis更多好处,请移步官网网站查问。
有哪些轻型的非相关型数据库?
经常出现的非相关型数据库有:1、mongodb;2、cassandra;3、redis;4、hbase;5、neo4j。
其中mongodb是十分驰名的NoSQL数据库,它是一个面向文档的开源数据库。
经常出现的几种非相关型数据库:1、MongoDBMongoDB是最驰名的NoSQL数据库。
它是一个面向文档的开源数据库。
MongoDB是一个可伸缩和可访问的数据库。
它在c++中。
MongoDB雷同可以用作文件系统。
在MongoDB中,Javascript可以作为查问言语经常使用。
经过经常使用sharding MongoDB水平伸缩。
它在盛行的Javascript框架中十分有用。
人们真的很享用分片、初级文本搜查、gridFS和map-reduce性能。
惊人的性能和新个性使这个NoSQL数据库在咱们的列表中名列第一。
特点:提供高性能;智能分片;运转在多个主机上;允许主从复制;数据以JSON样式文档的方式存储;索引文档中的任何字段;由于数据被搁置在碎片中,所以它具有智能负载平衡性能;允许正则表白式搜查;在失败的状况下易于治理。
好处:易于装置MongoDB;MongoDB Inc.为客户提供专业允许;允许暂时查问;高速数据库;无形式数据库;横向裁减数据库;性能十分高。
缺陷:不允许衔接;数据量大;嵌套文档是有限的;参与不用要的内存经常使用。
2、CassandraCassandra是Facebook为收件箱搜查开发的。
Cassandra是一个用于解决少量结构化数据的散布式数据存储系统。
理论,这些数据散布在许多普通主机上。
您还可以参与数据存储容量,使您的服务坚持在线,您可以轻松地成功这项义务。
由于集群中的一切节点都是相反的,因此不须要解决复杂的性能。
Cassandra是用Java编写的。
Cassandra查问言语(CQL)是查问Cassandra数据库的一种相似sql的言语。
因此,Cassandra在最佳开源数据库中排名第二。
Facebook、Twitter、思科(Cisco)、Rackspace、eBay、Twitter、Netflix等一些最大的公司都在经常使用Cassandra。
特点:线性可伸缩;;坚持极速照应期间;允许原子性、分歧性、隔离性和耐久性(ACID)等属性;经常使用Apache Hadoop允许MapReduce;调配数据的最大灵敏性;高度可伸缩;点对点架构。
好处:高度可伸缩;无单点缺点;Multi-DC复制;与其余基于JVM的运行程序严密集成;更适宜少数据核心部署、冗余、缺点转移和劫难复原。
缺陷:对聚合的有限允许;无法预知的性能;不允许特意查问。
3、RedisRedis是一个键值存储。
此外,它是最驰名的键值存储。
Redis允许一些c++、PHP、Ruby、Python、Perl、Scala等等。
Redis是用C言语编写的。
此外,它是依据BSD授权的。
特点:智能缺点转移;将其数据库齐全保留在内存中;事务;Lua脚本;将数据复制到恣意数量的附属主机;钥匙的寿命有限;LRU驱逐钥匙;允许颁布/订阅。
好处:允许多种数据类型;很容易装置;十分快(每秒口头约11万组,每秒口头约次);操作都是原子的;多用途工具(在许多用例中经常使用)。
缺陷:不允许衔接;存储环节所需的Lua常识;数据集必定很好地顺应内存。
4、HbaseHbase是一个散布式的、面向列的开源数据库,该技术起源于 Fay Chang 所撰写的Google论文“Bigtable:一个结构化数据的散布式存储系统”。
就像Bigtable应用了Google文件系统(File System)所提供的散布式数据存储一样,Hbase在Hadoop之上提供了相似于Bigtable的才干。
Hbase是Apache的Hadoop名目标子名目。
Hbase不同于普通的相关数据库,它是一个适宜于非结构化数据存储的数据库。
另一个不同的是Hbase基于列的而不是基于行的形式。
5、neo4jNeo4j被称为原生图数据库,由于它有效地成功了属性图模型,不时到存储层。
这象征着数据齐全依照白板的方式存储,数据库经常使用指针导航和遍历图。
Neo4j有数据库的社区版和企业版。
企业版包括Community Edition必定提供的一切性能,以及额外的企业需求,如备份、集群和缺点转移性能。
特点:它允许惟一的解放;Neo4j允许完整的ACID(原子性、分歧性、隔离性和耐久性)规定;Java API: Cypher API和本机Java API;经常使用Apache Lucence索引;繁难查问言语Neo4j CQL;蕴含用于口头CQL命令的UI: Neo4j>mongodb是相关型数据库吗
MongoDB是非相关型数据库。
MongoDB的文档数据模型提供了更高的灵敏性和可裁减性,由于它可以轻松地顺应复杂的数据结构。
这种灵敏性使得MongoDB十分适宜用于Web运行程序、移动运行程序和大数据运行程序。
此外,MongoDB还提供了丰盛的查问言语和索引性能,使得数据查问和检索十分繁难和高效。
MongoDB经常使用原理:
所谓“面向汇合”,意思是数据被分组存储在数据集中,被称为一个汇合。
每个汇合在数据库中都有一个惟一的标识名,并且可以蕴含有限数目标文档。
汇合的概念相似相关型数据库里的表,不同的是它不须要定义任何形式。
NytroMegaRAID技术中的闪存高速缓存算法,能够极速识别数据库内大数据集中的热数据,提供分歧的性能改良。
形式自在,象征着关于存储在mongodb数据库中的文件,咱们不须要知道它的任何结构定义。
假设须要的话,你齐全可以把不同结构的文件存储在同一个数据库里。
存储在汇合中的文档,被存储为键-值对的方式。
键用于惟一标识一个文档,为字符串类型,而值则可以是各种复杂的文件类型。
咱们称这种存储方式为BSON。
以上内容参考:网络百科-mongodb