getting-started VS patterns-components

Compare getting-started vs patterns-components and see what are their differences.

getting-started

This repository is a getting started guide to Singer. (by singer-io)

patterns-components

Patterns Open-source Components (by patterns-app)
Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
getting-started patterns-components
16 1
1,220 117
0.1% 0.9%
0.0 4.2
about 1 year ago almost 1 year ago
Makefile Python
- BSD 3-clause "New" or "Revised" License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

getting-started

Posts with mentions or reviews of getting-started. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-05-04.
  • Why do companies still build data ingestion tooling instead of using a third-party tool like Airbyte?
    1 project | /r/dataengineering | 6 Dec 2023
    Coincidently, I saw a presentation today on a nice half-way-house solution: using embeddable Python libraries like Sling and dlt - both open-source. See https://www.youtube.com/watch?v=gAqOLgG2iYY There is also singer.io which is more of a protocol than a library, but can also be installed although it looks like it is a true community effort and not so well maintained.
  • Data sources episode 2: AWS S3 to Postgres Data Sync using Singer
    2 projects | dev.to | 4 May 2023
    Singer is an open-source framework for data ingestion, which provides a standardized way to move data between various data sources and destinations (such as databases, APIs, and data warehouses). Singer offers a modular approach to data extraction and loading by leveraging two main components: Taps (data extractors) and Targets (data loaders). This design makes it an attractive option for data ingestion for several reasons:
  • Design patter for Python ETL
    2 projects | /r/dataengineering | 2 Dec 2022
  • Launch HN: Patterns (YC S21) – A much faster way to build and deploy data apps
    6 projects | news.ycombinator.com | 30 Nov 2022
    Thanks for chipping in.

    I’ve been leaning towards this direction. I think I/O is the biggest part that in the case of plain code steps still needs fixing. Input being data/stream and parameterization/config and output being some sort of typed data/stream.

    My “let’s not reinvent the wheel” alarm is going of when I write that though. Examples that come to mind are text based (Unix / https://scale.com/blog/text-universal-interface) but also the Singer tap protocol (https://github.com/singer-io/getting-started/blob/master/doc...). And config obviously having many standard forms like ini, yaml, json, environment key value pairs and more.

    At the same time, text feels horribly inefficient as encoding for some of the data objects being passed around in these flows. More specialized and optimized binary formats come to mind (Arrow, HDF5, Protobuf).

    Plenty of directions to explore, each with their own advantages and disadvantages. I wonder which direction is favored by users of tools like ours. Will be good to poll (do they even care?).

    PS Windmill looks equally impressive! Nice job

  • After Airflow. Where next for DE?
    13 projects | /r/dataengineering | 15 Nov 2022
    Mage uses the Singer Spec (https://github.com/singer-io/getting-started/blob/master/docs/SPEC.md), the data engineer community standard for building data integrations. This was created by Stitch and is widely adopted.
  • Basic data engineering question.
    2 projects | /r/dataengineering | 16 Oct 2022
    I like the Singer Protocol, and the various tools that use it. These include meltano, airbyte, stitch, pipelinewise, and a few others
  • I have hundreds of API data endpoints with different schemas. How do I organize?
    1 project | /r/dataengineering | 10 Oct 2022
    Have you looked into using a dedicated data integration tool? Have you heard of Singer and the Singer Spec? https://github.com/singer-io/getting-started/blob/master/docs/SPEC.md
  • CDC (Change Data Capture) with 3rd party APIs
    1 project | /r/dataengineering | 23 Sep 2022
    Or you could build your own such system and run it on Airflow, Prefect, Dagster, etc. Check out the Singer project for a suite of Python packages designed for such a task. Quality varies greatly, though.
  • Questions about Integration Singer Specification with AWS Glue
    1 project | /r/dataengineering | 26 Aug 2022
    Our team is building out a data platform on AWS glue, and we pull from a variety of data sources including application databases and third party SaaS APIs. I have been looking into ways to standardize pulling data from different sources. The other day I came across the [Singer Specification](https://github.com/singer-io/getting-started) and was interested learning more about it. If anyone has experience working with Singer specifications, I would love to hear more about:
  • Anybody have experience creating singer taps and targets?
    1 project | /r/dataengineering | 30 Jan 2022
    I just read the readme of the Singer getting started repo and am excited to write my first tap! I’m thinking instead of writing a new Airflow DAG whenever I want to pipe API data into our data warehouse I could write a singer tap and use Stitch instead. Is that a stupid idea?

patterns-components

Posts with mentions or reviews of patterns-components. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-11-30.
  • Launch HN: Patterns (YC S21) – A much faster way to build and deploy data apps
    6 projects | news.ycombinator.com | 30 Nov 2022
    Hey HN, I’m Ken, co-founder of Patterns (https://www.patterns.app/) with with my friend Chris. Patterns gets rid of repetitive gruntwork when building and deploying data applications. We abstract away the micro-management of compute, storage, orchestration, and visualization, letting you focus on your specific app’s logic. Our goal is to give you a 10x productivity boost when building these things. Basically, we’re Heroku for AI apps. There’s a demo video here: https://www.patterns.app/videos/homepage/demo4k.mp4.

    We built Patterns because of our frustration trying to ship data and AI projects. We are data scientists and engineers and have built data stacks over the past 10 years for a wide variety of companies—from small startups to large enterprises across FinTech, Ecommerce, and SaaS. In every situation, we’ve been let down by the tools available in the market.

    Every data team spends immense time and resources reinventing the wheel because none of the existing tools work end-to-end (and getting 5 different tools to work together properly is almost as much work as writing them all yourself). ML tools focus on just modeling; notebook tools are brittle, hard to maintain, and don’t help with ETL or operationalization; and orchestration tools don’t integrate well with the development process.

    As a result, when we worked on data applications—things like a trading bot side-project, a risk scoring model at a startup, and a PLG (product-led growth) automation at a big company—we spent 90% of our time doing things that weren’t specific to the app itself: getting and cleaning data, building connections to external systems and software, and orchestrating and productionizing. We built Patterns to address these issues and make developing data and AI apps a much better experience.

    At its core, Patterns is a reactive (i.e. automatically updating) graph architecture with powerful node abstractions: Python, SQL, Table, Chart, Webhook, etc. You build your app as a graph using the node types that make sense, and write whatever custom code you need to implement your specific app.

    We built this architecture for modularity, composability, and testability, with structurally-typed data interfaces. This lets you build and deploy data automations and pipelines quickly and safely. You write and add your own code as you need it, taking advantage of a library of forkable open-source components—see https://www.patterns.app/marketplace/components and https://github.com/patterns-app/patterns-components.git .

    Patterns apps are fully defined by files and code, so you can check them into Git the same way you would anything else—but we also provide an editable UI representation for each app. You work at either level, depending on what’s convenient, and your changes propagate automatically to the other level with two-way consistency.

    One surprising thing we’ve learned while building this is that the problem actually gets simpler when you broaden the scope. Individual parts of the data stack that are huge challenges in isolation—data observability, lineage, versioning, error handling, productionizing—become much easier when you have a unified “operating system”.

    Our customers include SaaS and ecommerce co’s building customer data platforms, fintech companies building lending and risk engines, and AI companies building prompt engineering pipelines.

    Here are some apps we think you might like and can clone:

What are some alternatives?

When comparing getting-started and patterns-components you can also consider the following projects:

airbyte - The leading data integration platform for ETL / ELT data pipelines from APIs, databases & files to data warehouses, data lakes & data lakehouses. Both self-hosted and Cloud-hosted.

dcp - Universal data copy

AWS Data Wrangler - pandas on AWS - Easy integration with Athena, Glue, Redshift, Timestream, Neptune, OpenSearch, QuickSight, Chime, CloudWatchLogs, DynamoDB, EMR, SecretManager, PostgreSQL, MySQL, SQLServer and S3 (Parquet, CSV, JSON and EXCEL).

orchest - Build data pipelines, the easy way 🛠️

meltano

common-model

tap-hubspot

Mage - 🧙 The modern replacement for Airflow. Mage is an open-source data pipeline tool for transforming and integrating data. https://github.com/mage-ai/mage-ai

tap-spreadsheets-anywhere

singer-sdk

astro - Astro SDK allows rapid and clean development of {Extract, Load, Transform} workflows using Python and SQL, powered by Apache Airflow. [Moved to: https://github.com/astronomer/astro-sdk]

astro-sdk - Astro SDK allows rapid and clean development of {Extract, Load, Transform} workflows using Python and SQL, powered by Apache Airflow.