小编Bha*_*hah的帖子

Jaro-Winkler与Levenshtein距离的区别?

我有一个用例,我需要对来自多个文件的数百万条记录进行模糊匹配.我确定了两种算法:Jaro-WinklerLevenshtein编辑距离.

当我开始探索两者时,我无法理解两者之间的确切差异.似乎Levenshtein给出了两个字符串之间的编辑数量,而Jaro-Winkler给出了0.0到1.0之间的匹配分数.我不明白算法.由于我需要使用任何一种算法,我需要知道算法性能的确切差异.

algorithm performance jaro-winkler levenshtein-distance

70
推荐指数
1
解决办法
5万
查看次数

Amazon EC2与Amazon EMR

我在Hive中实现了一项任务.目前它在我的单节点集群上工作正常.现在我打算在AWS上部署它.

我对AWS一无所知.如果我计划部署它,那么我应该选择Amazon EC2或Amazon EMR?

我想改善我的任务的表现.哪一个更好,更可靠?如何接近他们?我听说我们也可以在AWS上注册我们的VM设置.可能吗?

请尽快建议我.

非常感谢.

hive amazon-ec2 amazon-web-services amazon-emr

19
推荐指数
2
解决办法
3万
查看次数

Apache PIG中是否有任何条件IF运算符?

实际上我正在编写PIG脚本,并且如果满足其中一个条件,则希望执行一些语句.

我设置了一个变量并检查该变量的某些值.假设

if flag==0 then
  A = LOAD 'file' using PigStorage() as (f1:int, ....);
  B = ...;
  C = ....;
else 
  again some Pig Latin statements
Run Code Online (Sandbox Code Playgroud)

我可以在PIG脚本中执行此操作吗?如果是,那我该怎么做?

谢谢.

hadoop apache-pig

16
推荐指数
3
解决办法
3万
查看次数

在Hive中导入表后显示错误计数

我从MS SQL Server导入了Hive中大约10个表.但是当我尝试在表中的一个表中检查Hive中的记录时,我在运行查询时找到了更多记录(从tblName中选择count(*);).

然后我删除该表并再次将其导入Hive.我在Console Logs中观察到(检索了203条记录).然后我再次尝试(从tblName中选择count(*);)我得到了298的计数.

我不明白为什么会发生这种情况.查询中是否有任何错误,或者由于某些不正确的sqoop-import命令而发生.

所有其他表记录都没问题.

请帮我解决这个问题.

hive sqoop

7
推荐指数
1
解决办法
4450
查看次数

SimpleDateFormat.parse() - 为不同的日期格式生成错误的日期

下面是我使用SimpleDateFormat模式解析日期的代码:

String pattern = "yyyy-MM-dd";    
SimpleDateFormat format = new SimpleDateFormat(pattern);
try {
    Date date = format.parse("05-21-2030");
    System.out.println(date);
} catch (ParseException e) {
    e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)

您可以看到我传递给解析的日期与SimpleDateFormat中指定的日期格式不同.在这种情况下,由于格式不同,我希望有一种解雇,但它使用一些不同的日期值成功解析.我得到了输出 - Tue Mar 22 00:00:00 IST 12

当我传递相同的格式,如2030-05-21,它工作正常.

你能告诉我如何在我的代码中阻止这些事情吗?

java date

7
推荐指数
1
解决办法
3870
查看次数

我们可以在遍历java中的结果集时执行一些查询

我正在尝试使用JDBC(如SQL中的存储过程)在Java中实现任务.在SQL中,当我们编写游标时,首先执行select查询然后获取我们执行某些操作的记录.

可能我在Hive中解雇了一个select查询.

sql="SELECT a,c,b FROM tbl_name";
res=stmt.executeQuery();    -----------> CONTAINS 30 RECORDS
while(res.next())
{
     sql="INSERT INTO table .....";
     rs1=stmt.executeQuery();

     sql="SELECT d,e,f FROM table .....";
     rs1=stmt.executeQuery();
     like wise many queries are there.....
.
.
.
..
}
Run Code Online (Sandbox Code Playgroud)

由于我的选择查询包含30条记录,但当我执行它时,我(while.inxt())只执行一次.

但是我只是尝试显示字段以检查它是否正在获取,而不是查询,然后它正常工作..(while循环只包含System.out.println语句)

sql="SELECT * FROM tbl_name";
res=stmt.executeQuery(sql);

while(res.next())
{
   S.O.P.("fields : "+res.getString(0));
}
Run Code Online (Sandbox Code Playgroud)

(我认为当结果集被遍历时,如果查询之间存在,那么查询将被执行但同时循环也会执行,并且在查询执行结束后的一段时间之后,reslutset的循环也会完成并且因此它会执行一次.我不确定.)

为什么会这样,我没有得到.我做错了什么?

java resultset

6
推荐指数
2
解决办法
8117
查看次数

Hive vs SQL Server性能

1)我从最近2个月开始使用蜂巢.我和SQL中的任务相同.我发现Hive很慢并且需要更多时间来执行查询,而SQL在几分钟/秒内执行查询.

在Hive中执行任务后,当我在两者(SQL和Hive)中交叉检查结果时,我发现结果有些不同(并非在所有表中都有).例如:我有一张表有2012年的记录,当我在Hive的Hive中执行任务时,我得到了2007年的记录.

为什么会这样?

2)如果我想加速我在Hive中的执行,那么我该怎么做呢?(目前我只在单个集群上执行所有这些东西.如果我想增加集群,那么我需要多少集群才能提高性能)

请建议我一些解决方案或一些好的做法,以便我能够敏锐地做到这一点.

谢谢.

sql-server hive

6
推荐指数
1
解决办法
6787
查看次数

是否可以通过编写单独的 mapreduce 程序来并行执行 Hive 查询?

我问了一些关于提高 Hive 查询性能的问题。一些答案与映射器和化简器的数量有关。我尝试了多个映射器和化简器,但在执行过程中没有发现任何差异。不知道为什么,可能是我没有以正确的方式去做,或者我错过了别的东西。

我想知道是否可以并行执行 Hive 查询?我的意思是,通常查询在队列中执行。例如:query1

查询2

查询3

. . . n

执行时间太长,我想减少执行时间。

我需要知道我们是否在 Hive JDBC 程序中使用 mapreduce 程序,那么是否可以并行执行它?不知道这是否可行,但这是我要实现的目标?

我在下面恢复我的问题:

1) 如果可以并行运行多个 Hive 查询,是否需要多个 Hive Thrift Server?

2) 是否可以打开多个 Hive Thrift 服务器?

3)我认为不可能在同一个端口上打开多个 Hive Thrift Server?

4) 我们可以在不同的端口上打开多个 Hive Thrift Server 吗?

请为此建议我一些解决方案。如果您有任何其他选择,我也会尝试。

hive mapreduce

6
推荐指数
1
解决办法
4874
查看次数

如何在Hadoop上运行Hive查询时停止特定的工作?

场景:

When I run enter the query on Hive CLI, I get the errors as below:
Run Code Online (Sandbox Code Playgroud)

查询:

**$ bin/hive -e "insert overwrite table pokes select a.* from invites a where a.ds='2008-08-15';"** 
Run Code Online (Sandbox Code Playgroud)

错误是这样的:

总MapReduce作业= 1启动作业1中的1个reduce任务数设置为0,因为没有reduce操作员Starting Job = job_201111291547_0013,Tracking URL = http:// localhost:50030/jobdetails.jsp?jobid = job_201111291547_0013 Kill Command = C:\ cygwin\home\Bhavesh.Shah\hadoop-0.20.2/bin/hadoop job -Dmapred.job.tracker = localhost:9101 -kill job_201111291547_0013 2011-12-01 14:00:52,380 Stage-1 map = 0 %,reduce = 0%2011-12-01 14:01:19,518 Stage-1 map = 100%,reduce = 100%Ended Job = job_201111291547_0013,有错误FAILED:Execution Error,返回代码2来自org.apache.hadoop.hive .ql.exec.MapRedTask

题:

所以我的问题是如何停止工作?在这种情况下,作业是:job_201111291547_0013请帮助我,以便我可以删除这些错误,并尝试下一步.谢谢.

hadoop hive

5
推荐指数
1
解决办法
2万
查看次数

在Hadoop中的多个文件中编写输出

可能重复:
hadoop中的MultipleOutputFormat

我想根据几个月使用hadoop中的map-reduce来编写文件.如果数据来自1月份,那么数据应该在jan-file中进行,同样每个月应该有单独的文件.

如何在hadoop mapredude中创建此类文件.我正在尝试递归map-reduce但没有得到如何实现它?

请给我一些解决方案.

谢谢.

hadoop mapreduce

4
推荐指数
1
解决办法
6172
查看次数