Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • Nov 07 11:23
    rtar starred Spinoco/fs2-kafka
  • Jul 29 2021 00:15
    masonedmison starred Spinoco/fs2-kafka
  • Mar 24 2021 04:23
    kevinalh starred Spinoco/fs2-kafka
  • Jan 28 2021 23:41
    mebubo starred Spinoco/fs2-kafka
  • Jan 17 2021 14:53
    PengLoveHONG starred Spinoco/fs2-kafka
  • Nov 07 2020 05:55
    nachocodexx starred Spinoco/fs2-kafka
  • May 08 2020 19:25
    ostronom closed #27
  • May 08 2020 19:18
    ostronom opened #27
  • Mar 14 2020 14:26

    AdamChlupacek on v0.4.0-M4

    (compare)

  • Mar 14 2020 14:26

    AdamChlupacek on 0.4-spinoco-compat

    Setting version to 0.4.0-M4 Setting version to 0.4.0-SNAPSH… (compare)

  • Mar 14 2020 13:34

    mraulim on 0.4-spinoco-compat

    Add timeout for publishing in k… Added trusty as a dist for runn… Fixed timeout on leader query. and 2 more (compare)

  • Mar 14 2020 13:34
    mraulim closed #26
  • Mar 14 2020 09:31
    AdamChlupacek synchronize #26
  • Mar 14 2020 09:31

    AdamChlupacek on publish-connection-timeout

    Add timeout for leaders stream. (compare)

  • Mar 13 2020 18:47
    AdamChlupacek synchronize #26
  • Mar 13 2020 18:47

    AdamChlupacek on publish-connection-timeout

    Fixed timeout on leader query. (compare)

  • Mar 13 2020 17:16
    AdamChlupacek synchronize #26
  • Mar 13 2020 17:16

    AdamChlupacek on publish-connection-timeout

    Added trusty as a dist for runn… (compare)

  • Mar 13 2020 17:13
    AdamChlupacek review_requested #26
  • Mar 13 2020 17:13
    AdamChlupacek opened #26
Adam Chlupacek
@AdamChlupacek
yeah exactly
Andi Miller
@andimiller
cool, thanks, I'll give that a go :)
Adam Chlupacek
@AdamChlupacek
no problem, feel free to ask if you have any other questions :)
Andi Miller
@andimiller
any of you who're using fs2-kafka for consuming, what do you store your offsets in?
Adam Chlupacek
@AdamChlupacek
We use cassandra for storing any and all persistent data.
Andi Miller
@andimiller
so you commit offsets to cassandra when you've processed a batch?
the normal kafka client keeps it in kafka, somehow
and used to keep it in zookeeper
I guess cassandra makes sense since it's very write-heavy
Adam Chlupacek
@AdamChlupacek
basically yeah we keep it there, its needed for recovery etc, no idea how the client can keep anything like that when you crash mid batch or anything like that
Andi Miller
@andimiller
yeah of course
Adam Chlupacek
@AdamChlupacek
I may be misunderstanding here a bit tho, what for do you actually want to store the offset? (since you are comparing to the kafka client, you cannot be using it for recovery etc right? )
Andi Miller
@andimiller
I'm using the offset for crash recovery yeah
I'm currently using the official kafka consumer, and fs2-kafka's producer
so I don't have to implement my own offset management
Adam Chlupacek
@AdamChlupacek
What kind of crash recovery? complete (jvm exits)? or just an error in your stream?
Andi Miller
@andimiller
usually just a normal SIGTERM
the rpm being upgraded
Adam Chlupacek
@AdamChlupacek
And kafka client can somehow get up from this? wow, it must store it in zookeeper or something like that, seems a bit arcane to me :D
if you need something short term, you can store the offsets in zookeeper manually maybe? that would allow you to use fs2-kafka consumer as well.
Pavel Chlupacek
@pchlupacek
Actually you may use kafka to store offset, and also the fs2-kafka. Just configure one of your topics to be compressed and you are good to go. Thats actually how original client of kafka stores offset nowadays, before it was ZK.
Adam Chlupacek
@AdamChlupacek
didnt know that, thats cool.
Andi Miller
@andimiller
yeah I need to read up on how the official client stores it in kafka and do that
Pavel Chlupacek
@pchlupacek
for that you will need to read kafkas client source. Not sure if they document that.
fwiw if you will go this path I would be happy to have PR with that :-)
Andi Miller
@andimiller
I guess you key on consumerid, and compress it
Pavel Chlupacek
@pchlupacek
yes, I woudl say so
and perhaps topic
Filippo De Luca
@filosganga
Hi Guys,
Am I correct to say that to use fs2-kafka I need to assign a specific partition to each consumer?
Adam Chlupacek
@AdamChlupacek
yes, that is correct, you need to specify a partition.
Filippo De Luca
@filosganga
@AdamChlupacek Thanks
sken
@sken77
im thinking of doing a smack stack with just the fs2 libs
is this possible? or a good idea
Adam Chlupacek
@AdamChlupacek
Hey @floreslorca i am not entirely sure what you mean by smack, but with a quick google, it seesm that it is just a technique for distributed apps? In that case yeah you can. We in our production fs2 only. (As you can tell by all the fs2 libs we have on Spinoco here :D)
sken
@sken77
i just despise akka and friends so i want to try it with fs2
sken
@sken77
the idea is very generic and reusable, and i was wondering if its doable with the fs2 libs
Adam Chlupacek
@AdamChlupacek
@floreslorca Yeah, all of this seems doable, you have cassandra and kafka covered with our libraries, akka with fs2, sadly I dont really have experience with mesos or spark, so cannot tell you how to replace that atm with some fs2 library. But from my experience you can express anything in fs2 with much better guarantees than any other lib :D And ofc in its very core fs2 is trying to be as generic an reusable as it can be.
sken
@sken77
i dont really need the spark part at the moment. mesos is just the environment is running on
Adam Chlupacek
@AdamChlupacek
In that case you can totally do this. Btw as far as I understand spark, its just some kind of concurrent data processing?
sken
@sken77
yep, thats basically what it is
Adam Chlupacek
@AdamChlupacek
If thats so, then fs2 can easily replace that as well (no library required as we have Stream.join), so I say you wont have SMACK anymore but more like MFCK :D
sken
@sken77
hahah we need to work on a catchy name
Kåre Blakstad
@kareblak
I've been thinking on implementing some sort of mapAccumulate over Kafka log compacted topics, to share the accumulated state among distributed nodes. That's Spark for ye, without alot of the fancyness that is
Adam Chlupacek
@AdamChlupacek
That is just basically doing mapAccumulate over the stream that you get from subscribing to a topic right? Or do you have something more complex in mind?
Kåre Blakstad
@kareblak
Writing the accumulator back to the log compacted topic and making sure it's being somewhat synced on the other nodes
changes to the accumulator being mirrored to kafka
I'm doing alot of distributed fs2 stuff, and recursive state sure is a bitch
For now i'm pipelining changes to redis and reading them out on topic rebalance
Adam Chlupacek
@AdamChlupacek
Well, if your function in MapAccumulate is pure, then you do not need to mirror the changes anywhere, since the ops should always result with the same state in the end.