Arganzheng's Blog

stay hungry, stay foolish

数据模型和存储系统

数据模型维度 Key-Value Stores Redis Riak(Bitcask) LevelDB RocksDB LMDB Aerospike(个人感觉这个更像是RDB) HyperLevelDB HyperDex: (Sorted) Column-fa...

Titan使用过程CPU超高问题排查

今天灵聪这边在把数据灌入到Titan发现,Titan-Server速度非常慢,而且灌到1w多条的时候系统基本不响应了。整个过程Titan server的进程使用CPU非常高,一直徘徊在2000%左右。 这其实是一个很常见的问题。思路很简单,找出哪个java线程占用了大量的CPU,查清楚耗时在哪里,依次解决就可以了。 首先找到titan server的进程号,整个用top或者ps或者jps...

Titan如何提供REST服务

默认Titan是作为一个jar包依赖,本地调用。但是通过Titan Server可以提供远程服务。 Titan使用了Gremlin Server引擎作为服务器来提供服务,默认配置是使用WebSockets,但是我们可以配置成其他协议或者自己扩展实现。 下面是如何配置Titan Server,让其提供HTTP REST API: 1、If you’re starting from the...

ArangoDB的索引学习

ArangoDB索引概览 ArangoDB内建了很多索引结构,用于解决不同的应用场景(个人感觉有点过多了。。) Primary Index: 主键索引: _id, _key unsorted hash index 内存索引 Edge Index 边索引:_from, _to hash...

neo4j学习笔记

一、图模型——Labeled Property Graph Model A labeled property graph is made up of nodes, relationships, properties, and labels. Nodes contain properties. Think of nodes as documents that store prope...

Kafka offset lag监控

利用NOAH的自定义脚本监控功能,写了一个脚本监控kafka的consumer offset lag,如果大于10000就报警。 脚本如下: #!/bin/bash old_IFS=$IFS IFS=$'\n' # get all the consumer group of kafka group_list=`/home/work/kafka/bin/kafka-consumer-g...

kafka broker间歇出现CLOSE_WAIT问题

使用kafka有一段时间了,偶尔会出现一些问题,比如Kafka集群的某个broker会突然卡住,排除发现改broker有大量的CLOSE_WAIT状态,而且Recv-Q有数据没有处理,猜测可能是client发送了请求数据,broker还没处理完,client退出了,broker再也不能处理完那些请求数据,所以不能发送FIN。 这个情况已经出现过几次,重启就好了,但是为什么会出现这么多的...

图存储引擎学习笔记

存储和索引 有两种存储方式,一种是Index Free Adjacency,不依赖于索引,直接存储关联的物理位置(内存指针,磁盘文件偏移量),这类的产品有neo4j, Titian, OrientDB,Graph Engine(@Microsoft), etc。第二种是Index-Based Adjacency,使用各种索引实现图的检索功能,这类的产品有 FlockDB(@Twitter)...

抓取学习笔记

知识图谱的很重要的原始数据来源还是来自于网站抓取的数据,网站抓取器就是我们常说的Spider。 在互联网上爬来爬去,发现链接,抓取网页,这就是Spider整天做的事情。听起来很简单,但是实际上是困难重重的。 Spider有两个核心任务:选链调度 和 网页抓取。 Spider面临的主要问题有: 压力计算、控制、流量分配: 如何提升对外抓取友好度,减少被封禁。...

使用supervisor进行进程监管

supervisor是一个python写的进程管理工具,可以监管进程的运行。它提供了进程挂掉自动重启功能,并且还有一个管理页面,可以看到监管的程序的运行状态,也可以直接在整个页面上对进程进行重启、关闭、查看日志等操作。 安装 安装比较简单,直接看官网,这里不赘述了。 使用方法 supervisor的主要配置入口在supervisord.conf: [unix_http_server...