Chinaunix

标题: 工作中你使用过哪些内存数据库? [打印本页]

作者: stay_sun    时间: 2015-06-04 10:06
标题: 工作中你使用过哪些内存数据库?
获奖名单已公布:http://bbs.chinaunix.net/thread-4181371-1-1.html

火热的内存数据库已经成为现在火热的技术,你在生产中使用那种内存数据库。
背景:

互联网火热的发展,我们用什么来提升客户的用户体验呢,有研究表明,人们打开网页的等待时间为5s,他不会感觉很慢
如果时间超过20s基本上客户已经不能等待。基本上都已经给更换网页。
大家都知道内存是硬盘的速度的无数倍。目前io是主要的瓶颈,因为机械硬盘的转速是已经达到极限。服务器硬盘15000转,厂商已经没有办法加快了。
用内存来读取数据可以完成用户的体验。
目前各大厂商都拼自己的内存数据库oracle 有in-momery SAP HANA 开源社区有 redis memcache

讨论:
   1 你在工作中使用了什么内存数据库?
   2 你对目前的集中数据库对比怎么样?
   3 众所周知在软件的选型方面,还是适合的场景才能发挥出速度。你觉得在什么场景下适合哪种数据库?

讨论时间:
2015-06-4至2015-06-30


活动奖励:
活动结束后将选取3名讨论精彩的童鞋,每人赠送一本《NoSQL数据库技术实战 》作为奖励。


奖品简介:

商品名称:NoSQL数据库技术实战 计算机与互联网 null 正版图书
作者:皮雄军           
市场价:69元
ISBN号:87302380399
出版社:清华大学出版社
商品类型:图书


内容简介:


本书由浅入深,全面系统地介绍了NoSQL系统。本书既对NoSQL系统的理论进行了深入浅出的分析,又介绍了每一种NoSQL数据库在业界广泛应用的一个具体系统,理论与实战并重。本书共分5篇,12章。涵盖的内容有:NoSQL与大数据简介、NoSQL的数据一致性、NoSQL的水平扩展与其他基础知识、BigTable与Google云计算原理、Google云计算的开源版本——Hadoop、Dynamo:Amazon的高可用键值对存储、LevelDb——出自Google的Key-Value数据库、Redis实战、面向文档的数据库CouchDB、MongoDB实战、MySQL基础、MySQL高级特性与性能优化。



样章试读: 061183-01 NoSQL数据库技术实战.rar (2.81 MB, 下载次数: 195)


作者: heguangwu    时间: 2015-06-04 13:57
   1 你在工作中使用了什么内存数据库?
      内存数据库使用过VoltDB社区版

   2 你对目前的集中数据库对比怎么样?
      集中数据库是指什么,MySQL?这个基本上没怎么对比,不差钱就oracle,省钱MySQL,分析可以考虑postgreSQL也可以

   3 众所周知在软件的选型方面,还是适合的场景才能发挥出速度。你觉得在什么场景下适合哪种数据库?
     技术才是选型的基础,你的团队熟悉什么才能选什么,否则出问题就蛋疼了
作者: lsstarboy    时间: 2015-06-04 21:36
最近正好做了查成绩的个小项目,要求按考号、姓名、验证码查询,一开始考虑用redis,但是由于要进行逻辑判断,所以现成的nginx模块都不是太好用,而我只会php,所以又绕到php。
但是测试了几个数据库,包括redis,效果都不是很理想,E1230,8G内存,82574l网卡,只能跑到5000次/秒左右,最后没办法,换成了apc和xcache自带的内存存储(忘了确切的名词了,类似于memcached)上面,虽然仅能存储k-v型的数据,但是对这个项目来说足够了,最终测试接近13000次/秒,瓶颈还在网卡跟不上,本机127.0.0.1的测试能达到10W以上,基本上达到了预期的效果。

究其原因,一方面数据库驱动会变慢一点;另一方面,数据库要处理一些额外的事情,而apc之类的东西是直接存储变量,显得更轻巧;还有一个重要的因素,apc等以模块的形式直接放在php的程序空间内,不需要在进程、socket之间切换,所以在速度上会比数据库还要好一些。
但是带来的问题是一些数据库的功能不好实现,比如排序、条件查询之类,只好自行写程序处理,好在我这个项目中这方面的要求不高,不会频繁操作,再加上10万条数据全扫描一遍也就不到1s,简单用数组的功能凑合着了。
作者: lyhabc    时间: 2015-06-04 23:38
讨论:
   1 你在工作中使用了什么内存数据库?
   2 你对目前的集中数据库对比怎么样?
   3 众所周知在软件的选型方面,还是适合的场景才能发挥出速度。你觉得在什么场景下适合哪种数据库?

漏了sqlserver2014的in-memory OLTP 和内存优化表
1、mongodb和redis
2、没有怎麽对比,不过貌似nosql比关系数据库强
3、简单的缓存或者日志使用nosql,但是涉及关系的还是使用关系数据库

作者: stay_sun    时间: 2015-06-05 09:17
回复 4# lyhabc


    其实没有什么强不强的问题 都是适合什么场景的问题
作者: shjhcx    时间: 2015-06-05 14:06
支持活动
作者: xkf01    时间: 2015-06-05 15:34
提示: 作者被禁止或删除 内容自动屏蔽
作者: xkf01    时间: 2015-06-05 15:43
提示: 作者被禁止或删除 内容自动屏蔽
作者: xkf01    时间: 2015-06-05 15:45
提示: 作者被禁止或删除 内容自动屏蔽
作者: xkf01    时间: 2015-06-05 15:49
提示: 作者被禁止或删除 内容自动屏蔽
作者: niao5929    时间: 2015-06-08 07:09
这话题值得讨论,帮顶起来
作者: realmon    时间: 2015-06-09 14:35
memcached, redis 算吗
作者: stay_sun    时间: 2015-06-09 15:39
回复 12# realmon


    必须算啊
作者: xiaojie83_cu    时间: 2015-06-09 17:03
好书,支持楼主!
作者: jieforest    时间: 2015-06-09 22:45
1 你在工作中使用了什么内存数据库?
业界内存数据库有很多,这几年就我开发过的项目而言,使用了Memcached、Redis、H2、MemSQL这几个,而且目前这些项目都已上线,长期运行。
严格来说,Memcached不算数据库,缓存就是缓存,就为了加速业务的读性能。
Redis在我们的业务中应用较广,我们使用它同样做了缓存、业务的计数器、动态口令等等。
有一个小业务开发周期短,时间紧,我做主选用了H2数据库,并让它完全跑在内存中,关系型,结果证明了H2也很稳定,性能也不错。
MemSQL目前我们开发的业务也在使用,你可以把它看成是MySQL跑在内存中,在研发过程和实际上线的期间,我们遇到了不少坑,都一一顺利解决。

2 你对目前的集中数据库对比怎么样?
业务数据不大的时候,使用集中式数据库是很合适的。

3 众所周知在软件的选型方面,还是适合的场景才能发挥出速度。你觉得在什么场景下适合哪种数据库?
正如我在前面谈的那些,可以作为数据库选型的一点参考。欢迎与我探讨。

作者: hiyachen    时间: 2015-06-13 23:51
1 你在工作中使用了什么内存数据库?
工作中redis用于处理网站的mysql的IO缓存。
memcahed用于处理网页数据缓存(并发量不大的情况下)。

   2 你对目前的集中数据库对比怎么样?
集中数据库(integrated data store):分布式数据库的一种表现方式即物理上分布式,逻辑上集中即用关系型或非关系型DB来分别处理处理不同形式的数据。
目前对于日志和文档用mongodb和hbase,对于统计结果及汇总分析等还是用OracleRAC和Mysql分布式集群。

   3 众所周知在软件的选型方面,还是适合的场景才能发挥出速度。你觉得在什么场景下适合哪种数据库?
最近在做审计系统,大的规模用mongodb存储日志,小的规模用mysql存储审计结果。对于数据库更加注重内核和云计算中和虚拟环境下的应用。
作者: hiyachen    时间: 2015-06-14 00:25
数据库代理:pgbouncer   download.chinaunix.net/download/0014000/13304.shtml
作者: sxcong    时间: 2015-06-15 18:50
本帖最后由 sxcong 于 2015-06-15 18:51 编辑

1 你在工作中使用了什么内存数据库?
最早用bsddb,后来用memcached,现在用redis比较多。不过,mongodb似乎也可以算是内存数据库。

2 你对目前的集中数据库对比怎么样?
“集中数据库”这个说法比较模糊。如果集中是针对分布式来说的,那现在小规模的数据库应用还是集中的,但稍稍有一点规模的正式运营的软件项目或web项目,基本都是分布式,在提高性能和安全方面,以及备份方面都比较方便。

3 众所周知在软件的选型方面,还是适合的场景才能发挥出速度。你觉得在什么场景下适合哪种数据库?
的确,合适的场景用合适的数据库,比如,现在web项目,大都用redis保存session,但是,很多企业的ERP CRM等项目,一般几十人在线,虽然处理数据的量比较大,但用mysql处理完全来的及。兵无常势 水无常形,一切从实际出发。当然,对于开发和设计人员,平时要注意积累经验,用的时候可以很快做出一个合适的方案。

作者: stay_sun    时间: 2015-06-16 15:50
回复 18# sxcong


    其实数据库 美誉好坏 只有适不适合
作者: wlmqgzm    时间: 2017-08-29 14:22
比Redis,memcache更快的KV数据库欢迎使用,软件下载地址  http://www.haisql.com/fwzc/soft/
软件开发过程介绍在本论坛中有介绍,http://bbs.chinaunix.net/thread-4244870-1-1.html

比redis快N倍,毕竟redis是单线程的,比memcache也快, 查询性能现在只受限于物理内存带宽,
没有那个内存数据库能够做到这麽快。
与memcache指令集兼容,也支持简单事务和磁盘落地存储,欢迎使用。




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2