分享知识,分享快乐

0%

查看后台进程并杀死

– 这个命令和mysql是一样的

1
show processlist

– 如果进程太多,也可用通过查询系统表 processes,

1
select * from system.processes

– 指定主要关心字段

1
2
3
select 
user,query_id,query,elapsed,memory_usage
from system.processes

杀死后台进程
– 通过上面指令获取到进程相关信息后,可以用query_id条件kill进程

1
KILL QUERY WHERE query_id='2-857d-4a57-9ee0-327da5d60a90'

– 杀死default用户下的所有进程

阅读全文 »

hive查看rcfile和orc

1
2
hive --rcfilecat hdfs://cluster1/tmp/youni_user_profile_ft/000000_0
hive --rcfilecat hdfs://cluster1/tmp/000000-000009/000000_0

hive查看orc

1
hive --orcfiledump /data/datawarehouse/xx/xxxx/xxxx/part-00199

查看文本格式

1
hadoop fs -text /tmp/part-m-00000.snappy

查看parquet文件格式内容

  1. 下载对应的parquet-tools jar:http://logservice-resource.oss-cn-shanghai.aliyuncs.com/tools/parquet-tools-1.6.0rc3-SNAPSHOT.jar?spm=5176.doc52798.2.7.H3s2kL&file=parquet-tools-1.6.0rc3-SNAPSHOT.jar

git:https://github.com/apache/parquet-mr/tree/master/parquet-tools?spm=5176.doc52798.2.6.H3s2kL

1
2
3
4
查看schema:
java -jar parquet-tools-1.6.0rc3-SNAPSHOT.jar schema -d myparquet.parquet | head -n 10
查看内容:
java -jar parquet-tools-1.6.0rc3-SNAPSHOT.jar head -n 10 myparquet.parquet
阅读全文 »

tar在解压或创建的时候一不小心就盖已存在文件

tar 工具的 -k 参数就提供干这事
-k,–keep-old-files 不覆盖已存在文件
keep existing files; don’t overwrite them from archive

如:

1
tar zxfk filename.tar.gz

tar 【参数】 【文件或目录】

1
2
3
4
5
6
7
8
#压缩比如把x文件夹打包并用gzip压缩。
tar -zcvf x.tar.gz x

#解压到当前目录
tar -xzvf x.tar.gz

#解压到父目录
tar -xzvf x.tar.gz -C ..

常用参数:

指定归档 -f 后面必须直接跟归档名
打包(create) -c
解包 -x
详细地列出处理的文件 -v
查看打包的文件 -t
压缩 -z 调用gzip压缩 -j调用bzip2****压缩
时间限制参数 -N **比后面接的日期(yyyy/mm/dd)**还要新的才会被打包进新建的文件中
排除指定文件 –exclude FILE**:**不将 FILE 打包!
保留原本文件的属性 -p
阅读全文 »

背景:日志文件被人为删除,但日志对应的程序仍然在运行(进程在,IO未关闭),df看磁盘未释放
但du看磁盘已释放空间。
操作系统:CentOS7.5

以下脚本可通过找出被删文件彻底释放磁盘空间

1
2
3
4
5
#!/bin/bash
for p in `ls /proc/ |egrep '^[0-9]{1,5}'`
do
cd /proc/${p}/fd;ls -l|grep deleted && >1 && >2
done
阅读全文 »

一、集群规划

如果你正准备从0开始搭建一套CDH集群应用于生产环境,那么此时需要做的事情应该是 结合当前的数据、业务、硬件、节点、服务等对集群做合理的规划,而不是马上动手去安装软件。

合理的集群规划应该做到以下几点:

  • 充分了解当前的数据现状
  • 与业务方深入沟通,了解将会在集群上运行的业务,集群将会为业务提供什么服务
  • 结合数据现状与业务,合理预估未来的数据量增长
  • 盘点当前可用的硬件资源,包括机柜机架、服务器、交换机等
  • 当前硬件资源不充足的情况下,根据数据评估情况作出采购建议
  • 根据业务属性与组成,合理规划集群的部署架构
  • 根据可用硬件资源,对集群节点的服务角色进行合理划分

以上步骤完成之后才是动手进行安装与部署。

你将会对集群的架构模式、应用方向与业务场景了然于胸,并确保这个集群(或者是集群组)能够提供稳定、高效、高性能的服务,为业务保驾护航。

并有能力能够提供 集群建设目标

  • 性能需求

    • 简单查询100G数据量时,耗时上限
    • 复杂查询(join)时,耗时上限
    • 历史数据导入时,耗时上限
    • 增量数据导入时,耗时上限
  • 可靠性需求:每月宕机次数(<1),每月宕机时间(<10min)

  • 可用性:每台机器每月的宕机时间

  • 容错性:机器故障,数据不丢失

1.1 硬件规划

硬件规划决定集群将使用多少硬件资源,以及什么配置的硬件资源。

阅读全文 »

clickhouse实时同步mysql数据

clickhouse-client -m --password ‘admin’

使用 MaterializedMySQL 引擎实时同步

1
2
3
4
5
6
7
8
9
10
11
12
13
14
SET allow_experimental_database_materialized_mysql = 1;


CREATE DATABASE dbtest ENGINE = MaterializedMySQL('10.6.123.23:3306', 'dbtest', 'cs_yangz', '***') SETTINGS allows_query_when_mysql_lost=true,max_wait_time_when_mysql_unavailable=10000;

-- 查看磁盘容量

SELECT
name,
path,
formatReadableSize(free_space) AS free,
formatReadableSize(total_space) AS total,
formatReadableSize(keep_free_space) AS reserved
FROM system.disks

安装配置 MySQL 同步用户

  • 创建用户
  • 全局赋予 replication client,replication slave, reload 权限
  • 对同步库 db 赋予 select 权限

如果赋予权限不正确,会报错,

1
2
3
4
CREATE USER 'clickhouse'@'%' IDENTIFIED BY 'alitrack';
GRANT select ON db.* TO 'clickhouse'@'%';
GRANT replication client,replication slave, reload on *.* to 'clickhouse'@'%';
FLUSH PRIVILEGES;

遇到没有主键的表,

如果没有初始化完成,删掉没有主键的表,直接重启clickhouse就可以了

阅读全文 »

下载编译源码包

下载源码包到指定的目录,

1
wget http://nginx.org/download/nginx-1.20.2.tar.gz

解压并编译源码

1
2
tar -zxvf  nginx-1.20.2.tar.gz
cd nginx-1.20.2/

1)配置Nginx编译文件参数

1
./configure --with-stream

2)编译、安装,make && make install

1
make & make install

vim /usr/local/nginx/conf/nginx.conf

阅读全文 »

在ansible环境下,控制其他机器,除了/etc/profile文件需要修改,还需要修改/root/.bashrc文件中的值

1
2
3
4
5
6
7
ansible presto -m copy -a "src=/root/.bashrc dest=/root/.bashrc "

ansible presto -m shell -a "java -version "

ansible presto -m copy -a "src=/opt/presto/etc/catalog dest=/opt/presto/etc/"

ansible presto -m shell -a "ls /opt/presto/etc/catalog "

增加新的连接

1
2
3
ansible presto -m copy -a "src=/opt/presto/etc/catalog/mysql_80_20.properties  dest=/opt/presto/etc/catalog/mysql_80_20.properties"

ansible presto -m shell -a "/opt/presto/bin/launcher restart "

https://repo1.maven.org/maven2/io/prestosql/presto-server/350/

350版本之后更名成trino

阅读全文 »

Alluxio命令

alluxio fsadmin

1
2
3
4
5
# 查看服务状态
alluxio fsadmin report

# 查看挂掉的服务ip
alluxio fsadmin report capacity -lost

alluxio getConf

1
2
# 查看配置参数
alluxio getConf --master

Alluxio运维实战

Worker节点挂掉

  1. 查看服务状态,发现有一台worker节点丢失

    img

  2. 查看丢失的节点是哪一台

    1
    2
    $ alluxio fsadmin report capacity -lost
    sjsysc-hh405-zbhx700w
  3. 登录到丢失的worker节点,启动worker

    1
    2
    $ ssh sjsysc-hh405-zbhx700w
    $ alluxio-start.sh worker SudoMount

设置子目录挂载点

待Alluxio启动完毕之后,用户可以在挂载其他子目录,例如,将另一个hadoop集群的hdfs目录挂载到alluxio中。

阅读全文 »