<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Quadtree Implementierung]]></title><description><![CDATA[<p>Hallo Leute,</p>
<p>ich möchte eine Quadtree Implementierung in C# <a href="http://ASP.NET" rel="nofollow">ASP.NET</a> machen. Ziel ist Folgendes: Ein Benutzer sieht eine Karte (Alpenraum) und kann darüber ein beliebiges Rechteck aufziehen. In einer Datenbank sind Wasserprobeentnahmestellen mit Koordinaten gespeichert. Alle Entnahmestellen mit Koordinaten innerhalb des aufgezogenen Rectangles sollen angezeigt werden. Also eine Punkt in Polygon Abfrage. Dafür dachte ich mir zuerst, ich lade alle Punkte von der Datenbank in die Applikation und befülle eine Quadtree Struktur. Quadtree wird ausbalanciert und für weitere Abfragen gecacht. Alle Abfragen gehen dadurch auch sehr effizient. Nun soll das Ganze aber auch skalierbar sein. Was also, wenn es ein paar Millionen Punkte werden? Oder noch andere Objektarten dazukommen? Da ist das Cachen doch wohl eher ungünstig (Applikation soll auch Webfarm fähig sein) Soll ich den Algorithmus Punkt-In-Polygon als Stored Procedure anlegen (MySQL Datenbank, sollte aber auch mit anderen DB funktionieren) oder soll ich den befüllten Quadtree als Binärfile ablegen, statt im Speicher zu halten? Oder Stückweise von der DB holen?<br />
Bitte um Hilfe <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<p>Vielen Dank,</p>
<p>Gruß Peter</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/187384/quadtree-implementierung</link><generator>RSS for Node</generator><lastBuildDate>Wed, 01 Jul 2026 13:38:03 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/187384.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 19 Jul 2007 08:26:04 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Quadtree Implementierung on Thu, 19 Jul 2007 08:26:04 GMT]]></title><description><![CDATA[<p>Hallo Leute,</p>
<p>ich möchte eine Quadtree Implementierung in C# <a href="http://ASP.NET" rel="nofollow">ASP.NET</a> machen. Ziel ist Folgendes: Ein Benutzer sieht eine Karte (Alpenraum) und kann darüber ein beliebiges Rechteck aufziehen. In einer Datenbank sind Wasserprobeentnahmestellen mit Koordinaten gespeichert. Alle Entnahmestellen mit Koordinaten innerhalb des aufgezogenen Rectangles sollen angezeigt werden. Also eine Punkt in Polygon Abfrage. Dafür dachte ich mir zuerst, ich lade alle Punkte von der Datenbank in die Applikation und befülle eine Quadtree Struktur. Quadtree wird ausbalanciert und für weitere Abfragen gecacht. Alle Abfragen gehen dadurch auch sehr effizient. Nun soll das Ganze aber auch skalierbar sein. Was also, wenn es ein paar Millionen Punkte werden? Oder noch andere Objektarten dazukommen? Da ist das Cachen doch wohl eher ungünstig (Applikation soll auch Webfarm fähig sein) Soll ich den Algorithmus Punkt-In-Polygon als Stored Procedure anlegen (MySQL Datenbank, sollte aber auch mit anderen DB funktionieren) oder soll ich den befüllten Quadtree als Binärfile ablegen, statt im Speicher zu halten? Oder Stückweise von der DB holen?<br />
Bitte um Hilfe <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<p>Vielen Dank,</p>
<p>Gruß Peter</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1328236</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1328236</guid><dc:creator><![CDATA[PeterMaxx]]></dc:creator><pubDate>Thu, 19 Jul 2007 08:26:04 GMT</pubDate></item><item><title><![CDATA[Reply to Quadtree Implementierung on Thu, 19 Jul 2007 09:30:21 GMT]]></title><description><![CDATA[<p>&lt;bitte ignorieren&gt;<br />
Edit: &quot;ein Text&quot; stand hier eben nur weil da stand 'bitte ein Text eingeben'. Hatte micht vertippt, also ich hab KP zum Topic</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1328305</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1328305</guid><dc:creator><![CDATA[Krux]]></dc:creator><pubDate>Thu, 19 Jul 2007 09:30:21 GMT</pubDate></item><item><title><![CDATA[Reply to Quadtree Implementierung on Thu, 19 Jul 2007 09:28:53 GMT]]></title><description><![CDATA[<p>Was &quot;ein Text&quot;?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1328309</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1328309</guid><dc:creator><![CDATA[PeterMaxx]]></dc:creator><pubDate>Thu, 19 Jul 2007 09:28:53 GMT</pubDate></item><item><title><![CDATA[Reply to Quadtree Implementierung on Thu, 19 Jul 2007 09:33:26 GMT]]></title><description><![CDATA[<p>PeterMaxx schrieb:</p>
<blockquote>
<p>Da ist das Cachen doch wohl eher ungünstig (Applikation soll auch Webfarm fähig sein) Soll ich den Algorithmus Punkt-In-Polygon als Stored Procedure anlegen (MySQL Datenbank, sollte aber auch mit anderen DB funktionieren) oder soll ich den befüllten Quadtree als Binärfile ablegen, statt im Speicher zu halten? Oder Stückweise von der DB holen?<br />
Bitte um Hilfe <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
</blockquote>
<p>Webfarm heißt zugriff übers Internet? Da würde ich mich beschweren, wenn alles auf einmal geladen wird.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1328318</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1328318</guid><dc:creator><![CDATA[geben Sie einen Benutzern]]></dc:creator><pubDate>Thu, 19 Jul 2007 09:33:26 GMT</pubDate></item><item><title><![CDATA[Reply to Quadtree Implementierung on Thu, 19 Jul 2007 09:40:39 GMT]]></title><description><![CDATA[<p>Ja, irgendwie muss ich die Datenstruktur für die schnelle Punkt in Polygon Abfrage aufbauen. Webfarm heisst, dass die Applikation eventuell in einem load balanced Cluster läuft. Gut, müsst halt jeder Host cachen. Server Load würde aber ansteigen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1328326</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1328326</guid><dc:creator><![CDATA[PeterMaxx]]></dc:creator><pubDate>Thu, 19 Jul 2007 09:40:39 GMT</pubDate></item><item><title><![CDATA[Reply to Quadtree Implementierung on Thu, 19 Jul 2007 12:06:40 GMT]]></title><description><![CDATA[<p>Wie sieht's mit ner Runde Preprocessing aus? Also erstmal zu jeder Wasserprobeentnahmestelle die übergeordnete Region/Polygon speichern. Danach einfach (und in Realtime ohne Bäume) dein Select...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1328467</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1328467</guid><dc:creator><![CDATA[Headhunter]]></dc:creator><pubDate>Thu, 19 Jul 2007 12:06:40 GMT</pubDate></item><item><title><![CDATA[Reply to Quadtree Implementierung on Wed, 25 Jul 2007 02:45:20 GMT]]></title><description><![CDATA[<p>Ganz abgesehen davon welches Datenmodell du verwendest wäre es wohl Optimal wenn jeder Server in dem Cluster entweder enorm viel Daten cached, oder gleich eine read-only Kopie der ganzen Datenbank hat (z.B. via Log-Shipping).</p>
<p>Ansonsten... mit welcher Abfrage-Häufigkeit rechnest du denn, und wie gross ist das zu erwartende Datenset (also wieviele Wasserdingsbums-Punkte)?<br />
Kann leicht sein dass sich ein SQL Server selbst bei einem Table-Scan pro Abfrage (also ohne jeglichen Spatialen Index) furchtbar langweilt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1331949</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1331949</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Wed, 25 Jul 2007 02:45:20 GMT</pubDate></item></channel></rss>