jjzjj

hadoop - 带有 NOSQL/Hadoop 的企业数据仓库 - "NO RDBMS"

是否有使用NOSQL/Hadoop解决方案设计的EDW(企业数据仓库)系统?我知道有连接到HDFS子系统的PDW系统(MSPDWpolybase、Greenplumhawq等)。这些是专有的硬件和软件解决方案,并且在规模上很昂贵。我正在寻找一个带有NOSQL或Hadoop的解决方案,最好是开源的企业数据仓库解决方案。如果您实现了任何经验,我想听听您的任何经验。再说一遍,我并不是在寻找任何类型的专有RDBMS作为此EDW解决方案的参与者。我在互联网上做了一些研究,虽然它是可能的(Impala是一个可能的选择)但没有看到任何人真正完全使用NOSQL或Hadoop实现。如果您做过此类事情,我

hadoop - 从 RDBMS 导出为 Hadoop 兼容格式

我需要在不连接两个系统的情况下将大量数据从Oracle数据库移动到Hadoop。是否可以通过Sqoop将Oracle中的数据直接导出到本地文件系统,而无需导入到HDFS。我想导出到ORC,然后通过外部磁盘将文件移动到Hadoop集群。 最佳答案 您不能在您的情况下使用SQOOP。SQOOP(“SQLtoHadoop”)在hadoop中运行,默认情况下使用JDBC连接数据库(正如我解释的inthisanswer,您可以使用--direct选项更改它)。如果hadoop节点无法连接到DB服务器,则无法使用。ORC是Hive使用的一种非常

hadoop - 除了SQOOP之外,还有什么方法可以从RDBMS传输到HDFS吗?

除了使用sqoop将RDBMS传输到HDFS之外,我想要其他方法请给我线索请任何人给我解释一下,hive和sqoop之间的关系是什么? 最佳答案 添加到devツ的答案中,您还有一个名为streamsets数据收集器的工具,它可以帮助您通过创建JDBC连接从mysql获取数据到HDFS。 关于hadoop-除了SQOOP之外,还有什么方法可以从RDBMS传输到HDFS吗?,我们在StackOverflow上找到一个类似的问题: https://stackover

mysql - RDBMS MySQL 中的 sqoop 导出更新表记录

因此,我尝试在MySQL的RDBMS表中执行更新。问题是这个更新来self的HDFS中的一个文件,尽管在MySQL中,当我更新记录时,表计数带有主键,结果集在描述中出现了重复值,而不是用新记录更新以前的记录key。在下面的示例中,记录Financial应该只出现一次且值为9,但我有两条记录,第一条记录的键值为2,第二条记录的键值为9。我的Sqoop代码:sqoopexport--connectjdbc:mysql://xxxxxx/retail_export--usernamexxxxx--passwordxxxxx\--tableexport_sqoop_dept--update-k

mysql - 使用 drill 修改 RDBMS 时的 UPDATE/INSERT

如果我使用apachedrill并连接到像MySQL这样的RDBMS,我是否能够使用完整的SQL语法(如UPDATE/INSERT)?我看过this关于HDFS上的UPDATE/INSERT的回答,想知道在使用drill和RDBMS时这些是否有任何区别。 最佳答案 不,不支持。您可以将Drill视为SQL引擎,而不是数据库。SQL引擎旨在尽快对大量数据执行选择语句,以便用户可以回答有关其数据的问题。数据库是具有额外数​​据管理功能(如插入和更新)的SQL引擎。通常人们在不再变化的数据上使用Drill。例如,如果您正在运行一个网站并且

hadoop - 将保存在 RDBMS 中的非结构化数据卸载到 Hadoop

我的组织正在考虑将作为表的一部分保存在Oracle数据库中的非结构化数据(如文本、图像等)卸载到Hadoop中。数据库的大小约为10TB,并且还在不断增长。CLOB/BLOB列的大小约为3TB。现在,通过Web应用程序查询这些列以获得某种报告。它们也被写入但不是很频繁。我们可以采取什么样的方法来实现正确的数据卸载并确保卸载的数据可用于通过现有Web应用程序读取。 最佳答案 您可以在oracleblog(link)中得到部分答案。如果需要通过sqoop在HDFS环境中拉取数据,那么您必须先阅读sqoop文档中的以下内容。Sqoop以特

hadoop - 为什么配置单元使用 RDBMS 存储 Metastore 而不是文件系统?

我想了解将RDBMS用于Hive元数据而不是文件系统的设计原则从我的角度来看,RDBMS提供-并发控制酸性物质亚秒级延迟等文件系统本可以提供-数据复制可以使用Zookeeper实现并发在Hive的设计过程中还有其他影响此决定的因素吗? 最佳答案 您可以在论文“Hive:awarehousingsolutionoveramap-reduceframework”中找到hive使用RDBMS的原因。描述如下“应优化Metastore的存储系统用于具有随机访问和更新的在线交易。像HDFS这样的文件系统不适合,因为它经过优化用于顺序扫描而不是

hadoop - 如何将数据和元数据从 Hive 传输到 RDBMS

我的hive环境中有300多张表。我想将所有表从Hive导出到Oracle/MySql,包括元数据。我的Oracle数据库没有与这些Hive表对应的任何表。从Oracle到Hive的Sqoop导入如果表不存在,则在Hive中创建表。但是从Hive到Oracle的Sqoop导出如果不存在,则不会创建表,并会失败并出现异常。Sqoop中是否也有导出元数据的选项?要么是否有任何其他Hadoop工具可以实现此目的?提前致谢 最佳答案 您要求的功能不在Spark中。不幸的是,我不知道当前的hadoop工具可以满足您的要求。一个潜在的解决方法是

hadoop - 如何识别从 RDBMS 到 Hive 外部表的新列?

我在HDFS中有一个Hive外部表X。来自RDBMS的文件将不断来到表X的文件夹位置。上周有一个新的列被添加到RDBMS,文件进入了包含新列数据的外部表。我知道在这种情况下我应该向Hive外部表添加一个新列。但是,如何防止带有新列的文件进入我的外部文件夹??或者至少我如何识别新专栏即将到来? 最佳答案 您可以编写一个Bash脚本来检查今天文件中的列数(我假设您的文件是按日期分区的)。expected_n_columns=10DATE=`date+%Y-%m-%d`n_commas=`hadoopfs-cat/X/$DATE/*|he

mysql - hadoop 如何处理从 RDBMS 获取的行的更改

我有一个场景,每天将数据从MYSQL数据库提取到hadoop到一个日期文件夹中。每天都会编辑几行,并且可能还会有一些架构更改。如果我只对最新的数据和模式感兴趣,我们如何在hadoop中处理这个问题 最佳答案 Here是Sqoop中增量导入的文档。此外,Sqoop可以在导入数据时获取表名,因此如果架构更改,Sqoop命令应该相同。bin/sqoopimport--connectjdbc:mysql://localhost/bigdata--tablewidgets-m1 关于mysql-h