背景:在JAVA开发的电商网站中都有海量商品信息,绝大部分电商网站都有为了让用户尽快的获取到想要的商品提供流行商品和推荐商品的概念,我的理解是从两个方面反映了商品的时间维度和热度:流行商品是指横向所有用户选择的时间最近和访问量最高的商品,而推荐商品则是根据个人最近时间的兴趣爱好浏览搜索记录等纵向的匹配时间最近和信息匹配度最高的商品,这里就隐含了本次分享的主题:数据的时间及热度属性。

原理:数据都是有时间和热度属性的,某个时间段对某个数据的访问量都不同,这正是今天分享要讲的内容的理论支撑。

应用:

应用1:公司网站设计页面中有海量素材、纹理、样板间、模型等数据,而用户所需要的往往只有其中的一小部分,这时我不禁从JAVA电商商品的时间和热度属性联想到,也给这些数据加上时间和热度。把这些数据按照横向和纵向的方式进行帅选和排序,类似电商商品做一个流行素材、流行纹理、流行样板间、流行的每一个模型的类型等等,横向的给海量数据增加最近访问时间和访问量即时间和热度维度的考量。同时也根据用户的搜索记录和所涉及方案中使用素材、纹理、样板间查看等信息增加纵向的时间和热度属性的考量,并把这些信息存入缓存,我想肯定会大大提高数据使用率、减少无效数据的查询次数,从而更快到找到用户想要的资源给用户更好的体验。

应用2:如果流行模型、纹理、素材、样板间等功能能够实现,那么我们可以提前装配这些流行模块的组合,拼装成一些半成品,比如某个户型的某些布局,提供一个半成品的样板间,里面有一些流行的配置家具装饰等,提高用户的设计速度,而对于渲染部分甚至可以组装好一些模型、纹理、素材,在渲染的时候直接调用,从而提高渲染的速度。

应用3:之前讲的是给数据加上时间和热度方面提高即时效率的应用,其实还可以提高延时处理方面的应用,比如用户大量搜索但资源库中没有的资源,我们可以利用延时处理在夜间或者服务器使用率较低的时间段对当前的流行但缺乏的资源汇总统计,提供给公司资源开发部门。对于设计中多次使用但流行组合中没有的组合起来的资源可以利用延时进行自动组合拼装之类的。对于耗时操作,比如以图搜图等耗时耗资源短时间内无法获取到结果的操

作可以提供延时提供结果自动推送功能等等。

可行性:由于以上内容都要涉及到时间和热度,因此在之前的所有资源数据库表结构中都需要增加时间访问量栏位,同时用户操作过程中要记录最近访问时间和访问量等,对于用户行为和设计方案中的元素使用率都需要进行记录,而数据分析方面可能需要大数据方面的知识,工作量和技术含量都是有一定的难度的。

Java学习之数据的时间及热度属性的更多相关文章

  1. 10.3(Java学习笔记)JDBC时间操作

    一.时间分类 数据库     java类 Date  ---- java.sql.Date   表示日期 yyyy-MM--dd (年月日) Time  ----java.sql.Time    表示 ...

  2. Java学习:数据类型转换注意事项

    数据类型的转换 当数据类型不一样时,将会发生数据类型转换. 自动类型转换(隐式) 1.特点 :代码不需要进行特殊处理,自动完成. 2.规则 :数据范围从小到大. //左边是long类型,右边是默认的i ...

  3. 疯狂java学习笔记之面向对象(三) - 方法所属性和值传递

    方法的所属性: 从语法的角度来看:方法必须定义在类中 方法要么属于类本身(static修饰),要么属于实例 -- 到底是属于类还是属于对象? 有无static修饰 调用方法时:必须有主调对象(主语,调 ...

  4. Java 学习(7):java 日期时间 & 正则表达式

    目录 --- 日期时间 --- 正则表达式 日期时间:java.util 包提供了 Date 类来封装当前的日期和时间. Date 类提供两个构造函数来实例化 Date 对象. 构造函数:用于初始化对 ...

  5. Java学习-029-JSON 之三 -- 模仿 cssSelector 封装读取 JSON 数据方法

    前文简单介绍了如何通过 json-20141113.jar 提供的功能获取 JSON 的数据,敬请参阅:Java学习-028-JSON 之二 -- 数据读取. 了解学习过 JQuery 的朋友都知道, ...

  6. Java学习-028-JSON 之二 -- 数据读取

    JSON数据由 JSONObject.JSONArray.key_value 组合而成.通常来说,JSONObject 可以包含 JSONObject.JSONArray.key_value:JSON ...

  7. Java学习-022-Properties 文件数据写入

    Properties 配置文件写入主要通过 Properties.setProperty 和 Properties.store 两个方法,此文以一个简单的 properties 文件写入源码做示例. ...

  8. Java学习-013-文本文件读取实例源代码(两种数据返回格式)

    此文源码主要为应用 Java 读取文本文件内容实例的源代码.若有不足之处,敬请大神指正,不胜感激! 1.读取的文本文件内容以一维数组[LinkedList<String>]的形式返回,源代 ...

  9. Java软件开发者,如何学习大数据?

    正常来讲学习大数据之前都要做到以下几点 1.学习基础的编程语言(java,python) 2.掌握入门编程基础(linux操作,数据库操作.git操作) 3.学习大数据里面的各种框架(hadoop.h ...

随机推荐

  1. MVC 控件系列

    下拉框:@Html.DropDownList("GroupId"); 文本框:@Html.TextBox("RoleCode", "", n ...

  2. 解决Pycharm中matplotlib画图出错问题(AttributeError: module 'matplotlib' has no attribute 'verbose')

    最近在Linux中使用pycharm过程中使用matplotlib无法画图,总是提示错误 /usr/bin/python3. /home/leo/PycharmProjects/untitled1/E ...

  3. RtlWerpReportException failed with status code :-1073741823

    在release下程序运行总是崩溃:debugView输出了这个崩溃信息, 1. 一开始是release看崩溃,各种二分法找崩溃点,太玄没找到: 2. 终于想到可以调试,我草,调试一下瞬间发现某个cl ...

  4. js字符串和数组的相互转化

    一.数组转字符串 需要将数组元素用某个字符连接成字符串,示例代码如下: var a, b; a = new Array(0,1,2,3,4); b = a.join("-"); 二 ...

  5. NodeJS入门学习

    node.js 概念:是一个由c++编写的,本质上是一个javascript的运行环境,他可以让js代码运行在服务器端. node可以解析JS代码(没有浏览器安全级的限制) 提供系统级别的API: 1 ...

  6. C#下利用正则表达式实现字符串搜索功能的方法(转)

    关键字:正则表达式.元字符.字符串.匹配: 1.正则表达式简介:正则表达式提供了功能强大.灵活而又高效的方法来处:.NET框架正则表达式并入了其他正则表达式实现的: 2.字符串搜索:正则表达式语言由两 ...

  7. ZeroClipboard 简单应用

    ZeroClipboard.config({ swfPath: "/scripts/ZeroClipboard.swf" }); var client = new ZeroClip ...

  8. gym强化学习入门demo——随机选取动作 其实有了这些动作和反馈值以后就可以用来训练DNN网络了

    # -*- coding: utf-8 -*- import gym import time env = gym.make('CartPole-v0') observation = env.reset ...

  9. 【WPF】命令系统

    引言 在MVVM模式开发下,命令Command是编程中不可或缺的一部分.下面,我分3种场景简单介绍一下命令的用法. ViewModel中的命令 在ViewModel定义命令是最常用的用法,开发中几乎9 ...

  10. rabbitmq_学习_00_资源帖

    一.精选资料 二.参考资料 1.RabbitMQ Simplest Queue 2.RabbitMQ系列教程 2.RabbitMQ入门教程 For Java[1] - Hello World 2.Ra ...