美文网首页
前缀和在实践中的尝试

前缀和在实践中的尝试

作者: hoppyf | 来源:发表于2017-07-30 21:27 被阅读0次

目前在做一些数据处理的任务,需求是对给出的日期范围处理对应日期的数据文件后显示在dashboard上,如果该日的数据文件已经处理过,则存储成另外的数据文件,下次有该日期的时候则直接读取另外的数据文件。对于有当日日期的数据做特殊处理,即只处理不存储成另外的数据文件,因为本日的数据有可能继续增加,存储没有意义。


�其中对于每日的未处理数据,是多条json数据组成,大小较大,处理完后是单一json数据,数据结构比较复杂,值为列表和字符串,列表里有字典类型数据。对于给定的日期范围,最后需要统计json值的"和"。

以下是我对计算给定日期范围的数据值和的思路:

1.遍历时间读取对应时间文件进行数据处理,得到每天一个json值

2.考虑到如果频繁请求一个区间的和,那么按照以往做acm的经验,必然是前缀和无疑了,即预处理前缀和,那么区间[a,b]的值即为sum[b] - sum[a-1]

3.这方式起初看可行,实际中考虑到的问题有几点:前缀和有个起始点,这个起始点当然可以是任意,但是不容易记忆(即使不记忆也没有太大问题);当请求的天数越过了中间未处理的日期,前缀和会失败(当然存在解决办法是跑定时任务去处理每天的数据);对于json数据,'减'的定义不是很明确,当然不存在会减去不存在的值

4.在通过实践后发现读取文件处理数据数据速度非常快,每次求和也不会造成很长时间消耗(都在1s内出结果,数据还没有大到不可接受)

5.最后的解决方案是每日数据处理后生成数据文件,请求时做求和并缓存,对于当前数据量而言,效率还可以

相关文章

  • 前缀和在实践中的尝试

    目前在做一些数据处理的任务,需求是对给出的日期范围处理对应日期的数据文件后显示在dashboard上,如果该日的数...

  • Binary Indexed Tree(树状数组) / Segm

    Range Sum Query - Mutable (LeetCode)多用于高效计算数列的前缀和, 区间和在O(...

  • R packages:phyloseq提取某一ASV或OTU

    导入数据 统计所有ASV的序列长度 ASV长度和在样本中总Count的关系 提取名字前缀为f69045904的序列...

  • 总结2018年的经历

    1.读商业书的流程 强力研读,划重点,反复读重点,在实践中尝试,反复回顾,在实践中达到直觉反应。 主动增加连接:这...

  • hadoop入门-MapReduce实例(三)

    这次尝试区分器的使用很多证件的号码会根据前缀的几个字符来确定一些信息,比如省份等,手机号也有这样的特征,通过前缀来...

  • 一些用前缀思想解决的题(持续完善)

    有前缀和, 前缀GCD, 前缀奇数个数, 前缀偶数个数, 前缀差, 等等, 都要根据自己的思想来去解决!!!,前缀...

  • 位运算在实践中的尝试

    之前碰到一个需要实现工作流的需求,简单来说就是一个事件,可以通过多人多权限进行事件状态的转化,这里我以django...

  • 数据库开发规范

    数据库开发规范1. 数据库命名规范前缀对象前缀命名: 前缀命名一般用小写表的前缀: 业务模块组名前缀存储过程前缀:...

  • 孩子是我们的门面吗?--空心妈妈爬坑日记4

    我自小到大被当做父母的门面,活生生活成了一个“虚假自体”。 然而,若不是经过学习和在实践中感悟,是很难从这个虚假命...

  • elasticsearch action.auto_creat

    如果自动创建索引报错,可以尝试配置相关自动创建索引的前缀或者规则来自动创建索引比如 当我们使用spring-dat...

网友评论

      本文标题:前缀和在实践中的尝试

      本文链接:https://www.haomeiwen.com/subject/cutklxtx.html