public void splitAndInsert(String value, long split_ts) {
		for (Map.Entry<String, String> entry : optimizedData.entrySet()) {
			String times = entry.getValue();
			String[] timespan = times.split(",");
			Long firstTime = Long.parseLong(timespan[0]);
			if (split_ts < firstTime)
				continue;
			Long secondTime = Long.parseLong(timespan[1]);
			if (split_ts == firstTime) {
				if(split_ts==secondTime){
					entry.setValue(value);
					return;
				}else{
					String val1=firstTime+","+firstTime;
					String val2=(split_ts+1)+","+secondTime;
					optimizedData.put(value,val1);
					String prevKey=entry.getKey();
					optimizedData.put(prevKey,val2);
					return;
				}
			}
			if(split_ts>firstTime && split_ts<=secondTime){
				String val1=firstTime+","+(split_ts-1);
				String val2=split_ts+","+secondTime;
				String prevKey=entry.getKey();
				optimizedData.put(prevKey,val1);
				optimizedData.put(value,val2);
				return;
			}
			if(split_ts<firstTime || split_ts>secondTime){
				continue;
			}
		}
		optimizedData.put(value, split_ts+","+split_ts);
	}