Yi Wu
df5eeb85ca
Optimize sequential insert into memtable - Part 2: Implementation
...
Summary:
Implement a insert hint into skip-list to hint insert position. This is
to optimize for the write workload where there are multiple stream of
sequential writes. For example, there is a stream of keys of a1, a2,
a3... but also b1, b2, b2... Each stream are not neccessary strictly
sequential, but can get reorder a little bit. User can specify a prefix
extractor and the `SkipListRep` can thus maintan a hint for each of the
stream for fast insert into memtable.
This is the internal implementation part. See #1419 for the interface part.
See inline comments for details.
Closes https://github.com/facebook/rocksdb/pull/1449
Differential Revision: D4106781
Pulled By: yiwu-arbug
fbshipit-source-id: f4d48c4
2016-11-13 13:09:16 -08:00
..
2016-07-07 11:35:40 -07:00
2016-05-20 07:42:18 -07:00
2016-02-22 21:32:19 -08:00
2016-10-31 20:54:18 -07:00
2016-10-31 20:54:18 -07:00
2016-11-09 12:24:18 -08:00
2016-11-08 13:54:31 -08:00
2016-11-09 22:24:26 -08:00
2016-11-12 15:54:11 -08:00
2016-10-21 11:31:42 -07:00
2016-10-19 13:37:51 -07:00
2016-11-03 18:54:20 -07:00
2016-02-09 15:12:00 -08:00
2016-10-19 10:59:46 -07:00
2016-11-04 12:09:22 -07:00
2016-10-18 12:04:56 -07:00
2016-08-10 12:37:43 -07:00
2016-09-23 16:34:04 -07:00
2016-10-18 16:30:34 -07:00
2016-10-18 12:04:56 -07:00
2016-10-24 09:49:07 -07:00
2016-11-01 21:09:23 -07:00
2016-10-13 10:49:06 -07:00
2016-09-13 21:11:59 -07:00
2016-10-13 10:49:06 -07:00
2016-09-27 18:20:57 -07:00
2016-02-09 15:12:00 -08:00
2016-04-28 17:50:58 -07:00
2016-02-09 15:12:00 -08:00
2016-08-23 13:53:49 -07:00
2016-06-17 10:30:47 -07:00
2016-11-04 12:09:22 -07:00
2016-11-03 18:54:20 -07:00
2016-09-01 14:33:24 -07:00
2016-09-23 16:34:04 -07:00
2016-07-21 14:32:12 -07:00
2016-10-14 12:25:39 -07:00
2016-09-23 16:34:04 -07:00
2016-11-04 12:09:22 -07:00
2016-02-09 15:12:00 -08:00
2016-11-12 15:54:11 -08:00
2016-11-11 20:54:14 -08:00
2016-09-23 16:34:04 -07:00
2016-09-23 16:34:04 -07:00
2016-03-31 17:12:18 -07:00
2016-09-07 12:37:45 -07:00
2016-10-18 16:07:10 -07:00
2016-11-04 12:09:22 -07:00
2016-11-04 12:09:22 -07:00
2016-10-31 17:24:18 -07:00
2016-02-09 15:12:00 -08:00
2016-11-12 15:54:11 -08:00
2016-10-27 10:07:28 -07:00
2016-10-24 10:35:00 -07:00
2016-07-19 15:46:20 -07:00
2016-11-08 13:54:31 -08:00
2016-11-11 20:54:14 -08:00
2016-11-04 12:09:22 -07:00
2016-10-20 17:05:32 -07:00
2016-11-11 20:54:14 -08:00
2016-10-20 15:43:00 -07:00
2016-11-10 11:09:22 -08:00
2016-04-25 23:02:14 -07:00
2016-09-27 18:20:57 -07:00
2016-10-19 10:59:46 -07:00
2016-07-05 11:57:14 -07:00
2016-04-29 11:35:00 -07:00
2016-04-29 11:35:00 -07:00
2016-02-09 15:12:00 -08:00
2016-11-04 12:09:22 -07:00
2016-10-20 17:05:32 -07:00
2016-11-12 20:11:19 -08:00
2016-10-07 11:32:10 -07:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-09-23 16:34:04 -07:00
2016-09-23 16:34:04 -07:00
2016-10-31 20:54:18 -07:00
2016-10-31 20:54:18 -07:00
2016-09-23 16:34:04 -07:00
2016-07-08 17:50:51 -07:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-11-08 13:54:31 -08:00
2016-09-27 18:20:57 -07:00
2016-11-13 13:09:16 -08:00
2016-11-13 13:09:16 -08:00
2016-11-11 20:54:14 -08:00
2016-11-11 20:54:14 -08:00
2016-10-13 08:48:40 -07:00
2016-09-22 11:56:18 -07:00
2016-02-09 15:12:00 -08:00
2016-07-08 17:50:51 -07:00
2016-05-22 22:00:15 -07:00
2016-05-22 22:00:15 -07:00
2016-02-09 15:12:00 -08:00
2016-07-21 16:29:06 -07:00
2016-09-27 18:20:57 -07:00
2016-09-27 18:20:57 -07:00
2016-02-09 15:12:00 -08:00
2016-07-13 19:33:57 -07:00
2016-07-05 18:11:25 -07:00
2016-11-03 18:54:20 -07:00
2016-11-04 12:09:22 -07:00
2016-11-04 12:09:22 -07:00
2016-11-03 18:54:20 -07:00
2016-11-03 18:54:20 -07:00
2016-07-05 18:11:25 -07:00
2016-07-25 15:31:41 -07:00
2016-10-18 12:04:56 -07:00
2016-10-18 12:04:56 -07:00
2016-10-18 12:04:56 -07:00
2016-07-20 09:49:03 -07:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-04-26 14:22:07 -07:00
2016-08-11 11:54:17 -07:00
2016-07-20 11:23:31 -07:00
2016-10-18 14:01:10 -07:00
2016-11-09 15:09:18 -08:00
2016-11-09 15:09:18 -08:00
2016-06-24 16:29:43 -07:00
2016-10-31 20:54:18 -07:00
2016-09-27 18:20:57 -07:00
2016-09-27 18:20:57 -07:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-11-04 12:09:22 -07:00
2016-10-18 12:04:56 -07:00
2016-10-21 11:31:42 -07:00
2016-05-19 14:24:48 -07:00
2016-05-19 14:24:48 -07:00
2016-09-23 16:34:04 -07:00
2016-09-23 16:34:04 -07:00
2016-10-07 17:21:45 -07:00
2016-10-20 17:05:32 -07:00
2016-07-20 11:23:31 -07:00
2016-02-09 15:12:00 -08:00
2016-07-12 14:15:32 -07:00
2016-07-13 15:36:22 -07:00
2016-10-07 17:21:45 -07:00
2016-11-04 12:09:22 -07:00
2016-11-04 12:09:22 -07:00
2016-09-23 16:34:04 -07:00
2016-09-23 16:34:04 -07:00
2016-09-23 16:34:04 -07:00
2016-08-16 08:16:04 -07:00
2016-10-07 11:32:10 -07:00
2016-10-07 11:32:10 -07:00
2016-11-10 11:24:20 -08:00
2016-04-18 10:18:41 -07:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-11-12 15:54:11 -08:00
2016-08-16 08:16:04 -07:00
2016-06-25 08:29:40 +01:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00