nosql

MongoDB vs. Redis vs. Cassandra for a fast-write, temporary row storage solution

百般思念 提交于 2019-12-09 04:01:56
问题 I'm building a system that tracks and verifies ad impressions and clicks. This means that there are a lot of insert commands (about 90/second average, peaking at 250) and some read operations, but the focus is on performance and making it blazing-fast. The system is currently on MongoDB, but I've been introduced to Cassandra and Redis since then. Would it be a good idea to go to one of these two solutions, rather than stay on MongoDB? Why or why not? Thank you 回答1: For a harvesting solution

How to choose a partition key in DynamoDB for a chat app

喜夏-厌秋 提交于 2019-12-09 03:44:00
问题 I have a requirement to use DynamoDB for a chat app that will be used occasionally, on an event day. The app will be reading/writing few thousands of messages on a particular day, and almost none after that. Here's what I have in mind: Table: Messages HashKey: Event day name SortKey: Message timestamp I can get recent 20 messages (chat app usually get latest data only, no?), but the all read/write will be directed to one partition only. I could try this way Table: EventDayMessage HashKey:

What is the best document storage strategy in NoSQL databases?

六月ゝ 毕业季﹏ 提交于 2019-12-09 02:05:16
问题 NoSQL databases like Couchbase do hold a lot of documents in memory, hence their enormous speed but it's also putting a greater demand on the memory size of the server(s) it's running on. I'm looking for the best strategy between several contrary strategies of storing documents in a NoSQL database. These are: Optimise for speed Putting the whole information into one (big) document has the advantage that with a single GET the information can be retrieved from memory or from disk (if it was

Is it possible to implement Multi-Version Concurrency Control (MVCC) on top of MongoDB?

房东的猫 提交于 2019-12-08 23:32:15
问题 MongoDB is to me a great database. However there are cases where I really need atomic multi-document transactions. For example to transfer things (like money or reputation) between accounts and this needs to either succeed completely or fail completely. I wonder if it would be possible to interact with MongoDB through a library implementing the MultiVersion Concurrency Control pattern. How bad would it be concerning performances? Would it be possible and profitable to use a hybrid approach,

When to replace RDBMS/ORM with NoSQL/DocumentStore

我只是一个虾纸丫 提交于 2019-12-08 21:20:30
I've looked at MongoDB/norm (but want a general document-oriented store answer). It seems really nice to work with and I'm interested in knowing when it should be used instead of RDBMS+ORM? What should i use for for instance: Stackoverflow similiar sites Social communities forums (I posted another more general question but it got a splendid answer that might be interesting for others, hence the new question) All of the examples you mentioned can be built using a document store. Whether you should use it, depends on the exact requirements. If you're dealing with a social community that supports

How to handle message that failed to response success, but success commit to database

末鹿安然 提交于 2019-12-08 20:55:30
I have some question about handling message that failed to response success, but success commit to database. The design that I think is for guarantee processing message once. Following sequences are step for handling. Question is included on statements with ★ 1) Fetch message from Message Queue -> When failed after this, MQ will timeout & retry 2) Cache.SetIfNotExist(MessageId, MyId, Timeout) ProcessingTime < Cache.Timeout < MQ.Timeout * This make ownership for message -> When failed after this, Cache will timeout and MQ will timeout & retry 3) Processing Data include read storage * All of

What happens to a Redis data store if the data exceeds available ram? [duplicate]

我的梦境 提交于 2019-12-08 19:36:17
问题 This question already has answers here : What does Redis do when it runs out of memory? (7 answers) Closed 2 years ago . What happens to a Redis data store if the data exceeds available ram? 回答1: I think there is a store size setting in redis config that will stop you adding more data than can fit in the store you have set up. If you set up a store that doesn't fit in physical memory, it will simply ask the OS for more memory and some of it will be paged to disk, with obvious performance

Querying Nested List Existence in Mongo

北慕城南 提交于 2019-12-08 18:53:30
问题 I have a document in Mongo that is structured in the following way: { "_id" : ObjectId("4eea7237d0ba3a04f20008fb"), "code" : "b2677c2809c844cc9d7e3e4ff8d95b46", "city_id" : 4, "datetime" : ISODate("2011-12-13T18:41:44.062Z"), "plays" : [ { "play_id" : 717224, "clicks" : [ ], "order" : 1, "mysql_id" : 145 } I want to query for docs whose plays.clicks attribute is a non-empty list. I've tried exists with no luck. I thought that something like this might work: db.collection.find({plays.clicks.0:

NoSQL for filesystem storage organization and replication?

余生长醉 提交于 2019-12-08 18:14:31
We've been discussing design of a data warehouse strategy within our group for meeting testing, reproducibility, and data syncing requirements. One of the suggested ideas is to adapt a NoSQL approach using an existing tool rather than try to re-implement a whole lot of the same on a file system. I don't know if a NoSQL approach is even the best approach to what we're trying to accomplish but perhaps if I describe what we need/want you all can help. Most of our files are large, 50+ Gig in size, held in a proprietary, third-party format. We need to be able to access each file by a name/date

Neo4j replication alternative to Neo4j Enterprise edition?

扶醉桌前 提交于 2019-12-08 17:09:41
问题 It seems Neo4J High Availability is only available for the Enterprise edition which is paid- is there another alternative to achieve replication without that module? (i.e. without cost). Thanks for any help! 回答1: Update : This answer has changed. Neo4j is now open core, so the Enterprise code is no longer dual-licensed - only the commercial license option remains. You can find more details here: https://neo4j.com/open-core-and-neo4j/ Original Answer: Enterprise is available as quid-pro-quo -