blob: 47533a7dca793fee5e495ea0ea0eec86f286d375 [file] [log] [blame]
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
drop dataverse fuzzyjoin_078 if exists;
create dataverse fuzzyjoin_078;
use dataverse fuzzyjoin_078;
create type DBLPType as open {
id: int32,
dblpid: string,
title: string,
authors: string,
misc: string
}
create nodegroup group1 if not exists on asterix_nc1, asterix_nc2;
create dataset DBLP_fuzzyjoin_078(DBLPType)
primary key id on group1;
write output to asterix_nc1:'rttest/fuzzyjoin_078.adm';
//
// -- - Stage 2 - --
//
for $paperDBLP in dataset('DBLP_fuzzyjoin_078')
let $unrankedTokensDBLP := counthashed-word-tokens($paperDBLP.title)
let $tokensDBLP :=
for $token in $unrankedTokensDBLP
for $tokenRanked at $i in
//
// -- - Stage 1 - --
//
for $paper in dataset('DBLP_fuzzyjoin_078')
for $token in counthashed-word-tokens($paper.title)
/*+ hash */
group by $tokenGroupped := $token with $paper
/*+ inmem 1 302 */
order by count($paper), $tokenGroupped
return $tokenGroupped
where $token = /*+ bcast */ $tokenRanked
order by $i
return $i
order by $paperDBLP.id
return {'id': $paperDBLP.id, 'tokens':$tokensDBLP}