Skip to content

[FLASH-575] Improve the performance of stream operations in DM#296

Merged
flowbehappy merged 19 commits intoDeltaMergeEnginefrom
dm-performance
Oct 30, 2019
Merged

[FLASH-575] Improve the performance of stream operations in DM#296
flowbehappy merged 19 commits intoDeltaMergeEnginefrom
dm-performance

Conversation

@flowbehappy
Copy link
Contributor

@flowbehappy flowbehappy commented Oct 28, 2019

  • DMVersionFilterBlockInputStream
    • Optimize for iterations.
  • DeltaMergeBlockInputStream
    • Do range copy instead of one by one if delta rows are used continually.
    • Implement the logic of handle filter in it. To reduce the cost of data copy.
  • Support mange table xxx status command, to show the metrics about DM table.
  • PageStorage
    • Fix lock in PageEntriesVersionSetWithDelta::listAllLiveFiles

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe we should use min rather than max? The signature is IStorage::read( ..., size_t max_block_size, ...)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Normally expected_block_size = DEFAULT_BLOCK_SIZE (65536)。While STABLE_CHUNK_ROWS = 8192

Copy link
Contributor

@JaySon-Huang JaySon-Huang left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@flowbehappy
Copy link
Contributor Author

/run-integration-tests

5 similar comments
@JaySon-Huang
Copy link
Contributor

/run-integration-tests

@JaySon-Huang
Copy link
Contributor

/run-integration-tests

@flowbehappy
Copy link
Contributor Author

/run-integration-tests

@flowbehappy
Copy link
Contributor Author

/run-integration-tests

@JaySon-Huang
Copy link
Contributor

/run-integration-tests

@flowbehappy
Copy link
Contributor Author

/run-integration-tests

1 similar comment
@flowbehappy
Copy link
Contributor Author

/run-integration-tests

@flowbehappy
Copy link
Contributor Author

/build

@flowbehappy
Copy link
Contributor Author

/rebuild

@flowbehappy
Copy link
Contributor Author

/run-integration-tests

@JaySon-Huang
Copy link
Contributor

/rebuild

@JaySon-Huang
Copy link
Contributor

/run-integration-tests

@flowbehappy flowbehappy merged this pull request into DeltaMergeEngine Oct 30, 2019
JaySon-Huang pushed a commit to JaySon-Huang/tiflash that referenced this pull request Oct 30, 2019
…ap#296)

* do handle range filter in

* add status support for DM

* compact continue insert

* bug fix, and temporary split big insert block

* enable split logical

* add store restore log

* fix lock in PageEntriesVersionSetWithDelta::listAllLiveFiles

* disable posix_fadvise in PageStorage

* Update default DM settings

* optimize DMVersionFilterBlockInputStream

* optimize DMVersionFilterBlockInputStream v2

* added some metrics

* add dm_insert_max_rows setting

* Fix compilation error of TiDB.h

* address comment

* fix broken unit tests

* fix unit tests of DeltaTree

* Bug fix: DiskValueSpace::createAppendTask remove data pages by mistake

* remove debug code
JaySon-Huang pushed a commit to JaySon-Huang/tiflash that referenced this pull request Nov 1, 2019
…ap#296)

* do handle range filter in

* add status support for DM

* compact continue insert

* bug fix, and temporary split big insert block

* enable split logical

* add store restore log

* fix lock in PageEntriesVersionSetWithDelta::listAllLiveFiles

* disable posix_fadvise in PageStorage

* Update default DM settings

* optimize DMVersionFilterBlockInputStream

* optimize DMVersionFilterBlockInputStream v2

* added some metrics

* add dm_insert_max_rows setting

* Fix compilation error of TiDB.h

* address comment

* fix broken unit tests

* fix unit tests of DeltaTree

* Bug fix: DiskValueSpace::createAppendTask remove data pages by mistake

* remove debug code
JaySon-Huang pushed a commit to JaySon-Huang/tiflash that referenced this pull request Nov 1, 2019
…ap#296)

* do handle range filter in

* add status support for DM

* compact continue insert

* bug fix, and temporary split big insert block

* enable split logical

* add store restore log

* fix lock in PageEntriesVersionSetWithDelta::listAllLiveFiles

* disable posix_fadvise in PageStorage

* Update default DM settings

* optimize DMVersionFilterBlockInputStream

* optimize DMVersionFilterBlockInputStream v2

* added some metrics

* add dm_insert_max_rows setting

* Fix compilation error of TiDB.h

* address comment

* fix broken unit tests

* fix unit tests of DeltaTree

* Bug fix: DiskValueSpace::createAppendTask remove data pages by mistake

* remove debug code
JaySon-Huang pushed a commit to JaySon-Huang/tiflash that referenced this pull request Nov 5, 2019
…ap#296)

* do handle range filter in

* add status support for DM

* compact continue insert

* bug fix, and temporary split big insert block

* enable split logical

* add store restore log

* fix lock in PageEntriesVersionSetWithDelta::listAllLiveFiles

* disable posix_fadvise in PageStorage

* Update default DM settings

* optimize DMVersionFilterBlockInputStream

* optimize DMVersionFilterBlockInputStream v2

* added some metrics

* add dm_insert_max_rows setting

* Fix compilation error of TiDB.h

* address comment

* fix broken unit tests

* fix unit tests of DeltaTree

* Bug fix: DiskValueSpace::createAppendTask remove data pages by mistake

* remove debug code
@flowbehappy flowbehappy deleted the dm-performance branch November 6, 2019 02:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants