自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(170)
  • 收藏
  • 关注

原创 Doris Hive外表

完成在 Doris 中建立 Hive 外表后,除了无法使用 Doris 中的数据模型(rollup、预聚合、物化视图等)外,与普通的 Doris OLAP 表并无区别。当前默认支持的 Hive 版本为 2.3.7、3.1.2,未在其他版本进行测试。Hive 表 Schema 变更不会自动同步,需要在 Doris 中重建 Hive 外表。支持 Doris 与 Hive 数据源中的表联合查询,进行更加复杂的分析操作。Timestamp 转成 Datetime 会损失精度。列的顺序需要与 Hive 表一致。

2023-12-06 11:17:22 1

原创 Doris 集成 ElasticSearch

默认情况下,Doris On ES会从行存也就是_source中获取所需的所有列,_source的存储采用的行式+json的形式存储,在批量读取性能上要劣于列式存储,尤其在只需要少数列的情况下尤为明显,只获取少数列的情况下,docvalue的性能大约是_source性能的十几倍。Doris On ES一个重要的功能就是过滤条件的下推: 过滤条件下推给ES,这样只有真正满足条件的数据才会被返回,能够显著的提高查询性能和降低Doris和Elasticsearch的CPU、memory、IO使用量。

2023-12-06 03:45:00 61

原创 Spark读写Doris数据

由于Doris底层存储引擎处理逻辑,直接使用时间类型时,覆盖的时间范围无法满足需求。从而提升Spark侧的并行度,但同时会对Doris造成更大的压力。Spark Doris Connector 可以支持通过 Spark 读取 Doris 中存储的数据,也支持通过Spark写入数据到Doris。这种方式是早期写法,Spark无法感知Doris的数据分布,会导致打到Doris的查询压力非常大。过滤读取数据的表达式,此表达式透传给Doris。查询doris的超时时间,默认值为1小时,-1表示无超时限制。

2023-12-05 03:45:00 150

原创 Flink 读写Doris

Flink Doris Connector Sink的内部实现是通过 Stream load 服务向Doris写入数据, 同时也支持 Stream load 请求参数的配置设定。Flink Doris Connector 可以支持通过 Flink 操作(读取、插入、修改、删除) Doris 中存储的数据。从而提升Flink侧的并行度,但同时会对Doris造成更大的压力。单次写BE的最大数据量,当每个 batch 中记录的数据量超过该阈值时,会将缓存数据写入 BE。向Doris发送请求的读取超时时间。

2023-12-05 03:45:00 266

原创 Doris数据备份及恢复

Doris 支持将当前数据以文件的形式,通过 broker 备份到远端存储系统中。之后可以通过 恢复 命令,从远端存储系统中将数据恢复到任意 Doris 集群。通过这个功能,Doris 可以支持将数据定期的进行快照备份。也可以通过这个功能,在不同集群间进行数据迁移。该功能需要 Doris 版本 0.8.2+使用该功能,需要部署对应远端存储的 broker。如 BOS、HDFS 等。可以通过 SHOW BROKER;查看当前部署的 broker。1。

2023-12-04 04:15:00 161

原创 Doris 数据导出方式总结

(5)如果 Export 作业运行成功,在远端存储中产生的 __doris_export_tmp_xxx 目录,根据远端存储的文件系统语义,可能会保留,也可能会被清除。该查询计划会读取所包含的 Tablet 上的数据,然后通过 Broker 将数据写到远端存储指定的路径中,也可以通过S3协议直接导出到支持S3协议的远端存储上。(4)如果 Export 作业运行失败,在远端存储中产生的 __doris_export_tmp_xxx 临时目录,以及已经生成的文件不会被删除,需要用户手动删除。

2023-12-04 03:45:00 63

原创 Doris 数据导入四:Binlog Load 方式

Cluster模式的主从同步中,二进制日志文件(Binlog)记录了主节点上的所有数据变化,数据在Cluster的多个节点间同步、备份都要通过Binlog日志进行,从而提高集群的可用性。(2)client中的receiver将负责通过Get命令接收数据,每获取到一个数据batch,都会由consumer根据对应表分发到不同的channel,每个channel都会为此数据batch产生一个发送数据的子任务Task。当作业发生了错误时,若错误是不可恢复的,状态会变成CANCELLED,否则会变成PAUSED。

2023-12-03 04:00:00 53

原创 Doris 数据导入三:Routine Load 方式

如果要使用 Kafka 0.10.0.0 以下版本 (0.9.0, 0.8.2, 0.8.1, 0.8.0),需要修改 be 的配置,将 kafka_broker_version_fallback 的值设置为要兼容的旧版本,或者在创建routine load的时候直接设置 property.broker.version.fallback的值为要兼容的旧版本,使用旧版本的代价是routine load 的部分新特性可能无法使用,如根据时间设置 kafka 分区的 offset。默认是 0,即不允许有错误行。

2023-12-03 03:45:00 71

原创 Doris 数据导入二:Stream Load 方式

注意:由于 Stream load 是同步的导入方式,所以并不会在 Doris 系统中记录导入信息,用户无法异步的通过查看导入命令看到 Stream load。待导入表的 Partition 信息,如果待导入数据不属于指定的 Partition 则不会被导入。待导入数据的函数变换配置,目前 Stream load 支持的函数变换方法包含列的顺序变化以及表达式变换,其中表达式变换的方法与查询语句的一致。由于 Stream load 是一种同步的导入方式,所以导入的结果会通过创建导入的返回值直接返回给用户。

2023-12-02 04:15:00 74

原创 Doris 数据导入一:Broker Load 方式

数据的合并类型,一共支持三种类型APPEND、DELETE、MERGE 其中,APPEND是默认值,表示这批数据全部需要追加到现有数据中,DELETE 表示删除与这批数据key相同的所有行,MERGE 语义 需要与delete 条件联合使用,表示满足delete 条件的数据按照DELETE 语义处理其余的按照APPEND 语义处理。如果希望撤销某一批导入的数据。在 data_desc 中可以指定待导入表的 partition 信息,如果待导入数据不属于指定的 partition 则不会被导入。

2023-12-02 04:00:00 84

原创 Doris 外部表

切记,这里要求所有的BE节点都安装上相同的Driver,并且安装路径相同,同时有相同的be/conf/odbcinst.ini的配置。各大主流数据库都会提供ODBC的访问Driver,用户可以执行参照各数据库官方推荐的方式安装对应的ODBC Driver LiB库。Driver= 这个要根据实际BE安装Driver的路径来填写,本质上就是一个动态库的路径,这里需要保证该动态库的前置依赖都被满足。上述配置[]里的对应的是Driver名,在建立外部表时需要保持外部表的Driver名和配置文件之中的一致。

2023-12-01 14:41:34 249

原创 Doris 上卷(Rollup)和前缀索引

底层的数据存储,是按照各自建表语句中,AGGREGATE KEY、UNIQ KEY 和 DUPLICATE KEY 中指定的列进行排序存储的。用户可以在Base表的基础上,创建或删除ROLLUP,但是不能在查询中显式的指定查询某 ROLLUP。查询能否命中ROLLUP的一个必要条件(非充分条件)是,查询所涉及的所有列(包括 select list 和 where 中的查询条件列等)都存在于该ROLLUP的列中。3)当我们的查询条件,是前缀索引的前缀时,可以极大的加快查询速度。

2023-12-01 09:26:55 440

原创 Doris的向量化执行引擎

过去 Apache Doris 的 SQL 执行引擎是基于行式内存格式以及基于传统的火山模型进行设计的,在进行 SQL 算子与函数运算时存在非必要的开销,导致 Apache Doris 执行引擎的效率受限,并不适应现代 CPU 的体系结构。向量化执行引擎的目标是替换 Apache Doris 当前的行式 SQL 执行引擎,充分释放现代 CPU 的计算能力,突破在 SQL 执行引擎上的性能限制,发挥出极致的性能表现。开启了向量化执行引擎之后,在SQL的执行计划之中会在SQL算子前添加一个V的标识。

2023-11-28 04:00:00 51

原创 Doris物化视图

在Doris中,count(distinct) 聚合的结果和bitmap_union_count聚合的结果是完全一致的。(1)目前支持的聚合函数包括,常用的sum,min,max count,以及计算pv ,uv, 留存率,等常用的去重算法 hll_union,和用于精确去重计算count(distinct)的算法 bitmap_union。物化视图就是包含了查询结果的数据库对象,可能是对远程数据的本地copy,也可能是一个表或多表join后结果的行或列的子集,也可能是聚合后的结果。

2023-11-28 03:45:00 233

原创 Doris数据查询

1。

2023-11-27 20:01:51 77

原创 Doris的数据模型

即使两行数据完全相同,也都会保留。因为在实现上,我们可以通过如“导入时对行进行计数,保存count的统计信息”,或者在查询时“仅扫描某一列数据,获得count值”的方式,只需很小的开销,即可获得查询结果。也就是说,只要保证导入的数据中,每一行的 Key 都不完全相同,那么即使在聚合模型下,Doris 也可以保存完整的明细数据。因此,当业务上有频繁的count(*) 查询时,我们建议用户通过增加一个值恒为 1 的,聚合类型为SUM的列来模拟count(*)。在聚合模型中,模型对外展现的,是最终聚合后的数据。

2023-11-27 20:00:57 161

原创 Doris表的动态分区

动态分区使用过程中,如果因为一些意外情况导致 dynamic_partition.start 和 dynamic_partition.end 之间的某些分区丢失,那么当前时间与 dynamic_partition.end 之间的丢失分区会被重新创建,dynamic_partition.start与当前时间之间的丢失分区不会重新创建。当置为 true 时,Doris 会自动创建所有分区,当期望创建的分区个数大于 max_dynamic_partition_num 值时,操作将被禁止。这两个时间段的分区。

2023-11-22 04:00:00 729

原创 Doris的分区表和分桶表

如果指定为 SSD,则数据初始存放在SSD上。如按天分区,当每天的数据量差异很大时,可以通过指定分区的分桶数,合理划分不同分区的数据,分桶列建议选择区分度大的列。此时,当多个点查询并发时,这些查询有较大的概率分别触发不同的分桶扫描,各个查询之间的IO影响较小(尤其当不同桶分布在不同磁盘上时),所以这种方式适合高并发的点查询场景。如果一个查询条件不包含所有分桶列的等值条件,那么该查询会触发所有分桶同时扫描,这样查询的吞吐会增加,单个查询的延迟随之降低。下面通过示例说明,进行分区的增删操作时,分区的变化。

2023-11-22 03:45:00 348

原创 Doris DDL和DML

1。

2023-11-21 14:24:50 155

原创 ClickHouse的 MaterializeMySQL引擎

如果如果clickhouse使用的是20.8 prestable之后发布的版本,那么MySQL还需要配置开启GTID模式, 这种方式在mysql主从模式下可以确保数据同步的一致性(主从切换时。如果在SELECT查询中没有指定_version,则使用FINAL修饰符,返回_version的最大值对应的数据,即最新版本的数据。如果在SELECT查询中没有指定_sign,则默认使用WHERE _sign=1,即返回未删除状态(_sign=1)的数据。如果需要创建新的物理顺序,请使用物化视图。

2023-11-21 04:00:00 456

原创 ClickHouse 物化视图

用户查起来跟表没有区别,它就是一张表,它也像是一张时刻在预计算的表,创建的过程它是用了一个特殊引擎,加上后来 as select,就是create一个table as select的写法。缺点:它的本质是一个流式数据的使用场景,是累加式的技术,所以要用历史数据做去重、去核这样的分析,在物化视图里面是不太好用的。“查询结果集”的范围很宽泛,可以是基础表中部分数据的一份简单拷贝,也可以是多表join之后产生的结果或其子集,或者原始数据的聚合指标等等。,对数据重新进行了组织,你可以理解物化视图是完全的一张新表。

2023-11-21 03:45:00 462

原创 ClickHouse数据一致性

查询CK手册发现,即便对数据一致性支持最好的Mergetree,也只是保证最终一致性我们在使用 ReplacingMergeTree、SummingMergeTree 这类表引擎的时候,会出现短暂数据不一致的情况。在某些对一致性非常敏感的场景,通常有以下几种解决方案。1准备测试表和数据(1)创建表其中:user_id 是数据去重更新的标识;create_time 是版本号字段,每组数据中 create_time 最大的一行表示最新的数据;

2023-11-20 04:00:00 447

原创 ClickHouse SQL 查询优化

1单表查询1.1Prewhere替代wherePrewhere和where语句的作用相同用来过滤数据。不同之处在于prewhere只支持 *MergeTree 族系列引擎的表,首先会读取指定的列数据,来判断数据过滤,等待数据过滤之后再读取select 声明的列字段来补全其余属性。当查询列明显多于筛选列时使用Prewhere可十倍提升查询性能,Prewhere会自动优化执行过滤阶段的数据读取方式,降低io操作。在某些场合下,prewhere语句比where语句处理的数据量更少性能更高。

2023-11-20 03:45:00 667 1

原创 ClickHouse 语法优化规则

当group by有having子句,但是没有with cube、with rollup 或者with totals修饰的时候,ClickHouse 的 SQL 优化规则是基于RBO(Rule Based Optimization),下面是一些优化规则。注意:官方的tar包,包含了建库、建表语句、数据内容,这种方式不需要手动建库、建表,最方便。注意 Optimized trivial count ,这是对 count 的优化。删除重复的 limit by key。下面语句子查询中有两个重复的。

2023-11-19 04:00:00 363

原创 ClickHouse建表优化

当order by已使用max_bytes_before_external_sort内存就进行溢写磁盘(基于磁盘排序),如果不设置该值,那么当内存不够时直接抛错,设置了该值order by可以正常完成,但是速度相对存内存来说肯定要慢点(实测慢的非常多,无法接受)。在服务器内存不充裕的情况下,建议将超出部分内容分配到系统硬盘上,但会降低执行速度,一般通过max_bytes_before_external_group_by、max_bytes_before_external_sort参数来实现。

2023-11-19 03:45:00 368 1

原创 ClickHouse查看执行计划

在clickhouse 20.6版本之前要查看SQL语句的执行计划需要设置日志级别为trace才能可以看到,并且只能真正执行sql,在执行日志里面查看。其中,send_logs_level参数指定日志等级为trace,<<<将SQL语句重定向至clickhouse-client进行查询,> /dev/null将查询结果重定向到空设备吞掉,以便观察日志。、需要真正的执行SQL查询,CH才能打印计划日志,所以如果表的数据量很大,最好借助LIMIT子句,减小查询返回的数据量。PLAN:用于查看执行计划,默认值。

2023-11-18 14:57:57 1040

原创 ClickHouse的分片和副本

注意:我们演示副本操作只需要在hadoop102和hadoop103两台服务器即可,上面的操作,我们hadoop104可以你不用同步,我们这里为了保证集群中资源的一致性,做了同步。--不同机器放的副本数不一样-->--不同机器放的分片数不一样--><replica> <!--该分片的第一个副本-->--该分片的第一个副本-->--该分片的第二个副本-->--该分片的第二个副本-->--该分片的第一个副本-->--该分片的第二个副本-->--该分片的第一个副本-->--集群的第一个分片-->

2023-11-18 03:45:00 346

原创 ClickHouse SQL操作

语句分两步执行,同步执行的部分其实只是进行新增数据新增分区和并把旧分区打上逻辑上的失效标记。直到触发分区合并的时候,才会删除旧数据释放磁盘空间,一般不会开放这样的功能给用户,由管理员完成。“重”的原因主要是每次修改或者删除都会导致放弃目标数据的原有分区,重建新分区。所以尽量做批量的变更,不要进行频繁小数据的操作。语句,ClickHouse基本都支持,这里不会从头讲解S。从右至左去掉维度进行小计,再从左至右去掉维度进行小计。语句是一种很“重”的操作,而且不支持事务。虽然可以实现修改和删除,但是和一般的O。

2023-11-17 04:00:00 447

原创 ClickHouse的表引擎

如果要是获取汇总值,还是需要使用sum进行聚合,这样效率会有一定的提高,但本身ClickHouse是列式存储的,效率提升有限,不会特别明显。以列文件的形式保存在磁盘上,不支持索引,没有并发控制。稀疏索引的好处就是可以用很少的索引数据,定位更多的数据,代价就是只能定位到索引粒度的第一行,然后再进行进行一点扫描。一般用到它的地方不多,除了用来测试,就是在需要非常高的性能,同时数据量又不太大(上限大概 1 亿行)的场景。表引擎的使用方式就是必须显式在创建表时定义该表使用的引擎,以及引擎使用的相关参数。

2023-11-17 03:45:00 414

原创 ClickHouse的数据类型

固定长度的可以保存一些定长的内容,比如一些编码,性别等但是考虑到一定的变化风险,带来收益不够明显,所以定长字符串使用意义有限。但是实际使用中往往因为一些数据内容的变化增加一定的维护成本,甚至是数据丢失问题。例如,将固定精度的数字转换为整数值,如时间用毫秒为单位表示,因为浮点型进行计算时可能引起四舍五入的误差。使用场景:一般数据值比较小,不涉及大量的统计计算,精度要求不高的时候。日期类型,用两个字节存储,表示从 1970-01-01 (无符号) 到当前的日期值。固定长度的整型,包括有符号整型或无符号整型。

2023-11-16 04:00:00 382

原创 SparkSQL项目实战

我们这次Spark-sql操作所有的数据均来自Hive,首先在Hive中创建表,并导入数据。一共有3张表:1张用户行为表,1张城市表,1张产品表。查询出来所有的点击记录,并与city_info表连接,得到每个城市所在的地区,与 Product_info表连接得到。的维度来看的,计算各个区域前三大热门商品,并备注上每个商品在主要城市中的分布比例,超过两个城市用其他显示。北京21.2%,天津13.2%,其他65.6%北京63.0%,太原10%,其他27.0%北京63.0%,太原10%,其他27.0%

2023-11-16 03:45:00 293

原创 SparkSQL数据的加载与保存

SparkSQL读取和保存的文件一般为三种,JSON文件、CSV文件和列式存储的文件,同时可以通过添加参数,来识别不同的存储和压缩格式。

2023-11-15 04:00:00 475

原创 Spark SQL编程

1.Spark SQL概述1.1 什么是Spark SQLSpark SQL是用于结构化数据处理的Spark模块。与基本的Spark RDD API不同,Spark SQL提供的接口为Spark提供了有关数据结构和正在执行的计算的更多信息。在内部,Spark SQL使用这些额外的信息来执行额外的优化。与Spark SQL交互的方式有多种,包括SQL和Dataset API。计算结果时,使用相同的执行引擎,与您用于表达计算的API/语言无关。1.2 为什么要有Spark SQL1.3 Spark。

2023-11-15 03:00:00 435

原创 Spark3.0中的AOE、DPP和Hint增强

AQE 是 Spark SQL 的一种动态优化机制,在运行时,每当 Shuffle Map 阶段执行完毕,AQE 都会结合这个阶段的统计信息,基于既定的规则动态地调整、修正尚未执行的逻辑计划和物理计划,来完成对原始查询语句的运行时优化。(2)如果分区太多,则每个分区的数据量大小可能很小,读取大量小的网络数据块,这也会导致I/O效率低而降低了查询速度。(1)如果分区太少,则每个分区的数据量可能会很大,处理这些数据量非常大的分区,可能需要将数据溢写到磁盘(例如,排序和聚合),降低了查询。

2023-11-14 04:00:00 462

原创 Spark数据倾斜优化

1。

2023-11-14 03:15:00 479

原创 Spark 资源调优

1。

2023-11-13 04:00:00 268

原创 Spark Job优化

1。

2023-11-13 03:15:00 139

原创 SparkSQL语法优化

SparkSQL在整个执行计划处理的过程中使用了Catalyst优化器。1。

2023-11-12 04:00:00 859

原创 Spark的执行计划

Spark SQL 取代 Spark Core,成为新一代的引擎内核,所有其他子框架如 Mllib、Streaming 和 Graph,都可以共享 Spark SQL 的性能优化,都能从 Spark 社区对于 Spark SQL 的投入中受益。发现SQL执行慢的根本原因,才能知道应该在哪儿进行优化,是调整SQL的编写方式、还是用Hint、还是调参,而不是把优化方案拿来试一遍。explain(mode="formatted"):以分隔的方式输出,它会输出更易读的物理执行计划,并展示每个节点的详细信息。

2023-11-12 03:15:00 459

原创 Spark的转换算子和操作算子

当某个RDD执行map方法时,会遍历该RDD中的每一个数据项,并依次应用f函数,从而产生一个新的RDD。当某个RDD调用filter方法时,会对该RDD中每一个元素应用f函数,如果返回值类型为true,则该元素会被添加到新的RDD中。排序后新产生的RDD的分区数与原RDD的分区数一致。区别:在flatMap操作中,f函数的返回值是一个集合,并且会将每一个该集合中的元素拆分出来放到新的RDD中。在一个(K,V)的RDD上调用,K必须实现Ordered接口,返回一个按照key进行排序的(K,V)的RDD。

2023-11-11 17:44:52 848

Flink 欺诈识别项目代码

Flink 欺诈识别项目代码

2023-12-04

flink 用户行为PV UV计算示例

flink 用户行为PV UV计算示例

2023-12-04

flink table/sql api 示例大全完整中文注释

flink table/sql api 示例大全完整中文注释

2023-12-04

flink状态管理示例代码大全完整中文注释

1.广播状态 2.checkpoint 3.键控状态 4.操作状态 5.查询状态 6.savepoint 7.状态后端 8.状态机

2023-12-04

flink datastream api 示例大全

1.异步IO 2.Join 3.分区 4.Sideoutput 5.sink 6.source 7.transform 8.types 9.watermark 10.windowing

2023-12-04

基于 Flink 的实时商品推荐系统

用户登录/注册系统。 用户对商品进行评分。 评分数据通过 Kafka 发送到推荐模块的实时推荐任务中。 系统执行实时推荐任务,并且将数据存储到 hbase 的 rating 和 userProduct 表中。实时任务包括:实时 topN 以及 基于用户行为推荐。 实时 topN 将计算结果存储到 hbase 的 onlineHot 表中,基于用户行为推荐将计算结果存储到 hbase 的表 onlineRecommend 中。 web 端通过查询 hbase 获取相关模块所需数据并展示结果。 猜你喜欢:基于用户行为推荐,当用户对商品进行评分时,Flink 根据用户历史评分商品,结合 itemCF 计算推荐结果。 热门商品:历史热门商品 好评商品:评分较高的商品 实时热门商品: 使用 Flink 时间滑动窗口,对过去一个小时热门商品进行统计,每 5 分钟滑动一次。

2023-12-04

Fling Streaming 流式窗口计算

Fling Streaming 流式窗口计算

2023-11-30

Flink Streaming 运行状态机进行模式检测

Flink Streaming 运行状态机进行模式检测

2023-11-30

Flink Streaming处理两个数据流之间的窗口流连接

Flink Streaming处理两个数据流之间的窗口流连接

2023-11-30

Flink Streaming 流式处理文本中的单词数量

Flink Streaming 流式处理文本中的单词数量

2023-11-30

Flink以批处理方式统计文本中的单词数量

Flink以批处理方式统计文本中的单词数量

2023-11-30

Flink 处理日志和关系数据

Flink 处理日志和关系数据

2023-11-30

Flink 图计算和图的传递闭包

Flink 图计算和图的传递闭包

2023-11-30

Flink实现 Hadoop distcp

Flink实现 Hadoop distcp

2023-11-30

Flink K-Means聚类算法实现

Flink K-Means聚类算法实现

2023-11-30

Spark操作Hudi数据湖

Spark操作Hudi数据湖

2023-11-30

Java操作Hudi数据湖

Java操作Hudi数据湖

2023-11-30

Flink操作Hudi数据湖

Flink操作Hudi数据湖

2023-11-30

Spark同步Kafka数据到Doris

Spark同步Kafka数据到Doris

2023-11-30

Spark同步Hdfs数据到Doris

Spark同步Hdfs数据到Doris

2023-11-30

Flink实时同步Kafka数据到Doris

Flink实时同步Kafka数据到Doris

2023-11-30

Flink实时同步Hdfs数据到Doris

Flink实时同步Hdfs数据到Doris

2023-11-30

Flink实时同步ElasticSearch数据到Doris

Flink实时同步ElasticSearch数据到Doris

2023-11-30

Flink实时同步Oracle数据到Doris

Flink实时同步Oracle数据到Doris

2023-11-30

使用Flink连接器读取Doris数据构建用于分析的数据流

使用Flink连接器读取Doris数据构建用于分析的数据流

2023-11-30

Flink 消费 Kafka 数据实时落Apache doris数据仓库(KFD).docx

Flink 消费 Kafka 数据实时落Apache doris数据仓库(KFD).docx

2023-11-30

Flink实时同步Kafka数据到Doris

Flink实时同步Kafka数据到Doris

2023-11-30

Java实现Flink消费kafka将增量数据实时写入Hudi.docx

Java实现Flink消费kafka将增量数据实时写入Hudi.docx

2023-11-29

Flink CDC使用Java DataStream API写入Hudi,实时同步业务库.docx

Flink CDC使用Java DataStream API写入Hudi,实时同步业务库.docx

2023-11-29

Java实现 Flink 版本数据湖(hudi)实时数仓.docx

Java实现 Flink 版本数据湖(hudi)实时数仓.docx

2023-11-29

flink datastream api实现数据实时写入hudi.docx

flink datastream api实现数据实时写入hudi.docx

2023-11-29

Java 实现flinkcdc从mysql同步数据到kafka.docx

Java 实现flinkcdc从mysql同步数据到kafka.docx

2023-11-29

Mybatis实现传入多个参数的四种方法详细讲解.docx

Mybatis实现传入多个参数的四种方法详细讲解.docx

2023-11-29

Mybatis批量插入的四种方式.docx

Mybatis批量插入的四种方式.docx

2023-11-29

SpringBoot利用ThreadPoolTaskExecutor批量插入百万级数据.docx

SpringBoot利用ThreadPoolTaskExecutor批量插入百万级数据.docx

2023-11-29

Runnable、Callable、Future、FutureTask有什么关联.docx

Runnable、Callable、Future、FutureTask有什么关联.docx

2023-11-28

并发编程的11种业务场景.docx

并发编程的11种业务场景.docx

2023-11-28

Java面试题汇总.docx

Java面试题汇总.docx

2023-11-28

Python编程题数字金字塔、斐波那契数列

Python编程题数字金字塔、斐波那契数列

2023-11-27

Mybatis批量插入的四种方式.docx

Mybatis批量插入的四种方式.docx

2023-11-25

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除