摘要: 文档介绍: 首先要讲什么是文档,我们中大多是java程序员,java是面向对象的,那么在elasticsearch看来:对象和文档是等价的。只不过这个对象是可以被序列化成key-value形式的json串 文档元数据: 文档是用来以k-v的形式存储数据的,文档的组成不单单是有数据的,还有元数据; 其 阅读全文
posted @ 2017-05-22 22:16 niutao 阅读(5171) 评论(0) 推荐(0) 编辑
摘要: 在kibana提供的界面上进行操作。 3.4.1、使用match_all做查询 问题:通过match_all匹配后,会把所有的数据检索出来,但是往往真正的业务需求并非要找全部的数据,而是检索出自己想要的;并且对于es集群来说,直接检索全部的数据,很容易造成GC现象。所以,我们要学会如何进行高效的检索 阅读全文
posted @ 2017-05-22 22:00 niutao 阅读(3712) 评论(0) 推荐(0) 编辑
摘要: curl是利用URL语法在命令行方式下工作的开源文件传输工具,使用curl可以简单实现常见的get/post请求。简单的认为是可以在命令行下面访问url的一个工具。在centos的默认库里面是有curl工具的,如果没有请yum安装即可。 curl 3.1.1 创建索引 3.1.2 插入文档 前面的命 阅读全文
posted @ 2017-05-22 21:58 niutao 阅读(2270) 评论(0) 推荐(0) 编辑
摘要: 2.4.1 安装nodejs Node.js是一个基于 Chrome V8 引擎的 JavaScript 运行环境。 Node.js是一个Javascript运行环境(runtime environment),发布于2009年5月,由Ryan Dahl开发,实质是对Chrome V8引擎进行了封装。 阅读全文
posted @ 2017-05-22 21:54 niutao 阅读(248) 评论(0) 推荐(0) 编辑
摘要: 2.1:创建用户: (elasticsearch不能使用root用户) 2.2:解压安装包 2.3:修改配置文件 2.3.1:修改内存参数: vim /config/jvm.options 2.3.2:修改elasticsearch的集群参数 vim /config/elasticsearch.ym 阅读全文
posted @ 2017-05-22 21:53 niutao 阅读(341) 评论(0) 推荐(0) 编辑
摘要: 1、ELK 1.1 集中式日志系统 日志,对于任何系统来说都是及其重要的组成部分。在计算机系统里面,更是如此。但是由于现在的计算机系统大多比较复杂,很多系统都不是在一个地方,甚至都是跨国界的;即使是在一个地方的系统,也有不同的来源,比如,操作系统,应用服务,业务逻辑等等。他们都在不停产生各种各样的日 阅读全文
posted @ 2017-05-22 21:50 niutao 阅读(326) 评论(0) 推荐(0) 编辑
摘要: 笔者使用Spark streaming读取Kakfa中的数据,做进一步处理,用到了KafkaUtil的createDirectStream()方法;该方法不会自动保存topic partition的offset到zk,需要在代码中编写提交逻辑,此处介绍了保存offset的方法。 当删除已经使用过的k 阅读全文
posted @ 2017-04-22 17:24 niutao 阅读(651) 评论(0) 推荐(0) 编辑
摘要: 话不多说,可以看上篇博文,关于offset存储到zookeeper https://www.cnblogs.com/niutao/p/10547718.html 本篇博文主要告诉你如何将offset写到Hbase做存储: 最后存储到Hbase的展现形式: testDirect:co:15526675 阅读全文
posted @ 2017-04-17 17:20 niutao 阅读(343) 评论(0) 推荐(0) 编辑
摘要: 经常会见到: p . *p , &p 三个符号 p是一个指针变量的名字,表示此指针变量指向的内存地址,如果使用%p来输出的话,它将是一个16进制数。 而*p表示此指针指向的内存地址中存放的内容,一般是一个和指针类型一致的变量或者常量。 而我们知道,&是取地址运算符,&p就是取指针p的地址。等会,怎么 阅读全文
posted @ 2017-03-25 12:18 niutao 阅读(762) 评论(0) 推荐(0) 编辑
摘要: 参考上篇博文:https://www.cnblogs.com/niutao/p/10547718.html 同样的逻辑,不同的封装 package offsetInZookeeper /** * Created by angel */ import java.lang.Object import k 阅读全文
posted @ 2017-03-17 17:22 niutao 阅读(542) 评论(0) 推荐(0) 编辑
摘要: 版本声明: kafka:1.0.1 spark:2.1.0 注意:在使用过程中可能会出现servlet版本不兼容的问题,因此在导入maven的pom文件的时候,需要做适当的排除操作 1 <?xml version="1.0" encoding="UTF-8"?> 2 <project xmlns=" 阅读全文
posted @ 2017-03-17 16:58 niutao 阅读(1206) 评论(0) 推荐(0) 编辑
摘要: maven导入avro: <dependency> <groupId>org.apache.avro</groupId> <artifactId>avro</artifactId> <version>1.7.7</version> </dependency> maven导入avro的构建插件: <b 阅读全文
posted @ 2016-10-19 17:55 niutao 阅读(1409) 评论(0) 推荐(0) 编辑
摘要: 系统:Centos7 CDH版本:5.14.0 请自己提前安装好:mysql、jdk 并下载好相关依赖(每一台机器) yum -y install chkconfig python bind-utils psmisc libxslt zlib sqlite cyrus-sasl-plain cyru 阅读全文
posted @ 2016-07-08 13:00 niutao 阅读(1740) 评论(0) 推荐(0) 编辑
摘要: 1:为什么大批量数据集写入Hbase中,需要使用bulkload BulkLoad不会写WAL,也不会产生flush以及split。 如果我们大量调用PUT接口插入数据,可能会导致大量的GC操作。除了影响性能之外,严重时甚至可能会对HBase节点的稳定性造成影响。但是采用BulkLoad就不会有这个 阅读全文
posted @ 2016-06-01 17:42 niutao 阅读(914) 评论(0) 推荐(0) 编辑
摘要: Hbase版本:1.2.0-cdh5.14.0 报错内容: org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.fs.PathIsNotEmptyDirectoryException): `/hbase/WALs/hadoop03,6002 阅读全文
posted @ 2016-03-25 12:09 niutao 阅读(1237) 评论(0) 推荐(0) 编辑
摘要: 在并发编程过程中,我们大部分的焦点都放在如何控制共享变量的访问控制上(代码层面),但是很少人会关注系统硬件及 JVM 底层相关的影响因素; CPU缓存 网页浏览器为了加快速度,会在本机存缓存以前浏览过的数据; 传统数据库或NoSQL数据库为了加速查询,常在内存设置一个缓存,减少对磁盘(慢)的IO。 阅读全文
posted @ 2016-03-20 21:23 niutao 阅读(1523) 评论(0) 推荐(0) 编辑
摘要: 考虑很多: 压背、限流、JVM优化,出错的重试等 阅读全文
posted @ 2016-03-20 19:48 niutao 阅读(312) 评论(0) 推荐(0) 编辑
摘要: 在写Hbase的时候,会担心数据分布在各个region上不均匀(与预分区无关); 这个时候可能想到的方式:hash、加盐等(当然是可以的,但是读取的时候咋办呢? 哪天写一个这样的文章) 本文采用新方式: <repository> <id>cloudera</id> <url>https://repo 阅读全文
posted @ 2016-03-17 17:48 niutao 阅读(715) 评论(0) 推荐(0) 编辑
摘要: 版本: scala:2.11.8 spark:2.11 hbase:1.2.0-cdh5.14.0 报错信息: java.lang.IllegalStateException: Consumer is not subscribed to any topics or assigned any part 阅读全文
posted @ 2016-03-17 16:26 niutao 阅读(3338) 评论(0) 推荐(0) 编辑
摘要: 依次在各节点上启动: kafkabin/kafka-server-start.sh config/server.properties 查看当前服务器中的所有topic bin/kafka-topics.sh --list --zookeeper hadoop01:2181 创建topic bin/k 阅读全文
posted @ 2015-08-23 17:31 niutao 阅读(1602) 评论(0) 推荐(0) 编辑
摘要: 思路: 维护一个节点队列和两个节点引用nlast(上一层最后一个节点)和last(本行最后一个节点)。 初始化时候,nlast = last = root 然后不断取出队列的第一个元素(BinaryTreeNode)node,然后将node的左右孩子节点加入队列,并移动nlast到最后一个孩子。 然 阅读全文
posted @ 2015-07-22 00:11 niutao 阅读(534) 评论(0) 推荐(0) 编辑
摘要: 根据需求,首先定义以下3大要素 采集源,即source——监控文件内容更新 : exec ‘tail -F file’ 下沉目标,即sink——HDFS文件系统 : hdfs sink Source和sink之间的传递通道——channel,可用file channel 也可以用 内存channel 阅读全文
posted @ 2015-05-02 00:02 niutao 阅读(1476) 评论(0) 推荐(1) 编辑
摘要: 实际生产G1 阅读全文
posted @ 2015-03-18 23:25 niutao 阅读(512) 评论(0) 推荐(0) 编辑
摘要: 如果说垃圾收集算法是内存回收的方法论,那么垃圾收集器就是内存回收的具体实现 (图中有连线的地方代表可以配合使用) Serial收集器 单线程收集器,“单线程”的意义不仅仅说明它只会使用一个CPU或一个收集线程去完成垃圾收集工作; 更重要的是它在垃圾收集的时候,必须暂停其他工作线程,直到垃圾收集完毕; 阅读全文
posted @ 2015-03-18 23:23 niutao 阅读(268) 评论(0) 推荐(0) 编辑
摘要: 复制算法 复制算法将可用的内存容量划分成大小相等的两块,每次只使用其中的一块; 回收后: 当这一块内存用完,就会将还存活的对象放在另一块区域上,然后再把已使用的内存空间一次清理掉,这样每次清理垃圾的时候都是对整个半区进行垃圾回收,内存分配的时候也不用考虑内存碎片的问题了,这样对于内存的回收就更加简单 阅读全文
posted @ 2015-03-18 23:11 niutao 阅读(176) 评论(0) 推荐(0) 编辑
摘要: 如何判断这个对象是存活的还是无用的 1):引用计数器 引用计数器定义: 定义:给每个对象分配一个计算器,当有引用指向这个对象时,计数器加1,当指向该对象的引用失效时,计数器减一。最后如果该对象的计算器为0时,java垃圾回收器会认为该对象是可回收的。 很多人认为的是:给对象添加一个引用计数器,每当有 阅读全文
posted @ 2015-03-18 23:06 niutao 阅读(238) 评论(0) 推荐(0) 编辑
摘要: 其中线程共享区域:方法区 、 堆 线程私有区域:虚拟机栈、本地方法栈、程序计数器 程序计数器 虚拟机栈 程序员经常说“堆栈”,其中的栈就是虚拟机栈,更确切的说,大家谈的栈是虚拟机中的局部变量表部分; 虚拟机栈描述的是:Java方法执行的内存模型;(说白了就是: 虚拟机栈就是用来存储:局部变量、操作栈 阅读全文
posted @ 2015-03-18 22:57 niutao 阅读(429) 评论(0) 推荐(0) 编辑
摘要: Java程序从创建到运行要经过两个大步骤 1:源文件(.java)由编译器编译成字节码ByteCode(.class) 2:字节码由Java虚拟机解释并运行 源文件编译成字节码,主要分成两个部分: 字节码由Java虚拟机解析运行分成两个部分: 程序运行的详细步骤:(运行一个对象下的方法内部的细节) 阅读全文
posted @ 2015-03-18 22:41 niutao 阅读(219) 评论(0) 推荐(0) 编辑
摘要: 生产中,为了保证kafka的offset的安全性,并且防止丢失数据现象,会手动维护偏移量(offset) 版本:kafka:0.8 其中需要注意的点: 1:获取zookeeper记录的分区偏移量 2:获取broker中实际的最小和最大偏移量 3:将实际的偏移量和zookeeper记录的偏移量进行对比 阅读全文
posted @ 2015-03-11 16:41 niutao 阅读(944) 评论(0) 推荐(0) 编辑
摘要: kafka版本:适用于目前2.0以下 第一步: 假如有一个topic叫做test,当前topic的详情是这样的: [cdh@cdh1 kafka_2.11-1.0.1]$ bin/kafka-topics.sh --topic test --describe --zookeeper hadoop01 阅读全文
posted @ 2015-02-19 16:31 niutao 阅读(1118) 评论(0) 推荐(0) 编辑
摘要: 执行sparkSTreaming+kafka 报错如下: org.apache.spark.SparkException: Task not serializable ...... Caused by: java.io.NotSerializableException: org.I0Itec.zkc 阅读全文
posted @ 2014-03-17 16:13 niutao 阅读(327) 评论(0) 推荐(0) 编辑