基础
文章平均质量分 78
JDBC、Shell
韩家小志
这个作者很懒,什么都没留下…
展开
-
es--Restful API查询
Restful API查询准备测试数据1、match_all2、match3、bool4、term5、range6、exists7、filter8、浅分页9、深分页准备测试数据POST /school/student/_bulk{ "index": { "_id": 1 }}{ "name" : "liubei", "age" : 20 , "sex": "boy", "birth": "1996-01-02" , "about": "i like diaocan he girl" }{ "ind原创 2021-01-08 01:15:06 · 2401 阅读 · 1 评论 -
Logstash--介绍及测试
Logstash0、官网1、应用2、特点3、安装4、测试0、官网https://www.elastic.co/guide/en/logstash/6.0/index.html1、应用实现数据集采集的功能数据采集Flume:用于实现文本类或者数据流的实时采集使用Java开发,接口或者灵活性非常好自定义:source 、channel、sink、interceptorSqoop:用于实现RDBMS与HDFS的数据交互采集数据库中Logstash:类似于Flume,功能比Fl原创 2021-01-10 00:57:27 · 654 阅读 · 1 评论 -
Logstash--Filter与Output
Filter与Output1、Filter2、Output1、Filter功能数据的过滤字段的匹配添加groke正则匹配,用法格式(?pattern)vim usercase/filter-groke.jsoninput {stdin{}} filter { grok { match => { "message" => "(?<date>\d+\.\d+)\s+"原创 2021-01-10 01:03:20 · 495 阅读 · 1 评论 -
ES--特殊概念
特殊概念1、Index2、TypeType与Table不一样的地方为什么它的物理结构不做Type?3、Document4、Field5、Shards问题:分布式的分区存储必然存在,如果节点故障,怎么保证数据安全的问题?6、Replicas1、Index复数形式:indices索引库类似于数据库中的数据库的概念MySQL:databaseHbase :NameSpace用于区分不同数据构建的不同的索引2、Type索引类型,类型表类似于数据库中表的概念但是不一样,数据库中的表原创 2021-01-07 15:35:31 · 802 阅读 · 0 评论 -
es--映射管理与分片配置
映射管理与分片配置1、mapping数据类型不指定类型指定类型2、配置管理:setting1、mapping功能:用于定义索引库中类型表的每个字段的属性字段名称字段类型是否做分词用什么分词器是否构建索引数据类型查看索引库中每个字段的类型GET /school/_mapping?prettytext:string会分词的,包含keyword支持模糊、精确查询keyword:string不分词支持模糊、精确查询“I like zhangsan”原创 2021-01-08 01:47:59 · 240 阅读 · 0 评论 -
Logstash--Input插件
Input插件0、官网1、file2、jdbc3、tcp4、syslog0、官网https://www.elastic.co/guide/en/logstash/6.0/input-plugins.html1、file从文件中采集数据,类似于Flume中学的taildir数据源:文件、数据库、数据流vim usercase/input-file-test.json input{ file{ path => "/home/es/tomcat.log"原创 2021-01-10 01:00:50 · 146 阅读 · 0 评论 -
ELK--介绍及特点
介绍及特点1、ELK介绍ElasticSearch:实现存储和分析Logstash:实现数据采集Kibana:用于可视化工具2、应用场景3、ES特点总结ELK功能以及应用场景ES中的存储概念1、ELK介绍ELK官网:https://www.elastic.co/ELK官网文档:https://www.elastic.co/guide/index.htmlELK中文手册:https://www.elastic.co/guide/cn/elasticsearch/guide/current/index原创 2021-01-07 00:50:41 · 1035 阅读 · 2 评论 -
ElasticSearch--JavaAPI
ElasticSearch的JavaAPI1、写入2、查询3、更新4、删除1、写入查看配置文件 more /export/servers/es/elasticsearch6.0.0/config/elasticsearch.yml 构建连接客户端 /** * 构建连接ES的客户端对象 * @throws UnknownHostException */ @Before public void getEsClient() throws Unk原创 2021-01-10 00:30:02 · 303 阅读 · 0 评论 -
ES--存储原理及读写过程
存储原理及读写过程1、ES节点架构2、插入、更新或者删除流程3、查询4、写实现5、删除和更新实现1、ES节点架构分布式主从架构Master Node:主节点负责所有管理类的操作所有索引库的创建、删除、修改、分片的分配维护和 更新整个ES集群的状态也负责存储数据Data Node:从节点负责存储数据,保存分片中的数据,可以横向扩展Master会将索引库的分片相对均衡的分布在每台机器上Coordinator Node:中心调度节点谁接受客户端的读写请求,这台节点就作为中心原创 2021-01-10 00:23:08 · 5377 阅读 · 2 评论 -
Kibana--可视化
Kibana1、功能2、导入数据3、饼图4、柱状图6、Markdown7、看板1、功能类似于Hue这个工具Hue:实现了整个大数据平台大数据框架的客户端访问基于Solr构建报表平台Kibana:实现ElasticSearch的客户端访问额基于ES构建报表平台属于BI工具,用于构建ES中报表工作中,一般不用,如果你使用ES的话,可以搭配Kibana2、导入数据数据集内容莎士比亚:柱状图{"line_id": INT,"play_name": "String原创 2021-01-10 00:37:17 · 268 阅读 · 0 评论 -
ES&Kibana--安装
ES及Kibana的安装0、前言1、环境准备2、安装ES3、安装elasticsearch-head4、安装Kibana0、前言elasticsearch-6.0.0.tar.gz:ElasticSearch安装包es-head编译包:ES的一个工具软件,可以通过web来访问ES中的数据和集群的信息做监控和数据观察node-v8.1.0-linux-x64.tar.gz:es-head需要依赖于node jskibana-6.0.0-linux-x86_64.tar.gz:可视化工具,提供ES的原创 2021-01-07 23:14:38 · 278 阅读 · 0 评论 -
es&Kibana--基于Restful API的数据操作
基于Restful API的数据操作1、Curl往es中创建一个索引库blog01插入一条数据2、Kibana创建一个索引库插入一条数据读取一条数据更新一条数据查询某个字段的数据删除一条数据删除整个索引库1、Curl类似于HTTP请求-X 指定http的请求方法 有HEAD GET POST PUT DELETE-d 指定要传输的数据-H 指定http请求头信息往es中创建一个索引库blog01#在Linux命令行中:curl -XPUT http://node-01:9200/b原创 2021-01-08 01:08:13 · 622 阅读 · 0 评论 -
es--总结
总结搜索引擎ES的特点ES概念和存储结构RestfulAPImapping和setting分词器ES中的读写流程以及存储过程Java API搜索引擎分类网页业务日志特点数据量很大搜索内容条件是完全随机如果用传统数据库Oracle存储?不能,大容量下,做模糊匹配,性能非常差如果Hbase大数据数据库?不能,索引能力非常差ES应用场景:基于大数据量构建全文索引ES的特点分布式全文检索NRT(近实时)ES概念和存储结构Index:索引库类原创 2021-01-10 01:23:35 · 164 阅读 · 0 评论 -
Logstash--与Kafka集成
与Kafka集成采集文件到kafka采集kafka数据到Es采集文件到kafka注意:启动zookeeper、kafka要用root用户vim usercase/output-kafka.jsoninput { file{ path => "/home/es/tomcat.log" type => "log" start_position => "beginning" }}output {原创 2021-01-10 01:05:00 · 251 阅读 · 0 评论 -
搜索引擎的介绍及发展
搜索引擎的介绍及发展1、搜索引擎2、传统的做法3、分布式搜索引擎工具1、搜索引擎网页搜索引擎:可以用于检索想要查找的网站或者网页谷歌百度业务搜索引擎:提供内部的业务查询订单搜索商品搜索文章搜索日志搜索引擎:用于分析处理日志用户访问日志404500统计今天所有用户访问网站出现了 多少次500的情况机器运行日志INFOWARNERROR统计分析今天出现的所有ERROR的日志2、传统的做法将业务数据和日志数据都存储在RDBMS中类提供原创 2021-01-07 00:30:33 · 189 阅读 · 0 评论 -
ES--二级索引
二级索引1、应用场景`ES优缺点``Hbase优缺点`ES构建索引表2、需求分析实现流程3、代码实现二级索引Maven依赖1、应用场景ES优缺点优点:可以构建全文索引,根据需求可以将任意的数据构建索引来查询缺点:数据量大,性能不能满足高实时要求,本身数据安全的隐患相对较高Hbase优缺点优点:实现大量数据集高性能的实时读写,数据相对安全缺点:rowkey作为唯一索引,复杂业务中,查询条件肯定是变化多样的如果查询条件不是rowkey的前缀无法走索引,只能构建二级索引为什么不用H原创 2021-01-10 01:15:35 · 1712 阅读 · 0 评论 -
Zookeeper--Java API
准备windows上构建机器名称与IP的映射C:\Windows\System32\drivers\etc下的hosts文件192.168.100.203 node-01192.168.100.204 node-02192.168.100.205 node-03创建节点package bigdata.hanjiaxiaozhi.cn.zookeeper;import org.apache.curator.RetryPolicy;import org.apache.curator.f原创 2020-12-07 02:07:44 · 592 阅读 · 0 评论 -
Zookeeper--节点操作
连接端口可加可不加,因为默认端口就是2181bin/zkCli.sh -server node-01:2181查看一下帮助文档help列举一下Zookeeper中的文件系统结构ls path [watch]创建一个节点create -s path data查看某个节点对应的值get path [watch]修改某个节点值set path data [version]删除节点rmr path退出客户端quit...原创 2020-12-07 01:57:45 · 207 阅读 · 0 评论 -
Zookeeper--与Linux的区别及架构
1、与Linux的区别树形结构,第一级节点是/节点类似于文件系统Linux有目录和文件之分目录:不存内容,允许有下一级文件:存储内容,但是没有下一级Zookeeper只有节点节点:Znode,文件节点可以存储内容,也允许有下一级节点2、Zookeeper的架构本质:Zookeeper实际是一个文件系统通过读写文件实现上面的功能功能统一服务:将共享的配置存储在Zookeeper中分布式锁:将工作状态的生成的文件存储在zookeeper中进行选举命名原创 2020-12-07 01:17:13 · 235 阅读 · 2 评论 -
Zookeeper--节点类型
相关命令stat命令:stat path用于查看某个节点的属性ls2命令:ls2 pathls + stat :查看子节点并显示当前节点的属性创建节点create [-s] [-e] path data节点的类型持久化节点:只要创建,就永久存在,除非主动删除,默认创建的节点类型create举例:create -s /bigdata/hive hive1临时节点:只在当前Session有效,Session一旦关闭,这个节点自动消失create -e举例:cre原创 2020-12-07 01:48:44 · 197 阅读 · 0 评论 -
Zookeeper--默认选举规则
默认选举规则zxid:每个数据节点最新的数据的id,最新的节点的编号越大在zookeeper第一次启动都为0只要zookeeper每台机器的数据都一样,这个值都是一样的除非zookeeper中每台机器之间有数据不一样leader广播写入了数据,有些follower写成功了,有些follower失败了如果不一样,zxid越大,就越优先成为leader,代表这台机器中的数据是最全的leader:1 2 3 4followera:1 2 3 4followerb:1 2 3如果这原创 2020-12-07 01:25:35 · 243 阅读 · 1 评论 -
Zookeeper--Watch机制
Watch机制类似于触发器,或者JavaWeb中的监听事件设置监听:一旦监听被设置,该节点如果出现了对应的操作,就会触发这个监听的通知stat path [watch]ls path [watch]ls2 path [watch]get path [watch]监听的通知会包含状态触发的操作类型监听的节点测试:监听/bigdata这个节点命令行中的监听一次有效,监听完一次以后,自动失效ls /bigdata watchrmr /bigdata/hive0000原创 2020-12-07 01:52:53 · 191 阅读 · 0 评论 -
图解事务
事务详解1 理解事务2 Mysql中的事务管理需求1:演示事务回滚需求2:演示事务提交3 java中的事务管理3.1 演示未添加事务3.2 演示添加事务3.3 DBUtils事务操作4 事务特性:`ACID `5 并发访问问题`脏读`:一个事务`读到`了另一个事务`未提交`的数据.`不可重复读`:一个事务读到了另一个事务已经提交(`update`)的数据。引发另一个事务,在事务中的`多次查询结果不一致`。`主要是数据内容``虚读 /幻读`:一个事务读到了另一个事务已经提交(`insert`)的数据。导致另一原创 2020-12-17 00:42:39 · 174 阅读 · 0 评论 -
Canal--安装
安装0. MySQL准备1.Canal安装重要版本更新说明:以版本canal1.0.24安装为例instance.properties参数列表下面是比较早的资料,仅供本人参考使用0. MySQL准备MySQL需要先开启 Binlog 写入功能,配置 binlog-format 为ROW 模式,my.cnf 中配置如下[mysqld]log-bin=mysql-bin # 开启 binlogbinlog-format=ROW # 选择 ROW 模式server_id=1 # 配置 MySQL原创 2021-01-04 03:30:55 · 256 阅读 · 0 评论 -
Maven--本地安装及整合idea
Maven工具安装包 和 本地仓库解压到一个没有中文没有空格目录下. 建议分两个文件夹配置Maven的时候(必须MAVEN_HOME)MAVEN_HOME: 配置到Maven工具解压目录path: 配置到Maven工具解压之后里面的bin目录具体参考这篇文章吧...原创 2020-12-13 04:13:00 · 120 阅读 · 0 评论 -
Canal--介绍及原理
1、Canal介绍canal是阿里巴巴的一个使用Java开发的开源项目,基于数据库增量日志解析,提供增量数据订阅&消费,目前主要支持了MySQL(也支持mariaDB)。起源:早期,阿里巴巴B2B公司因为存在杭州和美国双机房部署,存在跨机房同步的业务需求。不过早期的数据库同步业务,主要是基于trigger的方式获取增量变更,不过从2010年开始,阿里系公司开始逐步的尝试基于数据库的日志解析,获取增量变更进行同步,由此衍生出了增量订阅&消费的业务,从此开启了一段新纪元。它是专门用来进行原创 2020-12-11 00:51:38 · 3213 阅读 · 0 评论 -
Maven--详解
0、前言擅长管理大型项目自动管理你需要的jar包自动进行下载我们需要的jar包。1、maven的概念Maven是项目进行模型抽象,充分运用面向对象的思想,Maven可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。Maven 除了以程序构建能力为特色之外,还提供高级项目管理工具。由于 Maven 的缺省构建规则有较高的可重用性,所以常常用两三行 Maven 构建脚本就可以构建简单的项目。说白了: Maven是由Apache开发的一个工具用来管理java项目, 依赖管理(原创 2020-12-13 02:40:55 · 374 阅读 · 0 评论 -
BloomFilter--理解总结
1、能解决什么问题:以少量的内存空间判断一个元素是否属于这个集合, 代价是有一定的错误率2、工作原理 :1.初始化一个数组, 所有位标为0, A={x1, x2, x3,…,xm} (x1, x2, x3,…,xm 初始为0)2.将已知集合S中的每一个数组, 按以下方式映射到A中2.0 选取n个互相独立的hash函数 h1, h2, … hk2.1 将元素通过以上hash函数得到一组索引值 h1(xi), h2(xi),…,hk(xi)2.2 将集合A中的上述索引值标记为1(如原创 2020-12-11 00:07:30 · 711 阅读 · 0 评论 -
Protocol Buffers
Idea 安装protobuf插件安装插件protobuf Support,之后重启找到protobuf-jetbrains-plugin-0.13.0.zip,在IDEA中安装插件即可原创 2020-12-23 19:53:07 · 2486 阅读 · 2 评论 -
Kettle--入门案例(CSV文件→Excel文件)
Kettle入门案例需求:把数据从CSV文件(ketttle测试数据\用户数据源\user.csv)抽取到Excel文件数据源:id name age gender province city region phone birthday hobby 注册时间392456197008193000 张三 20 0 北京市 昌平区 回龙观 18589407692 1970-08-19 美食;篮球;足球 2018-08-06 09:44:43267456198006210000 李四 25 1 河南省原创 2020-12-19 20:27:51 · 632 阅读 · 1 评论 -
Druid实时OLAP分析
Druid实时OLAP分析开发环境准备启动Druid访问WebUI点击流日志指标分析每日PV分析每日UV分析每日IP分析每日用户访问来源流量占比(百度、知乎、新浪、首页...)每日不同城市访问来源流量占比订单数指标分析日订单数分析周订单数分析月订单数分析今日各区域订单数(地图)周订单数趋势分析今日区域订单的订单数Top8周销售环比分析24小时销售额分析今日top4地区销售排行每日实际支付买家数每日购物车支付转换率商品消息数指标分析每日商家商品数量每日商家商品品牌数量每日首发上架商品数购物车消息数指标分析每日原创 2020-12-17 00:38:07 · 856 阅读 · 0 评论 -
Phoenix--建立与HBase表映射
建立与HBase表映射1、在HBase中,建立employee的映射表---数据准备2、建立映射视图3、查询所有映射表数据4、查询职位为 'worker' 的所有员工数据在HBase已经存在表,需要使用 Phoenix 建立与 HBase的映射,从而以SQL的方式,通过Phoenix 操作HBase。案例:1、在HBase中,建立employee的映射表—数据准备create 'employee','company','family'put 'employee','row1','compan原创 2020-12-21 17:44:15 · 482 阅读 · 0 评论 -
Kettle--Pan&Kitchen
Pan——转换执行引擎pan.sh可以用来在服务器中执行一个转换pan.sh的命令行参数:-version:显示版本信息-file: 指定要运行的转换文件(XML文件)-level: 设置日志级别(Basic,Detailed,Debug,Rowlevel,Error,Nothing)-log: 指定日志文件-param:key=value (该参数可以指定多个)覆盖之前指定的默认的命名参数需求:在Linux中,将 /root/kettle/user.json 数据抽取到 /root/ke原创 2020-12-19 20:34:57 · 422 阅读 · 1 评论 -
Oozie--安装部署
Oozie的部署1、上传解压2、配置Hadoop代理用户3、重启Hadoop集群4、解压lib包5、引入extjs6、修改oozie配置文件7、创建oozie元数据库8、初始化oozie为什么要将oozie的这些jar包放到hdfs上?9、生成web项目10、配置环境变量11、Oozie的启动与关闭12、修改界面默认时区参考: http://oozie.apache.org/docs/4.1.0/DG_QuickStart.html1、上传解压以第一台机器为例使用filezila或者Secur原创 2021-01-04 03:02:42 · 518 阅读 · 0 评论 -
Oozie--介绍及原理
介绍及原理1、功能2、基本原理1、功能任务流调度框架:用于实现工作流的调度类似于Azkaban是所有的调度工具中功能最全面的一个,也是一个缺点,非常笨重不好使功能非常强大,架构比较复杂,使用和开发都比较复杂能实现整个Hadoop生态中几乎所有框架的调度调度类型定时调度:依赖某个时间触发依赖调度:依赖于程序运行的顺序Cloudera公司研发的产品最早的设计是为了基于Hadoop生态圈构建分布式工作流调度很多个工作流,多台机器来处理所有的调度如何实现分布式的呢原创 2020-12-22 22:53:48 · 461 阅读 · 0 评论 -
Phoenix--简介
什么是PhoenixPhoenix是一个基于HBase的开源SQL引擎,可以使用标准的JDBC API代替HBase客户端API来创建表,插入数据,查询你的HBase数据Phoenix完全使用Java编写,作为HBase内嵌的JDBC驱动。Phoenix查询引擎会将SQL查询转换为一个或多个HBase扫描,并编排执行以生成标准的JDBC结果集。直接使用HBase API、协同处理器与自定义过滤器,对于简单查询来说,其性能量级是毫秒,对于百万级别的行数来说,其性能量级是秒Phoenix性能Phoe原创 2020-12-21 17:42:44 · 1684 阅读 · 0 评论 -
Phoenix--入门案例
Phoenix入门案例需求一:使用SQL语句在Phoenix中,创建一个用户表。该用户表有以下列ID姓名年龄性别地址1张三30男北京西城区2李四20女上海闵行区往表中插入两条数据,查询数据,并查看HBase中的数据需求分析:直接在 Phoenix 中,使用 create table 语法创建表结构因为数据最终都需要保存在HBase中,故创建表的时候需要指定 HBase 中的列蔟名称参考代码:-- 创建表create tab原创 2020-12-21 17:43:57 · 148 阅读 · 0 评论 -
Kettle--输入&输出组件
输入&输出组件输入组件JSON数据文件输入表输入生成记录输出组件文本文件输出表输出插入更新删除输入组件JSON数据文件输入需求:将 user.json 数据文件,通过Kettle,抽取到Excel中json数据格式操作步骤:1、新建转换2、拽入 JSON input组件、Microsoft Excel输出组件、并连接两个组件3、配置 JSON input 组件① 指定JSON文件数据源② 选择 JSON 字段3、配置 Excel 输出 组件4、启动原创 2020-12-20 00:29:16 · 838 阅读 · 2 评论 -
Superset--权限控制
权限控制角色权限介绍匿名访问角色介绍Superset初始化权限之后,创建5个角色,分别为Admin,Alpha,Gamma,sql_lab以及Public。Admin,Alpha和Gamma角色,分配了很多的菜单/视图权限,如果手工去修改,改错的可能性很大,加之Superset并没有说明每一项权限的完整文档,所以不建议去修改这些角色的定义。灵活使用预置的角色,可以快速满足业务上安全控制需求。角色权限介绍Admin:拥有所有权限Alpha:能访问所有数据源,增加或者更改数据源,但不能给更改其他用原创 2020-12-20 17:25:05 · 5481 阅读 · 0 评论 -
CSS--介绍
CSS1、CSS介绍1、CSS介绍CSS英文全称:Cascading Style Sheets,通常我们称之为CSS样式或层叠样式表。样式:给HTML标签添加需要展示的效果(可以理解为外观)层叠:使用不同的添加方式,给同一个HTML标签添加样式,最后所有的样式都叠加到一起,共同作用于该标签。CSS的作用:主要用于设置HTML页面中的文本内容(字体、大小、对其方式等)、图片的外形(高宽、边框样式、边距等)以及版面的布局等外观显示样式。简单来讲,CSS可以让HTML页面更美观。问题:css写原创 2021-01-06 23:43:06 · 934 阅读 · 0 评论