当前位置: 首页 > news >正文

当当网网站建设步骤上海远东建筑设计院

当当网网站建设步骤,上海远东建筑设计院,新公司起名大全,最有效的恶意点击一、背景 前面系列文章介绍了用户画像的概念、用户画像的标签加工、用户画像的应用。本篇文章主要介绍一些画像的技术细节#xff0c;让大家更加详细的了解画像数据存储和处理的逻辑 举个现实中的例子#xff1a; 例子1#xff1a;因为疫情原因#xff0c;上线一个平台(…一、背景 前面系列文章介绍了用户画像的概念、用户画像的标签加工、用户画像的应用。本篇文章主要介绍一些画像的技术细节让大家更加详细的了解画像数据存储和处理的逻辑 举个现实中的例子 例子1因为疫情原因上线一个平台(和疫情相关)然后用户关注了疫情这个平台有一个标签来标识用户是否关注疫情但是随着政策放开这个标签显然对公司来说是没有用随着疫情放开之后而且还浪费存储成本需要单独弄一个字段来进行标识 例子2一个账号在购物或者看视频的时候会登录很多个设备比如说 电商平台网页版、手机版(安卓、ios)或者pad 版本等等但是可能随着用户换设备(换手机、电脑或者pad)之前的设备信息再进行存储也没有意义毕竟那个手机或者电脑可能已经不在使用了至少不挂在这个账号体系下了 通过上面上个例子能看到有这样一些标签随着时间的推移对业务没有价值浪费存储空间甚至因为没有过期造成误解 二、解决思路 那有没有这样一个方案呢对这样的标签进行过期处理呢 比如说认为某个账号下一个设备半年不更新或者某个标签半年不更新就对这个标签进行删除呢 上述流程图介绍了标签的写入流程以及标签过期的处理流程。 标签过期需要读取所有的画像数据对每个标签进行判断如果当前时间—标签的更新时间标签的TTL时间需要对该标签进行删除。 即整个流程支持数据库列级别的TTL要求能获取到标签更新的时间也就是列的更新时间 三、具体实现 目前整体采用Hbase Mysql来实现Hbase支持更新列的时候设置更新时间同时支持获取列的读取到列的更新时间通过Mysql配置标签的TTL信息即可完成整体流程 hbase写入时设置列的时间 Testpublic void insert() throws IOException {Calendar calendar Calendar.getInstance();calendar.set(calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH), calendar.get(Calendar.DAY_OF_MONTH) - 1, 0, 0, 0);long preZero calendar.getTime().getTime();System.out.println(preZero);Connection connection createConnection();Table table connection.getTable(TableName.valueOf(tmp_test_info));ArrayListPut puts new ArrayList();Put put4 new Put(0005.getBytes());put4.addColumn(f1.getBytes(), name.getBytes(), preZero, Bytes.toBytes(小杰));put4.addColumn(f1.getBytes(), age.getBytes(), Bytes.toBytes(24));//不设置则用当前时间puts.add(put4);table.put(puts);table.close();connection.close();} Test public void scan() throws IOException {MapString, Long cellTTL new HashMap();cellTTL.put(name, 1L);//单位天cellTTL.put(age, 2L);//单位天ListDelete deleteList new ArrayList();long currentTime System.currentTimeMillis();Table table createConnection().getTable(TableName.valueOf(tmp_test_info));Scan scan new Scan();scan.withStartRow(0001.getBytes());scan.withStopRow(0008.getBytes());ResultScanner scanner table.getScanner(scan);for (Result result : scanner) {ListCell cells result.listCells();for (Cell cell : cells) {String rk Bytes.toString(CellUtil.cloneRow(cell));String family Bytes.toString(CellUtil.cloneFamily(cell));String column Bytes.toString(CellUtil.cloneQualifier(cell));long timestamp cell.getTimestamp();if (column.equals(name)) {String value Bytes.toString(CellUtil.cloneValue(cell));System.out.println(rk : family : column : value : timestamp);} else {int value Bytes.toInt(CellUtil.cloneValue(cell));System.out.println(rk : family : column : value : timestamp);}if (cellTTL.containsKey(column)) {if (currentTime - timestamp cellTTL.get(column)*24*60*60*1000) {//判断列标签是否过期Delete delete new Delete(Bytes.toBytes(rk));delete.addColumn(Bytes.toBytes(family), Bytes.toBytes(column));deleteList.add(delete);}}}}if (!deleteList.isEmpty() deleteList.size() 0) {table.delete(deleteList);}table.close(); } 上面给出了一个简单版本的过期策略处理代码
http://www.hkea.cn/news/14278794/

相关文章:

  • 网站建设的建议lol做任务领头像网站
  • 网站商务方案有没有免费做企业网站的
  • 网站关键词一般设置几个想要网站导航推广
  • 营销型网站建设广告语揭阳网站建设揭阳
  • 网站描述和关键词怎么写wordpress魔术
  • php做商城网站网站config配置教程
  • 网站怎么优化 优帮云柳州正规网站制作公司
  • 上海高端网站设计网上网站开发
  • vs2010网站开发 SQL做一个普通网站多少钱
  • 中小型网站建设案例wordpress 教学培训
  • 网站策划书的内涵简单网站建设 有教程
  • 购物商城外贸网站建设深圳定制网站开发
  • 建设网站报告推广普通话手抄报简单
  • 关于珠海网站建设的优势网站建设公司的成本有哪些方面
  • 做网站建设销售网站建设目标个人博客dw
  • 新浪网站是什么程序做的400元网站建设
  • 志丹网站建设光谷网站开发
  • 黄山市非遗网站策划书wordpress路由规则
  • 做游戏出租的网站好手机网站设计要素
  • 高端网站建设联系方式系统优化大师官方下载
  • 黄冈网站建设报价wordpress单页
  • 扁平wordpress主题沈阳关键字优化
  • 焦作建设网站的公司wordpress 登录验证
  • 服务器上 网站免费的素材网站推荐
  • 网站建设流程分几步怎么样做手机网站
  • 做阿里巴巴小企业网站网站开发运营职位
  • 珠海十大网站建设公司网页怎么搜索关键词
  • 网站制作的原因个人网站怎么申请
  • js网站源码网站推广基本方法
  • 园林古建设计网站开发板是干什么的