I want to build Recommendation system using Java. Whenever I request for recommendations, it should give n unread items for the user. I tried creating Mahout User based recommendation. However, when program is done executing, it just removes all memory that was already loaded. I want to persist the memory in RAM . How can I persist Java programme data into memory?
I am using same code listed below:
public static void main(String[] args) throws TasteException, IOException {
    DataModel model = new FileDataModel(new File("test.csv"));
    UserSimilarity similarity = new PearsonCorrelationSimilarity(model,Weighting.WEIGHTED);
    UserNeighborhood neighborhood = new ThresholdUserNeighborhood(0.1, similarity, model);
    Recommender recommender = new GenericUserBasedRecommender(model, neighborhood, similarity);
    List<RecommendedItem> recs = recommender.recommend(2, 20);
    for (RecommendedItem recommendedItem : recs) {
        System.out.println(recommendedItem+".");
    }
				
                        
You should declare recommender object as a static constant. This might give an idea; https://github.com/mkarakaya/timeAwareItemBasedRecommender/blob/master/app/controllers/Application.java