blob: 6ef16b5daa063861a8bb1a29e3f81c7dcbad8bf5 [file] [log] [blame]
Ian Maxon857dc132015-09-25 17:13:19 -07001/*
2 * Licensed to the Apache Software Foundation (ASF) under one
3 * or more contributor license agreements. See the NOTICE file
4 * distributed with this work for additional information
5 * regarding copyright ownership. The ASF licenses this file
6 * to you under the Apache License, Version 2.0 (the
7 * "License"); you may not use this file except in compliance
8 * with the License. You may obtain a copy of the License at
9 *
10 * http://www.apache.org/licenses/LICENSE-2.0
11 *
12 * Unless required by applicable law or agreed to in writing,
13 * software distributed under the License is distributed on an
14 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 * KIND, either express or implied. See the License for the
16 * specific language governing permissions and limitations
17 * under the License.
18 */
vinayakb38b7ca42012-03-05 05:44:15 +000019drop dataverse rares03 if exists;
20
21create dataverse rares03;
22
23use dataverse rares03;
24
25create type UserType as open {
26 uid: int32,
27 name: string,
28 lottery_numbers: {{int32}}
29}
30
31create type VisitorType as open {
32 vid: int32,
33 name: string,
34 lottery_numbers: {{int32}}
35}
36
Ian Maxonf7b64532015-12-09 17:28:18 -080037create nodegroup group1 if not exists on asterix_nc1, asterix_nc2;
vinayakb38b7ca42012-03-05 05:44:15 +000038
39create dataset Users(UserType)
ramangrover29669d8f62013-02-11 06:03:32 +000040 primary key uid on group1;
vinayakb38b7ca42012-03-05 05:44:15 +000041
42create dataset Visitors(VisitorType)
ramangrover29669d8f62013-02-11 06:03:32 +000043 primary key vid on group1;
vinayakb38b7ca42012-03-05 05:44:15 +000044
45
46// set simfunction "jaccard";
47// set simthreshold ".8";
48
Ian Maxonf7b64532015-12-09 17:28:18 -080049write output to asterix_nc1:"/tmp/rares03.adm";
vinayakb38b7ca42012-03-05 05:44:15 +000050
51for $user in dataset('Users')
52let $tokens :=
53 for $lottery_number in $user.lottery_numbers
54 for $token at $i in
55 for $user in dataset('Users')
56 for $lottery_number in $user.lottery_numbers
57 group by $item := $lottery_number with $user
58 let $count := count($user)
59 order by $count desc
60 return $item
61 where $lottery_number = $token
62 order by $token
63 return $i
64return {"uid": $user.uid, "tokens": $tokens}