数据在传统数据库(SQL)和大数据之间的迁移方法总结

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_34100655/article/details/82343427

为什么要将数据进行迁移?

进行数据处理工作的时候,很重要的一种工作内容就是:将数据在传统数据库(SQL)和大数据之间的进行迁移。为什么要这么做呢?这是因为,业务的持续使得数据量越来越大,因此原来存储数据的MySQL容量不够了,就需要将数据迁移到Hadoop生态中;或者,原始的业务数据存储在Hive或者HBase中,此时营销同事想要进行数据分析,他们只会用SQL,那这时候就要将Hadoop中的数据迁移到MySQL等关系型数据库中。
综上所述,数据在传统数据库(SQL)和大数据之间的迁移方法需要总结以下,以便理清自己的思路。


不同数据库能处理的数据量

Excel:当数据量在六十万行以下的时候可以使用;
MySQL:每个数据库最多可创建20亿个表,一个表允许定义1024列,每行的最大长度为8092字节(不包括文本和图像类型的长度)。每个数据库的最大空间1048516TB,所以一个表可用的最大空间为1048516TB减去数据库类系统表和其它数据库对象所占用的空间。理论上能存储这么多,但实际上这样会很卡,所以大致能存亿级别条数的数据;
Hive:当数据量达到PB级别的时候,就需要使用了;
HBase


MySQL数据转移到Hive

利用kettle+xftp导入:https://blog.csdn.net/qq_34100655/article/details/81033022


MySQL转移到HBase

使用Sqoop中间件:https://blog.csdn.net/qq_34100655/article/details/81092921


Hive转移到MySQL

Hive转移到HBase

HBase转移到Hive

创建映射表格:https://blog.csdn.net/qq_34100655/article/details/81070216


HBase转移到MySQL

MySQL转移到SQL Server/SQL Server转移到MySQL

方法一:用Python的pymssql、pymysql包写一个数据同步程序,Run一下程序,使得数据自动同步;


猜你喜欢

转载自blog.csdn.net/qq_34100655/article/details/82343427