IO总结
### 什么时IO,IO都有哪几种类型 IO:IO(input and output).其实就是一次数据访问交互过程,客户端请求读取/写入数据的完整过程。 一次IO一般要经历几个状态。1. 检查数据是否ready。2. 将已经ready的数据copy到用户空间。 我们经常接触到几个IO概念,BIO, NIO, AIO。他们到底是什么?他们的使用场景是什么? IO的分类大体上可以从两大方面看 1. ...
2019-03-12JAVA8-GroupingBy
> if we want to group a list with key. we can use new JAVA8 API->groupyingBy。this api provides opretor which can group a list like SQL(select ... form... where... group by) > this new API has three ov...
2019-01-21批量轨迹存储压缩算法
### 业务背景 如果我们在某些场景中,需要存储和查询批量轨迹点(查询历史轨迹)。比如,一个小件员过去几天的经纬度坐标数据。如果app采集小件员轨迹的频率是1个/1秒。那么一天如果工作8小时,一天一个小件员的轨迹量是8*60*60 = 28800个轨迹点。我们通常的做法是将小件员的实时位置信息采集存储到Hbase。那么如果有客户一次查询3天的轨迹数据,那么Hba...
2019-01-18轨迹点范围召回
### 实际场景 假如我们开发了一款APP,用户数量很大,APP定时会采集上报海量的轨迹点。这时,如果我们需要查询给定经纬度POI指定范围的用户信息列表。这就可以用到本文的范围查找了。 ### 技术难点 1. 轨迹点是海量数据 2. 用户的轨迹点实时更新 ### 解决方案 #### 方案一: 1. 使用geohash算法将地球切分为若干块(当然,对于国内大部分APP场景来说,只对中国进行切分就可以...
2019-01-151