This may of course change with new variants.
152 karma · joined December 20, 2014
This may of course change with new variants.
This library is old enough to drive...
But not bounds checks, which are unfortunately what you need with respect to buffer overflows.
http://blog.httrack.com/blog/2014/04/05/a-story-of-realloc-a...
Which companies? That's pretty scary.
Locality is key there. Read randomly and you won't saturate a 100Mb link.
The circular buffer approach is fine, but it does have the drawback of being unable to represent variable-length data (like key-value pairs). It's also harder to compress the data.
Can a GROUP-BY do windowed aggregations? Like, take an average over ten-minute windows? My SQL knowledge is not great.
Need replication? Gotta write your own sharding logic or set up pg_shard.
Need aggregations? Gotta write your own logic. Will you do them on the fly? Use triggers? On demand?
Need to remove old data? Gotta set up a cron job. But wait, what if I want to age different series at different rates? Now you need a policy system. Sigh.
Not saying Postgres can't be the storage engine, but there's a lot of work to do on top of that.
I'm still pretty excited about what's happening in this space though. Thanks for your thoughts.
"Bottom up (since the worst offenders are now first),
binary-trees is silly since it measures allocation speed for a case that simply doesn't exist in real code;
thread-ring is basically insane, since nobody ever bottlenecks like that;
chameneos-redux's C++ implementation is ridiculous. The C is not so ridiculous, but you still have the problem that basically every language in the top few spots does something completely different;
pidigits tests whether you have bindings to GMP;
regex-dna tests a regex engine on a small subset of cases (arguably the first half-acceptable benchmark);
k-nucleotide tests who has the best hash table for this particular silly scheme, and they don't all even do the same thing (eg. Scala precompacts, like my new Rust version);
mandelbrot is kind'a OK;
reverse-complement would be kind'a OK if not for a few hacky implementations (like the Rust);
spectral-norm is kind'a OK;
Haskell basically cheats fasta (which is why I copied it);
meteor-contest is too short to mean anything at all;
fannkuch-redux is probably kind'a OK,
n-body is kind'a OK.
So maybe 5/13 are acceptable, and I'd still only use 4 of those. I think if looking at mandelbrot, spectral-norm, fannkuch-redux and n-body you can argue the benches are a reasonable measure of peak performance. However, these cases are also all too small and simple to really be convincing either, nor is it particularly fair (where's NumPy for Python?)."
https://users.rust-lang.org/t/blog-rust-faster/3117/12?u=acc...
http://www.scylladb.com/technology/cassandra-vs-scylla-bench...
Not to mention low-memory environments like mobile.
https://msdn.microsoft.com/en-us/magazine/mt573711.aspx
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/n445...
Ideally we'd implement something similar in Rust.
https://software.intel.com/en-us/articles/intel-aes-ni-perfo...
Either way, I hope Rust skips the callbacks.
At Google's scale, the performance difference between Java and C++ can means millions of dollars in electricity alone.
I'm not so sure about that. The core services (e.g. Search, Maps, Earth, Big table, Map reduce) seem to be C++. Ads is possibly an exception.
http://www.wsj.com/articles/construction-in-new-york-city-go...
Out of curiosity, are you modeling this on an existing code base/architecture, or is this a new design?