ThousandHu`s blog

千里之行 始于足下


  • 首页

  • 归档

  • 标签

kafka架构入门

发表于 2016-05-01
架构 Topic : Kafka将消息种子(Feed)分门别类, 每一类的消息称之为话题(Topic). Producer:发布消息的对象称之为话题生产者(Kafka topic producer) Consumer:订阅消息并处理发布的消息的种子的对象称之为话题消费者(consumers) Broker:已发布的消息保存在一组服务器中,称之为Kafka集群。集群中的每一个服务器都是一个代理(Broker). 消费者可以订阅一个或多个话题,并从Broker拉数据,从而消费这些已发布的消息。 存储每个topic分成多个分区,每个对于一个逻辑日志。逻辑日志对于多个物理文件。生产者发 ...
阅读全文 »

propertyFunction多参数用法

发表于 2016-04-28
PFunc支持多个参数,不过他的写法不是?Person f:Next(name) ?x.}这种格式,而是subject和object都支持list的格式。比如官方的concat函数?var apf:concat (arg arg ...)。 通过添加一个括号,将object组成一组,传入一个 PropFuncArg objArg.PropFuncArg类有两成员变量,分别是private List<Node> argList = null ;private Node arg = null ;。 下面看一下concat的源代码 1234567891011121314151617181 ...
阅读全文 »

propertyFunc 内部编译和调用过程

发表于 2016-04-28
pfunc的编译首先是在生成plan过程中,将query string 变成op的过程中把表示pfunc的triple变成pfunc的格式 12345(bgp (triple ?x <http://example/f#search> "EF"))变为(propfunc <http://example/f#search> ?x "EF" (table unit)) triple变成pfunc是在翻译Algebra的optimize函数中,具体在PropertyFunctionGenerator.compilePattern 他会 ...
阅读全文 »

Sparql自定义propertyFunction

发表于 2016-04-27
Property function编写有两种方法,对应着不同的注册方式。第一种是实现PropertyFunctionFactory 接口,第二种是直接继承PFuncSimple。 继承propertyFunction继承PropertyFunctionFactory接口的方法需要override create(final String url)函数。该函数返回一个PropertyFunction类,在里面我们可以return new PFuncSimple(){//dosth.}的一个匿名类,重载相关函数。(其实重写里面的和直接继承PFuncSimple也没啥区别了) 具体框架如下: 1234 ...
阅读全文 »

2016 QCon北京参会感想

发表于 2016-04-23
2016 QCon北京参会感想感谢公司,蹭了一天6k8的高价会议。ppt下载 首先说一下整体感受吧。我主要盯着大数据平台架构这个session听。中间穿插着听了2个做知识图谱相关的和freewheel做噪声消除的。水平有限,他们深入讲一个项目的很多地方都听不懂,反而是美团讲整个数据分析平台的听得比较明白,可能是自己的水平有限,对于开源项目的具体细节还不了解,还停留在用的阶段。 另外今天很大的一个收获就是听了各个团队关于技术选型相关的讲解,发现技术选型首先是解决业务的痛点,其次是自己团队对于开源项目的技术掌控力(美团有两个kylin committer,京东的presto自己开了presto-j ...
阅读全文 »

apache jena arq 模块扩展

发表于 2016-04-20
ARQ - Extending Query Executionjena通过实现Graph 接口可以扩展到使用新的存储或者访问non-rdf数据。重写graph的find就可以实现在只读数据库上的访问。 arq query processing一共有6个步骤:parsing, algebra generation, execution building, high-level optimization, low-level optimization and finally evaluation. Parsingquery string -> Query object. Query类用抽象语 ...
阅读全文 »

buslogic中jetty和jersey的运用

发表于 2016-04-20
buslogic主要依赖的是jersey,他提供了 JAX-RS的一个实现。 JAX-RS主要是定义了java restful框架的一种抽象实现。最主要的就是我们工程里restful用的那些annotation。所以说buslogic运用jersey主要是分为三部分,pom.xml, web.xml和java代码里的运用。 pom.xmlpom中比较重要的jersey包应该是jersey-core,jersey-server,jersey-servlet几个,我们还用了jersey-json等,这几个应该都不是很重要。另外我们的jersey是1.18,现在都是2.x了。有时间再去研究一下区别。 ...
阅读全文 »

apache jena 架构

发表于 2016-04-15
Architecture RDF API: 查询rdf triples,graph。支持对资源的增删查改。资源的常用表示形式 resource: RDF source们通常是url或者anonymous literal: data values(数字,字符串等) Statement: RDF triple Model: whole graph rdf graph通过interface graph进行储存,应该在store api level。实现这个接口,底层的存储介质和存储细节就不需要考虑了。 jena的语义层和储存层是分离的,inference api这一层主要处理语义相关的东西(通过 ...
阅读全文 »

flume 负载均衡和容错

发表于 2016-04-10
flume的基本使用可以参考Flume(NG)架构设计要点及配置实践和flume user guide sink groupflume的负载均衡和容错都是通过sink groups实现的。sink groups可以将多个sink绑定到一个channel上,同时定义channel发往这个group的event的方式。定义时需要首先正常的将sink配置好(包括指定channel),并且定义sink间如何group。 failover12345678910111213141516171819202122232425262728293031323334#配置文件:failover_sink_case ...
阅读全文 »

hive on tez 配置

发表于 2016-04-01
teztez需要自己编译安装 编译brew install homebrew/versions/protobuf250 如果brew连不上,可以参考brew设置清华源 修改tez的pom.xml的hadoop.version 编译tez-ui可能会遇到nmp的问题,需要给命令行加代理。同时代理可能带来ssl CERT_UNTRUSTED,需要配置不用ssl:npm config set strict-ssl falseh或者直接设置不用https的repo:npm config set registry="http://registry.npm.taobao.org"。st ...
阅读全文 »
1…567…10
ThousandHu

ThousandHu

千里之行 始于足下

91 日志
49 标签
github zhihu 微信公众号:thousandhu学架构
© 2015 - 2017 ThousandHu
由 Hexo 强力驱动
主题 - NexT.Mist