What instanced static mesh is the best method for best performance. Like 100 books in a shelf

The main point of the hierarchical version is that it allows instances to cull and LOD somewhat independently. This is only really beneficial if those instances can be scattered around in space around the player. When you have a bunch of books all tightly packed in roughly the same place, you are most likely better off using the ordinary instanced mesh component and not paying all that overhead of computing visibility for individual books.