![](https://img-blog.csdnimg.cn/f0e740f398c643e39be941bdfa2aae1d.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
大 数 据
大数据相关
超人汪小建(seaboat)
公众号:【远洋号】,笔名seaboat,擅长工程算法、人工智能算法、自然语言处理、计算机视觉、架构、分布式、高并发、大数据和搜索引擎等方面的技术,大多数编程语言都会使用,但更擅长Java、Python和C++。平时喜欢编程、绘画、看书、写作和运动,擅长素描、篮球、跑步、游泳、健身和羽毛球等运动项目。崇尚技术自由,崇尚思想自由。出版书籍:《Tomcat内核设计剖析》、《图解数据结构与算法》、《图解Java并发原理》、《人工智能原理科普》。
展开
-
ZAB协议
zookeeper依赖zab协议来实现分布式数据一致性.基于该协议,zookeeper实现了一种主备模式的系统架构来保持ZooKeeper为高可用的一致性协调框架,自然的ZooKeeper也有着一致性算法的实现,ZooKeeper使用的是ZAB协议作为数据一致性的算法, ZAB(ZooKeeper Atomic Broadcast ) 全称为:原子消息广播协议;ZAB可以说是在Paxos算法基础上进原创 2016-09-29 09:16:26 · 9616 阅读 · 7 评论 -
storm消费kafka实现实时计算
大致架构 * 每个应用实例部署一个日志agent * agent实时将日志发送到kafka * storm实时计算日志 * storm计算结果保存到hbasestorm消费kafka创建实时计算项目并引入storm和kafka相关的依赖<dependency> <groupId>org.apache.storm</groupId> <artifactId>storm-co原创 2016-09-05 15:53:05 · 11322 阅读 · 2 评论 -
storm如何部署拓扑
storm集群搭建比较简单,参考官方文档即可http://storm.apache.org/releases/1.0.2/Setting-up-a-Storm-cluster.html启动Nimbus./bin/storm nimbus &启动Storm UI,方便对集群状态的监控。./bin/storm ui &启动supervisor./bin/storm supervisor &原创 2016-09-08 08:28:35 · 5627 阅读 · 2 评论 -
Zookeeper总概
zookeeper是一个开源的分布式协调服务.是典型的分布式数据一致性的解决方案. zookeeper可以保证以下分布式一致性的特性 1. 顺序性:同一客户端发起的事务请求,最终会严格的按照发出顺序应用到zookeeper上 2. 原子性:事务请求的执行结果在集群机器上要么全部成功,要么全部失败,不存在部分成功,部分失败的结果. 3. 单一视图:客户端无论连接到哪个zookeeper服务端,原创 2016-09-23 14:42:44 · 3841 阅读 · 2 评论 -
zk日常运维管理
清理数据目录dataDir目录指定了ZK的数据目录,用于存储ZK的快照文件(snapshot)。另外,默认情况下,ZK的事务日志也会存储在这个目录中。在完成若干次事务日志之后(在ZK中,凡是对数据有更新的操作,比如创建节点,删除节点或是对节点数据内容进行更新等,都会记录事务日志),ZK会触发一次快照(snapshot),将当前server上所有节点的状态以快照文件的形式dump到磁盘上去,即snap原创 2016-10-18 15:48:07 · 4868 阅读 · 1 评论 -
分布式数据库HBase表设计
比较常用的数据库是关系型数据库,但很多场景下nosql数据库会更加擅长,从sql到nosql实施的第一步就是设计表结构,这是两种不同的思维方式,这里说下HBase表设计。需求:需要一张stock表用于保存市场所有股票的分钟走向,即每个股票每分钟记录一次价格。方案一:瘦表。用stockId+datetime作为RowKey,这样方便通过stockId或datetime快速扫描获取到相关记录。 Ro原创 2016-06-15 12:10:58 · 5653 阅读 · 0 评论 -
大数据和人工智能工程上的一些点
大数据大数据这个词最早出现在上世纪90年代的美国,直到2012年后才火起来。大数据没有一个明确的概念,之所以称之为大是因为数据量太大超过了单台计算机的资源,这时就需要分布式的数据处理工具,以便能在用户可容忍的时间内进行数据处理。大数据从业人员肯定会去了解谷歌的mapreduce论文和hadoop开源工具。然而海量数据本来是静态,只有通过对数据进行分析和利用才能让数据产生价值。正所谓量变产生质变。...原创 2020-05-06 10:35:57 · 487 阅读 · 0 评论 -
grafana elasticsearch date类型问题
大致的数据格式{ "createTime": 1484967199, "ip": "localhost", "appId": "10000", "threadName": "Thread-acceptor-1", "level": "info", "type": "error", "tag": "tag1", "module": "m原创 2017-01-22 07:08:13 · 8250 阅读 · 1 评论 -
应用直接中断连接导致数据被锁(生产故障)
这是一个由应用重启连接直接而导致数据被锁的问题。系统大致结构基本情况:整个架构为了统一管理db连接,共享连接。应用通过loadbalance连接db访问层。db访问层后端代理若干db。应用到loadbalance以mysql协议通信。db访问层到db以JDBC方式通信。故障: 某些数据库中的表数据相当长一段时间被锁,导致应用某些场景失败。故障分析:应用开启一个事务的set autoco原创 2016-07-05 12:24:46 · 2477 阅读 · 0 评论 -
ELK搭建
ELK安装elasticsearch安装 * 下载elasticsearch-5.0.0.tar.gz,并解压。通过elasticsearch.yml可设置host和port。vim config/elasticsearch.yml network.host: 192.168.33.10http.port: 9200通过jvm.options可设置jvm相关参数。vim config/jvm原创 2016-11-30 14:15:34 · 3477 阅读 · 0 评论 -
HBase作为存储方案
HBase存储特点 * Client 1. 包含访问HBase的接口,并维护cache来加快对HBase的访问,比如region的位置信息。 * Zookeeper: 1. 选举集群中的Master,Master与RegionServers 启动时会向ZooKeeper注册。 2. 存储所有Region的寻址入口。 3. 实时监控Region server状态并实时通知Master。原创 2016-06-27 09:59:08 · 5717 阅读 · 0 评论 -
方便Lucene高版本使用IKAnalyzer分词
whyIKAnalyzer是个很不错的中文分词工具,但已经不维护了,但只支持低版本的Lucene,为了兼容Lucene6.x版本,这里是小改动了一些然后放到github上,方便有需要的人使用。也对Lucene源码比较熟,后面有必要再自己重新建个分词工具。changesLucene的Analyzer抽象类有变。Lucene的Tokenizer抽象类有变。Lucene的BooleanQuery有变原创 2017-05-09 18:39:40 · 5144 阅读 · 2 评论 -
ant编译mysql驱动
修改驱动源码后需要重新编译构建,由于mysql编译需要两个jdk版本且还需要hibernate4和junit,这里记录下步骤。安装ant。配置两个jdk,5和8。并修改build.xml配置,如下: <property name="com.mysql.jdbc.jdk5" value="/usr/java/jdk1.5.0_15" /> <property name="com.m原创 2016-12-02 15:17:53 · 2897 阅读 · 1 评论 -
聊聊大数据与人工智能
关于数据这些年人类生产的数据呈爆发式增长,从十几年前移动智能设备的兴起,到如今人们身上穿戴的各种传感器设备,都在24小时不断产生大量数据。这些数据包括文本、语音、图像、视频等等。大数据大数据这个词最早出现在20世纪90年代,当时只是用来描述数据量很大,但并没有给出明确的定义和概念意思。出现后没有受到多少人的关注,直到2012年后大数据得到了各行各业的关注重视,很多学科和行业都会涉及大数据,大...原创 2020-01-13 10:12:01 · 1286 阅读 · 0 评论 -
logstash输出到elasticsearch多索引
目标:将json格式的两类日志输出到elasticsearch两类索引1. 安装logstash。2. 编写logstash处理配置文件,创建一个test.conf文件,内容如下:input { file { path => "/home/vagrant/logstash/logstash-2.2.2/dbpool-logs/dev/common-sql-*.log"原创 2016-11-23 23:38:21 · 17338 阅读 · 8 评论 -
分布式系统调用链监控
分布式系统调用链监控应用架构由集中式向分布式演进后,整个调用关系变得复杂。分布式架构由复杂且较大规模集群构成,各个应用之间相当独立,可能由不同团队、不同语言实现。系统一个完整的调用过程可能横跨多个服务及数据中心。复杂的调用导致系统出问题后难以定位问题。无法准确知道整体系统性能及运行情况。全链路性能监控一个请求完整的调用链可能如下图原创 2016-12-23 22:51:51 · 33667 阅读 · 26 评论 -
logstash分析日志
待处理日志格式如下:[totalCount: 298006556, count: 287347623, queryCount: 259027994, exeCount: 28319629, totalQPS: 10000.0, QPS: 1.0, queryQPS: 1.0, exeQPS: 0.0][totalCount: 298006556, count: 287347623, queryCo原创 2016-11-17 22:29:22 · 4722 阅读 · 0 评论 -
logstash处理文件进度记录机制
假如使用如下配置处理日志input { file { path => "/home/vagrant/logstash/logstash-2.2.2/dbpool-logs/dev/common-sql-*.log" start_position => "beginning" type => "sql" codec => jso原创 2016-11-24 23:40:08 · 9033 阅读 · 0 评论 -
如何设计一个数据库中间件(支持百亿级别数据存储)
继《如何设计开发一个可用的web容器》之后又一如何系列文章,《如何设计一个数据库中间件》原创 2016-05-08 10:27:06 · 14535 阅读 · 5 评论