HNHacker News
TopNewBestAskShowJobs

skyde

400 karma · joined October 22, 2013

Email: maxime.caron AT gmail.com
submissionscomments
skyde··on Removing the JPEG XL code and flag from Chromium
real reason is that it compete with WebP format :-)
skyde··on Just 26% of US 8th graders proficient in math, in biggest-ever setback
what do you call "neat hacks instead of actual math "? kahn Academy is teaching the Common Core math, and I don't see how it's not actual math.
skyde··on I am endlessly fascinated with content tagging systems
("Occupations" -> "Writers") seem wrong why would you do this? same for ("Categories with more than 100 entries" -> "Writers").

This seems like trying to put tag on category entity instead of creating a tag hierarchy.

Those 2 should be stored using different relationship type mechanisms.

("categoryTag", <SourceTag>, <DestinationTag>)

ex: ("categoryTag", "Occupations", "Writers")

and

("parentTag",<tagName1>, <tagName2>)

ex: (("parentTag", "American writers" , "19th century American writers")

skyde··on Cassandra at Apple: 1000s of Clusters, 300k Nodes, 100 PB
Right with real transaction you could maintain your own index if you really need them.

And to have good performance you should never join entity that have distinct partition key. Otherwise you end up reading too much data over the network.

I’m honestly very happy Cassandra will get real transaction. But i still need to understand the proposed design. Will it be possible to have serializability when doing Range scan query?

skyde··on Distributed PostgreSQL Comes to Azure Cosmos DB
microsoft already have Managed citusDB. it’s called Azure postgresql Hyperscale!

They probably just renamed it and are making a big deal about it but in the end will confuse all customers as to why it’s unrelated to cosmosdb and to cosmos datalake

skyde··on Google Announces KataOS: Security-Focused OS, Using Rust and SeL4 Microkernel
this is a game changer !
skyde··on Ask HN: Best programming books in the last couple of years?
Systems Performance: Enterprise and the Cloud 1st Edition Edition ISBN-13: 978-0133390094, ISBN-10: 9780133390094
skyde··on Ask HN: Best programming books in the last couple of years?
The Rust Programming Language ISBN-13: 9781718500440
skyde··on Qwik: No hydration, auto lazy-loading, edge-optimized, and fun
this is my understanding as well! but i might be wrong.

Asp.net webform where not really interactive. Any change to the UI require reloading the page.

skyde··on Cassandra at Apple: 1000s of Clusters, 300k Nodes, 100 PB
This is definitely about tradeoffs. But there is 2 tradeoffs spectrum, 1- Consistent (strict serializability + global transaction) vs Eventual consistency. 2- Range query and Join vs KeyValue only

FoundationDB provide a Consistent databse but By default only a KeyValue API.

(CitusDB,Vitess..) give you Consistency but only within a partition, but also give a nice SQL API.

(Cockroachdb/Yugabyte) provide a sql api with a consistent database.

Cassandra gives you Eventual consistency with the Key-value API.

My experience has been that the performance penalty for using a Consistent database instead of one that will silently corrupt your data is small "less than 10% slower".

As for the cost of using Join and Index, no once is forcing you to create index and send query that use join. Its 100% opt-in.

But still Google Spanner and CockroachDB made it very cheap to do join between parent entity and a child entity table but using interleaved table. And using RocksDB and good SSD, the cost of index maintenance is not as bad as it appear to be.

skyde··on Cassandra at Apple: 1000s of Clusters, 300k Nodes, 100 PB
You are correct that if you have a singleton server returning monotonic time to clients this would work.

But this Monotonic time server is not part of Cassandra itself and for this reason majority of the people using Cassandra will use the OS time without knowing this is silently corrupting the database.

skyde··on Cassandra at Apple: 1000s of Clusters, 300k Nodes, 100 PB
Since "client B write" was successfully written on 2 of the 3 nodes. Any read request that read only from 2 of the 3 nodes instead of using quorum read, will be able to see what Client B wrote until it magically disappears.

Quorum Read-repair is only one reason for why the value would randomly disappear. Another one is periodic anti Entropy repair!

skyde··on Cassandra at Apple: 1000s of Clusters, 300k Nodes, 100 PB
This new « accord » thing look very promising! If this get merged into Cassandra this change everything!

A prototype has been developed that has demonstrated its correctness against Jepsen.io’s Maelstrom tool

skyde··on Cassandra at Apple: 1000s of Clusters, 300k Nodes, 100 PB
Client À write value 1 on 2 of 3 node with timestamp=3

then later client B write value 2 on 2 of the 3 node with timestamp=1

then read repair happen and (value=1 timestamp=3) is written to all 3 nodes.

this is only one of many scenarios where this stupid design fail.

skyde··on Cassandra at Apple: 1000s of Clusters, 300k Nodes, 100 PB
timestamp is coming from the operating system where the client library is running. so unless all your write request are issued by the same machine then

you are guaranteed to face the problem where the client machine clocks are not in sync.

just comparing timestamp is obviously a design from someone that didn’t review the academic literature on distributed transaction and consensus

skyde··on Cassandra at Apple: 1000s of Clusters, 300k Nodes, 100 PB
LWT is still the only way to guarantee your write don’t random disappear and that conditional update are really conditional.

LWT still have awful performance compared to a write request with same guarantee in any other database.

skyde··on Cassandra at Apple: 1000s of Clusters, 300k Nodes, 100 PB
why settle for noSQL when we can use newSQL? Cockroachdb, CitusDB, TiDB,Yugabyte …
skyde··on Cassandra at Apple: 1000s of Clusters, 300k Nodes, 100 PB
please tell me more about General purpose transaction! I really hope they work Kyle Kingsbury.
skyde··on Cassandra at Apple: 1000s of Clusters, 300k Nodes, 100 PB
sorry to disappoint you but there is a reason Cassandra tried to add LWT using paxos.

it mostly work but it’s extremely slow and still have many bugs.

https://www.datastax.com/blog/lightweight-transactions-cassa...

skyde··on Cassandra at Apple: 1000s of Clusters, 300k Nodes, 100 PB
eventually they will converge on a « random » value! that’s why we say it’s write quorum is not consensus it’s offer very weak guarantee
skyde··on Cassandra at Apple: 1000s of Clusters, 300k Nodes, 100 PB
it’s worse than waiting actually. Because client A might write value « 1 » and after client B write value « 2 ». Then client C can read Value 2 for 5 minute and then cassandra internal read-repair eventually put value 1 on all replica and value 2 is lost forever.
skyde··on Pelikan, Twitter’s framework for building caches
thanks a lot. I didn’t realize that because TTL was present this could be optimized.
skyde··on Pelikan, Twitter’s framework for building caches
I have a question for someone with your expertise. Why not use the CLOCK-Pro cache eviction algorithm in a system like this?
skyde··on Walmart, CVS face trial for homeopathic products next to real meds
driving a prius ?
skyde··on Raft Is So Fetch: The Raft Consensus Algorithm Explained Through Mean Girls
yes it’s more modular with clear contract between the parts
skyde··on YouTube locks 4K playback behind Premium subscriptions in latest test
this is risky move. lot of artist already moved to Vimeo because of quality in the past.
skyde··on Ask HN: How to get started with real-time Linux?
even in the case of soft-realtime we don't say the system is real-time because it's fast. We say its realtime because majority of the time it meet its deadline.
skyde··on Ask HN: How to get started with real-time Linux?
Real-time software does not mean fast software! It mean determinism, guarantee that each time it run it will never take more than x milliseconds to complete. Those guarantee are very hard when considering a system like linux with many background process or thread each randomly doing IO and allocating memory.
skyde··on Mandated diversity statement drives Jonathan Haidt to quit academic society
you hear people from minority group all the time saying they want to keep the bloodline pure and not dare someone from a different races.

If a white people said this everyone would say he is a nazi.

skyde··on Mandated diversity statement drives Jonathan Haidt to quit academic society
if you care more about what happened hundreds of years ago (racism against group A) than what is happening now (racism against group B). you are part of the problem!
← PreviousPage 4 of 21Next →