By now most of you might have guessed that things like Hadoop and HBase(and others) and big data in general are going to be in the everywhere. With all the power comes a lot of complexity. Most of you will agree that event the most seasoned Java developers will find performing stuff like Joins quite hard in the bare bones Map-Reduce world, Pig and Hive does come to rescue but still is not quite that easy as in the SQL world. So what’s the solution?
Class loading is one of the most important aspects of Java and most of the times its abstracted away from us when we use IDEs and dependency management tools like Maven. For most of the part its ok until one fine day you stumble upon something a NoClassDefFoundError and have to bite the bullet to figure out How does actually class loading works in Java?