【问题标题】:Bulk load to HDFS from sybase database从 sybase 数据库批量加载到 HDFS
【发布时间】:2016-04-03 00:12:15
【问题描述】:

我需要将数据从 sybase(生产数据库)加载到 HDFS。通过使用 sqoop,它需要很长时间并且经常访问生产数据库。所以,我正在考虑从 sybase 转储创建数据文件,然后将数据文件复制到 hdfs。是否有任何工具(开源)可用于从 sybase 转储创建所需的数据文件(平面文件)。

谢谢,

【问题讨论】:

    标签: sybase sqoop sap-iq


    【解决方案1】:

    iq_bcp 命令行实用程序旨在针对每个表执行此操作。你只需要生成一个表列表,你可以遍历列表。

    iq_bcp [ [ 数据库名称。 ] 所有者。 ] 表名 { 在 | out } 数据文件

    iq_bcp MyDB..MyTable out MyTable.csv -c -t#$#
    

    -c指定一个字符(明文)输出 -t 允许您自定义列分隔符。您将需要使用未出现在您的确切信息中的一个字符或一系列字符,例如如果您的文本列包含带逗号的文本,则 csv 将很难在没有额外工作的情况下导入。

    Sybase IQ: iq_bcp

    【讨论】:

    • 非常感谢迈克尔。是否可以直接将此工具(使用命令)应用到 sybase 转储而不影响生产数据库。
    • 没有。它必须针对正在运行的服务器运行。您的替代方法是将转储恢复到备份服务器,然后从那里运行提取。
    猜你喜欢
    • 2016-07-26
    • 1970-01-01
    • 1970-01-01
    • 2011-01-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-01
    • 1970-01-01
    相关资源
    最近更新 更多