This encoder is not like the incremental encoders which have the two bit output and you are headed down a more complex path here with several decisions to make.
1) Do you want to directly read all the 8 pins of the encoder or do you want to use an 8 bit i2c port expander like the MCP23008?
2) What Arduino do you have or want to use? Anything other than the Mega, and I think you will be better with the i/0 expander route. I actually think it would be interesting to use the Mega, put all the 8 pins of the encoder on the arduino pins of PortK or PortB which have pin change interrupts on all 8 pins
2) Whichever route you go, you will have to know if a bit changes. You can do it with polling or interrupts. The port expander should have an interrupt output when a bit changes.
3) You will read the bit pattern and then compare it with a look up table of the 127 numerical values shown in the data sheet and their associated position. Since you can only move to an adjacent position, I think is should be possible to reduce the search to one position up or down from the current position.
4)How do you plan to use this encoder, and fast do you need to read it?
There is a library here which is written for a port expander which may give you some ideas.