HDFS和本地文件系统文件互导

HDFS和本地文件系统文件互导,第1张

初步了解一下情况,后续根据给出案例

一、从本地文件系统到HDFS

使用hdfs自带的命令

命令:hdfs dfs -copyFromLocal inputPath outputPath

inputPath:本地文件目录的路径

outputPath:hdfs文件目录路径,即存储路径

二、从HDFS到本地文件系统

命令:hdfs dfs -copyToLocal inputPath outputPath

inputPath:hdfs文件目录

outputPath:本地文件文件目录,即本地存储路径

因为Hbas和Hive都在存储在HDFS中,所以可以通过该条命令可以把Hbase和Hive存储在HDFS中的文件复制出来。但是经过实践,通高简过这种方式复制出来的Hbase文件是乱码。Hive里的文件有时候也会乱码,这取决于Hive数据的插入方式。

三、文件在HDFS内的移动

1、从Hbase表导出数据到HDFS

命令:hbase org.apache.hadoop.hbase.mapreduce.Export tableName outputPaht

例子:hbase org.apache.hadoop.hbase.mapreduce.Export test /user/data

test为需要从Hbase中导出的表,/user/data为hdfs上的路径,即存储路径,如果最后一个参数有前缀file:// 则为本地上的文件存储系统

2、从HDFS导入到Hbase表中,需要事先建立好表结构

命令:hbase org.apache.hadoop.hbase.mapreduce.Export tableName inputPaht

例子:hbase org.apache.hadoop.hbase.mapreduce.Import test1 /态拍temp/part-m-00000

案列:

两个不同环境数据,数据导入

过程描述:

            导出正式环境数据到hdfs中,然后从hdfs中导出到本地,本地传到测试环境主机,然后从本地导入到hdfs中,再从hdfs中导入到hbase中。

处理过程:

1、注意事项:1、权限问题使用hdfs:sudo -u hdfs ;

                      2、存放上传路径最好不要在root下

    帆念羡                  3、上传完成后,查看是否在使用,数据已经插入。

1、sudo -u hdfs hbase org.apache.hadoop.hbase.mapreduce.Export ** /hbase/**_bak  (导出到hdfs中的**_bak)

2、hdfs dfs -copyToLocal /hbase/sw_bak /test  (导出hdfs中文件到本地test,注:提前建好目录)

3、scp -r test_bak [email protected].**:/root/test  (传送目录到测试环境主机目录下,注:传到测试环境后,把文件不要放到root的目录下,换家目录下)

4、sudo -u hdfs hdfs dfs -copyFromLocal /chenzeng/text_bak /data (把sw传到hdfs 中,注意上传时,文件路径要对,放在data路径下比较好)

5、sudo -u hdfs hbase org.apache.hadoop.hbase.mapreduce.Import test /data/test_bak/part-m-0000 (注意上次文件)

6、在hbase shell 中查看test :count 'test' 确认是否上传成功

优化:

truncate ‘’

正式环境导入至hdfs中时,

可以直接在另一个环境的执行sudo -u hdfs hbase org.apache.hadoop.hbase.mapreduce.Import test hdfs://server243:8020/hbase****  可以直接加主机和对应路径进行put。

如何向 hadoop 导入数据

1.2 使用Hadoop shell命令导入和导出数据到HDFS

实验准备

实例需要用到的数据-weblog_entries.txt

在namenode创建2个文件夹用来存放实验用的数据

mkdir /home/data 1

mkdir /home/data_download1

将肆搭weblog_entries.txt上传到namenode里的/home/data文件夹(我使用SecureFXPortable.exe 工具)

注:以下命令都是在namenode节点运行的

实验过程

1.在HDFS中创建一个新的文件夹,用于保存weblog_entries.txt

hadoop fs -mkdir /data/weblogs1

2.将weblog_entries.txt文件从本地文件系统复制到HDFS刚创建的新文件夹下

cd /home/data1

hadoop fs -copyFromLocal weblog_entries.txt /data/weblogs1

3.列出HDFS上weblog_entries.txt文件的信息:

hadoop fs –ls /data/weblogs/weblog_entries.txt 1

4.将HDFS上的weblog_entries.txt文件复制到本地系统的当前文件夹下

cd /home/data_download1

hadoop fs -copyToLocal /data/weblogs/weblog_entries.txt ./weblog_entries.txt 1

最后用 ls 命令检验下时候将weblog_entries.txt 下载到本地

如何向oracle 10g数据库导入数据

Oracle 11g数据导入到10g

一、在11g服务器上,使用expdp命令备份数据

11g 导出语句:EXPDP USERID='facial/facial@orcl as sysdba' schemas=facialdirectory=DATA_PUMP_DIR dumpfile=test.dmp logfile=test.log version=10.2.0.1.0

二、在10g服务器上,使用impdp命令恢复数据

准备工作:1.建库2.建表空间3.建用户并授权4.将test.dmp拷贝到10g的dpdump目录下

--创建表空间

create tablespace TS_Facial datafile 'E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\Facial.DBF' size 500M autoextend on next 50M

--创建用户

create user Facial identified by Facial default tablespace TS_Facial

--授权给用户

grant connect,resource,dba to Facial

test.dmp 和 test.log 放在E:\oracle\product\10.2.0\admin\orcl\dpdump目录下

10g 导入语句:IMPDP USERID='facial/facial@orcl as sysdba' schemas=facialdirectory=DATA_PUMP_DIR dumpfile=test.dmp logfile=test.log version=10.2.0.1.0

如何向mongodb分片集群裂顷拿导入数据

下载mongoDB(mongoDB下载地址),笔者使用的是mongoDB 2.0.4的Linux 64-bit版本。

解压:tar xzf mongo.tgz

默认情况下,mongoDB将数据存储在/data/db目录下,但它不会自乎橡动创建该目录,所以我们需要手动创建它:

$ sudo mkdir -p /data/db/

$ sudo chown `id -u` /data/db

也可以使用--dbpath参数来指定别的数据库目录。

如果只是想在单机上测试一下mongoDB的话,非常简单,首先启动MongoDB server,

$ ./mongodb-xxxxxxx/bin/mongod

在另外一个终端,连接到我们启动的server:

$ ./mongodb-xxxxxxx/bin/mongo

>db.foo.save( { a : 1 } )

>db.foo.find()

如何向clementine12.0中导入数据库数据

在resources找到database节点连上去就可以,之后按照你的用户名和密码填好就可以,但是在之前要配置数据库。

如何向sql server2008中导入数据库

打开SQL Server Management Studio,在对象资源管理器中,展开“SQL Server 实例”→“数据库”→“MySchool”节点,单击鼠标右键,选择“任务”→“导出数据”命令。出现导入和导出向导的欢迎界面,单击“下一步”按钮,出现“选择数据源”对话框,如图

在“选择数据源”对话框中设置如下选项:

数据源:SQL Native Client 10.0。

服务器名称:DC。

身份验证:Windows身份验证。

数据库:MySchool。

单击“下一步”按钮,出现“选择目标”对话框,设置如下选项(如图所示):

目标:平面文件目标。

文件名:C:\student.txt。

格式:带分隔符。

单击“下一步”按钮,出现“指定表复制或查询”对话框,如图所示。

在“指定表复制或查询”对话框中选中“复制一个或多个表或视图的数据”单选按钮,单击“下一步”按钮,出现“配置平面文件目标”对话框,如图所示。

设置源表或源视图为MySchool.dbo.student,单击“下一步”按钮。

在“保存并执行包”对话框中选中“立即执行”复选框,如图所示,然后单击“下一步”按钮。

在如图所示的对话框中单击“完成”按钮。

如图所示,当执行完后,单击“关闭”按钮。

8

在Windows资源管理器中打开C:\student.txt文件,验证导出的结果。

如何导入数据

工具/原料

sql2008

方法/步骤

登录sql2008数据库,其实其他版本的数据库也是一样的原理

使用windows账户登录,登录成功之后打开资源管理器窗口

在数据库上单击右键,选择【新建数据库】

在d出的新建数据库窗口中,输入数据库名字【test】然后点击确定

数据库【test】新建完成,在数据库上单击右键,选择【任务】【导入数据】

d出导入数据向导,选择下一步

数据源选择【Excel】,文件路径选择我们需要导入的文件

目标数据库选择我们刚才新建的【test】数据库,其他保存默认不变,一直单击【下一步】

勾选我们需要导入的Excel表,如图所示,然后单击下一步,完成

开始导入数据,如图所示,成功导入,点击【关闭】

这样我们就导入了Excel中的数据

如何从linux向dbeaver导入数据

1、右击新建连接 2、选择Oracle 3、将要填的数据都填好了,下拉框选sid,点测试,通过就ok了 4、狂点下一步,最后完成。 注:无需安装oracle客户端。只有这个dbeaver就可以,只是需要个驱动包这个不用说。不会加驱动可以追问

如何从EXCEL向MATLAB导入数据

首先把excel文件放在work文件夹里,假设文件名为a.xls。

然后在matlab命令窗口输入a=xlsread('a.xls')

此时,a矩阵即为exel里对应的数据

使用Matlab中的Excel Link就可以了。

如果使用Excel 2003版本, *** 作如下:

1 打开Excel。

2 在菜单栏中选择工具→加载项→浏览。

3 在Matlab的安装目录下打开toolbox\exlink文件夹,选择EXCLLINK.XLA,点击确认。

4 自动回到加载项对话框后,确保对话框中有“Excel

Link”,选中后点击确认按钮即可,菜单栏中自动添加了Matlab加载项。

5 使用其中的putmatrix,既可以将数据导入到Matlab中。

如果使用Excel 2007版本, *** 作如下:

1 打开Excel。

2 点击左上的office按钮→Excel选项→转到→加载项→浏览。

3 在Matlab的安装目录下打开toolbox\exlink文件夹,选择EXCLLINK.XLA,点击确认。

4 自动回到加载项对话框后,确保对话框中有“ExcelLink”,选中后点击确认按钮即可,菜单栏中自动添加了Matlab加载项。

5 使用其中的putmatrix,既可以将数据导入到Matlab中。

没有人知道?是否可以通过hadoop fs -ls可以查看到最新更新的文件,通过这种方式可以知道文件更新日期。这个是否可以通过这种方式获取文件,然绝穗后再进行导出。方式觉得很别扭,看看有没有其它便捷的途径并敬卜。

确认hadoop fs命令中是否有find命令稿薯,如果有,使用find +time就可以获取到最近几天对应的文件。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/tougao/8147201.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-13
下一篇 2023-04-13

发表评论

登录后才能评论

评论列表(0条)

保存