关于蜂巢的问题
Questions about Hive
我有这样的环境:
- Haddop 环境(1 主,4 从)有几个应用程序:
ambari、hue、hive、sqoop、hdfs ...生产中的服务器(单独的
来自 hadoop) 和 mysql 数据库。
我的目标是:
- 优化在此 mysql 服务器上进行的查询
今天执行。
我做了什么:
- 我使用 Sqoop 将 mysql 数据导入到 HDFS。
我的疑惑:
- 我无法使用 Hive 在 HDFS 中直接进行选择?
- 我是否必须将数据加载到 Hive 中并进行查询?
- 如果向mysql数据库输入新数据,最好的方法是什么
获取此数据并将其插入HDFS,然后将其插入
又要蜂巢? (也许是实时的)
提前致谢
您可以尝试 Impala,在 SQL 查询的情况下,它比 Hive 快得多。您需要定义表,最有可能指定一些分隔符、存储格式以及数据在 HDFS 上的存储位置(我不知道您存储的是哪种数据)。然后你可以编写 SQL 将从 HDFS 获取数据的查询。
我没有 real-time 从关系数据库中提取数据的经验,但是您可以尝试使用 cron 安排 Sqoop 作业。
I can not make selects direct in HDFS using Hive?
可以。在指定您的 hdfs 位置的配置单元中创建 External Table。然后你可以在它上面执行任何 HQL。
Do I have to load the data into Hive and make the queries?
如果是外部table,则不需要在hive中加载数据;您的数据驻留在同一个 HDFS 目录中。
If new data is entered into the mysql database, what is the best way to get this data.
您可以使用 Sqoop Incremental Import for this. It will fetch only newly added/updated data (depending upon incremental mode). You can create a sqoop job 并根据需要进行安排。
我有这样的环境:
- Haddop 环境(1 主,4 从)有几个应用程序: ambari、hue、hive、sqoop、hdfs ...生产中的服务器(单独的 来自 hadoop) 和 mysql 数据库。
我的目标是:
- 优化在此 mysql 服务器上进行的查询 今天执行。
我做了什么:
- 我使用 Sqoop 将 mysql 数据导入到 HDFS。
我的疑惑:
- 我无法使用 Hive 在 HDFS 中直接进行选择?
- 我是否必须将数据加载到 Hive 中并进行查询?
- 如果向mysql数据库输入新数据,最好的方法是什么 获取此数据并将其插入HDFS,然后将其插入 又要蜂巢? (也许是实时的)
提前致谢
您可以尝试 Impala,在 SQL 查询的情况下,它比 Hive 快得多。您需要定义表,最有可能指定一些分隔符、存储格式以及数据在 HDFS 上的存储位置(我不知道您存储的是哪种数据)。然后你可以编写 SQL 将从 HDFS 获取数据的查询。
我没有 real-time 从关系数据库中提取数据的经验,但是您可以尝试使用 cron 安排 Sqoop 作业。
I can not make selects direct in HDFS using Hive?
可以。在指定您的 hdfs 位置的配置单元中创建 External Table。然后你可以在它上面执行任何 HQL。
Do I have to load the data into Hive and make the queries?
如果是外部table,则不需要在hive中加载数据;您的数据驻留在同一个 HDFS 目录中。
If new data is entered into the mysql database, what is the best way to get this data.
您可以使用 Sqoop Incremental Import for this. It will fetch only newly added/updated data (depending upon incremental mode). You can create a sqoop job 并根据需要进行安排。