Ex-Citus here. The open sourced shard rebalancer blocks writes to the shard being moved. Online rebalancer (closed source) uses logical replication and doesn't block writes to shards being moved, except for a brief period. Everything is the same except how shard moves are implemented.
Yeah, echo'ing on here to be extra clear. What is open-sourced holds a write-lock while rebalancing. So that it rebalances sure, but it's only marginally better than a dump/restore. You can still read yes, but I'm not sure of many applications that can be okay with no writes flowing to a table for hours while rebalancing is happening.
Got it, thank you! I'm just wondering about whether this limitation can be alleviated / worked around by combining sharding and replication. In that case, I would expect the primary DB cluster to maintain the write lock during shard rebalancing, while allowing writes to replicas (upon primary cluster's rebalancing finish, the roles would reverse and rebalancing would be applied to replicas, while primary is already write lock-free).
Congratulations and thanks to all involved! Do I understand correctly that, at this time, while PG has data sharding and partitioning capabilities, it does not offer some related features found in Citus Open Source (shard rebalancer, distributed SQL engine and transactions) and in Citus on Azure aka Hyperscale (HA and streaming replication, tenant isolation - I'm especially interested in the latter one)? Are there any plans for PG to move toward this direction?
Streaming replication is supported as per https://www.postgresql.org/docs/current/warm-standby.html#ST... . You can likely build shard rebalancing and tenant isolation on top of the existing logical replication featureset. There are some groundwork features for distributed transactions (PREPARE TRANSACTION, COMMIT PREPARED, ROLLBACK PREPARED), but they're not supported as such.
Congratulations! I'm curious about what equity management platforms have you used during your journey since 2012 and what platform you use now. I would venture to guess that the latter is Carta, since they have pre- and post-IPO support and relevant high(er)-end features, including private liquidity. Have you been offering liquidity in any form to your employees during the private phase of your company?
Carta's most popular functionality (cap table and board management, 409A valuation etc.) represents a subset of what AngelList Stack offers. On the other hand, the former offers some high(er)-end functionality that is currently missing in the latter (including private liquidity, investment scenario modeling, audit compliance options, complex reports as well as pre-IPO and post-IPO support).
This is pretty cool, kudos to the author. However, I'm curious about why would you want to use a genetic algorithm (GA) for what is clearly a relatively straightforward computer vision (CV) problem. I would argue that the GA-based evolutionary solution is no simpler and, more importantly, will not only never outperform the CV-based one in terms of accuracy and speed, but will be orders of magnitude slower.
You are right in this particular case. CV may effectively solve this particular problem, but will be useless if yellow cars are replaced with blue trucks, or if starting angle will be slightly different, or if other cars will start moving as well, etc, etc.
Genetic algorithm may be useful if one needs to animate cars in a game and making the algorithm less deterministic will make the game look better.
Yeah, the GA is not the best option for self-driving tasks, agree.
The reason why I chose GA is because I wanted to play around with this algorithm at the first place. And only after that I’ve tried to come up with some artificial problem I could try to solve with it :)
I'm glad that we're on the same page on this. Your motivation is totally understandable and the end result (including relevant blog post) is both very nicely done and educational. Thank you for this and your other resources that you share online! :-)
I think that the most fascinating fact about this upcoming IPO is that, to the best of my knowledge, GitLab is the first remote-only (i.e., no-headquarters) company in the world filing for an IPO. In any case (meaning even if I'm wrong that they are the first), I wish them luck and welcome the competition.
It's interesting to see that GitLab has adopted dual-class common stock structure, though I'm certainly not surprised. Some people and organizations (including some investment firms and stock exchanges) are not fans of multi-class equity structures, but I'm not sure that this fact would have any significant negative impact on GitLab's IPO. At least, these popular 10:1 or slightly less popular 20:1 voting schemes are not as aggressive as Palantir's three-class stock structure, where Class F (just three founders - out of five!) would hold practically 50% of the total voting power.
One strange thing that I've noticed while browsing through this S-1 document, though, is the lack of mention of GitLab's co-founder (Dmitriy Zaporozhets) in the stockholders table (p. 148). I would expect him to hold about the same ownership of the Class B shares as the other co-founder Sytse Sijbrandij holds, but definitely more than 5%, which requires a disclosure there. I'm not sure how to interpret the absence of his name.
> each person known by us to be the beneficial owner of more than 5% of the outstanding shares of our Class A or Class B common stock; and
It seems that Dmitriy owns less than 5%.
As usual though, the wording in here is unnecessarily opaque and overcomplicated — it's possible there's some other technicality that allows him to be omitted from the list.
> I think that the most fascinating fact about this upcoming IPO is that, to the best of my knowledge, GitLab is the first remote-only (i.e., no-headquarters) company in the world filing for an IPO.
"Akshually" that was Coinbase [0]. Although maybe not, because they did a direct listing so not strictly an IPO. Matt Levine talks about both these points in his Feb 25th 2021 Money Stuff newsletter.
I'm not sure why that would be the case here. Unless, for some reason(s), he has sold most of his share of the company to Sytse, I don't see why Dmitriy would own less stock than his co-founder. Especially considering that Dmitriy has started the relevant open source project prior to Sytse's involvement and then, after the company's formation, has actively participated in technical decision making and software development.
Such thing surely does exist: https://cdk8s.io. And here's the relevant announcement blog post: https://aws.amazon.com/blogs/containers/introducing-cdk-for-....