b-plus-tree | A Java implementation of B tree for key-value store | Key Value Database library

 by   jiaguofang Java Version: Current License: MIT

kandi X-RAY | b-plus-tree Summary

kandi X-RAY | b-plus-tree Summary

b-plus-tree is a Java library typically used in Database, Key Value Database, Example Codes applications. b-plus-tree has no bugs, it has no vulnerabilities, it has build file available, it has a Permissive License and it has high support. You can download it from GitHub.

A Java implementation of B+ tree for key-value store.
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              b-plus-tree has a highly active ecosystem.
              It has 41 star(s) with 42 fork(s). There are 4 watchers for this library.
              OutlinedDot
              It had no major release in the last 6 months.
              There are 2 open issues and 0 have been closed. On average issues are closed in 80 days. There are 1 open pull requests and 0 closed requests.
              It has a positive sentiment in the developer community.
              The latest version of b-plus-tree is current.

            kandi-Quality Quality

              b-plus-tree has 0 bugs and 0 code smells.

            kandi-Security Security

              b-plus-tree has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
              b-plus-tree code analysis shows 0 unresolved vulnerabilities.
              There are 0 security hotspots that need review.

            kandi-License License

              b-plus-tree is licensed under the MIT License. This license is Permissive.
              Permissive licenses have the least restrictions, and you can use them in most projects.

            kandi-Reuse Reuse

              b-plus-tree releases are not available. You will need to build from source code and install.
              Build file is available. You can build the component from source.
              b-plus-tree saves you 155 person hours of effort in developing the same functionality from scratch.
              It has 385 lines of code, 45 functions and 3 files.
              It has medium code complexity. Code complexity directly impacts maintainability of the code.

            Top functions reviewed by kandi - BETA

            kandi has reviewed b-plus-tree and discovered the below as its top functions. This is intended to give you an instant insight into b-plus-tree implemented functionality, and help decide if they suit your requirements.
            • Returns a string representation of this tree
            • Returns the value associated with the specified key
            • Removes the association with the specified key from this tree
            • Associates the specified value with the specified key
            • Returns the values associated with the specified policies
            Get all kandi verified functions for this library.

            b-plus-tree Key Features

            No Key Features are available at this moment for b-plus-tree.

            b-plus-tree Examples and Code Snippets

            No Code Snippets are available at this moment for b-plus-tree.

            Community Discussions

            QUESTION

            Will key in the index be removed after deletion in B Plus tree?
            Asked 2019-Aug-28 at 02:50

            I'm a little confused with the deletion in B+ tree. I searched a lot in Google and find that there are two implementation when the key you want to delete appears in the index:

            1. Delete the key in the index
            2. Keep the key in the index

            Algorithm from https://www.javatpoint.com/b-plus-tree-deletion uses the first way.

            Algorithm from https://www.cs.princeton.edu/courses/archive/fall08/cos597A/Notes/BplusInsertDelete.pdf uses the second way.

            So I really want to know which one is right.

            But I'm more inclined to take that as an undefined behavior. At this point, could someone help me figure out the advantage and disadvantage between them? And how to choose between them?

            Thanks in advance.

            ...

            ANSWER

            Answered 2019-Aug-27 at 21:21

            Both methods are correct.

            The difference that you highlight is not so much in deleting/not-deleting internal keys, but in updating/not-updating them.

            Obviously, when you delete a value (i.e. a key in a leaf node), the b-plus-tree property is not violated: all child values are still within the range dictated by the parent information. You can never break this range-rule by merely removing a value from a leaf. This rule is also still valid when you update the internal key(s) in the path to that leaf (according to method 1), which is only necessary when the deleted value was the left-most one in its leaf.

            Note that the two methods may produce quite different trees after a long sequence of the same operations (insert, delete).

            But on average the second method will have slightly less work to do. This difference is not significant though.

            Source https://stackoverflow.com/questions/57658962

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install b-plus-tree

            You can download it from GitHub.
            You can use b-plus-tree like any standard Java library. Please include the the jar files in your classpath. You can also use any IDE and you can run and debug the b-plus-tree component as you would do with any other Java program. Best practice is to use a build tool that supports dependency management such as Maven or Gradle. For Maven installation, please refer maven.apache.org. For Gradle installation, please refer gradle.org .

            Support

            For any new features, suggestions and bugs create an issue on GitHub. If you have any questions check and ask questions on community page Stack Overflow .
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
            CLONE
          • HTTPS

            https://github.com/jiaguofang/b-plus-tree.git

          • CLI

            gh repo clone jiaguofang/b-plus-tree

          • sshUrl

            git@github.com:jiaguofang/b-plus-tree.git

          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link