s****s 发帖数: 15 | 1 【 以下文字转载自 Stock 讨论区 】
发信人: zuihan (前按摩店忠实股东), 信区: Stock
标 题: 说一下nosql和mongodb
发信站: BBS 未名空间站 (Sun Jan 6 14:22:58 2019, 美东)
之前研究数据库存储引擎的时候,大概了解过mongodb,现在生产环境中也有在用
mongodb,大概100多个instance吧
总的来说,是好产品
产品很solid,是c++写的,处理大数据有很完善的解决方案,集群功能可以直接上生产
环境(oracle,db2基本就是靠这个功能赚钱),但是mongodb不收你一分钱。从3.0开始基
本没有坑,只要用好了,基本不用老夫操心。上线初期老夫踩过一点索引的坑,还有就
是丢数据的坑,调好后基本没再遇过问题。
他们的看家存储引擎(wiredtiger)不是自己写的,是另外一个opensource项目
老夫对他们没有实现wiredtiger的lsm算法十分不爽
现在mongodb之所以亏损,是因为他们没有找到好的盈利点,这点比较类似初期的mysql
那么,nosql中,最好的解决方案是不是mongodb... 阅读全帖 |
|
z****n 发帖数: 3189 | 2 之前研究数据库存储引擎的时候,大概了解过mongodb,现在生产环境中也有在用
mongodb,大概100多个instance吧
总的来说,是好产品
产品很solid,是c++写的,处理大数据有很完善的解决方案,集群功能可以直接上生产
环境(oracle,db2基本就是靠这个功能赚钱),但是mongodb不收你一分钱。从3.0开始基
本没有坑,只要用好了,基本不用老夫操心。上线初期老夫踩过一点索引的坑,还有就
是丢数据的坑,调好后基本没再遇过问题。
他们的看家存储引擎(wiredtiger)不是自己写的,是另外一个opensource项目
老夫对他们没有实现wiredtiger的lsm算法十分不爽
现在mongodb之所以亏损,是因为他们没有找到好的盈利点,这点比较类似初期的mysql
那么,nosql中,最好的解决方案是不是mongodb呢
看应用,就老夫来看,不是
小数据量应用上mysql , mysql 从8.0开始直接对json字段操作,老夫觉得小应用场景
下可以替代monogodb。为什么呢,因为mysql可以当nosql用,也可以不当nosql用,功
能更多啊
大数据量应用... 阅读全帖 |
|
z****n 发帖数: 3189 | 3 看来是遇到同行了,老夫多说两句
1.自己写中间件,用一致性哈希算法解决负载均衡,sharding和replica的问题。
老夫倒没有研究过mongodb的sharding tool是不是有问题,看过dba操作过,没听他
有什么抱怨,但是老夫不喜欢被人控制,追求极致性能,所以自己写中间件没有用到
mongodb的sharding 和replica
2.Index的坑
老夫之前压力测试,一天100B个transaction , 70%写,30%随机删,3天之内index就
完蛋,没办法,b+tree做的index就是这样的了,这正是为什么老夫对他没有实现lsm算
法十分不满。但是有独特办法可以解决。
3.为什么用mongodb
当时是因为业务量飙升,需要紧急替代另外一套系统。老夫用nodejs写这个中间件做
service,居然2天写完可以开始测。一开始试过用mysql,发现性能还是mongodb好些。
设计负载量10k qps ,只需要10个instance就顶住了,性能让老夫喜出望外。nodejs的
mongodb驱动做得很可以,mysql的驱动做得比较渣。除了前期的坑,老... 阅读全帖 |
|
f*****g 发帖数: 34 | 4 大神,你自己公司都有100个INSTANCE。数据库的用户是应用开发者,虽然有你说的那
些问题。但是MONGODB是多数开发者NONSQL的首选!产品好否,是技术和市场的结合。
我是个股票青蛙,但是推荐MDB, 原因如下:
1. 大神也承认产品很好,你只是希望它更好;
2. 开发使用人多,而且成上升趋势。对大多数开发者,解决方案来说,使用简单,达
到目的,是关键。WINDOWS,UNIX比较那个作为商品更成功?最近他们推出数据即服务
,更方便开发者。对现在商家,系统方案解决者来说。我要的是应用,数据如果有专门
的人打理多好。好比我是一家公司老板,我希望给用户提供更快的应用;作为产品经理
来说更快地上线,节省维护成本是关键。试想,我不用招什么服务器维护,数据库维护
人员,把这些交给厂家,多好。 TWLO, MONGDO,云等等背后都是这个概念,降低开发
难度!
3. MONGODB盈利模式:A, 买给大平台LICENSE,如微软云平台COSMODB数据支持三种API
,其中有MONGODB;B, 数据即使服务模式。数据库都放在它们那里,给中小商家大大降
低维护成本,方便开发;C, 最近很... 阅读全帖 |
|
g*****g 发帖数: 34805 | 5 MongoDB and Cassandra are like Apple and Orange. MongoDB is more popular.
But that doesn't make it the better NoSQL or worse. The two DBs are for
vastly
different use cases. People mostly use MongoDB for a drop-in schemeless
replacement for RDMBS. On the other other hand, people use Cassandra for
extreme performance and multi-DC support. The difference between MongoDB and
RDBMS is smaller than the difference between MongoDB and Cassandra. Both
are poised for long term. |
|
d*******r 发帖数: 3299 | 6 看来你们 MongoDB 用得比较深入,请问有碰到大家说的那些问题么。
比如写 lock 严重影响效率,updating fields 慢,index 沾满内存。
我觉得 mongoDB 也好多个版本了吧,不知道现在改进得如何了。我在用,只是还没大
规模上 sharding.
mongodb 如果小心配置的话,应该还是用着不错的?
我总觉得 mongoDB 真心是 Cassandra 流行多了。还融资了上亿,看着前景还不错的样
子。
大牛能不能说说最不满意mongoDB的地方是哪里?
, |
|
s*****n 发帖数: 5488 | 7 Foursquare uses MongoDB. So I would say performance is not an issue.
mongoDB的数据最后悔比mysql 大。可能又3倍以上。foursquare用两台70G的server就
搞定了。
用不用mongoDB还要看你们的需要。例如数据是不是schemaless.
比如timestamp, sensor, value, tag格式。
如果说value或者需求会经常变化,以location为例,
可以是gps location or wifi
一个是
lan/lat, accuracy,bearing, speed
一个只有ll+ accc
或者有将来扩展的需求,例如bluetooth location
或者是经常被tag,tag一些trace, debug info.
例如tag calling locID = {stream}
这样用mongoDB会很灵活。
否则的话,mysql很好用了。 |
|
g*****g 发帖数: 34805 | 8 http://www.datastax.com/dev/blog/2012-in-review-performance
MongoDB
MongoDB can be a great alternative to MySQL, but it’s not really
appropriate for the scale-out applications targeted by Cassandra. Still, as
early members of the NoSQL category, the two do draw comparisons.
One important limitation in MongoDB is database-level locking. That is, only
one writer may modify a given database at a time. Support for collection-
level (a set of documents, analogous to a relational table) locking is
pla... 阅读全帖 |
|
|
|
d*******r 发帖数: 3299 | 11 One important limitation in MongoDB is database-level locking. That is, only
one writer may modify a given database at a time.
A more subtle MongoDB limitation is that when adding or updating a field in
a document, the entire document must be re-written.
记下了,多谢指点!
我记得看 mongoDB official doc 上反复说,要 performance, 请让文档小一点,多
分些文档。原来还有这个原因: "updating field entire document must be re-
written" |
|
z****e 发帖数: 54598 | 12 俺是这么理解的
为什么要用nosql?
因为传统db资源开销太大
所以才上nosql
说白了就是为了解决throughput
那既然如此,为什么mongodb会把所有index全部放内存里?
如果throughput爆问题了
这样做岂不是引发另外一个瓶颈?
本身就是为了解决transaction等使用大量内存的瓶颈
还用另外一种方式创造一个类似的瓶颈?
这么做有什么意义?那我还不如回去用postgresql
当然有人说,调整某个参数改变运行模式之后会不一样
但是缺省的就是这样,那缺省的模式就有缺陷咯?
那我为什么要用mongodb呢?
目前看cassandra没有这些问题,为什么不用cassandra?
从log的存储开始上,跟aop配合,天作之合 |
|
v***2 发帖数: 131 | 13 请问:关于做大数据处理和mongoDB的工作,前景如何
在下拿到一个start up小公司的offer,是做大数据处理,用到mongoDB,Handoop,
NoSQL,Jason相关工具和数据库,请问这个方向前景如何?哪方面应该多下点功夫?
先谢谢各位朋友了 |
|
v***2 发帖数: 131 | 14 请问:关于做大数据处理和mongoDB的工作,前景如何
在下拿到一个start up小公司的offer,是做大数据处理,用到mongoDB,Handoop,
NoSQL,Jason相关工具和数据库,请问这个方向前景如何?哪方面应该多下点功夫?
先谢谢各位朋友了 |
|
b*****s 发帖数: 187 | 15 MongoDB has quite some openings in different areas, locations are New York,
Palo Alto and Austin depends on position.
Just passing the information if any one interested. Here is the link to the
list:
http://www.mongodb.com/careers/positions
有问题可以站内邮件
希望对大家有用。 |
|
f********r 发帖数: 304 | 16
1primary+
碎片
cassandra 确实算是比较稳定的,但是因为用JVM经常会被人喷,虽然我没遇过什么坑
。现在还有一个copycat scylladb。之前有机会见过他们的高层,感觉兴致勃勃的要彻
底beat casssandra成为下一个mongodb。我现在infra搞的少了,现在帮一个startup
bootstrap他们的产品。基本RDS的postgres (w/ read replica)就搞定。简单易用。
多说两句mongodb。v3以后确实要好很多,但是这是相对v2而言,不是和peer比。
Postgres有很多extension也很好用,虽然sql vs nosql各有利弊,关键还是要看
application的需求。MDB的股票建议大家还是小心点,我看最近daily volume都很弱。
而且它家不赚钱还是有些问题。互联网和软件行业的大部分profit都是做广告,应用(
包括个人和business)以及API的。做infra的monetization都比较困难。比如docker很
方便好用,但是最为公司运营我不看好它家能赚很多钱。同样的hashicorp... 阅读全帖 |
|
W********n 发帖数: 254 | 17 刚开始用MongoDB,一开始都还正常,突然发现paging在mongoDB上没什么好的实现方法
,mongo网站上也没有给reference的实现,大家有什么推荐的方法?
只要能支持最基本的prev/next paging就可以了
不想维护一个sequence
timestamp是有的 |
|
v***2 发帖数: 131 | 18 请问:关于做大数据处理和mongoDB的工作,前景如何
在下拿到一个start up小公司的offer,是做大数据处理,用到mongoDB,Handoop,
NoSQL,Jason相关工具和数据库,请问这个方向前景如何?哪方面应该多下点功夫?
先谢谢各位朋友了 |
|
W********n 发帖数: 254 | 19 在一个小webService里第一次使用mongodb,很习惯的把dal做成idisposable,这样可
以自动调用connect/disconnect。因为是内部service,所以访问量不大,一直没有出
现什么问题。昨天下午开始一个app开始疯狂发请求,500 req/sec,到今天早上8点
application pool就当掉了。
显示的错误是An operation on a socket could not be performed because the
system lacked sufficient buffer space or because a queue was full. 搜了一圈
发现是mongodb server的tcp connection被全部用光,网上大部分建议是调节
TcpTimedWaitDelay和userMaxPort,可这样就算分配再多的port也有用完的时候。
最后发现是10gen的.net driver比较奇特,显示调用connect/disconnect会让driver自
己的connection pool完全停止工作,删掉这两行... 阅读全帖 |
|
|
v***2 发帖数: 131 | 21 请问:关于做大数据处理和mongoDB的工作,前景如何
在下拿到一个start up小公司的offer,是做大数据处理,用到mongoDB,Handoop,
NoSQL,Jason相关工具和数据库,请问这个方向前景如何?哪方面应该多下点功夫?
先谢谢各位朋友了 |
|
v***2 发帖数: 131 | 22 请问:关于做大数据处理和mongoDB的工作,前景如何
在下拿到一个start up小公司的offer,是做大数据处理,用到mongoDB,Handoop,
NoSQL,Jason相关工具和数据库,请问这个方向前景如何?哪方面应该多下点功夫?
先谢谢各位朋友了 |
|
r*******n 发帖数: 3020 | 23 设备会很多,多数是sensor,数据量会比较大并且同时进来。
如果mongoDB吞吐能力强并且占用硬盘空间小,我们可以把它作为中转站,再二次处理
放到SQL server里供分析用,
同时也可作为数据备份用。
MySql肯定能做, 想看看mongoDB是不是更合适。
nosql |
|
d*******r 发帖数: 3299 | 24 我记得板上很多人都说MongoDB好多坑来着。
二爷你们team一个都没遇上吗?还是有坑,因为community确实大,也容易fix。
或者坑都是老版本的MongoDB了。 |
|
g*****g 发帖数: 34805 | 25 MongoDB uses write ahead logging to an on-disk journal to guarantee write
operation durability and to provide crash resiliency. Before applying a
change to the data files, MongoDB writes the change operation to the journal.
我觉得是整个文档写入commit log. |
|
a***n 发帖数: 538 | 26 http://docs.mongodb.org/manual/core/write-operations/
The db.collection.update() method either updates specific fields in the
existing document or replaces the document. See db.collection.update() for
details.
When performing update operations that increase the document size beyond the
allocated space for that document, the update operation relocates the
document on disk and may reorder the document fields depending on the type
of update.
The db.collection.save() method replaces a document and c... 阅读全帖 |
|
c****e 发帖数: 1453 | 27 MongoDB cannot index over 1K and horrible if your system rely heavily on
JOIN. We switch from MongoDB to Postgres. Postgres has decent support for
JSON. We are quite happy. |
|
d*******r 发帖数: 3299 | 28 没太懂这个的意思,我看文档说的是,被index的key value不能超过1k大小吧
http://docs.mongodb.org/manual/reference/limits/
Index Key
The total size of an indexed value must be less than 1024 bytes. MongoDB
will not add that value to an index if it is longer than 1024 bytes.
你说的好像是一个 index 的总长度不能超过1k? 你到底说的是“被index的key value
”还是“一个index总长度”?
index的key value大小不超过1k,看着是比较合理的限制呀。 |
|
w***g 发帖数: 5958 | 29 召唤版上的AWS高手出招。我过年那阵做了个网站,当时看过一眼AWS,结果还是自己配
了台机器放data center了。机器成本$2000的样子,hosting每个月$50。如果是1U的服
务器的话是每个月$20。eBay上随便几百块钱买的二手服务器都比AWS的强。4T硬盘一个
差不多是$150的样子,台式机可以挂6个。1U的机器配好了可以挂5个,一个内置四个热
插拔。看到你在为40G硬盘满了而头疼我实在感到无语。
我的意见是,如果你只是硬盘满了,没有别的performance问题,花钱升级硬盘是最省
钱的办法。mongoDB有它的问题,主要是吞吐量没法scale。那也要等机器数量>4时才会
体现出来。C*, redis, memcache啥的都有他们各自的问题。mongoDB虽然不济,至少丢
失数据的可能性是最小的。如果因为非预料之中的问题临时改变架构,引入redis啥的,
我觉得风险会比较大,以后维护也难。就是改一两行代码,测试不到位都会导致服务中
断。如果实在缺钱,像上面说的,可以卖一点股份。一点点钱招人肯定不够,买
hosting应该绰绰有余了。
replication
4k |
|
s****y 发帖数: 503 | 30 显然是mongodb啊 IBM的websphere支持mongodb的 |
|
f*****w 发帖数: 2602 | 31 我在用 mongojs
貌似楼上说的upsert确实是mongodb原生命令中能解决我的问题的 我去研究下
mongojs是不是能支持搞这个
btw mongojs 是最靠谱的mongodb库么? |
|
c********t 发帖数: 5706 | 32 有前途吗?去做MongoDB driver有前途吗? |
|
f*******t 发帖数: 7549 | 33 MongoDB应该挺有前途的,但做driver…… |
|
c********t 发帖数: 5706 | 34 嗯,我也这么觉得。 mongoDB kernel 是C++做的。俺只会java. 只能做driver. 你们
申吧,尤其是wwwyhx |
|
a*****n 发帖数: 158 | 35 MongoDB 好像是用ERLANG写的... |
|
w**z 发帖数: 8232 | 36 mongodb就是它们写的。用C++, github 上 open source 了。 |
|
e****9 发帖数: 316 | 37 mongodb现在用的多吗?
之前没有考虑过换公司,现在的驴各方面都还可以。
就怕去个startup公司,过段时间黄了。 |
|
J*******n 发帖数: 2901 | 38 10gen搞的不错,database市场太大了,而且以后的趋势就是一个公司的一个系统中不
同的模块就用不同的db,MongoDB有自己的优势,而且10gen的推广搞得相当不错,感觉
是个有前途的公司/产品 |
|
|
n********5 发帖数: 323 | 40 大数据是一个方向,mongodb是一个工具,具体还要看你做哪方面的,例如,做payment
的和做ads的需要的知识不一样,行业知识不同,运用起来也不一样,性能优化的方向
也不一样 |
|
n********5 发帖数: 323 | 41 大数据是一个方向,mongodb是一个工具,具体还要看你做哪方面的,例如,做payment
的和做ads的需要的知识不一样,行业知识不同,运用起来也不一样,性能优化的方向
也不一样 |
|
z****e 发帖数: 54598 | 42 很奇怪,mongodb招那么多java developer
难道这不是c++写的? |
|
f******4 发帖数: 51 | 43 近期有人面过NYC MongoDB的吗?
有没有大牛分析一下该公司如何? |
|
m******i 发帖数: 15 | 44 MS+5年经验
最近拿到了MongoDB NYC Offer
Base 150K, 8K option纸面估价56K
请大牛们看看这Offer怎么样,谢谢 |
|
|
w******i 发帖数: 10 | 46 非常赞啊~~~ 去过Mongodb,公司氛围很好,大牛巨多。 |
|
j**********3 发帖数: 3211 | 47 请教一下各位大牛!
什么时候用mysql/psql, 什么时候用mongodb,什么时候用redis? |
|
a*****u 发帖数: 1712 | 48 从实用角度,流量大的时候谨慎使用mongodb,需要persistent存储的时候谨慎使用
redis。 |
|
j**********3 发帖数: 3211 | 49 对于mongo,我查了一下,以前也听朋友说,是因为不安全。
为啥“流量大”的时候不能用mongodb?
redis为啥persistent的时候不能用?
大牛请为菜鸟详解 |
|
v***2 发帖数: 131 | 50 请问3年自动化测试经验(主要用python,mongodb,sql)在湾区一般平均payscale是
多少? 在西雅图呢?
先谢谢各位朋友了 |
|