Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
nikita
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
35 ms
·
421.
▲
by
nikita
14y ago
Not every parsing is equal. MySQL and other databases produce a tree as they parse a query. If you just want to match parameters you can avoid memory allocations and just replace parameters with ^ or @ signed in place in the query string.
422.
▲
by
nikita
14y ago
Harrison, what are these settings for InnoDB? innodb_flush_log_at_trx_commit, innodb_flush_methodm, innodb_doublewrite,
423.
▲
by
nikita
14y ago
Hi Tim, we're not comparing "the speed of writing to RAM versus the speed of writing to disk." You can run InnoDB with a buffer pool large enough to keep the entire database in memory and we'll still outperform it significantly. We're actua
424.
▲
by
nikita
14y ago
MemSQL CTO here. Great article- Domas has done a good job of digging into the internals of MemSQL! A few questions/comments: 1.) The range query issue you pointed out can be explained by a well known limitation of skip lists. Unlike B-Trees
425.
▲
by
nikita
14y ago
Supporting stored procedures doesn't mean compiling to native code. E.g. sql server just stores a compiled plan so saves of parsing/optimization. Execution is still an interpretation. Giants are investing into big memory technology no doubt
426.
▲
by
nikita
14y ago
Yes, for the workload simulator :)
427.
▲
by
nikita
14y ago
One of the things that separate us from Xeround is the fact that you can see the benefit of super high throughput on any linux box, including your laptop. You can download the software and use it by yourself. Xeround is a sas model, where y
428.
▲
by
nikita
14y ago
We do use mmap, but we do not use memory mapped files. We use mmap to allocate big chunks of memory from the OS, which we later distribute to our custom memory allocators. It's not a column store. We are thinking about it, maybe some time i
429.
▲
by
nikita
14y ago
We think a lot about it. And even though this model definitely makes sense, we would like to build a business that can generate money and pay for itself.
430.
▲
by
nikita
14y ago
Correct! Different scenarios require different solution. One size doesn't fit all. And it's nice when solutions play nicely with each other.
431.
▲
by
nikita
14y ago
I'm sorry, I have to clarify this. It's a single writer database...
432.
▲
by
nikita
14y ago
You could do that, but you won't be able to achieve as high throughput in highly concurrent environments. MemSQL achieves this via code generation and lockfree data structures. We will also put the technology on steroids, by building a clus
433.
▲
by
nikita
14y ago
Some of the stuff is on the website (Capital Markets, Ad Serving, Mobile). It will be expanding as we add clustering and more analytical features.
434.
▲
by
nikita
14y ago
There are many bottlenecks and it really depends on the workload. Sometimes it's IO, sometimes it's CPU. When you have a throughput problem, yes, it's the SQL.
435.
▲
by
nikita
14y ago
MemSQL is a row store. KDB is single threaded. More benchmarks are coming!
436.
▲
by
nikita
14y ago
There are few differences with VoltDB. 1. It's much easier to use (MySQL compatibility, ad-hoc sql no java dependency) 2. It doesn't have any issues with data skews. We are using lockfree skiplists vs b-trees partitioned by core. 3. I belie
437.
▲
by
nikita
14y ago
Memsql is a database that does some things incredibly well: deliver on high throughput for on small transactions and some things not as well (surface area). Of course a new product will have certain limitation which will be removed as the p
438.
▲
by
nikita
14y ago
The whole table has to fit in memory. RAM is getting very cheap, you can buy 1Tb for 12K today.
439.
▲
by
nikita
14y ago
No worries :). MemSQL does very well for OLTP like workloads, but it's not an "all size fits all" database. Recovery goes at the speed of disk. The compile time for memsql is mostly code generation time. Once the code is generated/compiled
440.
▲
by
nikita
14y ago
Right now you can handle this with query hints. The plans are stable, but they are attached to the query text. When you throw a hint in there memsql generates a new plan since the query text changes.
441.
▲
by
nikita
14y ago
Recovery on the system restart is going at the speed of hard disk.
442.
▲
by
nikita
14y ago
Thanks! This is absolutely on our minds.
443.
▲
by
nikita
14y ago
Query compilation works incredibly well for high throughput. If you have a lot of small transaction (OLTP) you can benefit tremendously by dramatically reducing the amount of instruction you burn per query. Lots of database vendors know tha
444.
▲
by
nikita
15y ago
10. The full answer will come from benchmarks. The short answer is that it depends on the workload. But we are very confident it's going to be 10x over mysql on a ram disk for some standard workload (TPC-C).
445.
▲
by
nikita
15y ago
Order of magnitude faster. We will be publishing benchmarks shortly
446.
▲
by
nikita
15y ago
Thanks Zach!
447.
▲
by
nikita
15y ago
Right on the money. We every log record contains LSN (log sequence number) that allows us to reconstitute the order. Then as at the recovery time you need to merge sort by LSN from the shared log servers
448.
▲
by
nikita
15y ago
Thanks, sigil. We are certainly aware of various options. It's either Paxos, or a simpler failover mechanism used by traditional dbs, such as SQL Server or Oracle on the per node basic based on replication.
449.
▲
by
nikita
15y ago
For total MySQL compatibility, you could only modify the MySQL storage engine via their plugin system. As the market has shown, this isn't a compelling improvement. For us, every part of MemSQL has been optimized for memory - this gives us
450.
▲
by
nikita
15y ago
This is a correct observation!
More ›