elasticsearch hbase

elasticsearch hbase

接下来是学习时间

hbase 是一个分布式的数据库

主要作用:海量数据的存储和准实时查询

一.Hbase的应用场景和特点

大数据类的场景、容量大、列式存储 多版本 扩展性

HBase 设计目标(特点):
海量数据存储:如果预估到记录最多只有上百万行,那么传统的RDBMS完全就可以解决,没必要使用 HBase 了,HBase 被设计用来存储海量数据。
实时查询:支持随机、实时读取/写入大规模数据集。
列式存储:根据数据的不同结构,每行数据可以有不同数量的列,这个列是随数据动态伸缩的。
多版本:每一列的数据存储有多个版本
稀疏性:为空的列并不占用存储空间
易扩展:底层依赖于 Hadoop HDFS
高可靠性:HDFS 的多副本存储机制,还有日志 ,宕机可以恢复
高性能:基于LSM-tree,读写性能能够达到毫秒级别

进入hbase 命令:bin/hbase shell

elasticsearch hbase_第1张图片

create 创建表 

create 表名,列簇名 | create ‘test’,'info'

enable  激活表

describe 对表查看整个结构说明

is_disables  is_enabled 查看表的状态

disable 禁用表

drop 删除表

删除前要先disable禁用一下

list 查看库里有多少张表

elasticsearch hbase_第2张图片

count 求和

行数求各

delete 删除某一行

delete表名,行,“列簇:列名”,"值" | delete "test","0001","info:username"

get 获取某一列的数据

get 表名,行,“列簇:列名”,"值" | get "test","0001","info:username"

truncate 删除一个表之后重新又创一个表的初始化

过程:屏蔽->删除掉->新建=====全新的数据初始化,相当于mysql 的删减表

scan 查看全表数据

sacn  表名|scan  'test'

put 添加数据

put 表名,行,“列簇:列名”,"值" | put "test","0001","info:username","zimuxing"    put "test","0001","info:age","28"

 

安装ElasticSearch

1、安装前提

windows下已经安装好了jdk8的版本

2、下载ElasticSearch

https://www.elastic.co/cn/downloads/elasticsearch#ga-release ------下载zip包,将下载的zip文件解压后,直接运行bin下的elasticsearch.bat这个文件,然后访问本机的127.0.0.1:9200,出现以下图说明es安装成功。

图一:

3、安装nodejs

 3.1下载地址:https://nodejs.org/en/download/    根据自己系统下载相应的msi,双击安装。

问题说明:第一次尝试的时候将nodejs安装在了es的安装目录之外(同级目录),在安装head插件时,执行npm - install的时候发现npm这个目录异常消失了,然后重新安装nodejs,安装过程中如果将安装目录直接放在es目录中会报文件名路径过长的问题,导致安装失败 

 解决办法:现在某个盘将nodejs安装,然后打成压缩包的形式,在es目录中重新解压(目录见图二)

图二:

小插曲:此处安装出现的问题:win10 the error code is 2502

导致这个问题的原因:对系统的操作权限不足,只要我们获得超级管理员权限,或者管理员权限后问题就会解决

解决办法:打开任务管理器,找到explorer.exe这个进程---然后右键结束这个进程----点击文件-运行新任务,按照图四创建任务,并且勾选以系统管理权限创建此任务。再次安装或者卸载文件的时候就不会报权限不足的问题了

说明:explorer.exe是Windows程序管理器或者文件资源管理器,它用于管理Windows图形壳,包括桌面和文件管理

图三:

                                                                                                      

图四:

3.2使用node -v查看自己nojs的版本,使用npm -v查看npm的版本,执行 npm install -g grunt-cli命令,

安装grunt

 Grunt 是基于 Node.js 的项目构建工具。它可以自动运行你所设定的任务

图五:

4、安装head

 4.1 修改elasticsearch.yml文件

因为head跟es是两个独立的进程,是有跨越问题的,帮修改下面文件,在config文件里

在文件最后加入

http.cors.enabled: true 
http.cors.allow-origin: "*"
node.master: true
node.data: true

放开network.host: 192.168.0.1的注释并改为network.host: 0.0.0.0

放开cluster.name;node.name;http.port的注释

双击elasticsearch.bat重启es

4.2 https://github.com/mobz/elasticsearch-head 下载zip文件,然后解压到制定目录,见图二

4.3修改E:\elasticsearch-5.4.1\elasticsearch-head-master\Gruntfile.js

图六:

进入E:\elasticsearch-5.4.1\elasticsearch-head-master\_site修改app.js 中下文内容为服务器地址,如果是本机部署不修改也可以。

4.4进入到如下目录,执行npm install命令

最后,在head源代码目录下启动nodejs:

安装完成执行grunt server 或者npm run start(以后每次),出现下图证明安装成功,如果还不成功,退出es再执行一次npm install -g grunt-cli

出现如下图所示则证明安装成功:

访问localhost:9100

状态

绿色green 很健康,可以正常运行

黄色yellow 健康不是很好,但可以正常使用

红色 red 健康很差,虽然可以正常搜索数据但出现丢失数据的情况

 

你可能感兴趣的:(JAVA,自己学习)