bigdata
两点一刻
如有疑问,请发邮件:1176306419@qq.com
请关注:github:https://github.com/wangrui0/
我是一个java和大数据工程师!
展开
-
hadoop笔记第一天
1:安装虚拟机(略)2:安装必要的环境:安装jdk3:安装hadoop 3.1上传hadoop包 3.2解压hadoop包 首先在目录~创建一个app目录 mkdir /app 解压: tar -zxvf hadoop-1.1.2.tar.gz -C /app/bin :执行的脚本etc:配置文件share:jar包doc:文档(可...原创 2018-07-08 07:18:31 · 152 阅读 · 0 评论 -
第17 节 剖析Elasticsearch并发冲突问题
深度图解剖析Elasticsearch并发冲突问题原创 2019-01-21 10:39:35 · 222 阅读 · 0 评论 -
第18 节 剖析悲观锁与乐观锁两种并发控制
深度图解剖析悲观锁与乐观锁两种并发控制方案原创 2019-01-21 10:41:21 · 131 阅读 · 0 评论 -
第19节 Elasticsearch内部如何基于_version进行乐观锁并发控制
1、图解Elasticsearch内部如何基于_version进行乐观锁并发控制 (1)_version元数据 PUT /test_index/test_type/6 { "test_field": "test test" } { "_index": "test_index", "_type": "test_type", "原创 2019-01-21 10:43:22 · 205 阅读 · 0 评论 -
第20节:基于_version进行乐观锁并发控制
(1)先构造一条数据出来 PUT /test_index/test_type/7 { "test_field": "test test" } (2)模拟两个客户端,都获取到了同一条数据 GET test_index/test_type/7 { "_index": "test_index", "_type": "test_type"原创 2019-01-21 15:29:59 · 140 阅读 · 0 评论 -
第21节:elasticsearch 基于external version进行乐观锁并发控制
课程大纲 1、上机动手实战演练基于external version进行乐观锁并发控制 external version es提供了一个feature,就是说,你可以不用它提供的内部_version版本号来进行并发控制,可以基于你自己维护的一个版本号来进行并发控制。举个列子,加入你的数据在mysql里也有一份,然后你的应用系统本身就维护了一个版本号,无论是什么自己生成的,程序...原创 2019-01-21 15:32:16 · 199 阅读 · 0 评论 -
Elasticsearch 第1篇 入门
课程大纲 大白话、什么是Elasticsearch Elasticsearch,分布式,高性能,高可用,可伸缩的搜索和分析系统 1、什么是搜索? 2、如果用数据库做搜索会怎么样? 3、什么是全文检索、倒排索引和Lucene? 4、什么是Elasticsearch? 1、什么是搜索? 百度:我们比如说想找寻任何的信息的时候,就会上百度去搜索一下,比如说找一部自...原创 2019-01-16 07:35:52 · 126 阅读 · 0 评论 -
Elasticsearch 第02节:Elasticsearch 介绍
课程大纲 1、Elasticsearch的功能,干什么的 2、Elasticsearch的适用场景,能在什么地方发挥作用 3、Elasticsearch的特点,跟其他类似的东西不同的地方在哪里 ---------------------------------------------------------------------------------------------...原创 2019-01-16 07:51:25 · 104 阅读 · 0 评论 -
第22节:partial update实现原理和动手实战演练
1、什么是partial update? PUT /index/type/id,创建文档&替换文档,就是一样的语法 一般对应到应用程序中,每次的执行流程基本是这样的: (1)应用程序先发起一个get请求,获取到document,展示到前台界面,供用户查看和修改 (2)用户在前台界面修改数据,发送到后台 (3)后台代码,会将用户修改的数据在内存中进行执行,然...原创 2019-01-22 10:59:13 · 164 阅读 · 0 评论 -
第23节 实战演练基于groovy脚本进行partial update
es,其实是有个内置的脚本支持的,可以基于groovy脚本实现各种各样的复杂操作 基于groovy脚本,如何执行partial update es scripting module,我们会在高手进阶篇去讲解,这里就只是初步讲解一下 PUT /test_index/test_type/11 { "num": 0, "tags": [] } (1)内置脚本 ...原创 2019-01-22 11:01:47 · 184 阅读 · 0 评论 -
第24节:图解partial update乐观锁并发控制原理以及相关操作讲解
(1)partial update内置乐观锁并发控制 (2)retry_on_conflict (3)_version post /index/type/id/_update?retry_on_conflict=5&version=6原创 2019-01-22 11:06:18 · 186 阅读 · 0 评论 -
第25节:演练mget批量查询api
课程大纲 1、批量查询的好处 就是一条一条的查询,比如说要查询100条数据,那么就要发送100次网络请求,这个开销还是很大的 如果进行批量查询的话,查询100条数据,就只要发送1次网络请求,网络请求的性能开销缩减100倍 2、mget的语法 (1)一条一条的查询 GET /test_index/test_type/1 GET /test_index/te...原创 2019-01-22 13:52:45 · 122 阅读 · 0 评论 -
第26节:bulk批量增删改
课程大纲 1、bulk语法 POST /_bulk { "delete": { "_index": "test_index", "_type": "test_type", "_id": "3" }} { "create": { "_index": "test_index", "_t原创 2019-01-22 13:55:45 · 173 阅读 · 0 评论 -
第27节:document数据路由原理
课程大纲 (1)document路由到shard上是什么意思? (2)路由算法:shard = hash(routing) % number_of_primary_shards 举个例子,一个index有3个primary shard,P0,P1,P2 每次增删改查一个document的时候,都会带过来一个routing number,默认就是这个document的...原创 2019-01-22 13:58:21 · 137 阅读 · 0 评论 -
第28节 分布式文档系统_document增删改内部原理图解揭秘
课程大纲 (1)客户端选择一个node发送请求过去,这个node就是coordinating node(协调节点) (2)coordinating node,对document进行路由,将请求转发给对应的node(有primary shard) (3)实际的node上的primary shard处理请求,然后将数据同步到replica node (4)coordinating nod...原创 2019-01-22 14:00:07 · 115 阅读 · 0 评论 -
第16 节 es document的全量替换、强制创建 和 图解lazy delete
课程大纲 1、document的全量替换 2、document的强制创建 3、document的删除 ------------------------------------------------------------------------------------------------------------------------ 1、document的全量替...原创 2019-01-21 10:37:40 · 140 阅读 · 0 评论 -
第15 节 document的 source元数据 和 定制返回结果
课程大纲 1、_source元数据 put /test_index/test_type/1 { "test_field1": "test field1", "test_field2": "test field2" } get /test_index/test_type/1 { "_index": "test_index", &qu原创 2019-01-21 10:34:37 · 131 阅读 · 0 评论 -
zookeeper 第 1 篇 简介
Zookeeper概念简介: Zookeeper是一个分布式协调服务;就是为用户的分布式应用程序提供协调服务 A、zookeeper是为别的分布式程序服务的 B、Zookeeper本身就是一个分布式程序(只要有半数以上节点存活,zk就能正常服务) C、Zookeeper所提供的服务涵盖:主从协调、服务器节点动态上下线、统一配置管理、分布式共享锁、统一名称服务…… D、虽然说可以提供各种服务,但...原创 2018-11-03 22:08:05 · 110 阅读 · 0 评论 -
zookeeper 第 2篇 安装
安装 1.1. 机器部署 安装到3台虚拟机上 安装好JDK 1.2. 上传 上传用工具。 1.3. 解压 su – hadoop(切换到hadoop用户) tar -zxvf zookeeper-3.4.5.tar.gz(解压) 1.4. 重命名 mv zookeeper-3.4.5 zookeeper(重命名文件夹zookeeper-3....原创 2018-11-03 22:12:02 · 84 阅读 · 0 评论 -
zookeeper 第 3篇 zookeeper结构和命令
zookeeper结构和命令 zookeeper特性 1、Zookeeper:一个leader,多个follower组成的集群 2、全局数据一致:每个server保存一份相同的数据副本,client无论连接到哪个server,数据都是一致的 3、分布式读写,更新请求转发,由leader实施 4、更新请求顺序进行,来自同一个client的更新请求按其发送顺序依次执行 5、数据更新原子性,...原创 2018-11-03 22:18:23 · 159 阅读 · 0 评论 -
zookeeper 第 4 篇 zookeeper原理
zookeeper原理 Zookeeper虽然在配置文件中并没有指定master和slave 但是,zookeeper工作时,是有一个节点为leader,其他则为follower Leader是通过内部的选举机制临时产生的 zookeeper的选举机制(全新集群paxos) 以一个简单的例子来说明整个选举的过程. 假设有五台服务器组成的zookeeper集群,它们的id从1-5,同时它...原创 2018-11-03 22:19:49 · 77 阅读 · 0 评论 -
第05节 商品管理:文档操作
课程大纲 1、document数据格式 2、电商网站商品管理案例:背景介绍 3、简单的集群管理 4、商品的CRUD操作(document CRUD操作) ----------------------------------------------------------------------------------------------------------------...原创 2019-01-18 22:53:26 · 276 阅读 · 0 评论 -
第06节:网站商品管理:多种搜索方式
课程大纲 1、query string search 2、query DSL 3、query filter 4、full-text search 5、phrase search 6、highlight search -------------------------------------------------------------------------------...原创 2019-01-19 10:28:17 · 304 阅读 · 0 评论 -
第07节 电商网站商品管理:嵌套聚合,下钻分析,聚合分析
第一个分析需求:计算每个tag下的商品数量 GET /ecommerce/product/_search { "aggs": { "group_by_tags": { "terms": { "field": "tags" } } } } 将文本field的fielddata属性设置为true PUT /ecommerce/_...原创 2019-01-19 10:30:52 · 144 阅读 · 0 评论 -
第08 Elasticsearch的基础分布式架构
课程大纲 1、Elasticsearch对复杂分布式机制的透明隐藏特性 2、Elasticsearch的垂直扩容与水平扩容 3、增减或减少节点时的数据rebalance 4、master节点 5、节点对等的分布式架构 -------------------------------------------------------------------------------...原创 2019-01-19 10:33:09 · 120 阅读 · 0 评论 -
第09 Elasticsearch shard&replica机制 单node环境中创建index图解
课程大纲 1、shard&replica机制再次梳理 2、图解单node环境下创建index是什么样子的 ------------------------------------------------------------------------------------------------ shard&replica机制再次梳理 (1)i...原创 2019-01-19 10:36:02 · 179 阅读 · 0 评论 -
第10 el node环境下replica shard 的 分配
课程大纲 图解2个node环境下replica shard是如何分配的 (1)replica shard分配:3个primary shard,3个replica shard,1 node (2)primary ---> replica同步 (3)读请求:primary/replica...原创 2019-01-19 10:44:15 · 128 阅读 · 0 评论 -
第11节 elasticsearch 横向扩容过程,超出扩容极限?提升容错性?
课程大纲 图解横向扩容过程,如何超出扩容极限,以及如何提升容错性 (1)primary&replica自动负载均衡,6个shard,3 primary,3 replica (2)每个node有更少的shard,IO/CPU/Memory资源给每个shard分配更多,每个shard性能更好 (3)扩容的极限,6个shard(3 primary,3 replica),最多扩...原创 2019-01-19 10:47:46 · 184 阅读 · 0 评论 -
第12节 elasticsearch 横向扩容过程,超出扩容极限?提升容错性?
课程大纲 1、图解Elasticsearch容错机制:master选举,replica容错,数据恢复 (1)9 shard,3 node (2)master node宕机,自动master选举,red (3)replica容错:新master将replica提升为primary shard,yellow (4)重启宕机node,master copy replica到该nod...原创 2019-01-19 10:49:29 · 210 阅读 · 0 评论 -
第13 节 document的核心元数据 图解剖析index创建反例
课程大纲 1、_index元数据 2、_type元数据 3、_id元数据 { "_index": "test_index", "_type": "test_type", "_id": "1", "_version": 1, "found": true, "_source":原创 2019-01-19 10:53:12 · 120 阅读 · 0 评论 -
第14 节 document id的手动与自动方式
课程大纲 1、手动指定document id 2、自动生成document id ------------------------------------------------------------------------------------------------------------ 1、手动指定document id (1)根据应用情况来说,是否满...原创 2019-01-21 10:00:35 · 139 阅读 · 0 评论 -
第29节 :分布式文档系统_图解写一致性原理以及quorum机制深入剖析
课程大纲 (1)consistency,one(primary shard),all(all shard),quorum(default) 我们在发送任何一个增删改操作的时候,比如说put /index/type/id,都可以带上一个consistency参数,指明我们想要的写一致性是什么? put /index/type/id?consistency=quorum on...原创 2019-01-22 14:02:45 · 124 阅读 · 0 评论