[hadoop3.x]HDFS之银行海量转账数据分层案例(八)

举报
Maynor学长 发表于 2022/03/04 19:50:12 2022/03/04
【摘要】 银行每一天都有大量的转账、交易需要保存、处理。用户每进行一笔交易或者转账,银行都需要将用户转账的所有相关信息保存下来。四大银行:银行有非常多的用户,四大银行拥有数10亿的用户。要保存的数据量可想而知。如果说有的数据,都同等对待,为了保证使用数据的性能,采用的是高性能存储,这将是一笔不小的资源浪费。实际上,超过一定时间的数据,数据访问的频率要低得多。例如:用户查询5年前的转账记录、要比查询1年...

在这里插入图片描述

银行每一天都有大量的转账、交易需要保存、处理。用户每进行一笔交易或者转账,银行都需要将用户转账的所有相关信息保存下来。
四大银行:
在这里插入图片描述

银行有非常多的用户,四大银行拥有数10亿的用户。要保存的数据量可想而知。如果说有的数据,都同等对待,为了保证使用数据的性能,采用的是高性能存储,这将是一笔不小的资源浪费。实际上,超过一定时间的数据,数据访问的频率要低得多。例如:用户查询5年前的转账记录、要比查询1年类的转账记录频率要低得多。

所以,为了能够更好地利用资源,需要对数据进行分层。也就是不同时间范围的数据,放在不同的层(冷热温)中。
5.1 存储分层策略
按照以下配置,在HDFS的source目录中创建以下几个文件夹:

文件夹路径 存储策略 说明

/source/bank/transfer/log_lte1y DISK 存储一年以内采集的数据 /source/bank/transfer/log_gt1y ARCHIVE 存储1年以上的数据

5.2 测试

创建文件夹

hdfs dfs -mkdir -p /source/bank/transfer/log_lte1y
hdfs dfs -mkdir -p /source/bank/transfer/log_gt1y

指定存储策略

hdfs storagepolicies -setStoragePolicy -path /source/bank/transfer/log_lte1y -policy HOT
hdfs storagepolicies -setStoragePolicy -path /source/bank/transfer/log_gt1y -policy COLD

查看存储策略

hdfs storagepolicies -getStoragePolicy -path /source/bank/transfer/log_lte1y
hdfs storagepolicies -getStoragePolicy -path /source/bank/transfer/log_gt1y

上传文件测试

上传文件到linux

rz

一年

hdfs dfs -put /root/bank_record.csv 
/source/bank/transfer/log_lte1y/bank_record_2020_9.csv

五年

hdfs dfs -put /root/bank_record.csv 
/source/bank/transfer/log_gt1y/bank_record_2015_9.csv

假设现在到了2021年10年,我们可以将之前的数据移动到log_gt1y

hdfs dfs -mv /source/bank/transfer/log_lte1y/bank_record_2020_9.csv 
/source/bank/transfer/log_gt1y/bank_record_2020_9.csv
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。