refactor the code
add hive serde class