首页 文章 精选 留言 我的

精选列表

搜索[CEL策略],共10000篇文章
优秀的个人博客,低调大师

落地 ZeroETL 轻量化架构,ByteHouse 推出“四个一体化”策略

在数字化转型的浪潮中,数据仓库作为企业的核心数据资产,其重要性日益凸显。随着业务范围扩大,企业也会使用不同的数据仓库来管理、维护相关数据。研发人员需要花费大量时间和精力,从中导出数据,然后进行手动整理、转换格式,再导入到分析工具中完成数据分析。该过程不仅繁琐,还容易出错。 ZeroETL 则提供了一个全新的解决方案,让研发人员无需操作复杂的数据抽取、转换和加载(ETL)过程就能实现数据整合和分析。它能够自动从不同软件中获取数据,直接将数据整合到一起,以统一格式呈现,帮助使用者更快速、轻松地进行数据分析。 而火山引擎云原生数据仓库 ByteHouse 则通过“四个一体化”逐步实现 ZeroETL 轻量化数据架构,不仅让数仓更轻快,数据免开发,还能保障数据质量,实现智能运维 据火山引擎 ByteHouse 产品负责人介绍,“ByteHouse 是一款 OLAP(联机分析处理)产品,用人体比喻,相当于腰部,为力量汇聚之地。但如果缺少四肢的支撑,腰部产品很难独立发挥作用。由此,ByteHouse 提出‘四个一体化’的核心理念,旨在通过全面融合,实现数据的无缝流动和高效利用。” ByteHouse“四个一体化”架构 首先,TP、AP 一体化。TP(联机事务处理)和 AP(联机分析处理)的一体化是 ByteHouse 的核心优势之一。通过这一技术,ByteHouse 能够实时捕获上游数据,实现数据的即时分析和消费。其中,CDC(变更数据捕获)技术能够将上游数据库的变更数据以秒级速度拉取到数据仓库中,为报表和仪表盘提供实时数据支持。此外,ByteHouse 还与主流的 CDC 产品实现了无缝对接,包括火山引擎数智平台 VeDI 旗下的 DataSail、开源的 DataX、Flink 等,进一步增强了数据的实时性和准确性。 其次,湖、仓一体化。在数据湖和数据仓库的融合方面,ByteHouse 支持对 Lake 中的数据以外表的方式进行读写,包括 ORC、Parquet、Hive、Iceberg、Paimon 和 Hudi 等开放格式。同时,为了加速性能,ByteHouse 在优化器和 Schema 动态感知层面做了增强,并为开放格式提供了原生读取器,确保在湖仓之间实现高性能的数据流动。 再次,AP、AI 一体化。ByteHouse 开发了 Vector search 高级引擎,其可插拔的特点让用户可以根据不同的应用需求开启不同的计算组。此外,ByteHouse 还在不断探索运用 AI 能力让数据仓库变得更加智能,包括查询优化、索引物化视图、cache、schema 等方面。 最后,仓、市一体化。对于上规模的公司而言,数据分析中台往往由多个集群构成,数据流动复杂。ByteHouse 通过 Remote 方式实现了不同集群之间的数据联邦,帮助用户免除数据搬迁的繁琐操作,不仅提高了数据流动的效率和准确性,还降低了运维成本。 通过“四个一体化”战略的实施,ByteHouse 实现了 Zero ETL 理念。Zero ETL 不止指一种工具,更是强调数据的轻量化、高效化和智能化的理念。基于该理念,ByteHouse 能帮助企业实现数据免搬迁、开发敏捷化、数据质量提升以及运维智能化。未来,随着技术的不断迭代和升级,ByteHouse 将继续为企业提供更加高效、智能和可靠的云原生数仓解决方案。

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

弹性数据库连接池探活策略调研(一)——HikariCP | 京东云技术团队

调研背景: 数据库连接建立是比较昂贵的操作(至少对于 OLTP),不仅要建立 TCP 连接外还需要进行连接鉴权操作,所以客户端通常会把数据库连接保存到连接池中进行复用。连接池维护到弹性数据库(JED)的长连接,弹性数据库默认不会主动关闭客户端连接(除非报错),但一般客户端到弹性数据库之间还会有负载均衡代理,它们通常为了节约连接资源会在连接空闲10分钟后主动清理连接,释放无用的连接资源。这就导致一些用户的连接池探活参数配置不当,进而拿到是已经失效的连接。客户端就会报以下错误: 基于以上的背景我们根据Java应用常用的连接池的常用版本的连接池探活相关的功能进行了调研,并对每个版本提供了JED配置的模版。目前,常用的连接池版本如下: HikariCP 3.2.0、 3.4.5、4.0.3 DRUID 1.1.10、1.1.9、1.0.9 DBCP 1.4 、2.2.0、2.1.1 HikariCP 我们第一个章节先来介绍一下HikariCP连接池探活相关的内容: HikariCP连接池会在需要分配连接对象给应用程序使用时,先检查连接对象的状态。为了检测连接是否可用,连接池会调用isConnectionAlive方法。如果连接对象是可用的,连接池会将连接对象分配给应用程序使用;如果连接对象不可用,连接池会创建一个新的连接对象,并将新的连接对象分配给应用程序使用。 所以HikariCP连接池的连接对象失效时,连接池只会在日志中输出警告信息,建议缩短连接对象的最大生存时间(`maxLifetime`)。但是,这并不会影响程序的正常执行,因为连接池会自动重新创建新的连接对象并分配给应用程序使用。因此,应用程序可以继续使用连接池中的连接对象,而不会受到失效连接的影响。 虽然使用HikariCP连接池时,如果不配置连接探活,应用程序在拿到失效的连接时不会报错,但是当应用程序需要执行SQL时,可能会遇到失效的连接,导致需要重新建立连接,增加了额外的性能开销。这样就没有充分发挥连接池的优势,因为连接池的主要目的是通过重复使用连接对象来提高应用程序的性能和可伸缩性。 为了最大化发挥连接池的价值,我们就一块来了解一下关于HikariCP探活相关的内容,看看如何利用相关的探活参数更高效地使用连接池。 以下是跟HikariCP探活通用的相关的参数: 参数名称 说明 默认值 minimumIdle 连接池维护的最小空闲连接数 5 maximumPoolSize 连接池中能容纳的最大连接数 10 maxLifetime 此参数用来控制连接在连接池中最大的生命周期,当建立的连接时间超过这个参数时候在空闲状态就会被销毁。 1800000 (30 minutes) idleTimeout 此参数用来控制连接在连接池中空闲的时间,如果设置8分钟,就会每隔8分钟清理一下超过minimumIdle的空闲连接。 600000 (10 minutes) connectionTestQuery 这个参数在低版本中只会在从池中提供连接之前执行配置的SQL。这个参数适用于不支持JDBC4 Connection.isValid() API,支持JDBC4以上驱动的建议不要配置。 none keepaliveTime 该属性是防止底层网络基础设施超时断开,定期验证连接的有效性,如果连接失效从连接池中剔除。该值必须小于maxLifetime值。4. 0.1以上版本引入的新参数可以结合connectionTestQuery参数来探活。 0 (禁用) HikariCP连接池的探活代码如下。可以看到,在探活时,连接池会根据isUseJdbc4Validation属性的值来决定是否走JDBC API进行探活isUseJdbc4Validation属性的值是在初始化数据源时根据connectionTestQuery属性是否为空来赋值的。如果connectionTestQuery属性为空,isUseJdbc4Validation属性的值为true,连接池会走JDBC API进行探活。因此,在JDBC 4.0及以上版本中,不建议配置connectionTestQuery属性进行探活,因为这样会影响探活的效率。 在HikariCP较低的版本中,无法对连接进行保活,只能在每次获取连接时验证连接的有效性。而在4.0.1版本中,引入了keepaliveTime参数,可以定时的对连接进行探活。因此,为避免获取到已关闭的连接,在低版本中,只能将maxLifetime参数调整到少于10分钟,才能完全避免拿到网关已经关闭的连接。在4.0.1及以上版本中,可以使用keepaliveTime参数配合connectionTestQuery参数进行连接探活,从而在获取连接之前就进行探活。这样可以提高连接的可靠性和稳定性,避免应用程序遇到无效连接的情况。 配置keepaliveTime后我们可以看到每次到配置的时间就会打印出来探活日志 因此针对线上使用HikariCP的应用推荐使用4.0.1以上支持keepaliveTime的版本。 JED配置模版: HikariCP3.2.0 spring.datasource.hikari.minimumIdle=5 spring.datasource.hikari.maximumPoolSize=10 spring.datasource.hikari.maxLifetime=540000 spring.datasource.hikari.idleTimeout=480000 #JDBC4以上的版本不建议配置connectionTestQuery spring.datasource.hikari.connectionTestQuery=select 1 低版本中主要保证maxLifetime低于10分钟能够完全避免拿到网关已经关闭的连接,但可能会造成频繁的创建销毁连接所以建议使用4.0.1以上支持keepaliveTime的版本。 HikariCP3.4.5 同3.2.0版本。 HikariCP4.0.3 spring.datasource.hikari.minimumIdle=5 spring.datasource.hikari.maximumPoolSize=10 spring.datasource.hikari.maxLifetime=1800000 spring.datasource.hikari.idleTimeout=600000 #JDBC4以上的版本不建议配置connectionTestQuery spring.datasource.hikari.connectionTestQuery=select 1 spring.datasource.hikari.keepaliveTime=300000 4.0.1以上的版本中可以把keepaliveTime参数设置小于10分钟对连接进行探活,就能避免拿到被网关关闭的连接,maxLifetime的时间就可以延长能避免频繁的创建销毁连接。 参考文档: https://github.com/brettwooldridge/HikariCP#readme 作者:京东零售王雷鑫 来源:京东云开发者社区 转载请注明来源

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

让共享单车变得更加智能 看高通在物联网领域的“全覆盖”策略

用手机扫描共享单车上的二维码,APP上出现解锁进度的读条,10秒内就会听到电机带动和锁鞘“啪”的一声,解锁成功。 仿佛一夜之间,共享单车铺满了中国各大主要城市的大街小巷。橙色的摩拜、黄色的ofo、蓝色的bluegogo、黄蓝相间的永安行……大家都戏称之为“彩虹大战”。 共享单车是目前热度最高的行业之一,它解决了短途出行的问题,提升了城市交通的效率,给人民出行带来了很大的便利。不过,“野蛮生长”的共享单车市场也面临着诸多亟待解决的问题,包括共享单车定位不准确以至于找不到车、扫码后不能立刻解锁等情况。 共享单车不够“智能”怎么破? 我们先来看一下共享单车的“工作模式”。用户通过手机扫描共享单车上的二维码来获取车辆信息,然后通过移动网络将解锁请求上传到云端,云端通过GPRS等网络接受车辆状态和地理位置等信息,再下发解锁指令到单车,并进行计费等处理。这其实是比较常见的物联网应用架构:云→管→端,而共享单车的物联网体系大致分为手机端、云端和单车端等三个部分。造成上述问题的原因可能是多方面的,本文将从单车端入手,探讨如何利用物联网技术让共享单车变得更好。 单车端是收集数据与执行云端命令的载体。目前,共享单车还在使用GSM等模块来进行通信联网传输,这类部署适用于共享单车的发展早期。由于共享单车的数量越来越多,而且投放位置较为集中,导致其网络容量需求持续变大。网络负载大,会造成网络拥塞甚至崩溃。另外,由于共享单车使用的GSM等模块功耗较高,如果在无法充电的环境下会导致单车端电量很快耗尽,使用户无法开锁。 国家信息中心信息化研究部主任、分享经济研究中心主任张新红曾表示,“共享单车在快速发展的过程中确实会碰很多问题,但是这些问题都可以慢慢解决。”很多公司都在研发适用于共享单车应用场景的芯片,高通就是其中之一。 多模多频走天下 看高通如何助力共享单车市场发展 仿佛就在一夜间,eMTC和NB-IoT开始兴起。高通的选择是,支持多模多频,其目标是广泛覆盖全球用户的需求。未来,如果用户要对相关网络、相关的频段和模式进行调整,高通的模块通过升级软件进行相关调整就能够满足这些需求,同时还能提高模块的生命周期。除此之外,高通的物联网解决方案具有很高的集成度与可扩展性,如VoLTE 语音功能、Security zone安全域、A7 processor边缘计算能力,物联网管理平台LWM2M协议内置,拟开源接口QAPI等。 可以说高通提供的不仅是eMTC/NB-IoT/GSM的多模连接能力,而是一个面向复杂应用场景及网络环境的底层能力“平台”,共享单车无疑是最能体现其高附加价值的一个典型用例。 2016年初,高通就率先推出了多模多频调制解调器MDM9206,它可以被看作是一款 “全网通” 产品。据不完全统计,目前在全球商业和工业物联网应用中,有上百种种设计正在采用这款芯片。今年5月份,高通与摩拜单车、中国移动研究院达成合作,共同启动中国首个eMTC/NB-IoT/GSM(LTE Cat M1/NB1和E-GPRS)多模外场测试,通过中国移动的2G/4G LTE多模网络,把高通MDM9206调制解调器应用在摩拜单车的智能车锁上。日前, 摩拜单车还计划采用AT&T和高通的物联网解决方案,在美国推广其无桩智能单车。 善弈者谋局。高通在“物联网”这盘棋局上,不仅走得快,还要走得稳。 换“芯”大作战:高通+摩拜单车=更优的用户体验 据了解,MDM9206目前已应用在摩拜单车的智能车锁上。那么,MDM9206有何优势呢? 首先,通过MDM9206 的LTE连接及全球导航卫星系统(GNSS)定位功能,摩拜单车用户能够更加精准地识别可用单车、缩短智能锁开锁时间,并对单车状态持续监测、实时管理。 其次,MDM9206全球多模LTE调制解调器和高通的低功耗蓝牙解决方案还计划应用在摩拜单车的“智能推荐停车点”中,可实现亚米级定位,帮助摩拜单车实时掌握各区域内单车数量、位置及不同区域间的流量信息,为单车投放、调度和运维提供智能指引。 再次,MDM9206有低功耗、低带宽、长达数年的续航时间和更广覆盖的特点,将帮助像摩拜单车这样的物联网平台减少物联网终端的复杂性,并加快产品的商用进程。 最后,MDM9206LTE调制解调器支持全球Cat-M1和Cat-NB1以及GSM多模,摩拜单车无需改动车辆和智能锁硬件即可在海外市场投放车辆,并与当地的物联网和移动通信网络无缝实时对接。 高通技术副总裁李维兴曾表示,通过与中国移动研究院以及摩拜单车开展的中国首个多模Cat-M1/Cat-NB1外场测试合作,高通与合作伙伴展示出一个面向诸如摩拜单车共享平台等全新物联网应用的、高度连接且更加高效的系统。 随着万物智能互联时代的到来,物联网商机不断涌现。摩拜单车是高通实现5G海量物联网的重要一步,也是一个可供业界借鉴的蓝本。脚步不停,创新不止,能够抓住用户的实际使用需求才是硬道理,相信高通深谙此道。据悉,现在高通每天物联网芯片的出货 量已超过一百万颗。 原文出处:科技行者 转载请与作者联系,同时请务必标明文章原始出处和原文链接及本声明。

资源下载

更多资源
腾讯云软件源

腾讯云软件源

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

Nacos

Nacos

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

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等操作系统。

用户登录
用户注册