Hi. We have two system based on riak-core. Simple distributed database for
storing time-series data, we don't use riak_kv for this because we need
batch insert,our data are small(16 byte key and 12 byte value) and we need
less consistence guarantee but lowest latency. The second is framework
named Zont for soft real-time data processing, like twitter storm,in which
vnode play role standart erlang supervisor that allow for us build
distributed process for process data. Zont used in one our application for
processing financial data and it's run in production in Sberbank(One of the
largest Russian Bank) and It's used in another application for processing
large amount data from sensors that in production too.
I will tell you about some problems in current riak-core and feature that
will be usefull for us.
1. By default when riak_core app started on some node it try start all
vnode(include those that must be start on another node). It's good
behaviour for riak_kv or our time-series database but not for our second
application. In our callback for riak_core_vnode first we check is it good
place for this node at this time,if it's not we wait hadoff request and
periodically check maybe it's already right place for this vnode. It will
be good to have  both behaviour in riak-core.
2. If some node in cluster fail riak_core don't restart vnode that owned by
this node, vnodes start only if riak_core receive some request to it. It's
not good for our second app too:) We write monitoring process that start
vnodes if some node goes down. It will be good to have option that turn it
in riak_core
3. We must have option for use master coordinator(like zoo-keeper) for
update ring information and have consistence view on cluster for all
node(states and down node etc.). Yes it's point of failure but wee really
need it for CA. Currently we use many hack for release this on
riak_core,it's work but it's not good solution (kill minor island, ...,etc.)
4. Try don't use riak_core_mochiglobal for save ring info it's don't work
this standard erlang release upgrade procedure or we must have some option
for recompile ring module that was built at runtime by
riak_core_mochiglobal during upgrade procedure.
5. May be Include API for send multiple requests to VNodes by optimal way.
6. DOCUMENTATION!!!!!!!!

That all that remembered.


May be remember something else latter.

 Please let me know if you need some additional information about our use
case.



On Wed, Oct 30, 2013 at 4:13 AM, Sam Elliott <sam.elli...@basho.com> wrote:

> Hey Riak-Users (and Riak-Core)
>
> Some time ago, Basho released riak_core as a framework for building
> distributed applications [1].
> One of the key pieces of guidance that was given at the time was that you
> should use the features
> of riak_kv if your app needed to do any persistence. With the new features
> we'll be releasing in
> 2.0 [2], we want to make riak_core the best toolkit for building complex
> distributed applications
> with both CP and AP semantics.
>
> As I see it, the main thing that is preventing most people from writing
> their own riak_core
> application is that there's not an API that allows people to easily do so.
> There's a basic internal
> KV client at the moment, but there are some features that it doesn't cover.
>
> Post-RICON (and almost certainly after the 2.0 release), I'm going to
> focus on making riak_core
> applications really easy to make, and riak_kv easy to use from a riak_core
> application.
>
> I'd love any feedback that you all have. How can we improve the current
> APIs? How can we make it
> really easy for people to create riak_core apps? How can we nicely expose
> the newest features of
> riak_kv for people to use in their riak_core applications?
>
> Bonus points for feedback from anyone who has built and run a riak_core
> application in production.
>
> Sam
>
> PS: I have some swag to give to anyone who's helpful
>
> [1]: http://basho.com/where-to-start-with-riak-core/
> [2]: http://basho.com/introducing-riak-2-0/
>
>
>
> --
> Sam Elliott
> Engineer
> sam.elli...@basho.com
> --
>
>
>
> _______________________________________________
> riak-users mailing list
> riak-users@lists.basho.com
> http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com
>
_______________________________________________
riak-users mailing list
riak-users@lists.basho.com
http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com

Reply via email to