Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
bdarnell
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
9 ms
·
31.
▲
by
bdarnell
9y ago
Spanner offers "external consistency", which is similar to linearizability. CockroachDB offers serializability (as the default isolation level). Most other SQL databases offer serializability as their highest isolation level, but
32.
▲
by
bdarnell
9y ago
There's a lot of complexity here, but the short version is that nodes cannot quite come and go freely. A replica set keeps track of its members; a quorum of the existing members must vote to admit a new node, or to remove one. Note tha
33.
▲
by
bdarnell
9y ago
That's an important point. With mobile applications that support offline usage, you can no longer assume a single global source of truth, and the application as a whole is AP. However, I'd argue that this tilts the balance even mo
34.
▲
by
bdarnell
9y ago
Yes, that's correct. If you are partitioned away from the lease holder, then you can't read until either the partition heals, or the lease expires and a new lease is granted to a node that you can reach. Writes require the lease t
35.
▲
The Limits of the CAP Theorem
(cockroachlabs.com)
182 points
by
bdarnell
9y ago
|
44 comments
36.
▲
by
bdarnell
9y ago
One of the post's points is that UUIDs will scatter your writes across the database, and that for this reason you want a (more or less) sequential key as your primary key. This crucially depends on both your database technology and you
37.
▲
by
bdarnell
9y ago
In addition to being incompatible with (some) third-party libraries, pypy tends to use significantly more memory than cpython. It's also slower than cpython for scripts that don't run long enough to warm up the JIT, so you probabl
38.
▲
by
bdarnell
9y ago
The big constraint (aside from backwards compatibility) is performance: Guido has indicated that he is unwilling to accept much (if any) slowdown of single-threaded code in order to remove the GIL. It's (relatively) easy to remove the
39.
▲
by
bdarnell
9y ago
(Cockroach Labs CTO here) > > But you don't need an atomic clock to get Spanner's guarantees. This comment continues "...but GPS clock-sources will do just fine for Spanner's 6ms quantum". Providing Spanner&#x
40.
▲
by
bdarnell
9y ago
We have started parallelizing our tests with the new subtest feature: leaktest in the top-level test, t.Parallel in the subtests. This means we only check for leaks in between batches of parallel subtests. This works OK for us for now since
41.
▲
by
bdarnell
9y ago
This bootstrapping problem is tricky. We publish kubernetes templates at https://github.com/cockroachdb/cockroach/tree/master/cloud/k... that contain our current best solution for the join/init
42.
▲
by
bdarnell
9y ago
I talk about this in the presentation I linked in another subthread ( https://www.cockroachlabs.com/community/tech-talks/challenge... ). The key to getting good performance out of any GC is to generate as little gar
43.
▲
by
bdarnell
9y ago
Thanks v3ss0n!
44.
▲
by
bdarnell
9y ago
Currently, you need to run one node without --join for the initial bootstrapping (as soon as this bootstrapping is complete, you can and should restart it with --join to get everything into a homogenous configuration). I was hoping to make
45.
▲
by
bdarnell
9y ago
(Cockroach Labs co-founder) I gave a talk on exactly this subject at the ACM Applicative conference last year: https://www.cockroachlabs.com/community/tech-talks/challenge... Overall we've been happy with the
46.
▲
by
bdarnell
9y ago
Ah, right. We did turn on TCP keepalives so we probably don't need a protocol-level ping (although we often deploy behind haproxy, so tcp keepalives need to be configured at each hop)
47.
▲
by
bdarnell
9y ago
(Cockroach Labs CTO) Yes, the commit identifiers sound like something we could use, as long as they're not tied too closely to pg's WAL LSNs. For us, the token would be a 96-bit hybrid logical timestamp, and we'd want semanti
48.
▲
by
bdarnell
10y ago
(disclosure: CockroachDB founder) The reason I've heard is that Spanner uses a separate mutation API instead of SQL DML because of a quirk of its transaction model. Writes within a transaction are not visible to subsequent reads within
49.
▲
by
bdarnell
10y ago
I think "other risky servers" may refer to the lesser-known servers that streisand includes, like shadowsocks.
50.
▲
by
bdarnell
10y ago
I've used streisand on DO (while traveling in China) and it worked well. There's also a similar project called algo[1] which provides a single protocol with maximum security, in contrast to streisand's multi-protocol flexibil
51.
▲
by
bdarnell
10y ago
The raft paper states that its use of an explicit leader election was chosen for understandability, not performance. Leaderless systems can potentially improve performance, especially when replicas are far apart (so you don't have the
52.
▲
by
bdarnell
10y ago
(Cockroach Labs CTO) CockroachDB provides two transaction isolation levels: SERIALIZABLE, which is our default and the highest of the four standard SQL isolation levels, and SNAPSHOT, which is a slightly weaker mode similar to (but not quit
53.
▲
by
bdarnell
10y ago
(Cockroach Labs CTO) The major issue with clock offsets is stale reads due to the time-based read lease. Pretty much everything else is independent of the clocks. Stale reads are still enough to get you in trouble (some of the jepsen tests
54.
▲
by
bdarnell
10y ago
(Cockroach Labs CTO here) Jepsen is essentially a worst-case stress test for a consistent database: all the transactions conflict with each other. CockroachDB's optimistic concurrency control performs worse with this kind of workload t
55.
▲
by
bdarnell
10y ago
(CockroachDB CTO here) We haven't implemented everything in the standard yet (Nor will we by 1.0 - there's a lot of stuff there!), but we are aiming to ultimately be compliant with the SQL standard. For example, when we introduced
56.
▲
by
bdarnell
10y ago
(Cockroach Labs CTO here) Google launching Spanner is generally a positive thing for our industry and our product. It's more proof that what we're aiming for is possible and that there's demand for it. We expect that in five
57.
▲
by
bdarnell
10y ago
The `sqllogictest` suite ( https://www.sqlite.org/sqllogictest/doc/trunk/about.wiki ) is a great resource that is not SQLite-specific. It's a huge collection of queries and expected responses (in an easily
58.
▲
by
bdarnell
10y ago
(Cockroach Labs CTO here) This could have been worded more clearly in the post. There will be two versions of backup functionality: a basic implementation for free (Apache license) and a faster distributed and incremental implementation as
59.
▲
by
bdarnell
10y ago
(Cockroach Labs CTO here) We don't really anticipate making a lot of changes like this, but yes, it's possible that as the product and market evolve we may change our minds and relicense some CCL features as APL. Of course, we wou
60.
▲
by
bdarnell
10y ago
From another subthread, https://github.com/trailofbits/algo is an ipsec-only alternative to streisand that looks good (although it requires an app to be installed on android). They also get ipsec working on aws/gc
More ›