首页 文章 精选 留言 我的

精选列表

搜索[精准预约],共7934篇文章
优秀的个人博客,低调大师

阿里云携手华大基因打造精准医疗应用云平台

华大基因股份公司总监金鑫介绍了华大基因,并浅谈了与阿里云的情缘,包括Maxcompute等方面应用案例。一起来看下吧。 华大基因是中国最领先的基因科技公司,华大基因为消除人类病痛、经济危机、国家灾难、濒危动物保护、缩小贫富差距等方面提供分子遗传层面的技术支持。目前,世界上只有两个国家的三个公司可以生产、量产临床级别的基因测序仪,华大基因是中国的唯一一家。我们在基因的产权研发方面从1999年开始做了很多的工作。在2014年,我们与阿里云有了初步的接触,在2015年上线了我国第一个基因云计算平台。 我们与阿里云合作是因为我们看到基因技术从过去的只在实验室中逐渐进入到广大群众的生活场景当中,不管是在医学健康方面、生殖健康方面、肿瘤防治方面、病原感染方面还是农业育种,以及与我们每个人息息相关的健康管理,基因技术已经取得越来越多的应用场景,在国产基因测序仪的助力之下,基因数据产生的体量也越来越庞大,远远的超出了原有的计算能力所能支持的范围。 正是这样的背景之下,在非常强劲的需求驱动下,我们与阿里云开始了合作,使用了阿里云计算存储的多款产品,尤其包括批量计算、Maxcompute等一些异构计算方式,使我们原先需要几周甚至更长时间才能完成的计算任务在一两天内得以解决。在我们现在进行的百万人基因组项目中,阿里云的Maxcompute技术帮助我们大大加速了对于人群结构的分析速度的进展,相关的结果我们也在整理中。 每个人的基因数据为100G,传统计算方式处理需要三到五天,使用Maxcompute使得整个分析可以在一小时内完成,大大加速了数据吞吐速度和交付速度。另外,在对100万人的基因数据进行遗传结构分析时,我们需要把每一个人与剩余的所有人进行遗传距离计算,这个计算量是巨大的,计算复杂度已经远远超出了传统计算条件下硬件设备所能承受的能力范围,通过使用Maxcompute,我们已经在这方面取得了技术突破,我们在几小时内就可以把一个人与百万人中所有遗传距离进行计算,这样的例子我们还在不断的开发中,相信Maxcompute也会给我们带来更多的惊喜。 在存储方面,我们也使用了阿里的产品,每年我们会产生非常多的基因数据,明年我们计划对10万人进行基因组的基因测序和分析,我们将与阿里云计算平台一起在2018年用国产测序仪完成计算、分析和交付。

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

携程如何从海量数据中构建精准用户画像?

用户画像作为“大数据”的核心组成部分,在众多互联网公司中一直有其独特的地位。 作为国内旅游OTA的领头羊,携程也有着完善的用户画像平台体系。目前用户画像广泛用于个性化推荐,猜你喜欢等;针对旅游市场,携程更将其应用于“房型排序”“机票排序”“客服投诉”等诸多特色领域。本文将从目的,架构、组成等几方面,带你了解携程在该领域的实践。 1.携程为什么做用户画像 首先,先分享一下携程用户画像的初衷。一般来说,推荐算法基于两个原理“根据人的喜好推荐对应的产品”“推荐和目标客人特征相似客人喜好的产品”。而这两条都离不开用户画像。 根据用户信息、订单、行为等等推测出其喜好,再针对性的给出产品可以极大提升用户感受,能避免用户被无故打扰的不适感。同时针对不同画像的用户提供个性化的服务也是携程用户画像的出发点之一。 2.携程用户画像的架构 2.1.携程用户画像的产品架构 如上图所示,携程用户画像的产品架构大体可以总结为 注册 采集 计算 存储/查询 监控 所有的用户画像都会在”UserProfile平台”中进行注册,由专人审核,审核通过的画像才可以在“数据仓库”中流转;之后会通过用户信息、订单、行为等等进行信息采集,采集的目标是明确的、海量的、无序的。 信息收集的下一步是画像的计算,携程有专人制定计算公式、算法、模型,而计算分为批量(非实时)和流式(实时)两种,经过严密的计算,画像进入“画像仓库”中;而根据不同的使用场景,我们又会提供实时和批量两种查询API供各调用方使用,实时的服务侧重高可用,批量服务侧重高吞吐;最后所有的画像都在监控平台中得到有效的监控和评估,保证画像的准确性。 2.2.携程用户画像的技术架构 携程发展到今天规模,更强调松耦合、高内聚,实行BU化的管理模式。而用户画像是一种跨BU的模型,故从技术架构层面,携程用户画像体系如上图所示。 各BU都可以贡献有价值的画像,而基础部门也会根据BU的需要不断制作新的画像。画像经过开源且经我们二次开发的DataX和Storm进入携程跨BU的UserProfile数据仓库。在仓库之上,我们会有Redis缓存层以保证数据的高可用,同时有实时和借助elasticsearch两种方式的API,供调用方使用。 该架构有如下关键点: 1.有异步和实时两种通道满足不同场景、不同画像的需要,事实类画像一般采用实时计算方式,而复合类画像一般采用异步方式。 2.携程强调专人专用,每个人做自己最适合的事。故整个UserProfile是多个团队合作完成的,其中包括但不限于各BU的开发、BI,基础的开发、BI等。 3.所有API都是可降级、可熔断的,可以根据需要切数据流量。 4.由于用户画像极为敏感,出于数据安全的考虑,我们查询服务有严格的权限控制方案,所有信息必须经过授权才可以访问。 5.出于对用户画像准确性负责的目的,我们有专门的UserProfile数据可视化平台监控数据的一致性、可用性、正确性。 上述是用户画像的总体描述,下面我将详细分享各个细节。 如上图所示,用户画像的注册在一个典型的Mis系统中完成,UserProfile数据的提供方在这里申请,由专人审核。申请时,必须填写画像的含义、计算方式、可能的值等。 3.携程用户画像的组成 3.1.信息采集 基础信息的采集是数据流转的开始,我们会收集UserInfo(比如用户个人信息、用户出行人信息、用户积分信息)、UBT(用户在APP、网站、合作站点的行为信息)、用户订单信息、爬虫信息、手机APP信息等。而上述每个基础信息的采集又是一个专门领域。比如下图展示了用户订单信息采集流程。 3.2.画像计算 基础信息是海量的、无序的,不经加工没有太大的价值。故用户画像的计算是数据流转的关键所在。我们的BI团队会制定严密的公式和模型,根据场景的需要,制定规则和参数,对采集信息做异步计算。这样的计算由于耗时较长,一般我们会采用T+N的方式异步更新,根据画像的不同,数据新鲜度的要求亦不同。动态和组合标签大多采用异步方式计算更新。Hive、DataX等开源工具被使用在这个步骤中。 而有些画像是事实或对新鲜度要求比较高的,故我们会采用Kafka+Storm的流式方案去实时更新计算。比如下图,UBT(用户行为数据)使用消息通道Hermes对接Kafka+Storm为UserProfile的实时计算提供了有力的支持。 3.3.信息存储 用户画像的数据是海量的,被称作最典型的”大数据”,故Sharding分布式存储、分片技术、缓存技术被必然的引入进来。 携程的用户画像仓库一共有160个数据分片,分布在4个物理数据集群中,同时采用跨IDC热备、一主多备、SSD等主流软硬件技术,保证数据的高可用、高安全。 由于用户画像的的使用场景非常多、调用量也异常庞大,这就要求用户画像的查询服务一定要做到高可用。故我们采用自降级、可熔断、可切流量等方案,在仓库前端增加缓存。如下图所示,数据仓库和缓存的存储目的不同,故是异构的。 3.4.高可用查询 响应时间和TPS是衡量服务可用性的关键指标,携程要求所有API响应时间低于250ms(包括网络和框架埋点消耗),而我们用户画像实时服务采用自降级、可熔断、自短路等技术,服务平均响应时间控制在8ms(包括网络和框架埋点消耗),99%响应时间控制在11ms。 大部分场景都是通过单个用户获取用户画像,但部分营销场景则需要满足特定画像的用户群体,比如获取年龄大于30岁、消费能力强、有亲子偏好的女性。这种情况下会返回大量用户,此时就需要借助批量查询工具。经过多次技术选型,我们决定采用elasticsearch作为批查询的平台,封装成API后很好的支持上述场景。 3.5.监控和跟踪 在数据流转的最后,数据的准确性是衡量用户画像价值的关键指标。基于高质量信息优于大数量信息的基调,我们设置了多层监控平台。从多个维度衡量数据的准确性。比如就用户消费能力这个画像,我们从用户等级、用户酒店星级、用户机票两舱等多个维度进行验证和斧正。同时我们还要监控数据的环比和同比表现,出现较大标准差、方差波动的数据,我们会重新评估算法。 上述所有环节组成了携程跨BU用户画像平台。当然技术日新月异,我们也在不断更新和局部创新,或许明年又会有很多新的技术被引入到我们用户画像中,希望我的分享对你有所帮助。 本文作者:周源 来源:51CTO

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

【直播预约】天翼云如何通过 DolphinScheduler 实现大数据自动化与全链路血缘,探索实践亮点!

在快速发展的云计算和大数据时代,如何打造一个高效、可靠、易扩展的分布式调度平台?天翼云给出了一个完美答案!在本期技术分享中,我们将邀请天翼云研发专家,带来关于天翼云翼MR加载Apache DolphinScheduler的实践经验和社区贡献的精彩演讲。 和很多用户一样,天翼云选择Apache DolphinScheduler 作为其核心调度平台,是看中了 DolphinScheduler 的易用性、高可靠性与扩展性,以及背后高质量社区的支持。 在天翼云的实践与计划中,DolphinScheduler 与翼MR大数据组件将无缝集成,为天翼云提供了更强的自动化调度能力和更精细的监控与运维功能。通过这一集成,天翼云不仅提升了业务流程的效率,还优化了大数据处理的自动化程度。 为了更好地满足客户需求,天翼云还针对DolphinScheduler 进行了多项二次开发,如结果集标准化、全链路血缘、第三方系统集成等,未来也将计划对 DolphinScheduler 进行进一步优化,持续提升平台的灵活性与智能化水平。 讲师介绍 本次活动的讲师是陆小龙,天翼云研发专家。Apache Linkis Committer ,Apache Dolphinscheduler贡献者。陆小龙深入参与了天翼云的DolphinScheduler集成与优化工作,对系统架构、二次开发和社区贡献有着丰富的经验与深刻的见解。 活动详情 参与方式 本次活动将通过 「海豚调度」视频号 进行线上直播,欢迎大家关注并参与!无论你是开源社区的支持者,还是大数据领域的从业者,都会从这次分享中收获满满。 在这次活动中,我们将一起探讨如何通过Apache DolphinScheduler 打造高效、可靠的分布式调度平台,如何结合天翼云翼MR进行大数据调度的优化,以及如何贡献于开源社区,推动技术发展。 PS:直播中还有礼品掉落,欢迎来炸好运! 赶快扫码关注我们,加入这场与大数据和云计算的技术碰撞吧!🎉

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

Java集成公安二要素政务版实现精准合规审查

在推进数字政务与“一网通办”服务的进程中,确保办事群众身份的真实有效是防范各类虚假申报与履约隐患的基础。传统政务服务窗口或早期的线上审批模式,通常要求申请人上传手持身份证照片或进行线下材料比对。这一过程不仅耗时费力、用户体验不佳,且在面对非真实日常账号或伪造资质时,依靠人工肉眼的辨识度很难做到实时、精确的前置准入校验。

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

MySQL中实现动态表单中JSON元素精准匹配的方法

在很多有工作流设置的地方、比如需要在不同的流程中,需要实现流程表单的自定义。在以前的一些业务中,我们几乎都需要用户来固化表单。这样的实现方式,非常不友好,扩展性也不强。通常在上线后会需要进行调整。同时,在调整时,一般需要用户先明确流程,然后再反馈给开发人员,因为当时没有在线的流程表单构造器,流程的表单调整还需要开发人员来配合。这样一来,系统的开发步骤就比较长,一个流程要想走下来,花费的时间代价就非常大。因此,在这样的需求背景下,有的技术团队开始研究动态表单,将用户的创造和动手能力直接引入进来。用户不仅能自定义流程引擎,同时还能基于流程引擎来定义挂载在流程引擎上的表单。

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

数据重整:用Java实现精准Excel数据排序的实用策略

摘要:本文由葡萄城技术团队原创并首发。转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。 前言 在数据处理或者数据分析的场景中,需要对已有的数据进行排序,在Excel中可以通过排序功能进行整理数据。而在Java中,则可以借助Excel表格插件对数据进行批量排序,下面是一些常见的数据排序方法: 按值排序 按图标排序 按字体颜色排序 按背景色排序 根据自定义序列排序 下面小编将为大家介绍如何使用Java分别实现上述的Excel数据排序。 样例数据 为了方便展示,先准备一些样例数据,用于排序,定义一个方法,传入workbook,在上面添加如下数据。 private void SetExampleData(Workbook wb) { Object data = new Object[][]{ {"Name", "City", "Birthday", "Eye color", "Weight", "Height"}, {"Richard", "New York", new GregorianCalendar(1968, 5, 8), "Blue", 67, 165}, {"Nia", "New York", new GregorianCalendar(1972, 6, 3), "Brown", 62, 134}, {"Jared", "New York", new GregorianCalendar(1964, 2, 2), "Hazel", 72, 180}, {"Natalie", "Washington", new GregorianCalendar(1972, 7, 8), "Blue", 66, 163}, {"Damon", "Washington", new GregorianCalendar(1986, 1, 2), "Hazel", 76, 176}, {"Angela", "Washington", new GregorianCalendar(1993, 1, 15), "Brown", 68, 145} }; IWorksheet sheet = wb.getWorksheets().get(0); sheet.getRange("A1:F7").setValue(data); sheet.getRange("A:F").setColumnWidth(15); wb.save("output/sampleData.xlsx"); } 样例数据如下所示: 1. 按值排序 按值排序是指根据单元格值按特定顺序排列数据的排序操作。setOrientation方法用于指定排序的方向类别,即列或行。 public void SortByValue() { Workbook wb = new Workbook(); SetExampleData(wb); IWorksheet sheet = wb.getActiveSheet(); //对F列做升序排序. sheet.getRange("A2:F7").sort(sheet.getRange("F2:F7"), SortOrder.Ascending, SortOrientation.Columns); wb.save("output/sortByValue.xlsx"); } 实现效果如下图所示: 2. 按图标排序 按图标排序是指基于单元格的条件格式图标执行的排序操作。 public void SortByIcon() { Workbook wb = new Workbook(); SetExampleData(wb); IWorksheet sheet = wb.getActiveSheet(); IIconSetCondition iconset = sheet.getRange("F2:F27").getFormatConditions().addIconSetCondition(); iconset.setIconSet(wb.getIconSets().get(IconSetType.Icon3TrafficLights1)); sheet.getSort().getSortFields().add(new IconSortField(sheet.getRange("F2:F7"), wb.getIconSets().get(IconSetType.Icon3TrafficLights1).get(2), SortOrder.Ascending)); sheet.getSort().setRange(sheet.getRange("A2:F7")); sheet.getSort().setOrientation(SortOrientation.Columns); sheet.getSort().apply(); wb.save("output/sortByIcon.xlsx"); } 实现效果如下图所示: 3. 按字体颜色排序 按字体颜色排序是指根据单元格的显示格式和字体颜色执行的排序操作。 public void SortByFontColor() { Workbook wb = new Workbook(); SetExampleData(wb); IWorksheet sheet = wb.getActiveSheet(); sheet.getRange("F2").getFont().setColor(Color.GetRed()); sheet.getRange("F3").getFont().setColor(Color.GetGainsboro()); sheet.getRange("F4").getFont().setColor(Color.GetGreen()); sheet.getRange("F5").getFont().setColor(Color.GetGainsboro()); sheet.getRange("F6").getFont().setColor(Color.GetGainsboro()); sheet.getRange("F7").getFont().setColor(Color.GetGainsboro()); sheet.getSort().getSortFields().add(new FontColorSortField(sheet.getRange("F2:F7"), sheet.getRange("F7").getFont().getColor(), SortOrder.Ascending)); sheet.getSort().setRange(sheet.getRange("A2:F7")); sheet.getSort().setOrientation(SortOrientation.Columns); sheet.getSort().apply(); wb.save("output/sortByFontColor.xlsx"); } 实现效果如下图所示: 4. 按背景色排序 按背景颜色排序是指根据单元格的背景颜色进行排序的操作。 public void SortByBackgroundColor() { Workbook wb = new Workbook(); SetExampleData(wb); IWorksheet sheet = wb.getActiveSheet(); sheet.getRange("F2").getInterior().setColor(Color.GetLightPink()); sheet.getRange("F3").getInterior().setColor(Color.GetLightGreen()); sheet.getRange("F4").getInterior().setColor(Color.GetLightPink()); sheet.getRange("F5").getInterior().setColor(Color.GetLightGreen()); sheet.getRange("F6").getInterior().setColor(Color.GetLightBlue()); sheet.getRange("F7").getInterior().setColor(Color.GetLightPink()); sheet.getSort().getSortFields().add(new CellColorSortField(sheet.getRange("F2:F7"), sheet.getRange("F4").getDisplayFormat().getInterior(), SortOrder.Ascending)); sheet.getSort().setRange(sheet.getRange("A2:F7")); sheet.getSort().setOrientation(SortOrientation.Columns); sheet.getSort().apply(); wb.save("output/sortByBackgroundColor.xlsx"); } 实现效果如下图所示: 5. 根据自定义序列排序 public void CustomSort() { Workbook wb = new Workbook(); SetExampleData(wb); IWorksheet sheet = wb.getActiveSheet(); ValueSortField sortkey = new ValueSortField(sheet.getRange("A2:A7"), "\"Angela\", \"Damon\""); sheet.getRange("A2:F7").sort(SortOrientation.Columns, false, sortkey); wb.save("output/customSort.xlsx"); } 实现效果如下图所示: 总结 以上就是在Java中对Excel数据进行排序的方法,如果您想了解更多有关于数据排序的玩法和技巧,可以参考这篇帮助手册,无论是初学者还是有经验的专业人士,该帮助手册都将为您提供有价值的指导和帮助。 扩展链接: 从表单驱动到模型驱动,解读低代码开发平台的发展趋势 低代码开发平台是什么? 基于分支的版本管理,帮助低代码从项目交付走向定制化产品开发

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Spring

Spring

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

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

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

用户登录
用户注册