blob: 0d2795cd331f6f2f0f8be2b5ec05f35729508cc7 [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 +000019use dataverse events;
20
21declare type EventType as closed {
22 event_id: int64,
23 name: string,
24 location: AddressType ?,
25 organizers: {{
26 {
27 name: string
28 }
29 }},
30 sponsoring_sigs: [
31 {
32 sig_id: int32,
33 chapter_name: string
34 }
35 ],
36 interest_keywords: {{string}},
37 price: double?,
38 start_time: datetime,
39 end_time: datetime
40}
41
42declare type AddressType as closed {
43 street: string,
44 city: string,
45 zip: string,
46 latlong: point
47}
48
49declare nodegroup group1 on nc1;
50
51/*
52declare dataset Event(EventType)
53 splits nc1:"/home/nicnic/Work/Asterix/adg/event.adm";
54*/
55
56drop dataset Event;
57declare dataset Event(EventType)
ramangrover29669d8f62013-02-11 06:03:32 +000058 primary key event_id on group1;
vinayakb38b7ca42012-03-05 05:44:15 +000059
60load dataset Event
Ian Maxonf18bba22015-08-21 12:35:14 -070061using "org.apache.asterix.external.dataset.adapter.NCFileSystemAdapter"
vinayakb38b7ca42012-03-05 05:44:15 +000062(("path"="nc1:///home/nicnic/Work/Asterix/adg/event.adm"),("format"="adm"));
63
64write output to nc1:"/tmp/dapd_q2.adm";
65
66for $event in dataset('Event')
67for $sponsor in $event.sponsoring_sigs
68let $es := { "event": $event, "sponsor": $sponsor }
69group by $sig_id := $sponsor.sig_id with $es
70let $sig_sponsorship_count := count($es)
71let $by_chapter :=
72 for $e in $es
73 group by $chapter_name := $e.sponsor.chapter_name with $e
74 return { "chapter_name": $chapter_name, "escount" : count($e) }
75order by $sig_sponsorship_count desc
76limit 5
77return { "sig_id": $sig_id, "total_count": $sig_sponsorship_count, "chapter_breakdown": $by_chapter }
78