You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Thanks @bvolpato for pointing me to this #21089
This would be extremely useful for us at Discord. We use Rust heavily and we are using Beam (using python) for data processing. To reduce training serving skew this would be very beneficial.
Reacted by Bruno Volpato, Joseph Wilson, Stevie Weiss, Bryan Hitchcock and Evan Carroll
Work is underway here. Progress may be slow, and early code will look quite rough. I'll be really happy to receive any feedback or collaboration opportunities.
Reacted by brucearctor, Dom Finn, Quentin Perez, Gaurav Chakravorty, esadler-hbo, Robert Bradshaw and Bryan Hitchcock
@dofinn I really appreciate the offer. Currently we have a few TODOs with improvement ideas which I'd be happy to describe in more detail, and we could also try to coordinate effort on the larger tasks as well (which I'm also planning to organize in the main README file) if you're interested. Feel free to open a PR directly in the fork or reach out to me by email (nivaldo.humbertoo@gmail.com) if you'd like.
There's still a lot of work to be done, and I try to keep an updated roadmap here if you or anyone else is interested in a quick overview of the current state of the implementation.
In particular, the user API is starting to take shape, and the snippet below (inspired by the new patterns set by the Typescript SDK) is now functional end-to-end:
let runner = DirectRunner::new();
// Impulse won't be exposed to the user, but it serves as a mock transform for now
let transform = Impulse::new();
runner.run(|root| root.apply(transform)).await;
To anyone interested, any early input on this format would be highly appreciated, as this is the current foundation that I'll be using for everything else. Any other contributions (including early code reviews, even if partial) would be awesome as well.
@nivaldoh I think reading the doc will only get me so far and I should probably start working on some implementation and see how it goes. Is there any coder/transform or other stuff you want my help with?
@robertwb Thank you for creating the basic mechanisms of Beam, such as ParDo and GBK.
@dahlbaek and I are now working on creating a more Rust-like, statically-typed pipeline based on your work. We would also appreciate your contribution to laysakura/beam based on your extensive experience with the TypeScript SDK.
Oh, I seem to have missed some traffic on this issue. I received collaborator access to @nivaldoh's fork yesterday, but I'll move development over to @laysakura's fork. :)
I've got some work in progress for data channels on DataSource and DataSink and I'm currently drafting a change to serialization as mentioned on nivaldoh#22.
I think it would be helpful to create design documents in order to align our goals and understanding. To start, I have written an initial version of a document titled "Custom Coders for the Beam Rust SDK".
A portion of the proposal outlined in the document has already been implemented and tested, as can be seen here: laysakura#30.
I would especially appreciate it if @sjvanrossum and @dahlbaek, who have recently collaborated with me on the laysakura/beam repository, could take a look and provide any comments or suggestions.
@laysakura and all: a little note to see whether interest has dwindled, or just other priorities, etc. It seems this had been taking shape and would be great to eventually get it in a state where we can get this merged into Beam.
@brucearctor For me, I still has interests but cannot prioritize Beam-related work in my company for a while 😞
It would be great if others lead the Rust SDK's development.
@brucearctor For me, I still has interests but cannot prioritize Beam-related work in my company for a while 😞 It would be great if others lead the Rust SDK's development.
Makes sense -- our abilities to devote work time to various efforts does change over time.
Sounds like a call for Any/All that are interested to consider stepping in and helping/contribute!
@brucearctor I have Coder/DoFn serialization and authoring functionality in the works that I've only been able to progress on again and off again, but and I'm happy to support contributors if they wish to contribute PRs (not sure if my remote branch is fully up to date, but I'll take a peek). My situation matches that of the other contributors, I've unfortunately had to prioritize my core role over this for the past few months.
Activity
gauravchak commentedon Oct 11, 2022
Thanks @bvolpato for pointing me to this #21089
This would be extremely useful for us at Discord. We use Rust heavily and we are using Beam (using python) for data processing. To reduce training serving skew this would be very beneficial.
brucearctor commentedon Oct 31, 2022
@gauravchak , any... Contributions welcome! Do advise if need some resources to get started, for example a related talk: https://www.youtube.com/watch?v=VsGQ2LFeTHY
nivaldoh commentedon Nov 1, 2022
Hi, I would like to express interest in working on the Rust SDK. I'll create an incubator fork soon.
nivaldoh commentedon Nov 1, 2022
.take-issue
nivaldoh commentedon Nov 12, 2022
Work is underway here. Progress may be slow, and early code will look quite rough. I'll be really happy to receive any feedback or collaboration opportunities.
dofinn commentedon Nov 12, 2022
@nivaldoh iv been looking for a reason to learn rust. Happy to take on any house keeping work that will slow you down
nivaldoh commentedon Nov 12, 2022
@dofinn I really appreciate the offer. Currently we have a few TODOs with improvement ideas which I'd be happy to describe in more detail, and we could also try to coordinate effort on the larger tasks as well (which I'm also planning to organize in the main README file) if you're interested. Feel free to open a PR directly in the fork or reach out to me by email (nivaldo.humbertoo@gmail.com) if you'd like.
esadler-hbo commentedon Dec 23, 2022
@nivaldoh thanks for doing this!
I will be an early adopter when you are ready for that.
nivaldoh commentedon Dec 24, 2022
@esadler-hbo thanks for the support!
There's still a lot of work to be done, and I try to keep an updated roadmap here if you or anyone else is interested in a quick overview of the current state of the implementation.
In particular, the user API is starting to take shape, and the snippet below (inspired by the new patterns set by the Typescript SDK) is now functional end-to-end:
To anyone interested, any early input on this format would be highly appreciated, as this is the current foundation that I'll be using for everything else. Any other contributions (including early code reviews, even if partial) would be awesome as well.
TommyCpp commentedon Dec 29, 2022
I also like to help! I have some experience with Rust but am pretty new to Beam or large-scale data processing framework
TommyCpp commentedon Jan 1, 2023
@nivaldoh I think reading the doc will only get me so far and I should probably start working on some implementation and see how it goes. Is there any coder/transform or other stuff you want my help with?
21 remaining items
robertwb commentedon Apr 13, 2023
Thank you @laysakura for rebooting this effort!
laysakura commentedon Apr 13, 2023
@robertwb Thank you for creating the basic mechanisms of Beam, such as ParDo and GBK.
@dahlbaek and I are now working on creating a more Rust-like, statically-typed pipeline based on your work. We would also appreciate your contribution to
laysakura/beambased on your extensive experience with the TypeScript SDK.sjvanrossum commentedon Apr 21, 2023
Oh, I seem to have missed some traffic on this issue. I received collaborator access to @nivaldoh's fork yesterday, but I'll move development over to @laysakura's fork. :)
I've got some work in progress for data channels on DataSource and DataSink and I'm currently drafting a change to serialization as mentioned on nivaldoh#22.
laysakura commentedon Apr 21, 2023
@sjvanrossum Thank you so much! I sent an invitation to add you as a collaborator of laysakura/beam.
laysakura commentedon May 14, 2023
I think it would be helpful to create design documents in order to align our goals and understanding. To start, I have written an initial version of a document titled "Custom Coders for the Beam Rust SDK".
A portion of the proposal outlined in the document has already been implemented and tested, as can be seen here: laysakura#30.
I would especially appreciate it if @sjvanrossum and @dahlbaek, who have recently collaborated with me on the laysakura/beam repository, could take a look and provide any comments or suggestions.
Of course, I welcome feedback from anyone.
brucearctor commentedon Sep 12, 2023
@laysakura and all: a little note to see whether interest has dwindled, or just other priorities, etc. It seems this had been taking shape and would be great to eventually get it in a state where we can get this merged into Beam.
laysakura commentedon Sep 12, 2023
@brucearctor For me, I still has interests but cannot prioritize Beam-related work in my company for a while 😞
It would be great if others lead the Rust SDK's development.
brucearctor commentedon Sep 12, 2023
Makes sense -- our abilities to devote work time to various efforts does change over time.
Sounds like a call for Any/All that are interested to consider stepping in and helping/contribute!
dahlbaek commentedon Sep 14, 2023
From my side I'm still interested in contributing, but I do it on my own time, and haven't had much to spare lately.
brucearctor commentedon Sep 14, 2023
@dahlbaek : Totally understandable, and one of the nice things about Open Source!
sjvanrossum commentedon Nov 28, 2023
@brucearctor I have Coder/DoFn serialization and authoring functionality in the works that I've only been able to progress on again and off again, but and I'm happy to support contributors if they wish to contribute PRs (not sure if my remote branch is fully up to date, but I'll take a peek). My situation matches that of the other contributors, I've unfortunately had to prioritize my core role over this for the past few months.
brucearctor commentedon Dec 30, 2023
Just found this --> https://github.com/swiftdiaries/beam-rust hadn't dug deep, unclear the extent of what inside it might be usable here.
sjvanrossum commentedon Feb 1, 2024
Seems like it didn't progress beyond "Hello, world!" unfortunately.
Restructure current modules into a single crate
CH-Abhinav commentedon Oct 24, 2026
What happened to this issue? Did everyone gave up on Rust in Beam?
Also check #40508 someone is working on Rust SDK prototype.