|
||
|
||
|
||
|
|
|
|
||
|
||
|
|
|
<短信存储模块> 技术调研报告 北京無限立通通讯技术有限责任公司 2012年11月 更新记录 编写人 日期 版本号 变更内容 高文峰 11月16日 评审记录 日期 主要评审人 评审结论摘要 目录 目录 3 1 摘要 4 2 概述 4 2.1 调研目的 4 2.2 术语和名词解释 4 2.3 <调研技术>简述 4 3 运行环境和数据 5 3.1 运行环境 5 3.2 针对短信模块的性能要求调研相关存储软件系统性能。 概述 调研目嘚 本次调研的目的是为了了解oracle DB和mongodb和oracle产品的性能特性 术语和名词解释 Oracle DB: 甲骨文公司的一款关系数据库管理系统。 mongodb和oracle: 分布式文档存储数据库 <調研技术>简述 Oracle DB:Oracle 数据库系统是美国ORACLE公司(甲骨文)提供的以分布式数据库为核心的一组软件产品,是目前最流行的客户/服务器(CLIENT/SERVER)或B/S体系结构的數据库之一比如SilverStream就是基于数据库的一种中间件。ORACLE数据库是目前世界上使用最为广泛的数据库管理系统作为一个通用的数据库系统,它具有完整的数据管理功能;作为一个关系数据库它是一个完备关系的产品;作为分布式数据库它实现了分布式处理功能。但它的所有知識只要在一种机型上学习了ORACLE知识,便能在各种类型的机器上使用它 mongodb和oracle: 是一个基于分布式文件存储的数据库。由C++语言编写旨在为WEB应用提供可扩展的高性能数据存储解决方案。 mongodb和oracle是一个介于关系数据库和非关系数据库之间的产品是非关系数据库当中功能最丰富,最像关系数据库的他支持的数据结构非常松散,是类似json的bson格式因此可以存储比较复杂的数据类型。Mongo最大的特点是他支持的查询语言非常强大其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能而且还支持对数据建立索引。 运行环境和数据 运行环境 在短信系统中需要将千万级以上的短信数据保存起来;当短信上行和下行时对短信数据进行增删改查等操作,性能要求達到2秒之内完成操作 运行时数据(假设运行数据) <假设xx系统中,会有xx台xx服务器直接访问数据库xx请求会产生xxx/sec的写操作,xxx/sec的读操作...> <调研技術>调研内容 测试环境 4.1.1 硬件环境 1台linux服务器: spring-data-mongodb和oracle-1.1 原型设计(可选) 如果调研是以产品的原型设计为目标需要在此说明原型的设计思路,下一節中的Case则用来说明原型中需要验证的每一项内容 调研Case设计 mongodb和oracle读写测试 目的 测试500w,1000w和1500w数据量下mongodb和oracle性能。 测试过程 导入测试数据: 开启10个线程插入50w/100w/150w次。 写测试: 开启10个线程每个线程插入1w次。 读测试: 开启10个线程每个线程随机读取1w次。 读/写测试: 开启20个线程10个线程随机读取1w佽之前插入的数据,10个线程插入1w次 调研数据 每记录2K,43个字段 线程数:10 插入总数据 CPU IO(读/写,单位:kB/s) %util 耗时(单位:ms) 500万 33.34% 0/ 0万
|
|