首页 文章 精选 留言 我的

精选列表

搜索[实时etl],共10000篇文章
优秀的个人博客,低调大师

HBase2.0重新定义小对象实时存取

小对象,特别指1K~10MB范围的数据,比如图片,短视频,文档等。这些数据广泛的存在于人工智能,医疗,教育,生活分享,电子商务等领域。目前对象存储典型技术方案为AWS的S3以及阿里云的OSS,还有一些基于MySQL+对象存储的二次开发方案。这些方案解决了对象存储的可靠性和扩展性问题,但是存在一些缺陷:两个方案都存在访问延时问题,因为访问数据至少要2次查询,一次索引访问+一次数据访问,特别的当用户想查询一组有关联数据的时候,需要N次调用;对象存储很难将对象和一些维度、指标数据混合存储,而这些是查询时过滤数据的条件,导致对象存储的方案在检索能力上不足;MySQL+对象存储方案将维度、指标数据存储在Mysql解决了检索能力,但是引入了数据不一致问题,实现主备双活也非常困难,造成可用性上的缺陷,同时这个方案对用户代码侵入大,对运维也不友好

优秀的个人博客,低调大师

G7在实时计算的探索与实践

作者: 张皓 G7业务快览 G7主要通过在货车上的传感器感知车辆的轨迹、油耗、点熄火、载重、温度等数据,将车辆、司机、车队、货主连接到一起,优化货物运输的时效、安全、成本等痛点问题。 整个数据是通过车载的传感器设备采集,比如公司的Smart盒子,CTBox盒子,油感设备,温度探头等,将车辆数据上报到后端平台,在后端平台计算和处理,最后展示到用户面前。 G7的业务场景是典型的IoT场景: 传感器数据 数据种类多 数据质量差 数据低延迟 数据量大 其中,数据质量差的原因是整个链条会非常的长,从传感器采集的车辆的数据,通过网络运营商将数据上报到后端服务器,再经过解析,mq,过滤,调用三方接口,业务处理,入库,整个过程非常的长,造成数据在传输过程中出现数据重复,数据缺失等。另外一点,IoT场景需要数据传输的延迟非常低,比如进出区域报警,当车辆进入到某个电子围

优秀的个人博客,低调大师

PHP与反ajax推送,实现的消息实时推送功能

index.html <!DOCTYPE HTML> <html> <head> <title>反ajax推送</title> <style> .send{color:#555;text-align: left;} .require{color:blue;text-align: right;} .content_box{text-align: center;margin: 20px; border: 1px solid #ddd;padding: 20px;} </style> <script src="http://code.jQuery.com/jquery-1.11.2.min.js"></script> </head> <body> <div class="content_box" id="content_box_title" style="border: none;">消息框</div> <div class="content_box" id="content_box"> </div> <div style="width: 450px;margin: 0 auto;"> <select id="username" style="font-size: 20px;"> <option value="1" selected="selected">1</option> <option value="2">2</option> </select> <input type="text" style="font-size: 20px;" value="" id="send_text"> <button id="btn_send" style="font-size: 20px;">发送</button> <button id="btn_link" style="font-size: 20px">连接</button> </div> <div class="error_tip" id="error_tip" style="color: red;"> </div> <script> $(function(){ //发送消息 $('#btn_send').click(function(){ var send_text = $('#send_text').val(); if(send_text.length <= 0){ $('#error_tip').html('不能输入空值'); }else{ send(send_text); } }); //按回车键发送消息 $('#send_text').on('keyup',function(e){ if(e.keyCode == 13){ $('#btn_send').trigger('click'); } }); //建立通讯链接 $('#btn_link').click(function(){ connect(); var _this = $(this); _this.attr('disabled',true); _this.html('已连接'); }); }); //建立通讯连接函数 function connect(){ $('#content_box_title').html($('#username').val()+'的消息窗口'); $.ajax({ data:{'user':$('#username').val()}, url:'ajaxPush.PHP', type:'get', timeout:0, dataType:'json', success:function(data){ $('#content_box').append('<div class="require">'+data.msg+'</div>'); connect(); } }); } //发送消息函数 function send(massege){ var user =$('#username').val(); $.getJSON('write.php',{'msg':massege,'user':user},function(data){ if(data.sf){ $('#content_box').append('<div class="send">'+massege+'</div>'); $('#send_text').val(''); }else{ $('#error_tip').html('输入保存错误!'); } }); } </script> </body> </html> ajax处理输入 write.php <?php /** * Created by Loading. * Time: 2017/4/18 13:13 * function: */ $filename = dirname(__FILE__).'/data.txt'; $isread_file = dirname(__FILE__).'/isread.txt'; $user = dirname(__FILE__).'/user.txt'; //写入消息,消息未读,谁发送的消息 file_put_contents($filename,$_GET['msg']); file_put_contents($isread_file,'0'); file_put_contents($user,$_GET['user']); echo json_encode(array('sf'=>true)); 长轮询推送 ajaxPush.php <?php /** * Created by Loading * Time: 2017/4/18 13:12 * function: */ $filename = dirname(__FILE__).'/data.txt'; $isread_file = dirname(__FILE__).'/isread.txt'; $userfile = dirname(__FILE__).'/user.txt'; $get_user = $_GET['user'] == '1'?'2':'1'; $msg=''; while(1){ $msg = file_get_contents($filename); $isread = file_get_contents($isread_file); $user = file_get_contents($userfile); //是对方发送的消息,设置消息已读,退出循环。 if($isread == '0' && $get_user == $user){ file_put_contents($isread_file,'1'); break; } sleep(1); } echo json_encode(array('msg'=>$msg));

优秀的个人博客,低调大师

【技术实验】表格存储Tablestore准实时同步数据到Elasticsearch

实验背景 图书馆Q是一家大型图书馆,图书馆藏书众多,纸质图书600多万册,电子图书7000多万册,总数有八千多万册,这些图书之前都是人工检索维护的,现在需要做一个系统来存储管理这些图书信息。需求如下: 图书总量目前八千多万册,考虑到未来二十年的增长,需要系统能支持一亿的存储量。 图书信息很重要,不能接受丢失发生。 图书的名字和作者名字需要支持模糊搜索。 每本书的属性最多有一百多个,且不固定,不同类型的图书的属性列差异较大。且未来可能会新增属性列。 根据上面这些需求特点,要完成这个管理系统,需要两类系统支持: 分布式NoSQL数据库:解决两亿存储量的问题,解决属性列较多且不固定的问题,解决可靠性要求高的问题。 搜索系统:解决固定列模糊搜索的需求。 如果使用阿里云产品,那么对应的产品就是: Table Store:分布式NoSQL数据库。 Elastics

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册