HBase Maven 工程模块梳理

HBase Maven 工程各个 Model 功能说明:

github 地址:git://git.apache.org/hbase.git

1、hbase-annotations

从 Hadoop 中 copy 来的的代码注解(所有的类、接口都要用到)。包含两个注解:InterfaceAudience 和 InterfaceStability。

2、hbase-assembly

项目构建相关。没有代码,xml 文件和一个 license 相关的声明。

3、hbase-checkstyle

checkstyle 用到的配置文件。

4、hbase-client

hbase 客户端。核心代码。

5、hbase-common

hbase 客户端和服务端公用的类定义,工具等通用的功能性代码。核心代码。

6、hbase-examples

官方提供的使用 hbase 样例代码。包括:c++、java、perl、php、protobuf、python、ruby、shell 等。其中,java 样例代码包含了:客户端、Coprocessor、mapreduce、thrift、thrift2,以及借助 protobuf 实现的 DataType 的使用。

7、hbase-external-blockcache

hbase 运行中依赖的外部 blockcache 的实现。只有一个类:MemcachedBlockCache。

  • hbase-hadoop2-compat
  • hbase-hadoop2-compact

上述两个,是 hbase 兼容 hadoop 和 hadoop2 做的一些工作。

8、hbase-it

it(Integration Test),HBase 的集成和系统测试。一般开发时引入该包即可

9、hbase-native-client

C 语言实现的 HBase 客户端。包含了同步、异步两种实现。

10、hbase-prefix-tree

hbase 实现的以前缀树作为存储结构的数据块编解码器。

11、hbase-procedure

hbase 『运行过程』的框架。『运行过程』是hbase 在运行中各种操作的一个抽象,有点类似于『任务』,控制每个任务的,启动、结束、中止、回滚等等。核心代码。

12、hbase-protocol

hbase 通信用的基于 Prococuf 协议类。核心代码。

13、hbase-resource-bundle

打包时候用到的 license 相关信息。

14、hbase-rest

hbase 提供的 rest 接口的服务器端。

15、hbase-server

hbase 服务器端。核心代码。

16、hbase-shaded

管理 hbase 整个工程的外部依赖,分为客户端和服务器端两部分。这里是一个外部依赖的归口,其他模块不再关注外部以来的问题。

没有代码。

17、hbase-shell

ruby 代码,hbase shell 相关。

18、hbase-spark

hbase 与 spark 的集成。

  • java 代码:SparkSQL 过滤器下推的支持,以及一些集成的样例代码,。
  • scala 代码:用 scala 对 hbase 原有 java 接口的包装,以及一些样例代码。

19、hbase-testing-util

hbase 测试用的工具类。没有代码。

20、hbase-thrift

hbase thrift 服务器。包含 thrift 和 thrift2 的实现。

你可能感兴趣的:(#,hbase,hbase,maven,java)