Skip to content
View sdaberdaku's full-sized avatar

Organizations

@trinodb

Block or report sdaberdaku

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don鈥檛 include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user鈥檚 behavior. Learn more about reporting abuse.

Report abuse
sdaberdaku/README.md

Hi, I'm Sebastian 馃憢

Head of Platform and Data Engineering at Cardo AI. I build data platforms on Kubernetes and AWS, mostly with Trino, Spark, Airflow, Kafka, Iceberg and Delta Lake. Before that I did a PhD and a postdoc in Information Engineering at the University of Padua, working on protein docking, HPC and clinical machine learning.

What I work on

  • Trino at scale on EKS: spot workers, Karpenter node pools on local NVMe, KEDA autoscaling, query retries and spill to disk, Trino Gateway
  • Lakehouses on S3 with Iceberg, Delta Lake and the AWS Glue Data Catalog, fed by Postgres CDC through Kafka and Debezium
  • Multi-account AWS with Terraform, GitOps with ArgoCD, observability with the Grafana LGTM stack

Open source

I contribute upstream to the projects I run in production:

  • trinodb/charts: 17 merged PRs, including KEDA worker autoscaling, graceful worker shutdown, NetworkPolicy, the JMX exporter, and PDBs, lifecycle hooks and rollout strategies for Trino Gateway. Nominated as a Trino Champion in 2024 for this work.
  • trinodb/trino: Delta Lake connector fixes (transaction conflict retries, _delta_log caching) and a SQL routine compiler fix
  • apache/airflow: AWS STS region support for the HashiCorp Vault provider

Projects

Project What it does
kafka2delta Streams Kafka topics into Delta Lake tables. On PyPI.
nodereaper Removes empty and unhealthy Kubernetes nodes when autoscalers fail to scale down
gluecat Spark catalog plugin for the AWS Glue Data Catalog: one Glue catalog ID and IAM role per Spark catalog, Delta Lake tables, no Hive client. On Maven Central.
aws-glue-data-catalog-spark-client Lets Apache Spark, including Spark 4, use the AWS Glue Data Catalog as its metastore
spark-with-glue Apache Spark Docker image with Glue metastore support built in
spark-images Apache Spark 3.5 to 4.2 images for Python 3.11 to 3.15, amd64 and arm64, on GHCR
charts Helm charts for Spark Connect, Spark History Server, Trino, Karpenter and Kyverno
pysparkonk8s Airflow provider that runs @task.pyspark tasks as Spark drivers on Kubernetes, with executor pods created and removed per task. On PyPI.
wkNNMI R package on CRAN for mutual-information-weighted k-NN imputation
baggage-conveyor-assignment Assigns arriving flights to airport baggage reclaim conveyors with a mixed-integer model (OR-Tools)

Talks and writing

  • Trino Summit 2024: Optimizing Trino on Kubernetes (slides)

Articles on Medium:

Research

400+ citations, h-index 10. Papers in Bioinformatics, BMC Bioinformatics, Journal of Neurology, Machine Learning, BMC Medical Informatics and Decision Making, The Journal of Supercomputing and The International Journal of High Performance Computing Applications, plus a European patent application on predicting ALS progression (grant intended). Code for protein surfaces and interfaces: VoxSurfMPI, VoxMeshSurfOpenMP, PoCavEDT, PPIprediction, AntibodyInterfacePrediction, HSS-PPI. Clinical data imputation: icu-lab-imputation, als-registry-imputation. Metagenomics: sbv-improver-medic, one of the three winning entries of the sbv IMPROVER MEDIC challenge.

Elsewhere: Resume 路 LinkedIn 路 Medium 路 Google Scholar 路 ORCID

Pinned Loading

  1. charts charts Public

    Helm charts for Spark Connect, Spark History Server, Trino, Karpenter and Kyverno

    Go Template 18 2

  2. kafka2delta kafka2delta Public

    A Python package for streaming data from Kafka to Delta Lake

    Python 1 1

  3. gluecat gluecat Public

    AWS Glue Data Catalog client for Apache Spark

    Scala

  4. aws-glue-data-catalog-spark-client aws-glue-data-catalog-spark-client Public

    AWS Glue Data Catalog client for Apache Spark

    1

  5. apache-airflow-providers-pysparkonk8s apache-airflow-providers-pysparkonk8s Public archive

    Superseded by sdaberdaku/pysparkonk8s (airflow-provider-pysparkonk8s on PyPI)

    Python 2 1

  6. nodereaper nodereaper Public

    A Kubernetes tool for automatically detecting and cleaning up empty nodes in your cluster.

    Python 1