20200707 第一天 下载项目
fork 了一下仓库
- https://github.com/guangyuzhihun/janusgraph/tree/v0.3
阅读目的
- 实际项目中用到了,希望通过源码解决十亿级别快速入数问题,项目是 3.1 的所以看一下最近的源码 3.4 的
- JanusGraph 作为分布式图数据库,而且是开源的,那么作为以后想搞好图数据库这块,还是需要看一下该类型数据库的设计及源码(Neo4j作为原生图存储的开源的社区版也要看)
今天收获
- clone 项目和下载 pom 依赖都好慢呀
- 看了一下 pom 文件前半部分
- 基于开源协议 Apache License Version 2.0, January 2004
- 感觉看源码就和接手一个完整项目看代码一样,先按自己的节奏看,就不会慌
- 刚接手一个完整的项目,你会如何看代码呢?
- 可以通过 load/unload model 减少关注的项目模块
<description>
JanusGraph is a distributed graph database optimized for processing massive-scale graphs represented over a machine
cluster.
JanusGraph separates the concerns of graph processing and manipulation from storing the graph on disk,
delegating that concern to an extensible set of persistence solutions.
</description>
常见引用包
- tinkerpop 3.3.3
- 很友好的版本号哈哈
- Janus貌似是基于tinkerpop搞得
- 这个是Apache顶级项目
- cassandra 2.1.20
- 其中一种支持的分布式存储
- httpcomponents 4.4.1
- 为了避免包冲突 bump,记录一下
- 感觉 Janus 老有 bump
- hadoop2 2.7.2
- hbase1 1.2.6
- hbase2 2.1.0
- 记录一下 hbase 版本,项目中使用该存储
- hbase.server 1.2.6
- zookeeper 3.4.6
- netty4 4.0.56.Final
- 回头会看一下 neety 源码
项目模块
挑一下会用到的
- janusgraph-core 核心包
- janusgraph-server 服务器
- janusgraph-hadoop-parent hadoop相关
- janusgraph-hbase-parent hbase相关
- janusgraph-es es相关
- janusgraph-examples 示例