On 19.08.14 14:37, Roland Kuhn wrote:
19 aug 2014 kl. 13:49 skrev Patrik Nordwall <patrik.nordw...@gmail.com
<mailto:patrik.nordw...@gmail.com>>:
On Tue, Aug 19, 2014 at 1:46 PM, Martin Krasser
<krass...@googlemail.com <mailto:krass...@googlemail.com>> wrote:
On 19.08.14 13:40, Patrik Nordwall wrote:
On Tue, Aug 19, 2014 at 1:35 PM, Martin Krasser
<krass...@googlemail.com <mailto:krass...@googlemail.com>> wrote:
On 19.08.14 13:00, Roland Kuhn wrote:
19 aug 2014 kl. 11:28 skrev Ashley Aitken
<amait...@gmail.com <mailto:amait...@gmail.com>>:
On Tuesday, 19 August 2014 16:53:46 UTC+8, Martin Krasser
wrote:
journal -> akka actor(s) -> read model datastore
when I can do this much more efficiently via
journal -> spark -> read model datastore
directly, for example
I am confused, are you suggesting that spark is talking to
the journal data store directly, without any involvement
of Akka / Akka Persistence? If so, it sounds like a great
solution but why would that require an extension to the
Akka Persistence design/API?
Well, another comment is that spark uses Akka actors in its
implementation, so I don’t see why it would magically be
“much more efficient”. I think we are mixing up two
concerns here, will reply later when I can type properly again.
This is a misunderstanding. As mentioned in my previous
message, scaling reads through a single journal actor
doesn't work, it's not about that I see a general
performance issue with Akka actors.
I think the integration "akka persistence -> kafka -> spark ->
whatever" looks great, but not everybody has that
infrastructure, and therefore we provide PersistentView as a
simple way to replicate events to the read side, and then a
de-normalized representation can be stored in whatever makes
sense for the queries.
Of course, that should be possible too, and as I already said,
backend store providers can choose to use the very same backend
for both plugins. There is absolutely no need that applications
must use Spark as part of their infrastructure infrastructure.
But if it is needed in large-scale applications, a seconds plugin
API for on the read side would make things much more flexible.
For users, who just want to have a single backend store, they
just have to configure one additional line (plugin) in their
application conf.
Martin, what do you suggest? Removing PersistentView altogether?
No, not at all, with an additional plugin, PersistentViews should
have the option to read transformed/joined/... streams from a
backend store that is optimized for that.
ah, now I understand what you mean. That makes sense.
I’m not completely there yet: in which way does this require changes
to Akka Persistence? The only thing we need is to support multiple
Journals in the same ActorSystem, and a way for PersistentView and
PersistentActor to select between them, is this what you mean?
This would go into the right direction, except that I wouldn't call the
plugin that serves PersistentViews a "journal" because it only provides
an interface for reading. Furthermore, this plugin could additionally
offer an API for passing backend-specific query statements for
joining/transforming/... streams on the fly (if supported/wanted).
Or do you mean that the read-side would be a new kind of plugin?
Yes, see above
OTOH this would not solve the read-side concerns raised by Greg:
building a View on top of an incoming event stream is precisely not
what he wants, unless I got that wrong. The idea behind CQRS/ES is
that the events from the write-side drive updates of the read-side
which is then queried (i.e. actively asked instead of passively
updating) in whatever way is appropriate (e.g. graph searches).
I cannot see how my proposal is in contradiction with that. Can you
please explain?
Regards,
Roland
/Patrik
/Patrik
Regards,
Roland
--
>>>>>>>>>> Read the docs: http://akka.io/docs/
>>>>>>>>>> Check the FAQ:
http://doc.akka.io/docs/akka/current/additional/faq.html
>>>>>>>>>> Search the archives:
https://groups.google.com/group/akka-user
---
You received this message because you are subscribed to
the Google Groups "Akka User List" group.
To unsubscribe from this group and stop receiving emails
from it, send an email to
akka-user+unsubscr...@googlegroups.com
<mailto:akka-user+unsubscr...@googlegroups.com>.
To post to this group, send email to
akka-user@googlegroups.com
<mailto:akka-user@googlegroups.com>.
Visit this group at http://groups.google.com/group/akka-user.
For more options, visit https://groups.google.com/d/optout.
*Dr. Roland Kuhn*
/Akka Tech Lead/
Typesafe <http://typesafe.com/> – Reactive apps on the JVM.
twitter: @rolandkuhn
<http://twitter.com/#%21/rolandkuhn>
--
>>>>>>>>>> Read the docs: http://akka.io/docs/
>>>>>>>>>> Check the FAQ:
http://doc.akka.io/docs/akka/current/additional/faq.html
>>>>>>>>>> Search the archives:
https://groups.google.com/group/akka-user
---
You received this message because you are subscribed to the
Google Groups "Akka User List" group.
To unsubscribe from this group and stop receiving emails
from it, send an email to
akka-user+unsubscr...@googlegroups.com
<mailto:akka-user+unsubscr...@googlegroups.com>.
To post to this group, send email to
akka-user@googlegroups.com <mailto:akka-user@googlegroups.com>.
Visit this group at http://groups.google.com/group/akka-user.
For more options, visit https://groups.google.com/d/optout.
--
Martin Krasser
blog:http://krasserm.blogspot.com <http://krasserm.blogspot.com/>
code:http://github.com/krasserm
twitter:http://twitter.com/mrt1nz
--
>>>>>>>>>> Read the docs: http://akka.io/docs/
>>>>>>>>>> Check the FAQ:
http://doc.akka.io/docs/akka/current/additional/faq.html
>>>>>>>>>> Search the archives:
https://groups.google.com/group/akka-user
---
You received this message because you are subscribed to the
Google Groups "Akka User List" group.
To unsubscribe from this group and stop receiving emails
from it, send an email to
akka-user+unsubscr...@googlegroups.com
<mailto:akka-user+unsubscr...@googlegroups.com>.
To post to this group, send email to
akka-user@googlegroups.com <mailto:akka-user@googlegroups.com>.
Visit this group at http://groups.google.com/group/akka-user.
For more options, visit https://groups.google.com/d/optout.
--
Patrik Nordwall
Typesafe <http://typesafe.com/> - Reactive apps on the JVM
Twitter: @patriknw
--
>>>>>>>>>> Read the docs: http://akka.io/docs/
>>>>>>>>>> Check the FAQ:
http://doc.akka.io/docs/akka/current/additional/faq.html
>>>>>>>>>> Search the archives:
https://groups.google.com/group/akka-user
---
You received this message because you are subscribed to the
Google Groups "Akka User List" group.
To unsubscribe from this group and stop receiving emails from
it, send an email to akka-user+unsubscr...@googlegroups.com
<mailto:akka-user+unsubscr...@googlegroups.com>.
To post to this group, send email to akka-user@googlegroups.com
<mailto:akka-user@googlegroups.com>.
Visit this group at http://groups.google.com/group/akka-user.
For more options, visit https://groups.google.com/d/optout.
--
Martin Krasser
blog:http://krasserm.blogspot.com <http://krasserm.blogspot.com/>
code:http://github.com/krasserm
twitter:http://twitter.com/mrt1nz
--
>>>>>>>>>> Read the docs: http://akka.io/docs/
>>>>>>>>>> Check the FAQ:
http://doc.akka.io/docs/akka/current/additional/faq.html
>>>>>>>>>> Search the archives:
https://groups.google.com/group/akka-user
---
You received this message because you are subscribed to the
Google Groups "Akka User List" group.
To unsubscribe from this group and stop receiving emails from it,
send an email to akka-user+unsubscr...@googlegroups.com
<mailto:akka-user+unsubscr...@googlegroups.com>.
To post to this group, send email to akka-user@googlegroups.com
<mailto:akka-user@googlegroups.com>.
Visit this group at http://groups.google.com/group/akka-user.
For more options, visit https://groups.google.com/d/optout.
--
Patrik Nordwall
Typesafe <http://typesafe.com/> - Reactive apps on the JVM
Twitter: @patriknw
--
>>>>>>>>>> Read the docs: http://akka.io/docs/
>>>>>>>>>> Check the FAQ:
http://doc.akka.io/docs/akka/current/additional/faq.html
>>>>>>>>>> Search the archives: https://groups.google.com/group/akka-user
---
You received this message because you are subscribed to the Google
Groups "Akka User List" group.
To unsubscribe from this group and stop receiving emails from it,
send an email to akka-user+unsubscr...@googlegroups.com
<mailto:akka-user+unsubscr...@googlegroups.com>.
To post to this group, send email to akka-user@googlegroups.com
<mailto:akka-user@googlegroups.com>.
Visit this group at http://groups.google.com/group/akka-user.
For more options, visit https://groups.google.com/d/optout.
*Dr. Roland Kuhn*
/Akka Tech Lead/
Typesafe <http://typesafe.com/> – Reactive apps on the JVM.
twitter: @rolandkuhn
<http://twitter.com/#%21/rolandkuhn>
--
>>>>>>>>>> Read the docs: http://akka.io/docs/
>>>>>>>>>> Check the FAQ:
http://doc.akka.io/docs/akka/current/additional/faq.html
>>>>>>>>>> Search the archives: https://groups.google.com/group/akka-user
---
You received this message because you are subscribed to the Google
Groups "Akka User List" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to akka-user+unsubscr...@googlegroups.com
<mailto:akka-user+unsubscr...@googlegroups.com>.
To post to this group, send email to akka-user@googlegroups.com
<mailto:akka-user@googlegroups.com>.
Visit this group at http://groups.google.com/group/akka-user.
For more options, visit https://groups.google.com/d/optout.
--
Martin Krasser
blog: http://krasserm.blogspot.com
code: http://github.com/krasserm
twitter: http://twitter.com/mrt1nz
--
Read the docs: http://akka.io/docs/
Check the FAQ: http://doc.akka.io/docs/akka/current/additional/faq.html
Search the archives: https://groups.google.com/group/akka-user
---
You received this message because you are subscribed to the Google Groups "Akka User List" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to akka-user+unsubscr...@googlegroups.com.
To post to this group, send email to akka-user@googlegroups.com.
Visit this group at http://groups.google.com/group/akka-user.
For more options, visit https://groups.google.com/d/optout.