jdotjdot
I fully agree with you that for many data science cases, you're likely to stick with batching. Where I see Materialize to be the most useful, and where I'd be inspired to use it and transform how we do things, would be the overlap between when Analytics team are writing definitions (e.g., what constitutes an "active user"?) and are typically doing so on the warehouse, but then I want those definitions to be used, up to date, and available everywhere in my stack, including analytics, my operational database, and third-party tools like marketing tools.
Personally, I'm less interested in one-off migrations like you're suggesting. What I really want is to have something like Materialize embedded in my Postgres. (Such a thing should be doable at minimum by running Materialize + Debezium side-by-side with Postgres and then having Postgres interact with Materialize via foreign data wrappers. It would need some fancy tooling to make it simple, but it would work.) In such a scenario, a Postgres + Materialize combo could serve as the "center of the universe" for all the data AND business definitions for the company, and everything else stems from there. Even if we used a big data warehouse in parallel for large ad hoc queries (which I imagine Materialize wouldn't handle well, not being OLAP), I would ETL my data to the warehouse from Materialize--and I'd even be able to include ETLing the data from the materialized views, pre-calculated. If I wanted to send data to third-party tools, I'd use Materialize in conjunction with Hightouch.io to forward the data, including hooking into subscriptions when rows in the materialized views change.
For what I propose, there are some open questions about data persistence, high availability, the speed to materialize an initial view for the first time, and backfilling data, among other things. But I think this is where Materialize has a good chance of fundamentally changing how analytical and operational data are managed, and I think there's a world where data warehouses would go away and you'd just run everything on Postgres + Materialize + S3 (+ Presto or similar for true OLAP queries). I could see myself using Materialize for log management, or log alerting. I'm just as excited to see pieces of it embedded in other pieces of infrastructure as I am to use it as a standalone product.
The biggest issue I see is that it requires you to be all-in on Materialize, and as a warehouse (or as a database for that matter), it's surely not as mature as Snowflake or Postgres.
The most blatant example is the countdown tasks. Celery has a very strange implementation of these (meant to be broker agnostic) where it consumes the task from queue, sees in the task custom headers (which is meaningless to RabbitMQ) that it should be delayed and then sits on the task and takes a new task. That results in heavy memory load on your celery client holding all these tasks in memory, and if you have acks_late set, RabbitMQ will be sitting on many tasks that are claimed by a client but not acked and _also_ have to sit in memory. But that is 100% a celery problem, not Rabbit, and we solved it by overriding countdowns to use DLX queues instead so that we could use Rabbit-native features. Not surprisingly, Rabbit performs a lot better when you’re using native built-in features.
I have a friend who is an extreme night owl who has long said then when he sleeps matters far more than how much—but in a negative sense. Even if he gets as much as 10 hours of sleep, if he has to go to sleep early in order to wake up early (6-7am), he’ll be miserable. If he goes to sleep at 3am and wakes up at 9:30am, he’ll feel great despite having gotten much less sleep.
WayUp (YC W15) is hiring back end engineers to guide students in their careers
Instagram accelerating deprectation of API
I think judging a 6-year old startup based on what its product was one year into the company is rather unreasonable. To put this into perspective, 80% of the company's lifespan has occurred after the grandparent's negative experience. Things change dramatically in that period of time.
All I need now is for them to add the ability to push my events in real time to my Kafka cluster. (Please add that!)
Engineer? Hiring all roles to help students get jobs at WayUp
WayUp (YC W15) Acquires Looksharp
Please see open roles below:
Senior iOS Engineer - https://www.wayup.com/joinus/#544372
Senior Data Scientist - https://www.wayup.com/joinus/#512217
DevOps Engineer - https://www.wayup.com/joinus/#574860
Recommendations Systems Engineer - https://www.wayup.com/joinus/#571492
Head of Product Intelligence - https://www.wayup.com/joinus/#575145
Senior Backend Engineer - https://www.wayup.com/joinus/#120804
Data Scientist - Applied NLP - https://www.wayup.com/joinus/#580829
We're also hiring for various business roles - check them out here: wayup.com/joinus
Want to shadow a YC partner? Apply on WayUp for your chance to win
WayUp (YC W15) Is Hiring – Battle Youth Unemployment with CSS and JavaScript
Blowing up HTML5 video and mapping it into 3D space (2010)
Maybe we could even band together and get a preferred negotiated rate Groupon-style if enough of us migrate simultaneously.
Use Your JavaScript Skills for Good at WayUp (YC W15)
WayUp is the largest marketplace for college students to find part-time jobs, internships, and full-time entry level jobs for graduating students. Everyone remembers their first job. And now, we’re helping everyone get their first job. We democratize hiring by enabling all companies, no matter how big a recruiting team you have (or don't), to easily reach amazing students all over the country. You can read more about us at http://press.wayup.com .
We are one of the quickest-growing companies from our batch (we launched a little over a year ago and we're already 32+ people!), and we're growing out our engineering team and looking for great hackers who love getting features in the hands of users. We're absolutely obsessed with our users and making the experience of finding a job better, and you should be too. We raised our Series A and we're looking for all types of roles:
- Senior Engineering Lead (Python, previous leadership experience - help us scale our team and develop great engineering processes)
- Full-stack developer (Python/Django, Javascript)
- Back-end developer (Python/Django, knowledge of or willingness to learn DevOps)
- Front-end developer (AngularJS preferred but not required)
- B2B Product Manager (previous PM experience ideal)
- Multiple engineering internships (iOS, Python)
- Don't see what you're looking for? Reach out anyway!
We're based in New York City and we're tons of fun--we work with college students all day long :)
Come join us! https://www.wayup.com/joinus/
FB Messenger and Snapchat declined in popularity this year among college kids
WayUp is the largest marketplace for college students to find part-time jobs, internships, and full-time entry level jobs for graduating students. Everyone remembers their first job. And now, we’re helping everyone get their first job. We democratize hiring by enabling all companies, no matter how big a recruiting team you have (or don't), to easily reach amazing students all over the country.
We are one of the quickest-growing companies from our batch, and we're growing out our engineering team and looking for great hackers who love getting features in the hands of users. We're absolutely obsessed with our users and making the experience of finding a job better, and you should be too. We're looking for all types of roles, including a senior engineering hire to help us scale:
- Senior Engineering Lead (Python, previous leadership experience - help us scale our team and develop great engineering processes)
- Back-end developer (Python/Django, excited to work with tools like Elasticsearch, Aloglia, Redis, etc.)
- Jr iOS developer
- Designer (UX/Graphic/HTML/CSS)
- Don't see what you're looking for? Reach out anyway!
We're based in New York City and we're tons of fun--we work with college students all day long :)
Come join us! https://www.wayup.com/joinus/