HackerTrans
TopNewTrendsCommentsPastAskShowJobs

ragulpr

no profile record

Submissions

Zen of Batch Pipelines – A recipe to reduce cognitive load

ragulpr.github.io
7 points·by ragulpr·قبل سنتين·0 comments

comments

ragulpr
·السنة الماضية·discuss
This pattern is really meaningful conceptually but the tricky thing is to not create a mess in the process.

If it's too easy to branch people will do so and the (knowledge) economics scale disappears (and we'll have a mess).

If the common data definition is too hard to branch from no experiments will happen (slow).

I think most tech for this seem to make it too easy, and in the process injecting a bunch of dependencies that makes it slow and harder to access. May have changed since I last looked.

I found that the simple pattern of versioned paths/table names as `s3://mybucket/mystage/version=42/` or `my_table_v42` puts a high enough evolutionary cost on branching (as consumers need to explicitly adapt) while it also doesn't have the costs associated with using special tech (legacy/lock in/dependencies).

It's also searchable on github/slack/etc if done right.
ragulpr
·قبل سنتين·discuss
Love this idea! Biggest hurdle though have been to have predictable Auth&IO across multiple Python/Scala versions and all other things (Spark, orchestrators, CLI's of teams of varying types of OS etc etc) add to that access logs.

SF3s/boto/botocore versions x Scala/Spark x parquet x iceberg x k8s etc readers own assumptions makes reading from S3 alone a maintenance and compatibility nightmare.

Will the mounted system _really_ be accessible as local fs and seen as such to all running processes? No surprises? No need for python specific filesystem like S3Fs?

If so then you will win 100% I wouldn't even care about speed/cost if it's up to par with s3
ragulpr
·قبل 3 سنوات·discuss
Right, some laws are just ftp-dragged & dropped to prod, understanding that it doesn't compile yet. But if legislator managed to express the _intention_ the courts will over time add and make all test cases pass.

I'm sure the mentality of a PHP developer running a successful but insane legacy site is a better model for this than a perfect OCAML project :)