博客
| mongodb hive | Server | |
| python mail | Server | |
| supervisor | ||
| hive cheatsheet | Server | |
| hive elasticsearch | Server | |
| deeplearning/sklearn | ||
| pykafka | ||
| pymongo分片 | ||
| 普通用户docker执行问题 | ||
| hive中文乱码 | ||
| hive窗口函数 | Server | |
| hadoop 八股文 | 面试 |

mongodb hive
.背景 公司希望使用MongoDB作为后端业务数据库,使用Hadoop平台作为数据平台。最开始是先把数据从MongoDB导出来,然后传到HDFS,然后用Hive/MR处理。我感觉这也太麻烦了,现在不可能没有人想到这个问题,于是就搜了一下,结果真找到一个MongoDB Connector for Hadoop 1.版本一 …

python mail
import smtplib import time from email.mime.multipart import MIMEMultipart from email.mime.text import MIMEText from loguru import logger mail_host = …

supervisor
ubuntu supervisor进程管理 Supervisor 是一个用 Python 写的进程管理工具,可以很方便的对进程进行启动、停止、重启等操作。 安装命令: sudo apt install supervisor 安装成功后,会在/etc/supervisor目录下,生成supervisord.conf配置文 …

hive cheatsheet
1. Hive导出到.csv文件 由于Hive中导出的文件不是以逗号,而是以Tab(或者说’\t’)为分隔符的,因此,下面的命令自己试过可以转换为逗号分隔的文件,也就是真正的csv文件。 当然,有时候可能还需要跟转码的工具进行组合,转换编码格式。 sed -i ‘s/\t/,/g’ xxx.csv 当然,第一步是 …

hive elasticsearch
需要同步的elastic表 add jar hdfs:///elasticsearch-jars/elasticsearch-hadoop-hive-8.1.1.jar; -- create database ods_beike; CREATE EXTERNAL TABLE …


pykafka
from pykafka import KafkaClient client = KafkaClient(hosts="localhost:9092") topic = client.topics['maoyan_wish'] consumer = …

pymongo分片
#!/usr/bin/python # -*- coding: UTF-8 -*- import time from pymongo import MongoReplicaSetClient from pymongo import MongoClient # 连接单机 # single mongo # c = …

普通用户docker执行问题
通过将用户添加到docker用户组可以将sudo去掉,命令如下 sudo groupadd docker #添加docker用户组 sudo gpasswd -a $USER docker #将登陆用户加入到docker用户组中 newgrp docker #更新用户组

hive中文乱码
在metastroe (1)修改表字段注解和表注解 alter table COLUMNS_V2 modify column COMMENT varchar(256) character set utf8; alter table TABLE_PARAMS modify column PARAM_VALUE …

hive窗口函数
CREATE TABLE tmp.COSTITEM ( NAME STRING, ORDERDATE DATE, COST STRING); – 数据加 INSERT INTO tmp.COSTITEM VALUES (‘jack’,‘2020-01-01’,‘10’); INSERT INTO …

hadoop 八股文
1. 请说下HDFS读写流程 HDFS写流程 1)client客户端发送上传请求,通过RPC与namenode建立通信,namenode检查该用户是否有上传权限,以及上传的文件是否在hdfs对应的目录下重名,如果这两者有任意一个不满足,则直接报错,如果两者都满足,则返回给客户端一个可以上传的信息 2)client根据文 …
mongodb hive

.背景 公司希望使用MongoDB作为后端业务数据库,使用Hadoop平台作为数据平台。最开始是先把数据从MongoDB导出来,然后传到HDFS,然后用Hive/MR处理。我感觉这也太麻烦了,现在不可能没有人想到这个问题,于是就搜了一下,结果真找到一个MongoDB Connector for Hadoop 1.版本一定要按它要求的来,jar包去http://mvnrepository.com/下载就可以了,使用Hive只需要三个: mongo-hadoop-core-1.5.1.jar …
.背景 公司希望使用MongoDB作为后端业务数据库,使用Hadoop平台作为数据平台。最开始是先把数据从MongoDB导出来,然后传到HDFS,然后用Hive/MR处理。我感觉这也太麻烦了,现在不可能没有人想到这个问题,于是就搜了一下,结果真找到一个MongoDB Connector for Hadoop 1.版本一定要按它要求的来,jar包去http://mvnrepository.com/下载就可以了,使用Hive只需要三个: mongo-hadoop-core-1.5.1.jar …
python mail

import smtplib import time from email.mime.multipart import MIMEMultipart from email.mime.text import MIMEText from loguru import logger mail_host = 'smtp.163.com' # 163用户名 mail_user = 'username' # 密码(部分邮箱为授权码) mail_pass = '--------------' # 邮件发送方邮箱 …
import smtplib import time from email.mime.multipart import MIMEMultipart from email.mime.text import MIMEText from loguru import logger mail_host = 'smtp.163.com' # 163用户名 mail_user = 'username' # 密码(部分邮箱为授权码) mail_pass = '--------------' # 邮件发送方邮箱 …
supervisor

ubuntu supervisor进程管理 Supervisor 是一个用 Python 写的进程管理工具,可以很方便的对进程进行启动、停止、重启等操作。 安装命令: sudo apt install supervisor 安装成功后,会在/etc/supervisor目录下,生成supervisord.conf配置文件。 你也可以使用echo_supervisord_conf > supervisord.conf命令,生成默认的配置文件(不建议,内容比较多)。 …
ubuntu supervisor进程管理 Supervisor 是一个用 Python 写的进程管理工具,可以很方便的对进程进行启动、停止、重启等操作。 安装命令: sudo apt install supervisor 安装成功后,会在/etc/supervisor目录下,生成supervisord.conf配置文件。 你也可以使用echo_supervisord_conf > supervisord.conf命令,生成默认的配置文件(不建议,内容比较多)。 …
hive cheatsheet

1. Hive导出到.csv文件 由于Hive中导出的文件不是以逗号,而是以Tab(或者说’\t’)为分隔符的,因此,下面的命令自己试过可以转换为逗号分隔的文件,也就是真正的csv文件。 当然,有时候可能还需要跟转码的工具进行组合,转换编码格式。 sed -i ‘s/\t/,/g’ xxx.csv 当然,第一步是 hive -e “SQL语句” > xxx.csv 所以完整的流程代码是 hive -e "SQL query" > xxx.csv sed -i 's/\t/,/g' xxx.csv …
1. Hive导出到.csv文件 由于Hive中导出的文件不是以逗号,而是以Tab(或者说’\t’)为分隔符的,因此,下面的命令自己试过可以转换为逗号分隔的文件,也就是真正的csv文件。 当然,有时候可能还需要跟转码的工具进行组合,转换编码格式。 sed -i ‘s/\t/,/g’ xxx.csv 当然,第一步是 hive -e “SQL语句” > xxx.csv 所以完整的流程代码是 hive -e "SQL query" > xxx.csv sed -i 's/\t/,/g' xxx.csv …
hive elasticsearch

需要同步的elastic表 add jar hdfs:///elasticsearch-jars/elasticsearch-hadoop-hive-8.1.1.jar; -- create database ods_beike; CREATE EXTERNAL TABLE ods_beike.ershoufang_detail_from_es( house_url string comment 'house url', house_id string comment 'house id', …
需要同步的elastic表 add jar hdfs:///elasticsearch-jars/elasticsearch-hadoop-hive-8.1.1.jar; -- create database ods_beike; CREATE EXTERNAL TABLE ods_beike.ershoufang_detail_from_es( house_url string comment 'house url', house_id string comment 'house id', …
pykafka

from pykafka import KafkaClient client = KafkaClient(hosts="localhost:9092") topic = client.topics['maoyan_wish'] consumer = topic.get_simple_consumer(consumer_group='test', auto_commit_enable=True, consumer_id='test') for message in consumer: if …
from pykafka import KafkaClient client = KafkaClient(hosts="localhost:9092") topic = client.topics['maoyan_wish'] consumer = topic.get_simple_consumer(consumer_group='test', auto_commit_enable=True, consumer_id='test') for message in consumer: if …
pymongo分片

#!/usr/bin/python # -*- coding: UTF-8 -*- import time from pymongo import MongoReplicaSetClient from pymongo import MongoClient # 连接单机 # single mongo # c = MongoClient(host="192.168.89.151", port=27017) # okay # 连接集群 # mongo cluster c = …
#!/usr/bin/python # -*- coding: UTF-8 -*- import time from pymongo import MongoReplicaSetClient from pymongo import MongoClient # 连接单机 # single mongo # c = MongoClient(host="192.168.89.151", port=27017) # okay # 连接集群 # mongo cluster c = …
普通用户docker执行问题

通过将用户添加到docker用户组可以将sudo去掉,命令如下 sudo groupadd docker #添加docker用户组 sudo gpasswd -a $USER docker #将登陆用户加入到docker用户组中 newgrp docker #更新用户组
通过将用户添加到docker用户组可以将sudo去掉,命令如下 sudo groupadd docker #添加docker用户组 sudo gpasswd -a $USER docker #将登陆用户加入到docker用户组中 newgrp docker #更新用户组
hive中文乱码

在metastroe (1)修改表字段注解和表注解 alter table COLUMNS_V2 modify column COMMENT varchar(256) character set utf8; alter table TABLE_PARAMS modify column PARAM_VALUE varchar(4000) character set utf8; (2)修改分区字段注解 alter table PARTITION_PARAMS modify column …
在metastroe (1)修改表字段注解和表注解 alter table COLUMNS_V2 modify column COMMENT varchar(256) character set utf8; alter table TABLE_PARAMS modify column PARAM_VALUE varchar(4000) character set utf8; (2)修改分区字段注解 alter table PARTITION_PARAMS modify column …
hive窗口函数

CREATE TABLE tmp.COSTITEM ( NAME STRING, ORDERDATE DATE, COST STRING); – 数据加 INSERT INTO tmp.COSTITEM VALUES (‘jack’,‘2020-01-01’,‘10’); INSERT INTO tmp.COSTITEM VALUES (’tony’,‘2020-01-02’,‘15’); INSERT INTO tmp.COSTITEM VALUES …
CREATE TABLE tmp.COSTITEM ( NAME STRING, ORDERDATE DATE, COST STRING); – 数据加 INSERT INTO tmp.COSTITEM VALUES (‘jack’,‘2020-01-01’,‘10’); INSERT INTO tmp.COSTITEM VALUES (’tony’,‘2020-01-02’,‘15’); INSERT INTO tmp.COSTITEM VALUES …
hadoop 八股文

1. 请说下HDFS读写流程 HDFS写流程 1)client客户端发送上传请求,通过RPC与namenode建立通信,namenode检查该用户是否有上传权限,以及上传的文件是否在hdfs对应的目录下重名,如果这两者有任意一个不满足,则直接报错,如果两者都满足,则返回给客户端一个可以上传的信息 2)client根据文件的大小进行切分,默认128M一块,切分完成之后给namenode发送请求第一个block块上传到哪些服务器上 3)namenode收到请求之后,根据网络拓扑和机架感知以及副本机制 …
1. 请说下HDFS读写流程 HDFS写流程 1)client客户端发送上传请求,通过RPC与namenode建立通信,namenode检查该用户是否有上传权限,以及上传的文件是否在hdfs对应的目录下重名,如果这两者有任意一个不满足,则直接报错,如果两者都满足,则返回给客户端一个可以上传的信息 2)client根据文件的大小进行切分,默认128M一块,切分完成之后给namenode发送请求第一个block块上传到哪些服务器上 3)namenode收到请求之后,根据网络拓扑和机架感知以及副本机制 …