本次的练习是:如下图1所示,单元格区域A2:E5中包含一系列值和空单元格,其中有重复值,要求从该单元格区域中生成按字母顺序排列的不重复值列表,如图1中G列所示。 ?...然而,我们得到的结果数组将是一维数组且包含的元素与二维区域中的元素完全相同。...而它们都引用了Arry1: =ROW(INDIRECT("1:"&COLUMNS(Range1)*ROWS(Range1))) 名称Range1代表的区域有4行5列,因此转换为: ROW(INDIRECT...唯一不同的是,Range1包含一个4行5列的二维数组,而Arry4是通过简单地将Range1中的每个元素进行索引而得出的,实际上是20行1列的一维区域。...好了,现在就可以使用我们掌握的常用的适用于一维区域的技术来操作该数组了! 4.
(> 1000 rows)进行写入 不修改已添加的数据 每次查询都从数据库中读取大量的行,但是同时又仅需要少量的列 宽表,即每个表包含着大量的列 较少的查询(通常每台服务器每秒数百个查询或更少) 对于简单查询...,十分适合用于对- 按时间进行统计分析的场景 Druid把数据列分为三类:时间戳、维度列、指标列 Druid不支持多表连接 Druid中的数据一般是使用其他计算框架(Spark等)预计算好的低层次统计数据...GPDB完全支持ANSI SQL 2008标准和SQL OLAP 2003 扩展;从应用编程接口上讲,它支持ODBC和JDBC。完善的标准支持使得系统开发、维护和管理都大为方便。...特性:采用列式存储;数据压缩;支持分片,并且同一个计算任务会在不同分片上并行执行,计算完成后会将结果汇总;支持SQL;支持联表查询;支持实时更新;自动多副本同步;支持索引;分布式存储查询。...2、可以接入hive数据 3、单表查询数据较多,较少的join,在数仓中完成宽表构建 可选组件为druid、clickhouse,考虑到druid时间窗问题,最好需要离线数据同步更新昨天druid中的数据
: 标签建设通用方案 某项目技术架构 a.计算集群对接:智能标签产品采用的OLAP引擎是Presto,并有Presto的二次开发能力,如Presto的公开插件中没有Inceptor的连接器,袋鼠云便自研该插件完成...b.标签周期与手动跑批: (1) 采用presto读写Hive数据进行标签大宽表的加工,最终将所有标签放在一张大宽表中,从而提高标签圈群与群组分析的效率; (2) 标签除根据选择的调度周期定时跑批外,可进行手动更新...c.标签圈群:通过Presto查询标签大宽表进行目前群组圈选,并让用户选择群组数据是否要落库和定时更新。 d.数据服务:标签和群组的对外服务,通过数据同步或数据API来完成。...产品方案 对应以上建设目标,产品解决方案如下: a.多实体与关系建模 基于“多实体”设计,实现可创建基金行业中客户、产品、渠道多个对象的标签体系;并可通过“关系”将多实体进行关联,创建基于多个实体原子标签的衍生与组合标签...(2) 标签读写列权限控制:发布某标签(后续进行标签加工),使用某标签(标签圈群和分析时使用)都需要经过部门管理员、项目管理员审批,严格控制标签的查询、加工操作。
不过这类业务通常数据量不是非常大,而且通常都是大宽表,也就不需要再去 Join 别的数据,Group By 形成的 Group 基数和产生的聚合数据量不是特别大,查询时间主要消耗在数据扫描读取时间上。...详见 (https://github.com/prestodb/presto/issues/12191) 4.3 多个列 Distinct 的问题 有一些报表业务是使用 Presto 直接来算转化率的,...这样的报表就会引起一个查询语句中有多个 count distinct 列的问题。...当然,我们也需要理性看待 Alluxio,从原理本质上来讲,就 Presto 读取数据这块,这个要视情况而论....5.3 Presto多租户隔离 目前 Presto 官方并没有实现和 Apache Ranger 结合的多租户隔离机制,我们目前有一个 Sql Parser服务,去解析 Presto,Hive,Spark
因此,Uber 的 Spark 用户经常要求将日志保留期从三天延长到一个月。但是,如果Uber将保留期延长到一个月,其HDFS存储成本将从每年18万美元增加到每年1.8M美元。...相反,通过部分实施CLP,Uber在将保留期延长到一个月后,将存储成本降低到每年1万美元。...[...]CLP 的收益来自于使用经过调整的、特定于域的压缩和搜索算法,该算法利用了文本日志中的大量重复。因此,CLP 能够对归档日志进行高效的搜索和分析,如果没有它,这是不可能实现的。...缓冲许多日志消息后,使用 Zstandard 压缩每一列(按面向列的顺序)。 未来,Uber 工程师计划部署 CLP 的第 2 阶段压缩,将存储成本降低 2 倍。...此外,他们计划使用列式存储格式(如 Parquet)存储压缩日志,可能与 Presto 集成,以便使用 SQL 查询交互式分析日志。
宽表不只能解决数据模型的问题,还能解决维度变化、或者超高基数的维度等问题。 第二点是表达式指标的问题,也可以通过提前处理解决。把表达式单独转成一列,再基于这列做聚合就可以了。...image.png 从查询效率上看,这里表现最不好的就是Presto,表现最好的应该是Druid和Kylin1.5,两者不相上下。...从功能完备性上来讲,确实Presto语法和UDF等等是很完备的,Kylin会稍微差一些,但比Druid好一点。...最后从灵活性上来讲, Presto只要SQL写出来怎么查都可以,Druid和Kylin都要做一些预先模型定义的工作。这方面也可以作为大家选型时候的参考。...其实现在能做到的只有Kylin,所以说我们也没有什么太多其他的选择。 第三,从易用性上来讲,Kylin也有非常多的特点。
针对这一点,Intel也在发布会上进行了多番演示,包括: 结合Intel Gaussian和神经加速器2.0(IntelGNA)增强的音频功能,实现背景噪音抑制并降低CPU工作负载、AI增强型背景模糊和视频分辨率增强等功能...,并将系统级功耗改善近20%,使用电池播放视频的时间延长1个小时以上; 相比同类竞品,游戏和直播速度提升超过2倍,游戏时性能提升多至2倍。...· 雅典娜创新计划第二版规范 一年之前,Intel面向业内推出“雅典娜计划”,旨在与整个生态系统合作创新,以改进集成到PC平台的几乎所有技术,包括电路板元件和散热设计技术的微型化,新的外观设计,提供更好的性能和更长的电池续航时间等...依据雅典娜计划的第一版规范,Intel通过与150多家生态链厂家的合作,已经交付了50多个经过认证的Windows和Chrome机型。 如今,雅典娜计划的规范也到了升级的时候。...不过,从这次发布的产品来看,考虑到堪比7nm的10nm+制程技术等,Intel从某种程度来看可以说是“翻身”了。对此,也有网友戏言到,Intel这次“终于不挤牙膏了”,或者说“一不小心挤多了”。
OLAP的优势:丰富的数据展现方式、高效的数据查询以及多视角多层次的数据分析。 ?...★钻取:维的层次变化,从粗粒度到细粒度,汇总数据下钻到明细数据。如通过季度销售数据钻取每个月的销售数据 ★上卷:钻取的逆,向上钻取。从细粒度到粗粒度,细粒度数据到不同维层级的汇总。eg....开源技术选型,MOLAP可选Kylin、Druid,ROLAP可选Presto、impala等 Presto Presto 是由 Facebook 开源的大数据分布式 SQL 查询引擎,基于内存的低延迟高并发并行计算...高效的多租户能力,最高可以做到几千用户同时在线查询。 扩展性强,支持 PB 级数据、千亿级事件快速处理,支持每秒数千查询并发。 极高的高可用保障,支持滚动升级。...场景特征: 大多数是读请求 数据总是以相当大的批(> 1000 rows)进行写入 不修改已添加的数据 每次查询都从数据库中读取大量的行,但是同时又仅需要少量的列 宽表,即每个表包含着大量的列 较少的查询
大宽表,读大量行但是少量列,结果集较小 数据批量写入,且数据不更新或少更新 无需事务,数据一致性要求低 灵活多变,不适合预先建模 0x03 选型原因 携程选型原因 尝试过关系型数据库,但千万级表关联数据库基本上不太可能做到秒出...Redis键值对存储无法做到实时汇总, 也测试过Presto,GreenPlum,kylin,真正让我们停下来深入研究,不断的扩展使用场景的是ClickHouse。...0x05 多 “多”这个特点具体是由如下具体技术实现来完成的。 数据Sharding ClickHouse支持单机模式,也支持分布式集群模式。...同一列中的数据属于同一类型,压缩效果显著。列存往往有着高达十倍甚至更高的压缩比,更高的压缩比意味着更小的data size,从磁盘中读取相应数据耗时更短。 主键索引 ClickHouse支持主键索引。...0x09 独立 基于Hadoop而衍生的Hive、Pig、Spark、Presto、Impala等一系列组件共同构成了Hadoop生态体系。
选择了 MOLAP 的方式,只对最宽的维度的指标计算,而不是像 Kylin 那样把各个维度组合都进行计算(虽然 Kylin 也可以在一些场景下进行维度组合剪枝来减少维度爆炸问题),来平衡数据摄入预聚合,...稀疏索引的好处是条目相对稠密索引较少,能够将其加载到内存,而且对插入时建立索引的成本相对较小。 ClickHouse 数据按列进行存储,每一列都有对应的 mrk 标记文件,bin 文件。...更多可见: Druid在有赞的实践 在使用 Druid 的过程中,我们也发觉了一些痛点,比如 不支持 Join,导致用户需要导入大宽表。 无法查询明细。...当维度多的时候,维度基数大的情况下,预聚合能力就不再有那么好的效果,实时聚合的效率也不那么高。 在一些场景,比如跨天去重,业务方希望做到精确查询,无法做到。...使用分布式表的方法因为 Clickhouse 在一些条件下无法做分布式 Join 导致多机反而比单机还慢的结果。
(捂嘴) 班想不想上不要紧,今天的科技圈大小事,还是得跟日报君一起来看看的~ 微软自研AI芯片“雅典娜”浮出水面 微软计划推出代号为“雅典娜”的AI芯片,希望它的性能比从供应商侧购买的芯片性能更优,为价值高昂的...目前,“雅典娜”已经提供给一小批微软和OpenAI员工。 另一位知情人士透露,微软的AI芯片规划中囊括了“雅典娜”芯片的未来几代产品,初代“雅典娜”将基于5nm工艺生产,预计在明年大规模投产。...Reddit的CEO霍夫曼表示:“现在是我们收紧的好时机。” 虽然还没公布具体的收费标准,但官方表示会分为不同的等级,根据使用者的规模和需求来区分。...Meta的CEO扎克伯格此前就对外透露,4月份的裁员将影响技术部门,而计划中5月份的裁员将影响公司的业务部门。...两款显卡都只有128-bit显存位宽,搭档8GB GDDR6(新一代首次使用GDDR6),等效频率18GHz,带宽288GB/s。
presto联邦分析、较简单join、tb级以下hive生态udf数据分析;clickhouse 大宽表聚合操作、无数据更新、尽量无join、没有复杂udf的亚秒级分析,tensorflow深度学习等等...分享从“一份数据满足所有场景”的问题出发,引出了腾讯云数据湖解决方案的介绍,紧接着介绍作为数据湖解决方案粘合剂和全托管产品形态补充的DLC在稳定性、性能、成本方面的技术优势,最后介绍数据湖趋势下的数仓建模新思路...第三部分 总结腾讯内部和客户对接过程中的新一代数仓建模思路 第四部分 最后介绍DLC的客户案例和专家团队 二、SSOT架构理念及腾讯云数据湖解决方案 前面说了那么多,大家还记不记得我们最初提出的问题呀...、DLC产品及技术内核介绍 刚才我们从数据湖解决方案看到了频繁出现的关键词DLC到底是个什么产品,又有哪些技术特别之处呢?...详情层,我们把高基维的相关数据的靠近存放,能够利用引擎的谓词下推技术大大加速分析性能,并且提高压缩比率降低存储成本,同时也可以减少单纯的主题层的数据抽取,更好应用ssot一份数据满足尽可能多的场景。
平行于这条链路的左侧,是整个的一套监控链路,我们对每一个从底层到引擎层,到proxy层再到数据服务层都有对应的服务健康度监控。 02 Presto在唯品会的实践 1....Presto自研管控工具 我们针对这些问题自研了工具nebula,修改了Presto的Server端和Client端的源码,从Presto暴露的API和系统表里获取到的节点的查询信息,一方面将查询落入...多种类业务带来的问题 我们把这个工具开发出来了以后,又相安无事地过了一年多,其他人觉得Presto用的确实比较爽,他们很多东西不用关心,集群也比较稳定,就越来越多的业务开始用。...现在已经发展到二三十个以上的业务在用我们的Presto集群,因此就有了接下来的一些问题。 配置的算力不平衡 应对突然暴增的流量:大促的时候这么多集群我们怎么去分配。...ClickHouse的优势 ClickHouse有以下两方面的优势: 大宽表查询性能优异,其主要分析都是大宽表的SQL聚合。ClickHouse的整个聚合耗时都非常小、性能好,并且具有量级提升。
,将对应的值转换为新的数据框中的某一列,从而实现了数据框由宽到长的转换。...B NaN groupB A NaN B 0.285292 dtype: float64 2. unstack unstack和stack正好相反,是其逆函数,实现由长到宽的转换...不同之处,在于转换后的列标签不是以index的形式出现,而是作为数据框中的variable列。...unstack类似,实现数据框由长到宽的转换。...,其中stack和melt实现数据框由宽到长的转换,unstack和pivot实现由长到宽的转换。
数据湖越来越受欢迎,一方面是因为企业拥有的数据比以往任何时候都多,另一方面也是因为收集和存储数据从来没有像现在这样便宜和容易。 在这篇文章中,我们将深入研究在使用数据湖时要考虑的不同层。...与拼花地板相比,我们看到了一个非常不同的模式。在Parquet中,我们预先定义了模式,并最终将数据列存储在一起。下面是之前以拼花格式转换的JSON文档示例。...但最简单的是编写SQL。这就是雅典娜发挥作用的地方。 查询层:雅典娜 一旦您将数据放入S3,开始研究您所收集的数据的最佳方法就是通过Athena。...雅典娜不知道您的新数据存储在何处,因此您需要更新或创建新的表(类似于上面的查询),以便为雅典娜指出正确的方向。幸运的是,有一些工具可以帮助管理模式并使表保持最新。...这需要通过比我们在雅典娜做了更多的数据,这意味着我们应该做一些优化,以帮助加快这一点。 数据预处理 我们应该进行的第一个优化是将数据从JSON转换为Parquet。
不管是 Presto DB 还是 Presto SQL,它们”本是同根生“,因此它们的大部分的机制原理是一样的。 我是谁?我从哪里来?要到哪里去?...二、特点及场景介绍 1.特点 Presto 引擎相较于其他引擎的特点正如文章标题描述的这样,多源、即席。...另外,presto的存储单元包括: Page:多行数据的集合,包含多个列的数据,内部仅提供逻辑行,实际以列式存储。...Block:一列数据,根据不同类型的数据,通常采取不同的编码方式,了解这些编码方式,有助于自己的存储系统对接presto。...不过这类业务通常数据量不是非常大,而且通常都是大宽表,也就不需要再去 Join 别的数据,Group By 形成的 Group 基数和产生的聚合数据量不是特别大,查询时间主要消耗在数据扫描读取时间上。
本文从多方面对比了 Presto 和 Kylin 的优缺点,并从业务场景、调度整合、监控系统、运维调优、源码和二次开发等多个角度进行了阐述。...在过去2年多的时间里,Kylin 集群一直很稳定,没有出现过进程异常退出的情况。...如果想要兼得鱼和熊掌,也不是没有办法,那就是通过 ETL 任务预计算的方式先将数据打平,变成大宽表,再将这张大宽表拉到 alluxio 内存中,最后通过 Presto 做很简单的查询。...虽然这种做法能解决问题,但不可避免的引入了更多问题: 开发周期长:首先需要ETL的同学先将数据预计算成大宽表,然后利用 alluxio 对这张宽表加速,最后应用组的同学写 sql 写代码,开发成本很高。...我们通过 Presto 去跑,根据筛选条件的不同,查询时间从20s到60s不等,根本无法满足需求。
它将数据索引存储在Segments文件中,Segment文件按列来存储,并通过时间分区来进行横向分割。Druid将数据列分为了三种不同的类型: ?...对于时间列和指标列处理比较简单,直接用lz4压缩存储。一旦查询知道去找哪几行,只需要将它们解压,然后用相应的操作符来操作它们就可以了。...如果一个Query会 被编译成多轮MapReduce,则会有更多的写中间结果。由于MapReduce执行框架本身的特点,过多的中间过程会增加整个Query的执行时间。...由于Presto是完全基于内存的并行计算,所以presto在查询时占用的内存也不少,但是发现要比Impala少一些,比如多表join需要很大的内存,Impala占用的内存比presto要多。...ClickHouse 作为目前所有开源MPP计算框架中计算速度最快的,它在做多列的表,同时行数很多的表的查询时,性能是很让人兴奋的,但是在做多表的join时,它的性能是不如单宽表查询的。
领取专属 10元无门槛券
手把手带您无忧上云