自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Apache Iceberg源码分析:数据写入流程

  在上一篇文章中我们主要讲解了iceberg各个元数据文件中的数据组织形式,那么这些元数据是怎么生成的呢?如何通过spark写入iceberg?本文将带大家简单了解一下使用spark 2.4.7 batch写入iceberg的整体流程。spark写入示例  本文主要演示如何使用iceberg hadoopTable写入数据,hadoopCatalog和hiveCatalog在使用上大同小异。import org.apache.iceberg.hadoop.HadoopTablesimport or

2020-12-29 17:43:30 2695 1

原创 Apache Iceberg源码分析:数据存储格式

  Apache Iceberg作为一款新兴的数据湖解决方案在实现上高度抽象,在存储上能够对接当前主流的HDFS,S3文件系统并且支持多种文件存储格式,例如Parquet、ORC、AVRO。相较于Hudi、Delta与Spark的强耦合,Iceberg可以与多种计算引擎对接,目前社区已经支持Spark读写Iceberg、Impala/Hive查询Iceberg。本文基于Apache Iceberg 0.10.0,介绍Iceberg文件的组织方式以及不同文件的存储格式。Iceberg Table Form

2020-12-25 16:13:36 2981 3

原创 记InfluxDB线上内存升高且持续高水位问题处理过程

      最近线上使用InfluxDB时遇到当进行某个大查询后,内存始终保持在很高的水位,并且改内存水位一直保持很高的水平,没有下降的痕迹,排查后发现线上的InfluxDB是使用golang 1.13进行编译的,并且线上的centos系统使用的是linux 4.9的内核,linux系统内核在4.5版本之后就支持MADV_FREE操作,g...

2020-04-11 13:00:11 3647 2

原创 InfluxDB数据删除流程

InfluxDB数据删除流程

2020-01-21 14:26:46 5485

原创 hive on spark spark任务提交流程

2020-01-15 17:51:46 1033

原创 InfluxDB数据读取流程

简化版读取流程为了方便理解,在这边先简要说明InfluxDB读取的大致流程:InfluxDB在进行select查询时会将查询WHERE分为两部分:field过滤和tag过滤。首先会将tag过滤提取出来从倒排索引文件TSL以及TSI中读取满足WHERE条件的SeriesID通过SeriesID从SeriesIndex中获取对应的SeriesKey所在的SeriesSegment文件以及在文件...

2019-12-25 17:53:11 3085

原创 Apache Calcite VolcanoPlanner源码学习

 calcite VolcanoPlanner是基于Cascades模型的自顶向下的查询优化器,具体模型细节可以参见Cascade模型,Volcano模型 在这里以举例的方式解释VolcanoPlanner的整体工作流程// SqlVolcanoTest.javapublic class SqlVolcanoTest { private static final Logger LOG...

2019-12-09 16:28:45 1258 1

原创 Apache Calcite HepPlanner源码学习

 calcite提供了两种查询优化器:基于规则的启发式优化器HepPlanner(rule-based optimizer RBO)基于代价的VolcanoPlanner(cost-based optimizer CBO)本篇介绍HepPlanner的工作原理。在HepPlannerTest.java中添加如下代码进行源码分析:// HepPlannerTest.java @Tes...

2019-12-09 16:28:16 875

原创 Apache Calcite converter源码学习

 当sqlNode经过验证后,calcite通过converter将sqlNode转化为relNode,也就是将AST转化为逻辑执行计划。 final SqlNode validatedQuery = validator.validate(sqlQuery); RelRoot root = converter.convertQuery(validatedQuery, false, tru...

2019-12-09 16:27:47 898 1

原创 Apache Calcite validator源码学习

 Apache Calcite是一款基础SQL处理框架,该框架提供SQL解析优化等功能,并被广泛运用于Apache Hive,Drill,Flink等项目中。Apache Calcite架构 Apache Calcite整体架构如下图所示validate过程 我们在SqlValidatorTest.java文件中添加如下代码,通过举例进行说明// SqlValidatorTest.ja...

2019-12-09 16:27:23 1128

原创 InfluxDB数据写入流程

InfluxDB架构写入流程

2019-11-09 12:00:49 1668

原创 InfluxDB文件结构解析

influxDB文件结构解析InfluxDB文件目录结构InfluxDB文件目录结构  InfluxDB文件目录结构如上图所示,从图中我们可以看出InfluxDB主目录下有3个子目录:data,wal,meta:data:存放时序数据以及其索引文件wal: 存放插入数据时产生的write ahead log(wal)meta:存放元数据...

2019-09-30 16:57:38 3514 11

原创 InfluxDB基础介绍

influxdb基础介绍引言InfluxDB基础介绍InfluxDB数据模型InfluxDB数据架构引言随着工业互联网的发展,时序数据库(Time Series Database)受到越来越多的关注,其中受到大众广泛使用并关注的当属InfluxDB,如下图所示:为了更好的理解InfluxDB的工作原理,我会按以下这几个方面对InfluxDB 1.7.x进行一个整体的介绍: Influ...

2019-08-18 14:08:49 355

原创 hbase伪分布式安装

hbase伪分布式安装安装准备部署hadoop部署zookeeper部署hbase安装准备下载hadoop安装包下载hbase安装包(下载二进制包binary即可)下载zookeeper安装包部署hadoop修改hadoop-x.x.x/etc/hadoop/core-site.xml文件<configuration> <property> ...

2019-07-02 19:18:03 128

空空如也

空空如也

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

TA关注的人

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