详细说明JanusGraph系列产品商品
已被浏览: 42 次2020年十一月23日 来源于于: cnblogs/lyycoder/p/14178573.html
源码分析相关能查询github(码文不可易,求个star~): github/YYDreamer/janusgraph转截文章内容內容请储存以下声明:写作者:洋仔聊程序撰写、手机上手机微信手机微信微信公众号:匠心独运独运Java、全篇详尽详细地址:liy
源码分析相关能查询github(码文不可易,求个star~): github/YYDreamer/janusgraph
转截文章内容內容请储存以下声明:
写作者:洋仔聊程序撰写、手机上手机微信手机微信微信公众号:匠心独运独运Java、全篇详尽详细地址:liyangyang.blog.csdn.net/
JanusGraph构架提供了一些可管控的指标值值,用于大伙儿在运用janus图数据信息信息内容库时可以对一些指标值值进行管控,下面大伙儿看一下如何配置运用Janusgraph管控!
原文中重要讲解了3一一部分:
管控的指标值值类型和配置
管控指标值值数据信息信息内容呈现存储的位置(Reporter)
实战演练演习应用案例,并对打印出的指标值值进行了分析
最后得到一个管控设计方案计划方案的架构图
一:管控的最低层进行
JanusGraph依据可用Metrics来进行指标值值数据信息信息内容收集,什么是Metrics?
Metrics是构架Dropwizard提供的一个lib包,重要用于最新项目指标值值的收集作用,JanusGraph就是依据Metrics这一构件开发设计设计方案的指标值值收集操纵控制模块;
Dropwizard是一个Java构架,用于开发设计设计方案对具体实际操作友好的特性非凡RESTful Web服务,将来自Java翠绿色绿色生态系统软件手机软件的安稳,健全的库聚集到一个简单的程序包中,使大伙儿可以全身心于开展工作中中。
Dropwizard对复杂的配置,应用程序指标值值,系统软件系统日志记录,具体实际操作专用型专用工具等提供了开箱即用的可用;
二:JanusGraph中的指标值值
JanusGraph可以收集以下指标值值:
begin,commit和 roll back的事务管理管理方法数
每一个存储后端开发开发设计具体实际操作类型的 乞求次数 和 不了功次数
每一个存储后端开发开发设计具体实际操作类型的响应时间遍及
2.1 配置指标值值收集
要打开指标值值标准收集,务必在JanusGraph的特点文本文档中设置以下内容:
# Required to enable Metrics in JanusGraph
metrics.enabled = true
此设置使JanusGraph在运行时要用记时器、电子器件电子计数器、直方图等Metrics类记录精准精确测量结果。
[标识:內容1]
自定默认设置设定指标值值姓名
默认设置设定情况下,JanusGraph为所有考量标准姓名再加“ org.janusgraph”做为作为前缀。可以依据metrics.prefix配置特点设置此前缀。例如,将默认设置设定的“ org.janusgraph”做为作为前缀降低为“ janusgraph”:
# Optional
metrics.prefix = janusgraph
独特事务管理管理方法指标值值姓名
每个JanusGraph事务管理管理方法都可以以以选择特殊其本身的指标值值姓名做为作为前缀,从而遮住默认设置设定的指标值值姓名做为作为前缀和 metrics.prefix配置特点。例如,可以将做为作为前缀变动为打开JanusGraph事务管理管理方法的前端开发开发设计应用程序的姓名。
一定要留意,Metrics之内存中维护保养维护保养考量标准姓名及其相关总体目标的ConcurrentHashMap,因此,保持不一样考量标准做为作为前缀的数量较小可能是个好好点子。
下面运用案例:
JanusGraph graph = ...; // 得到图案设计例连接
TransactionBuilder tbuilder = graph.buildTransaction(); // 开启一个事务管理管理方法构建器
JanusGraphTransaction tx = tbuilder.groupName("foobar").start(); // 开启一个事务管理管理方法,并开启指标值值收集,Metrics做为作为前缀为foobar
下面为groupName的方法定义:
* Sets the name prefix used for Metrics recorded by this transaction. If
* metrics is enabled via {@link GraphDatabaseConfiguration#BASIC_METRICS},
* this string will be prepended to all JanusGraph metric names.
* @param name Metric name prefix for this transaction
* @return Object containing transaction prefix name property
TransactionBuilder groupName(String name);
分离出来指标值值统计分析剖析
JanusGraph在默认设置设定情况下构成了其各种各样各种各样内部存储后端开发开发设计句柄的指标值值,也就是说:会将所有的具体实际操作统一收集为一种类型指标值值;
存储后端开发开发设计互动交流的所有指标值值标准都遵循“ prefix .stores. opname ”方法,无论她们不是是是idStore,edgeStore的具体实际操作等;
倘若要想分离出来每一个具体实际操作类型收集的指标值值,配置以下关键主要参数:
metrics.merge-basic-metrics = false
metrics.merge-basic-metrics = false在JanusGraph的特点文本文档中进行设置时,指标值值标准姓名“stores”将被拆换为相符合“ idStore”,“ edgeStore”,“ vertexIndexStore”或“ edgeIndexStore”,下列述:
prefix .idStore. opname
prefix .edgeStore. opname
prefix .vertexIndexStore. opname
prefix .edgeIndexStore. opname
2.2 配置指标值值报告
要访问这类收集好的指标值值值,尽量配置一个或很多Metrics的Reporting; 也就是说配置一个或很多指标值值的输出存储的位置;
JanusGraph 可用下列的这7种 Metrics reporters:
Console
Ganglia
Graphite
Slf4j
User-provided/Custom
每一个reporter类型独立于其他reporter,并且可以共存。
例如,可以将Ganglia、JMX和Slf4j Metrics报告器配置对同时运行,只需在janusgraph.properties中设置她们都有的配置键便可以(并打开metrics.enabled = true)
Console Reporter
案例janusgraph.properties片段,每分将指标值值输出到控制台一次:
metrics.enabled = true
# Required; specify logging interval in milliseconds
metrics.console.interval = 60000
CSV文本文档 Reporter
案例janusgraph.properties片段,每分将CSV文本文档加载一次到文档文件目录./foo/bar/(相对性性于全过程的工作中汉语件文件目录):
metrics.enabled = true
# Required; specify logging interval in milliseconds
metrics.csv.interval = 60000
metrics.csv.directory = foo/bar
Ganglia Reporter
注意
由于Ganglia的LGPL准许与JanusGraph的Apache 2.0准许分歧,因此配置Ganglia务必一个附加的库,该库未与JanusGraph一起装袋。要运用Ganglia监管运行,请org.acplt:oncrpc自此处完全免费免费下载 jar 并将其复制到JanusGraph/lib文档文件目录,接着再次起动互联网网络服务器。
案例janusgraph.properties片段,每30秒消息推送一次单播UDP数据信息信息内容新生儿报导默认设置设定端口号号上的localhost:
metrics.enabled = true
# Required; IP or hostname string
metrics.ganglia.hostname = 127.0.0.1
# Required; specify logging interval in milliseconds
metrics.ganglia.interval = 30000
案例janusgraph.properties片段,将单播UDP数据信息信息内容报消息推送到非默认设置设定整体总体目标端口号号,并且还配置报告给Ganglia的IP和网络服务器名:
metrics.enabled = true
# Required; IP or hostname string
metrics.ganglia.hostname = 1.2.3.4
# Required; specify logging interval in milliseconds
metrics.ganglia.interval = 60000
# Optional
metrics.ganglia.port = 6789
metrics.ganglia.spoof = 10.0.0.1:zombo
Graphite Reporter
每分将指标值值消息推送到192.168.0.1上的Graphite互联网网络服务器的案例janusgraph.properties片段:
metrics.enabled = true
# Required; IP or hostname string
metrics.graphite.hostname = 192.168.0.1
# Required; specify logging interval in milliseconds
metrics.graphite.interval = 60000
JMX Reporter
案例janusgraph.properties片段每分将一次指标值值记录到全名是的记录器中foo:
metrics.enabled = true
# Required; specify logging interval in milliseconds
metrics.slf4j.interval = 60000
# Optional; uses Metrics default when unset
metrics.slf4j.logger = foo
顾客自定 Reporter
倘若上面例举的Metrics报告程序配置挑选项不足以可用大伙儿现如今的业务流程步骤,JanusGraph提供了一个功能强大方法来访问独立MetricRegistry实例,此案例存储了它的所有考量;
运用方法下列:
com.codahale.metrics.MetricRegistry janusgraphRegistry =
org.janusgraph.util.stats.MetricManager.INSTANCE.getRegistry();
以这种方式访问janusgraphRegistry的编号可以将非标准准准报告类型或具有异地人配置的标准报告类型附加到janusgraphRegistry。
倘若附近的应用程序早就有着考量报告器配置的构架,或者倘若应用程序务必JanusGraph可用的报告器类型的很多不一样配置的实例,这种方法也很合理。
例如,可让用这种方法来设置很多Graphite Reporter,而JanusGraph的特点配置只仅限于一个Graphite Reporter。
三:实际应用
配置下列:
开启指标值值收集
运用Console Reporter,配置指标值值打印在Console中,时间间隔为一分鐘
关闭指标值值收集merge具体实际操作
配置指标值值收集做为作为前缀由默认设置设定的org.janusgraph修改为myprefix
详尽具体文本文档配置下列:
# 其他配置
gremlin.graph=org.janusgraph.core.JanusGraphFactory
storage.backend=hbase
storage.hostname=127.0.0.1
storage.port=2184
storage.hbase.table=testGraph
cache.db-cache=true
cache.db-cache-clean-wait=20
cache.db-cache-time=180000
cache.db-cache-size=0.5
index.search.backend=elasticsearch
index.search.hostname=127.0.0.1
index.search.index-name=search
index.search.port=9200
index.search.elasticsearch.http.auth.type=basic
index.search.elasticsearch.http.auth.basic.username=test
index.search.elasticsearch.http.auth.basic.password=test
query.batch=true
query.batch-property-prefetch=true
# janusgraph管控相关配置
metrics.enabled = true
metrics.prefix = myprefix
metrics.console.interval = 60000
metrics.merge-basic-metrics = false
大伙儿在互联网网络服务器运用gremlin.sh脚本制作制作启动gremlin console,并创建图案设计例:
./gremlin.sh
graph=JanusGraphFactory.open("/opt/soft/janusgraph-0.5.1-test/conf/janusgraph-hbase-es.properties")
大伙儿便会发现,每过一分鐘便会在控制台打印出相符合指标值值信息内容內容,因为指标值值信息内容內容很多,便于有益于文章内容內容阅读文章文章内容,下列只呈现出重要一一部分:
12/23/20 10:37:28 AM ===========================================================
-- Counters --------------------------------------------------------------------
global.storeManager.openDatabase.calls
count = 20
global.storeManager.startTransaction.calls
count = 461
myprefix.caches.misses
count = 5
// 这儿省掉一一部分统计分析剖析
myprefix.tx.begin
count = 12
myprefix.txmit
count = 3
myprefix.tx.rollback
count = 9
org.janusgraph.caches.misses
count = 3
org.janusgraph.caches.retrievals
count = 3
// 这儿省掉一一部分统计分析剖析
org.janusgraph.sys.stores.getSlice.calls
count = 286
org.janusgraph.sys.stores.getSlice.entries-returned
count = 231
org.janusgraph.sys.stores.mutate.calls
count = 7
org.janusgraph.tx.begin
count = 1
-- Histograms ------------------------------------------------------------------
myprefix.stores.getSlice.entries-histogram
count = 7
min = 0
max = 8
mean = 1.57
stddev = 2.88
median = 1.00
75% = 1.00
95% = 8.00
98% = 8.00
99% = 8.00
99.9% = 8.00
org.janusgraph.stores.getSlice.entries-histogram // 具体指标值值统计分析剖析省掉
org.janusgraph.sys.schema.stores.getSlice.entries-histogram // 具体指标值值统计分析剖析省掉
org.janusgraph.sys.stores.getSlice.entries-histogram // 具体指标值值统计分析剖析省掉
-- Timers ----------------------------------------------------------------------
myprefix.query.graph.execute.time
count = 2
mean rate = 0.01 calls/second
1-minute rate = 0.01 calls/second
5-minute rate = 0.07 calls/second
15-minute rate = 0.14 calls/second
min = 1.19 milliseconds
max = 2.25 milliseconds
mean = 1.72 milliseconds
stddev = 0.75 milliseconds
median = 1.72 milliseconds
75% = 2.25 milliseconds
95% = 2.25 milliseconds
98% = 2.25 milliseconds
99% = 2.25 milliseconds
99.9% = 2.25 milliseconds
myprefix.query.graph.getNew.time // 具体指标值值统计分析剖析省掉
myprefix.query.graph.hasDeletions.time // 具体指标值值统计分析剖析省掉
myprefix.query.vertex.execute.time // 具体指标值值统计分析剖析省掉
myprefix.query.vertex.getNew.time // 具体指标值值统计分析剖析省掉
myprefix.query.vertex.hasDeletions.time // 具体指标值值统计分析剖析省掉
myprefix.storeManager.mutate.time // 具体指标值值统计分析剖析省掉
myprefix.stores.getSlice.time // 具体指标值值统计分析剖析省掉
myprefix.stores.mutate.time // 具体指标值值统计分析剖析省掉
org.janusgraph.query.graph.execute.time
count = 2
mean rate = 0.00 calls/second
1-minute rate = 0.00 calls/second
5-minute rate = 0.02 calls/second
15-minute rate = 0.09 calls/second
min = 2.52 milliseconds
max = 221.12 milliseconds
mean = 111.82 milliseconds
stddev = 154.57 milliseconds
median = 111.82 milliseconds
75% = 221.12 milliseconds
95% = 221.12 milliseconds
98% = 221.12 milliseconds
99% = 221.12 milliseconds
99.9% = 221.12 milliseconds
org.janusgraph.query.graph.getNew.time // 具体指标值值统计分析剖析省掉
org.janusgraph.query.graph.hasDeletions.time // 具体指标值值统计分析剖析省掉
org.janusgraph.stores.getKeys.iterator.hasNext.time // 具体指标值值统计分析剖析省掉
org.janusgraph.stores.getKeys.iterator.next.time // 具体指标值值统计分析剖析省掉
org.janusgraph.stores.getKeys.time // 具体指标值值统计分析剖析省掉 // 具体指标值值统计分析剖析省掉
org.janusgraph.stores.getSlice.time // 具体指标值值统计分析剖析省掉
org.janusgraph.sys.schema.query.graph.execute.time // 具体指标值值统计分析剖析省掉
org.janusgraph.sys.schema.query.graph.getNew.time // 具体指标值值统计分析剖析省掉
org.janusgraph.sys.schema.query.graph.hasDeletions.time // 具体指标值值统计分析剖析省掉
org.janusgraph.sys.schema.stores.getSlice.time // 具体指标值值统计分析剖析省掉
org.janusgraph.sys.storeManager.mutate.time // 具体指标值值统计分析剖析省掉
org.janusgraph.sys.stores.getSlice.time // 具体指标值值统计分析剖析省掉
org.janusgraph.sys.stores.mutate.time // 具体指标值值统计分析剖析省掉
观察上述指标值值统计分析剖析数据信息信息内容,大伙儿可以发现,重要分为4大部分分分:
现如今统计分析剖析指标值值时间,年月日,时间精确到秒
统计分析剖析所有不一样具体实际操作的数量Counters
统计分析剖析数据信息信息内容直方图的说明Histograms
统计分析剖析所有具体实际操作的推行时间Timers
第逐一一部分:现如今统计分析剖析指标值值时间,年月日,时间精确到秒
可以作为janusgraph指标值值管控的打横方面和时间方面
第二一一部分:统计分析剖析所有不一样具体实际操作的数量Counters
这逐一一部分重要用于收集所有具体实际操作的总数量,包含事务管理管理方法相关统计分析剖析、缓存文件文档命中相关统计分析剖析、数据信息信息内容的CURD统计分析剖析、后端开发开发设计存储不一样具体实际操作开启统计分析剖析等4八个方面!
具体可以独立尝试;
第三一一部分:统计分析剖析数据信息信息内容直方图的说明Histograms
最开始,什么是直方图? 直方图,模样相仿柱状图却有着与柱状图完全不一样的含义。直方图牵涉统计分析剖析学的界定,最开始要大部分据进行排列,接着统计分析剖析每个排列内数据信息信息内容元的数量。 在平面图图直角坐标系中,横轴标出每个组的连接点,纵轴说明频数,每个矩形框框的高寓意着相符合的频数,称那般的统计分析剖析图为频数遍及直方图
此一一部分重要涉及到到对后端开发开发设计存储的统计分析剖析;
第四一一部分:统计分析剖析所有具体实际操作的推行时间Timers
这逐一一部分重要收集统计分析剖析数据信息信息内容CURD具体实际操作和数据信息信息内容插到等具体实际操作的时间统计分析剖析包含23种方面!
时间方面包含平均值值、很大值、至少值、时间遍及等14个时间方面;
四:管控架构图
整体分为: 收集指标值值 -- 剖析指标值值数据信息信息内容 -- 文档文件格式化存储 -- 管控构件|报警构件
有一切难点,热情热烈欢迎沟通交流沟通交流沟通交流沟通交流
参考:JanusGraph官方网网站
|
全新升级明显强烈推荐
河北省省富宇自然环境维护设备机器设备较为比较有限公司是技术性技术专业从事UV光氧,VOC催化反应反映引燃设备机器设备,布袋除尘器,中小型型除尘器,脉冲信号除尘器,单机版版除尘器,旋风除尘器,湿式除尘器及除尘器架构,除尘器布袋,电磁感应磁感应脉冲信号阀,脉冲信号控制仪,星型卸料器等。
chuchenhb
河北省省富宇自然环境维护设备机器设备较为比较有限公司生产制造生产制造各种各样各种各样规格型号型号规格沙石料厂除尘器、白灰窑除尘器、仓顶布袋除尘器、脉冲信号单机版版除尘器、除尘器袋笼、除尘布袋、电晕线、卸料器、减速机、电磁感应磁感应阀、膜片等各种各样各种各样除尘器配套设施设备产品。
入站排行
莞讯网立足于于互联网服务东莞市市人民群众,将有高价位位值“新闻报道报导”马上有效地散布给东莞市市普通百姓。
搜經典经典励志将为您提供經典经典励志文章内容內容,經典经典励志名言,經典经典励志搞笑幽默搞笑段子,著名人员小小故事,經典经典励志签名,經典经典励志视频,經典经典励志音乐,經典经典励志视频,經典经典励志演说,經典经典励志书籍等經典经典励志类文字信息内容內容共享资源网站。
城经网(cteo.cn)是继书报刊、广播节目广播电台、电视机机台后的第四新闻报道新闻媒体,就是我国发展趋势迅速的地域性管理方法管理中心大成县市门户网网网之一。集中化化了优异的新闻媒体综合服务平台,将新闻报道新闻资讯与线上服务垂直触碰到一般人民群众,具备信息内容內容共享资源資源.
提供WordPress企业主题风格设计风格,WordPress出入口出口外贸主题风格设计风格,WordPress企业模版,WordPress企业主题风格设计风格完全免费免费下载,WordPress企业建设网站,WordPress CMS门户网网主题风格设计风格开发设计设计方案
富士软起动器在我国区销售市场市场销售公司是一家集富士软起动器,维修富士软起动器的企业,能为消费者提供迅捷,优质的富士软起动器维修和富士软起动器维护保养维护保养。 重要服务有富士软起动器,富士软起动器价钱,富士软起动器代理商商销售市场市场销售等