Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Improves the time of searching and inserting a range of keys.

Proposed plan

Phase 1: Update new keys.

  • Implement insertDataRows operation in FreeList: insert batch of datarows at once.
  • Implement invokeAll operation in BPlusTree: support search and insert batch of keys.
  • Enable batch insertion of keys in preloader (enabled by special system property).

Phase 2: Update existing keys.

  • InvokeAll operation should support batch update of existing keys.

Phase 3: Support DataStreamer.

  • Add support for batch updates in DataStreamer (isolated updater).

Phase 4: Support putAll.

  • Add support for batch updates in IgniteCache.putAll.

Phase 5: MVCC support.

  • Add support for MVCC (TRANSACTIONAL_SNAPSHOT) cache mode.

Risks and Assumptions

// Describe project risks, such as API or binary compatibility issues, major protocol changes, etc.

...