es+hbase学习

微信扫一扫,分享到朋友圈

es+hbase学习

第一步:搞清楚这个框架(技术)是干什么的,解决了什么问题和痛点,同类“竞品”还有哪些

第二步:怎么用

第三步:了解原理

Elasticsearch

WHAT

Elasticsearch
是一个基于 Lucene
搜索服务器
。它提供了一个分布式多用户能力的全文搜索引擎,基于 RESTful web
接口。

Elasticsearch
是用 Java
语言开发的,是一种流行的企业级搜索引擎。

Elasticsearch
的底层是开源库 Lucene
。我们没有办法直接使用 Lucene

,必须自己写代码去调用它的接口。

Elasticsearch
Lucene
的封装,提供了 RESTful API
的操作接口,开箱即用。

WHY

使用数据库 来做搜索业务,不能很好的满足需求。

虽然某一程度上也可以视为数据库,但是它更主要的身份还是一个优秀的 全文搜索引擎
。它的出现解决了一部分传统关系型数据库和NoSQL非关系型数据库所没有办法高效完成的一些工作,比如高效的全文检索,结构化检索,甚至是数据分析。

响应时间

eg
:数据库在做模糊查询时,如 LIKE
语句,它会遍历整张表,同时进行字符串匹配。

es
是基于 倒叙索引
的 ,检索速度非常快。

分词

Elasticsearch
支持中文分词插件

相关性

Elasticsearch
支持全文搜索和相关度评分。这样在返回结果就会根据分数由高到低排列。分数越高,意味着和查询语句越相关。

可视化界面

MySQL的Navicat

Elasticsearch
Kibana

HOW

入门使用

Hbase

WHTA

Hadoop Database

HBase
是Apache的 Hadoop
项目的子项目。

HBase
是一个高可靠性、高性能、面向列、可伸缩的 分布式存储系统

HBase
不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库,
HBase
基于列的而不是基于行的模式.

HBase
的原型是Google的 BigTable
论文。

WHY

MySQL
无法满足海量的数据存储,

MySQL
-> 面向行存储

HBase
-> 面向行存储

HOW

HBase概念视图

表名: webtable

两行: com.cnn.www
com.example.www

三个列族: contents
anchor
people

对于第一行 com.cnn.www

anchor
列族包含两列: anchor:cssnsi.com
anchor:my.look.ca

{

“com.cnn.www”: {

contents: {

t6: contents:html: “<html>…”

t5: contents:html: “<html>…”

t3: contents:html: “<html>…”

}

anchor: {

t9: anchor:cnnsi.com = “CNN”

t8: anchor:my.look.ca = “CNN.com”

}

people: {}

}

“com.example.www”: {

contents: {

t5: contents:html: “<html>…”

}

anchor: {}

people: {

t5: people:author: “John Doe”

}

}

}

HBase物理视图

HBase
概念视图中显示的 空单元根本不存储

HBase表、行与列族

创建一个 HBase
表:

create ‘<table name>’,’<column family>’

HBase
中的行是逻辑上的行,物理模型上行时按列族( column family
)分别存取的。

列族

Hbase
表中的每个列都归属于某个列族,

列名由其 列族前缀 和 限定符 组成,

列的限定符是列族中数据的索引。

eg

列族: course

列名: course:math
course:english

cell

由行和列的坐标交叉决定;

单元格是有版本的;

单元格的内容是未解析的字节数组

单元格是由行、列族、列限定符、值和代表值版本的时间戳组成的,({row key,column( =<family>+<qualifier>),version})唯一确定单元格。cell中的数据是没有类型的,全部是字节码形式存储。

微信扫一扫,分享到朋友圈

es+hbase学习

不只是双11战绩亮眼,荣耀智慧屏的这份行业战绩更抢眼

上一篇

狼人杀技巧提升掌握,学会这些狼人杀技巧成为常胜玩家

下一篇

你也可能喜欢

es+hbase学习

长按储存图像,分享给朋友