0

I'm facing a funny problem: I have to display an aggregated feed of Facebook, Foursquare and Twitter for my users and I don't know what solution to use. A lot of batches are running in parallel, and there are many updates in the activity streams.

I need to manipulate lists of activities, so I first tried Redis, but the replication doesn't work when you are using many sunionstore commands. I've been thinking of :

  • noSQL -> HBase.

  • newSQL -> VoltDB and SQLFire.

  • data-grid -> Infinispan, GridGain and Gigaspace

What do you think I should use? Do you have any other ideas?

Avinash
  • 12,851
  • 32
  • 116
  • 186
Vincent Devillers
  • 1,628
  • 1
  • 11
  • 17

1 Answers1

0

We use Hazelcast in production for 2 years now and are very pleased with its performance and scalability.

We use Gridgain as well, but as a compute grid, not a data grid

I think Hazelcast should be a good way to go, as you can have batches and real-time insert, and its API and docs are good

Grooveek
  • 10,046
  • 1
  • 27
  • 37
  • Did you use the query API with Hazelcast? – Vincent Devillers Jul 04 '12 at 10:22
  • Yes, we're using the query API with predicates on a few nodes . We didn't have any performance bottleneck at this point, but it must depends on the application. I mention we are in a 70% read / 30% write scenario and have our application running for months without any memory leak. It's fair to say that we're using Hazelcast as a temporary/fault-tolerant datastore on which we run batch processing and aggregate functions as to provide to our front-end app only precomputed datas. Raw datas are then discarded from HZ. So, we're not on a "grow forever" schema. – Grooveek Jul 04 '12 at 13:05