一 在clickhouse中将宽表转换为Bitmap表
1 任务目标
为了能够更快的进行条件查询群体,把clickhouse中的宽表,通过行转列、聚合能操作转入Bitmap表。
2 步骤分析
- 读取标签定义表,用于获得标签名称和标签类型。
- 建立四种不同数据类型的标签值表
- 根据标签类型的不同要写入到四种不同的Bitmap表中。
3 代码实现
(1)搭建模块
task-bitmap,添加scala目录,标记为源码,创建scala类com.hzy.userprofile.app.TaskBitmapApp。
(2)pom文件
添加如下配置信息
<dependencies>
<dependency>
<groupId>com.hzy.userprofile</groupId>
<artifactId>task-common</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
</dependencies>
<build>
<plugins>
<!-- 该插件用于将Scala代码编译成class文件 -->
<plugin>
<groupId>net.alchim31.maven</groupId>
<artifactId>scala-maven-plugin</artifactId>
<version>3.4.6</version>
<executions>
<execution>
<!-- 声明绑定到maven的compile阶段 -->
<goals>
<goal>compile</goal>
<goal>testCompile</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>3.0.0</version>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration