1闪存数据库性能监控子系统的设计与实现2提纲研究背景、目的及意义数据库性能测评规范性能监控系统设计性能监控系统的实验总结与展望研究背景3闪存在许多移动设备(手机、相机和U盘等)中容量不断增大,其应用各领域日益广泛SQLite是一个应用广泛的开源数据库,其结构简单,适合开发成各种特定的数据库原型系统研究目的及意义4目的图形界面的形式展示闪存数据库系统的性能指标意义直观地展现出系统性能指标;扩展了SQLite管理工具SQLiteMan的功能返回数据库性能测评—TPC-C规范5TPC—事务处理性能委员会TPC-C—由TPC制定的专门针对OLTP的性能测试规范。TPC-C规范—商业模型6仓库商品批发商销售点客户TPC-C规范—模拟事务新订单事务(New-Order)支付事务(Payment)订单状态查询事务(Order-Status)发货事务(Delivery)库存水平查询事务(Stock-Level)7TPC-C规范—事务混合比事务类型事务最小百分比最小键盘输入时间(秒)90%事务响应时间要求(秒)最小平均思考时间分布(秒)新订单n/a18512支付43.0%3512发货4.0%255订单状态查询4.0%2510库存状态查询4.0%22058TPC-C规范—测评结果指标TPC-C性能测评的结果主要有两个指标:流量指标和性价比流量指标定义:系统每分钟执行的新订单事务个数表示:tpmC值性价比定义:系统价格与流量指标的比值表示:$/tpmC9返回10性能监控系统设计—后台数据库与界面关系图SQLite后台数据库TPC-C基准性能测试SQLiteMan11性能监控系统设计—各表数据量关系图WAREHOUSEWDISTRICTW*10STOCKW*100KITEM100KORDERW*30K+HISTORYW*30K+NEW-ORDERW*9K+ORDER-LINEW*300K+CUSTOMERW*30K10100Kw3K1+5-150-11+3+性能监控系统设计—测评程序模块数据库模块事务处理模块测试及信息统计模块信息显示模块12返回性能监控系统的实验—实验环境操作系统:ubuntu12.04操作系统数据库:SQLite-3.6.23.1服务器:Lenovoy470CPU:Intel(R)Core(TM)i3-2330CPU@2.20GHZ内存:1.6G硬盘:SATA30G语言:C++,python13性能监控系统的实验—相关软件SQLiteSQLite,是一款嵌入式数据库,是遵守ACID的关联式数据库管理系统。SQLiteManSQLiteMan是一款方便易用的图形化SQLite数据库工具,该软件有着全面的SQLite功能,适用于所有平台。QtQt是一个1991年由奇趣科技开发的平台的C++图形用户界面应用程序开发框架。14性能监控系统的实验—主要参数--print-config生成系统配置文件后退出--configCONFIG配置文件路径--warehousesW仓库数,默认为1--durationD持续时间,默认为60s--no-load不执行加载数据--no-execute不执行运行操作15性能监控系统的实验—实验步骤16生成配置文件python./tpcc.py–-print-configsqlitesqlite.config数据库生成并加载数据python./tpcc.py--no-execute--config=sqlite.configsqlite执行性能评估python./tpcc.py--no-load--config=sqlite.configsqlite性能监控系统的实验—结果及分析17测评结果tpmC=Executed(NEW_ORDER)*60*1000/Time(TOTAL)=7306*60*1000/3591697=122个/min性能监控系统的实验—结果及分析测评结果分析18事务类型百分比DELIVERY4.0%NEW_ORDER45.29%ORDER_STATUS3.91%PAMENT42.72%STOCK_LEVEL4.11%系统资源使用及分析—CPU1920个仓库1个仓库19系统资源使用及分析—内存2020个仓库1个仓库20界面显示21SQLiteMan主界面数据库管理界面测评结果显示返回总结&展望总结:初步实现了磁盘上对SQLite数据库的TPC-C基准测试,并将测试结果显示到SQLiteMan扩展界面上下一步工作计划:实现页面级的闪存数据库性能测试2223谢谢!Pleasecommentsandsuggestions