240 likes | 464 Views
The Spatial Skyline Queries. Present by: Nava Ehsan. M. Sharifzadeh, C.Shahabi, “The Spatial Skyline Queries”; VLDB 2006. فهرست. تعریف مسئله مفاهیم هندسی شرح الگوریتم ارزیابی. تعریف مسئله. فرض : وجود پایگاه داده با N شیی. هر شیی شامل d صفت است. (p1,…,pd) اعداد حقیقی می باشند.
E N D
The Spatial Skyline Queries Present by: Nava Ehsan spatial skyline queries
M. Sharifzadeh, C.Shahabi, “The Spatial Skyline Queries”; VLDB 2006 spatial skyline queries
فهرست تعریف مسئله مفاهیم هندسی شرح الگوریتم ارزیابی spatial skyline queries
تعریف مسئله فرض : وجود پایگاه داده با N شیی. هر شیی شامل d صفت است. (p1,…,pd) اعداد حقیقی می باشند. spatial skyline queries
تعریف مسئله (ادامه) P=(p1,…,pd) و p’=(p’1,…,p’d) هدف یافتن نقاطی است که هیچ نقطه دیگری آن را تحت الشعاع قرار ندهد به این نقاط، skyline گفته می شود. f=(3,75) و d=(4,125) در نتیجه f ، d را تحت الشعاع قرار می دهد. S={a, c, e} spatial skyline queries
2 B • H1 بهتر از H2 • H1 نزدیک تر از H3 به C ولی دورتر به A • هیچ هتلی بهتر از H1، H3 و H4 نیست 1 3 C A 4 سوال: یافتن هتلهایی که به سالن کنفرانس، ساحل و فرودگاه نزدیک باشد. spatial skyline queries
p3 p1 q2 q1 p4 p2 Spatial Skyline Points • Data P = {p1, p2, p3, p4} • Query Q = {q1, q2} • Distance D() = Euclidean • p2spatially dominates p1 with respect to {q1, q2} • Dominator Region of p1 • p1spatially dominates p3 • Dominance Region of p1 • No dominance relation between p1 and p4 Spatial Skyline Query (SSQ): یافتن نقاطی است که هیچ نقطه دیگری آن را تحت الشعاع قرار ندهد. spatial skyline queries
p3 q2 p2 q1 p4 راه حل ساده • Data P = {p1, p2, p3, p4} • Query Q = {q1, q2} • Distance D() = Euclidean Dominance check? D(p2, q1)≤D(p1, q1) AND D(p2, q2) ≤ D(p1, q2) For each point pi iterate over points pj if no point spatially dominates pi then add pi to spatial skyline p1 پیچیدگی الگوریتم : O(|P|2 |Q| ) |P|: number of data points, |Q|: number of query points spatial skyline queries
خواص هندسی • با معرفی خواص هندسی پیچیدگی الگوریتم کاهش می یابد با کاهش: • نقاط مورد نیاز برای بررسی • نقاطی از query که تأثیری در پاسخ ندارند spatial skyline queries
نمودارVoronoi spatial skyline queries
q نمودار Voronoi نقطه q داخل چند ضلعی p <=> D(q, p) <= D(q, p’) p p’ چند ضلعی نقطه p spatial skyline queries
Convex Hull مرحله 1:نقطه با کمترین y را پیدا می کند. مرحله 2: بقیه نقاط با توجه به زاویه ای که با نقطه اول می سازند مرتب می شوند مرحله 3 :نقاطی که زاویه خارجی منفرجه ایجاد می کنند به داخل چند ضلعی انتقال پیدا می کنند. spatial skyline queries
Data Point Query Point قضیه 1.هر نقطه p داخل convex hull نقاط query یک نقطه skyline است. • Dominance Check نیاز نیست p دوایر مشخص کننده فضای dominator تنها در نقطه p اشتراک دارند.
Data Point Query Point قضیه 2.مجموعه نقاط skyline مستقل از نقطه داخل convex hull است. • Dominance Check کمتری مورد نیاز است Dominator region of p p q3 q4 q2 q1 دایره مربوط به q4، فضای dominator مربوط به نقاط p را تغییر نمی دهد.
قضیه 3.نقاطه ای که چندضلعی voronoi آن با convex hull اشتراک داشته باشد یک نقطه skyline است. • Dominance Check نیاز نیست.
الگوریتم VS2 • Voronoi-based spatial skyline • الگوریتمبا استفاده از مفاهیم هندسی گفته شده : • بدون چک کردن نقاطی که چند ضلعی voronoi آنها با convex hull اشتراک داشته باشند به مجموعه نقاطskyline اضافه می شوند. (قضیه 1و3) • تعداد نقاطی که باید در محاسبات وارد شوند کاهش می یابد. (قضیه 2) spatial skyline queries
Top of the heap Contents of the heap q p الگوریتم: VS2 نقطه داخل CH(Q)، در نتیجه اولین نقطه skyline پیدا شد. • جستجو از نزدیک ترین همسایه یکی از q ها آغاز می شود. • از minheap برای نگهداری مجموع فواصل تا رئوس convex hull استفاده می شود. • چند ضلعی voronoi با convex hull اشتراک دارد، طبق قضیه 3یک نقطه skylineاست. • تاکنون مقایسه ای صورت نگرفته است. • محاسبه convex hull • بدست آوردن نمودار voronoi • نقطه داخل CH(Q) طبق قضیه 1، یک نقطه skyline است. • چند ضلعی voronoi با convex hull اشتراک دارد، طبق قضیه 3یک نقطه skylineاست • چند ضلعی voronoi با convex hull اشتراک دارد، طبق قضیه 3یک نقطه skylineاست. • در هر مرحله همیسایه های نقطه کنونی استخراج می شود. • چند ضلعی voronoi با convex hull اشتراک دارد، طبق قضیه 3یک نقطه skylineاست • نیاز به مقایسه دارد. طبق قضیه 2 مقایسه کمتری صورت می گیرد. • نقطه بالای heap هنگامی که همه همسایه ها در heap باشند ارزیابی می گردد. spatial skyline queries
الگوریتم : VS2 • پیچیدگی زمانی : O(|S|2 |CHv(Q)| + Φ(|P|) ) • راه حل ساده : O(|P|2 |Q| ) • |S|: تعداد نقاط skyline • |CHv(Q)|: : رئوسconvex hull≥|Q| • Φ(|P|): : پیچیدگی پیدا کردن نقطه شروع • پیچیدگی فضایی : O(|P|) • فضای لازم برای نگهداری نمودار voronoi
کارایی • مجموعه داده ای : USGS • شامل یک میلیون نقطه spatial skyline queries
مراجع M. Sharifzadeh, C.Shahabi, “The Spatial Skyline Queries”; VLDB 2006 Subhas C. ”Voronoi Diagram”; NandyAdvanced Computing and Microelectronics Unit Indian Statistical Institute Kolkata 700108 webhome.csc.uvic.ca/~ruskey/classes/326/slides/Chpt12ConvexHull.ppt spatial skyline queries