Mongodb内存数据库

本文涉及的产品
云数据库 MongoDB,通用型 2核4GB
简介: Mongodb内存数据库的实现

Mongodb的商业版本已经支持内存数据库,但是没有开源,从其官网说明来看,其实也是通过WiredTiger存储引擎实现的.我对mongodb代码做了一些修改,基于官方(r3.2.16)分支,使其成为内存数据库,配置文件上和官网的类似.关于mongodb支持内存数据库的说明见: https://docs.mongodb.com/manual/core/inmemory/#storage-inmemory

代码github地址: https://github.com/yanglimingchn/mongo

如下是我做的一点压力测试结果:
硬件配置:
cpu: Intel(R) Xeon(R) CPU E5-2620 0 @ 2.00GHz 24核心
mem: 125g
测试数据:
测试使用的是ycsb工具,配置文件如下

# Yahoo! Cloud System Benchmark
# Workload A: Update heavy workload
#   Application example: Session store recording recent actions
#                        
#   Read/update ratio: 50/50
#   Default data size: 1 KB records (10 fields, 100 bytes each, plus key)
#   Request distribution: zipfian

recordcount=15728640
operationcount=1000000
workload=com.yahoo.ycsb.workloads.CoreWorkload

readallfields=true

readproportion=1
updateproportion=0
scanproportion=0
insertproportion=0

requestdistribution=zipfian

测试对比了mongodb内存数据库和redis

并发连接数 mongodb Throughput(ops/sec) redis Throughput(ops/sec)
100 36818.85125184094 35942.779095679674
200 36255.528968167644 36824.274561791135
300 35865.432895775055 36490.969406561
400 35217.46786406057 35547.97198819807
500 34995.62554680665 33195.02074688797

mongodb与redis的配置文件见附件,测试的时候都只是单实例,没有从节点.

相关实践学习
MongoDB数据库入门
MongoDB数据库入门实验。
快速掌握 MongoDB 数据库
本课程主要讲解MongoDB数据库的基本知识,包括MongoDB数据库的安装、配置、服务的启动、数据的CRUD操作函数使用、MongoDB索引的使用(唯一索引、地理索引、过期索引、全文索引等)、MapReduce操作实现、用户管理、Java对MongoDB的操作支持(基于2.x驱动与3.x驱动的完全讲解)。 通过学习此课程,读者将具备MongoDB数据库的开发能力,并且能够使用MongoDB进行项目开发。   相关的阿里云产品:云数据库 MongoDB版 云数据库MongoDB版支持ReplicaSet和Sharding两种部署架构,具备安全审计,时间点备份等多项企业能力。在互联网、物联网、游戏、金融等领域被广泛采用。 云数据库MongoDB版(ApsaraDB for MongoDB)完全兼容MongoDB协议,基于飞天分布式系统和高可靠存储引擎,提供多节点高可用架构、弹性扩容、容灾、备份回滚、性能优化等解决方案。 产品详情: https://www.aliyun.com/product/mongodb
目录
相关文章
|
1月前
|
NoSQL 网络协议 MongoDB
Windows公网远程连接MongoDB数据库【无公网IP】
Windows公网远程连接MongoDB数据库【无公网IP】
|
1月前
|
存储 NoSQL 关系型数据库
一篇文章带你搞懂非关系型数据库MongoDB
一篇文章带你搞懂非关系型数据库MongoDB
55 0
|
1月前
|
人工智能 NoSQL MongoDB
|
2月前
|
SQL NoSQL Java
文档型数据库MongoDB
文档型数据库MongoDB
|
2月前
|
JSON NoSQL MongoDB
MongoDB详解(五)——MongoDB数据库简单使用
MongoDB详解(五)——MongoDB数据库简单使用
105 1
|
2月前
|
存储 NoSQL Linux
MongoDB详解(四)——MongoDB数据库安装
MongoDB详解(四)——MongoDB数据库安装
67 2
|
2月前
|
NoSQL 关系型数据库 MySQL
Windows、Linux、Mac安装数据库(mysql、MongoDB、Redis)#0
不同系统下进行MySQL安装、MongoDB安装、Redis安装【2月更文挑战第5天】
440 5
Windows、Linux、Mac安装数据库(mysql、MongoDB、Redis)#0
|
3月前
|
存储 JSON NoSQL
【MongoDB】<文档型数据库>Windows&Liunx安装MongoDB(无错完整)
【1月更文挑战第26天】【MongoDB】<文档型数据库>Windows&Liunx安装MongoDB(无错完整)
|
3月前
|
机器学习/深度学习 自然语言处理 NoSQL
|
3月前
|
存储 JSON NoSQL
在官网免费创建一个云mongoDB数据库
MongoDB的设计目标是提供高性能、高可用性、可扩展性和易用性。它采用了文档存储模型,将数据以类似JSON的BSON(Binary JSON)格式存储,并且支持动态模式,允许应用程序更灵活地存储和查询数据。MongoDB还支持水平扩展,可以在集群中添加更多的节点以处理更大的数据量和请求负载。
65 0