...
Other than implementing mongodb-storage module I it will be required to update configuration modules to allow support for MongoDB . The project task will be to implement above modules.
...
4. Timeline
With the advises of Mentors (Jihoon Son | JaeHwa Jung) I have already setup the development environment in a Ubuntu virtual machine. IDE used is intelliJ Idea. I am going follow the following schedule during the coding period and community monding bonding period.
Community Bonding Period : Maintaining regular discussions with the mentors and working on the material and guidance they provide. Going through all the storage drivers again and study their architecture. Discussing on the most suitable architecture for the MongoDB storage driver with mentors.
There will be around 4 weeks from the start of coding(23th May) till the start of mid-term evaluations(20th June)
Week 1 : Finalize the architecture and complete class structure. Create dummy classes and methods without writing the actual implementation. Suitable class, attributes, method names will be decided at this step. It will be really helpful at the implementation process.
Week 2 : Implementing the actual code for MongodbConnectionInfo class and check the connectivity with mongodb.
Week 3 : Implement Fragment, TableSpace and test them. Also implement required functions in supportive components.
Week 4 : Implement Scanner and test the reading capability from MongoDB database.
There will be around 7 weeks from mid evaluations(28th June) to the suggested 'pencil down' date(15th August)
Week 1 : Fix if there is any issue with the current implementation. Test the scanner.
Week 2 : Implementing the Appender.
Week 3 : Testing the appender and the complete tajo-storage-mongodb module. Start writing document.
Week 4 : Completing the document “MongoDB integration” in Tajo docs.
Week 5 : Testing all the functionalities of the driver, and create documentation on the architecture of the module.
Week 6 : Fix bugs and improve the quality of the code.
Week 7 : kept free for time flexibility in case of an emergency.
In addition I will be continuously blogging the work I do on my personal blog throughout the working period of the program.
...