flow
ksuid
flow | ksuid | |
---|---|---|
10 | 38 | |
506 | 4,702 | |
5.3% | 1.2% | |
9.7 | 3.1 | |
4 days ago | 7 months ago | |
C++ | Go | |
GNU General Public License v3.0 or later | MIT License |
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.
flow
-
Unexpected downsides of UUID keys in PostgreSQL
We use a macaddr8 that embeds a wall-clock timestamp (so they're ascending order, achieving data locality) with some additional randomness. It's worked really well for us:
https://github.com/estuary/flow/blob/master/supabase/migrati...
we use macaddr8 instead of bigint, because it has a postgres serialization / JSON encoding which lossless-ly round-trips with browsers and it works well with PostgREST. The same CANNOT be said for bigint, which is a huge footgun.
-
Need Advice on Real-Time Data Synchronization from PostgreSQL to BigQuery: Airbyte vs. CloudQuery?
I can't claim to know much about CloudQuery, but we are an open-source platform with CDC connectors from PostgreSQL and materializations to BQ and elsewhere. We also have fully-managed connectors if you don't want to deal with hosting.
-
DAG orchestration for streaming data?
This is essentially how we model things in Flow (disclosure: I work there). We call them Derivations, which are data products that are built (derived) from other data products. Each data product (we call them Collections) is backed by a set of append-only logs, so they can be read by many different consumers at different times. IDK if our product can work for you since we don't (yet) support stuff like MQTT, but there's a pretty generous free tier if you'd be able to push the data over HTTP. Either way, I just think it's cool that others have independently arrived at similar ideas about how to model streaming tasks!
- quickly replace a small airbyte instance in my stack
-
Advise on incremental process of Kafka data on Snowflake
We Estuary Git Docs have an open-source connector for Kafka -> Snowflake that could perform the tasks of a) flattening the data and b) removing duplicates via exactly once end to end delivery
-
Ask HN: Who is hiring? (September 2022)
Estuary Technology | Backend Engineer | Developer Evangelist | Rust, Go | REMOTE OR HYBRID | UTC-7 to UTC+2
Regional offices in NYC & Columbus, OH
Estuary (https://www.estuary.dev/) is the first real-time Data Operations platform for future-proof pipelines, including both historical and real-time data set up in minutes.
Our team is rapidly growing, VC funded and led by two successful, repeat founders.
We primarily develop in Rust and Go and are heavily built on top of gazette which is an internally developed streaming engine.
Flow: https://github.com/estuary/flow
Gazette: https://gazette.readthedocs.io/en/latest/
Backend Engineer: https://www.estuary.dev/about/#backend
Developer Evangelist: https://www.estuary.dev/about/#developerevangelist
^This is an exciting opportunity to make direct impact and shape user perception of a new product that brings a fresh experience to working with real-time data.
As this is a unique role, we are open to a variety of personas (data engineers, backend developers, Solutions Engineers and of course DevRel professionals).
Estuary offers full health benefits, competitive salary, unlimited PTO, 401K, equity, and a culture that values trust, transparency, and a flexible work environment to optimize your work/life balance.
To apply, send your resume and any questions to [email protected]
-
Who's Hiring? - August 2022
Flow Gazette We are looking for a backend engineer who is early in their career (around 1-3 years of industry experience) to join our team.
-
Ask HN: Who is hiring? (July 2022)
Estuary Technology | Junior Backend Engineer | Rust, Go | REMOTE OR HYBRID | Regional offices in NYC & Columbus, OH
Estuary (https://www.estuary.dev/) is the first real-time Data Operations platform for future-poof pipelines, including both historical and real-time data set up in minutes.
Our team is rapidly growing, VC funded and led by two successful, repeat founders.
We primarily develop in rust and go and are heavily built on top of gazette which is an internally developed streaming engine.
Flow: https://github.com/estuary/flow
Gazette: https://gazette.readthedocs.io/en/latest/
We are looking for a junior backend engineer with 2-3 years of industry experience.
For engineers who have an unquenched curiosity and drive to solve complex distributed systems problems, this is an opportunity to advance your career alongside a team of subject matter experts.
We are focused on expanding our catalog of open-source data connectors and building out our managed service platform.
ESTIMATED COMPENSATION: $110,000 - $150,000.
Estuary offers full health benefits, competitive salary, unlimited PTO, 401K, equity, and a culture that values trust, transparency, and a flexible work environment to optimize your work/life balance.
Email your resume to [email protected] to apply!
-
On 2022-04-05, the default branch will be renamed from “master” to “main”
It does seem like a weird bug that this would cause errors https://github.com/estuary/flow/runs/5642694619?check_suite_... seems like it should be some kind of warning instead of an error?
-
Ask HN: Is there a way to subscribe to an SQL query for changes?
where you'd subscribe for live updates.
[1]: https://github.com/estuary/flow
ksuid
- What happens after 100 years?
-
Zero Downtime Postgres Upgrades
OP here - we avoid sequences in all but one part of our application due to a dependency. We use [KSUIDs][1] and UUID v4 in various places. This one "gotcha" applies to any sequence, so it's worth calling out as general advice when running a migration like this.
[1]: https://segment.com/blog/a-brief-history-of-the-uuid/
-
Bye Sequence, Hello UUIDv7
UUID v4 isn't large enough to prevent collisions, that is why segment.io created https://github.com/segmentio/ksuid which is 160bit vs the 128bit of a UUIDv4.
- You Don't Need UUID
- A Brief History of the UUID
-
Type-safe, K-sortable, globally unique identifier inspired by Stripe IDs
Assuming you don't need to use UUIDv7 (or any UUID's) then https://github.com/segmentio/ksuid provides a much bigger keyspace. You could just append a string prefix if you wanted to namespace, but the chance of collisions of a KSUID is many times smaller than a UUID of any version.
-
Unexpected downsides of UUID keys in PostgreSQL
KSUID's are have temporal-lexicographical order plus 128 bits of entropy, which is more than UUIDv4.
https://github.com/segmentio/ksuid
-
UUIDs are so much better than autoincrementing ids and it's not even close
That's why you use ksuid (https://segment.com/blog/a-brief-history-of-the-uuid/) or, if you're willing to go with a draft spec you could go with the new UUID formats https://www.ietf.org/archive/id/draft-ietf-uuidrev-rfc4122bi...
-
What Happened to UUIDv2?
Interesting in more history of UUIDs? Twilio Segment's blog has an amazing history lesson about how they came to be.
-
Which UUID package do you use? and why?
I use the ksuid from segment. https://github.com/segmentio/ksuid
What are some alternatives?
realtime - Broadcast, Presence, and Postgres Changes via WebSockets
ulid - Universally Unique Lexicographically Sortable Identifier (ULID) in Python 3
timely-dataflow - A modular implementation of timely dataflow in Rust
pg-ulid - ULID Functions for PostgreSQL
rethinkdb_rebirth - The open-source database for the realtime web.
nanoid - A tiny (124 bytes), secure, URL-friendly, unique string ID generator for JavaScript
pldb - PLDB: a Programming Language Database. A computable encyclopedia about programming languages.
ulid-mssql - Implementation of ULID generator For Microsoft SQL Server
Hasura - Blazing fast, instant realtime GraphQL APIs on your DB with fine grained access control, also trigger webhooks on database events.
python-ksuid - A pure-Python KSUID implementation
github-actions - A GitHub Action for installing and configuring the gcloud CLI.
uuid7 - UUID version 7, which are time-sortable (following the Peabody RFC4122 draft)