uepselon: Wo liegen die Daten?

0 70

Wo liegen die Daten?

uepselon
  • zu diesem forum
  1. 0
    Stefan Muenz
    1. 0
      uepselon
      1. 0
        Michael Schröpl
        1. 0
          uepselon
          1. 0
            Thomas J.S.
            1. 0
              Michael Schröpl
            2. 0
              uepselon
              1. 0
                Michael Schröpl
                1. 0
                  uepselon
                  1. 0
                    Andreas Korthaus
                    1. 0
                      uepselon
            3. 0
              Andreas Korthaus
              1. 0
                Wilhelm
                1. 0
                  Andreas Korthaus
                  1. 0
                    Wilhelm
                  2. 0
                    Michael Schröpl
              2. 0
                Thomas J.S.
                1. 0
                  Andreas Korthaus
                  1. 0
                    Thomas J.S.
                    1. 0
                      Andreas Korthaus
                      1. 0
                        Thomas J.S.
                        1. 0
                          Andreas Korthaus
                      2. 0
                        Michael Schröpl
                        1. 0
                          Daniela Koller
                          1. 0
                            Michael Schröpl
                            1. 0
                              Andreas Korthaus
                              1. 0
                                Daniela Koller
                                1. 0
                                  Andreas Korthaus
                                  1. 0
                                    Daniela Koller
                                    1. 0
                                      Andreas Korthaus
                                      1. 0

                                        Forums-Suche Nachtrag: Teilstrings finden?

                                        Andreas Korthaus
                                        1. 0
                                          Daniela Koller
                                          1. 0
                                            Michael Schröpl
                                            1. 0
                                              Andreas Korthaus
                                      2. 0
                                        Daniela Koller
                                        1. 0
                                          Michael Schröpl
                                          1. 0
                                            Andreas Korthaus
                                            1. 0
                                              Michael Schröpl
                                              1. 0
                                                Andreas Korthaus
                                                1. 0
                                                  Andreas Korthaus
                                                2. 0
                                                  Michael Schröpl
                                              2. 0

                                                Archiv-Suche - wo ist das Archiv des Jahres 1998?

                                                Christian Seiler
                                                1. 0
                                                  Michael Schröpl
                                                  1. 0
                                                    Michael Schröpl
                                                    1. 0
                                                      Andreas Korthaus
                                    2. 0
                                      Michael Schröpl
                    2. 0
                      uepselon
                      1. 0
                        Thomas J.S.
                        1. 0
                          uepselon
                          1. 0
                            Thomas J.S.
                            1. 0
                              uepselon
                  2. 0
                    Michael Schröpl
                2. 0
                  Christian Seiler
                  1. 0
                    Thomas J.S.
                    1. 0
                      Christian Seiler
          2. 0
            Sven Rautenberg
          3. 0
            Michael Schröpl
            1. 0
              uepselon
              1. 0
                Michael Schröpl
                1. 0
                  Thomas J.S.
      2. 0
        Zapp
        1. 0
          uepselon
          1. 0
            uepselon
            1. 0
              Zapp
              1. 0
                uepselon
                1. 0
                  Zapp
      3. 0
        Stefan Muenz
  2. 0
    Achim Schrepfer
    1. 0
      uepselon

Hallo,

kann man von aussen auf die "Roh"-Daten der aktuellen Postings zugreifen? Sprich sind diese in einer einzelnen XML Datei gesichert oder in einer DB?

Gruß,
ueps

  1. Hallo Uepselon,

    kann man von aussen auf die "Roh"-Daten der aktuellen Postings zugreifen? Sprich sind diese in einer einzelnen XML Datei gesichert oder in einer DB?

    Pro Thread eine XML-Datei. Direktzugriff gibts keinen.
    Hier ein kleines Beispiel, wie's aussieht (dieser Thread, mit dem Stand, der nur dein Ausgangsposting enthielt - deine IP-Adresse hab ich durch 0.0.0.0 ersetzt, und ausserdem hab ichs etwas formatiert, damit man es besser lesen kann ;-)

    <?xml version="1.0"?>
    <!DOCTYPE Forum SYSTEM "http://forum.de.selfhtml.org/forum.dtd">
    <Forum>
     <Thread id="t34788">
     <Message invisible="0" id="m189443" ip="0.0.0.0">
      <Header>
       <Author>
        <Name>uepselon</Name>
        <Email>info@uepselon.com</Email>
        <HomepageUrl>http://www.uepselon.com</HomepageUrl>
        <ImageUrl/>
       </Author>
      <Category>ZU DIESEM FORUM</Category>
      <Subject>Wo liegen die Daten?</Subject>
      <Date longSec="1042467358"/>
     </Header>
     </Message>
    </Thread>
    <ContentList>
     <MessageContent mid="m189443">
      <![CDATA[Hallo,<br /><br />kann man von aussen auf die "Roh"-Daten der aktuellen Postings zugreifen? Sprich sind diese in einer einzelnen XML Datei gesichert oder in einer DB?<br /><br />Gruß,<br />ueps]]>
     </MessageContent>
    </ContentList>
    </Forum>

    viele Gruesse
      Stefan Muenz

    1. Hallo Stefan,

      Pro Thread eine XML-Datei. Direktzugriff gibts keinen.

      Auch keinen lese Zugriff? Grundsätzlich wäre das doch nicht schlimm, von der IP Adresse abgesehen. Ich wollte nämlich mal versuchen mir ein eigenes kleines Layout zu basteln, da die User - CSS Möglichkeiten doch etwas beschränkt sind.

      Hier ein kleines Beispiel, wie's aussieht (dieser Thread, mit dem Stand, der nur dein Ausgangsposting enthielt - deine IP-Adresse hab ich durch 0.0.0.0 ersetzt, und ausserdem hab ichs etwas formatiert, damit man es besser lesen kann ;-)

      Wäre es nicht schneller alle Daten, die aktuell sind, in einer XML Datei zu sichern. Ich kann mir vortsellen das es länger dauert jede Datei einzeln zu laden um den Index anzuzeigen, als ein gesamt Datei.
      Bei einer maximalen Forumsgröße von 250 KB, ist das IMHO unproblematisch. Ich habe selbst auch schon ein etwas einfacheres Forum mit einer XML Datei erstellt, die sogar noch bei über 500 KB schnell und sauber geladen wurde.

      Gruß,
      ueps

      1. Hi uepselon,

        Auch keinen lese Zugriff? Grundsätzlich wäre das doch nicht schlimm, von der IP Adresse abgesehen.

        eben - aber die alleine reicht schon.
        Die XML-Struktur ist für die interne Repräsentation gedacht - nicht für die externe.

        Wäre es nicht schneller alle Daten, die aktuell sind, in einer XML Datei zu sichern.

        Schneller für wen?

        Ich kann mir vortsellen das es länger dauert jede Datei einzeln zu laden um den Index anzuzeigen, als ein gesamt Datei.

        Die XML-Dateien werden nicht ständig gelesen - ihren (bereits analysierten) Inhalt hält ein daemon permanent im RAM. Und aus diesen Daten wird die Hauptdatei dynamisch generiert (inklusive diverser Ausblendungen im User-Style-Modus).

        Viele Grüße
              Michael

        --
        T'Pol: I apologize if I acted inappropriately.
        V'Lar: Not at all. In fact, your bluntness made me reconsider some of my positions. Much as it has now.
        1. Hallo,

          eben - aber die alleine reicht schon.

          So problematisch finde ich das nicht. Wenn ich in einem Chat bin, oder in einem anderen Forum, ist die IP oft auch für jedermann lesbar. Zum Missbrauch würde es denke ich nicht verleiten.

          Die XML-Struktur ist für die interne Repräsentation gedacht - nicht für die externe.

          Ja, das hab ich jetzt begriffen. Aber eine Seite mit Rohdaten wäre trotzdem nicht schlecht.

          Wäre es nicht schneller alle Daten, die aktuell sind, in einer XML Datei zu sichern.

          Schneller für wen?

          Für den Anwender. Ich kann mir vorstellen das es beim laden der Seite, weniger zu aufhängern etc. kommt wenn _eine_ Datei gelesen wird und daraus der Index entsteht.

          Die XML-Dateien werden nicht ständig gelesen - ihren (bereits analysierten) Inhalt hält ein daemon permanent im RAM. Und aus diesen Daten wird die Hauptdatei dynamisch generiert (inklusive diverser Ausblendungen im User-Style-Modus).

          Wenn ich forum.de.selfhtml.org aufrufe, müssen ja fast alle aktuell relevanten xml Dateien, neu überprüft werden, oder nicht?
          Oder werden erst dann gelsen wenn sich eine Änderung an ihr ergeben hat?

          Gruß,
          ueps

          1. Hallo uepselon,

            Aber eine Seite mit Rohdaten wäre trotzdem nicht schlecht.

            Nichts für ungut, aber "nein" heisst nunmal "nein".
            Außerdem wozu?
            Du könntest die XML-Dateien des Forums nie so flexibel mit CSS Formatieren wie du es jetzt im Opera oder Mozilla mit User-CSS und HTML machen kannst (es gibt im Archiv bereits einen Thread wo einige Forumler auch schon fertige CSS-Dateien gepostet haben)
            Beachte mal bitte die Trennung von Inhalt einer Posting vom "Header" einer Posting in der Beispiel-Datei. Wie möchtest du per CSS diese bei einem Thrad z.B. auch nur mit 10 Postings formatieren? (Alles postionieren in der Seite? Na viel Spaß!)

            Grüße
            Thomas

            1. Hi Thomas,

              Nichts für ungut, aber "nein" heisst nunmal "nein".

              naja, es braucht ja nicht verboten zu sein, über einen potentiellen zukünftigen Feature-Request wenigstens mal kurz nachzudenken.

              Außerdem wozu?

              Das eben würde das Ergebnis des entsprechenden Denkprozesses sein. ;-)

              Viele Grüße
                    Michael

              --
              T'Pol: I apologize if I acted inappropriately.
              V'Lar: Not at all. In fact, your bluntness made me reconsider some of my positions. Much as it has now.
            2. Hallo,

              Aber eine Seite mit Rohdaten wäre trotzdem nicht schlecht.

              Nichts für ungut, aber "nein" heisst nunmal "nein".
              Außerdem wozu?
              Du könntest die XML-Dateien des Forums nie so flexibel mit CSS Formatieren wie du es jetzt im Opera oder Mozilla mit User-CSS und HTML machen kannst (es gibt im Archiv bereits einen Thread wo einige Forumler auch schon fertige CSS-Dateien gepostet haben)

              Ich will ja auch nicht die XML Daten direkt mit CSS formatieren.
              Ich will vielmehr über ein eigens CGI Script die XML Daten lesen und meinen Wünschen entsprechend parsen. So dass z.B. eigene Threads ganz oben im Forum stehen etc.

              Gruß,
              ueps

              1. Hi uepselon,

                Ich will vielmehr über ein eigens CGI Script die XML Daten lesen und meinen Wünschen entsprechend parsen. So dass z.B. eigene Threads ganz oben im Forum stehen etc.

                das kannst Du aber auch mit der HTML-Version tun.

                Da XML in diesem Forum sehr systematisch in HTML umgesetzt wird, ist das Parsen nicht so furchtbar schwer - ich habe mir so etwas Ähnliches selbst mal gebaut, für die vorherige Forums-Version.
                Seit der Benutzeransicht des neuen Forums nutze meinen 'Eigenbau' aber nicht mehr - die wenigen hier noch fehlenden Features kann ich verschmerzen.

                Und die HTML-Datei ist auch nur unwesentlich umfangreicher als eine entsprechende XML-Datei.
                In dieser Hinsicht wäre es viel entscheidender, wenn Dein Client in der Lage wäre, gzip-komprimierte HTTP-Kommunikation zu unterstützen - _das_ macht nämlich bei der Hauptdatei Faktor 10 aus.

                Viele Grüße
                      Michael

                --
                T'Pol: I apologize if I acted inappropriately.
                V'Lar: Not at all. In fact, your bluntness made me reconsider some of my positions. Much as it has now.
                1. Hallo,

                  Ich will vielmehr über ein eigens CGI Script die XML Daten lesen und meinen Wünschen entsprechend parsen. So dass z.B. eigene Threads ganz oben im Forum stehen etc.

                  das kannst Du aber auch mit der HTML-Version tun.

                  :-) Das hab ich heute mal versucht, mein kleiner Parser den ich in PHP geschreiben habe, pflückt sich die Kopfdaten aus der Seite (Titel, Name, Thema etc.). Ich hab schon ein bissl damit rumgespielt, ein Board aus dem Forum gemacht ;-), die Daten als XML File ausgegeben etc. Hat alles super geklappt, nur bekomme ich irgendwie keine gescheite Verbindung mit fopen() hin. Ich hab daher die Forumsdatei im Browser geöffnet und gespeichert um mal am Parser arbeiten zu können. Doch wenn sich das nicht lösen läßt, war die Arbeit für die Katz.

                  In dieser Hinsicht wäre es viel entscheidender, wenn Dein Client in der Lage wäre, gzip-komprimierte HTTP-Kommunikation zu unterstützen - _das_ macht nämlich bei der Hauptdatei Faktor 10 aus.

                  Wird die Seite generell komprimiert ausgeliefert? Kann es sein das ich daher, mit fopen() in PHP Probleme bekomme, wenn ich die Seite direkt lade?

                  Gruß,
                  ueps

                  1. Hallo!

                    ...ein Board aus dem Forum gemacht ;-)

                    schäm dich was!

                    die Daten als XML File ausgegeben etc. Hat alles super geklappt, nur bekomme ich irgendwie keine gescheite Verbindung mit fopen() hin.

                    welche PHP-Version verwendest Du? Das mit fopen() funktioniert nur mit den neueren Versionen. Ich würde aber sowieso unbedingt fsockopen() verwenden, dort kannst Du dann auch einen Header mitsenden das Du die gzip-Verion bekommst und das dann mit entsprechender PHP-Funktion entpacken. Spart Dir und dem Forum 90% Traffic und geht erheblich schneller.

                    In dieser Hinsicht wäre es viel entscheidender, wenn Dein Client in der Lage wäre, gzip-komprimierte HTTP-Kommunikation zu unterstützen - _das_ macht nämlich bei der Hauptdatei Faktor 10 aus.

                    Wird die Seite generell komprimiert ausgeliefert?

                    nein, da das nicht alle Browser verstehen.

                    Kann es sein das ich daher, mit fopen() in PHP Probleme bekomme, wenn ich die Seite direkt lade?

                    nein.

                    Grüße
                    Andreas

                    1. Hallo,

                      ...ein Board aus dem Forum gemacht ;-)
                      schäm dich was!

                      *g* ich weiß, ich habe die heiligen Hallen geschändet, ich konnte es einfach nicht lassen.

                      welche PHP-Version verwendest Du? Das mit fopen() funktioniert nur mit den neueren Versionen. Ich würde aber sowieso unbedingt fsockopen() verwenden

                      4.2.2, ist eigentlich relativ neu oder? Es kommt immer folgende Meldung: Warning fopen(URL...) - No Errors, es geht aber trotzdem nichts.

                      Gruß,
                      ueps

            3. Hallo!

              Nichts für ungut, aber "nein" heisst nunmal "nein".
              Außerdem wozu?

              Ich könnte mir vorstellen das man alles so läßt wie es ist, außer das man die IPs in speziellen logs(postID:IP) speichert und aus der xml-Datei rausläßt. Dann könnte man die XML-Datei innerhalb des document-root ablegen, so das Leute wenn sie wollen auf diese zugreifen könnten, und damit machen was sie wollen. Wenn die mit mod_gzip über den Apachen ausgeliefert werde ist das alles doch kein großes Problem, und vielleicht wird das Forum so entlasten, einfach dadurch das das Parsen der xml-Dateien jetzt manche User selbst übernehmen.

              Oder ein anderer Ansatz, man liefert nicht nur eine HTML/CSS-Version und eine XHTML/CSS-Version, sondern auch ein XML/XSLT Version aus - damit könnten aktuelle Browser auch klarkommen, der Server spart sich das Parsen, und die die wollen können mit den XML-Daten veranstalten was sie wollen. Diese Version fände ich glaube ich am besten.

              Aber eigentlich ist es mir egal und es könnte alles bleiben wie es ist, für mich wäre es lediglich eine interessante "Spielwiese" ;-)

              Viele Grüße
              Andreas

              1. Moin

                Dann könnte man die XML-Datei innerhalb des document-root ablegen, so das Leute wenn sie wollen auf diese zugreifen könnten, und damit machen was sie wollen.

                Interessant. ;-)

                Ab sofort werden im Web alle Datenbanken freigegeben und jeder Pflupftl darf dort rumwuehlen und machen was er will.

                Oder ein anderer Ansatz, man liefert nicht nur eine HTML/CSS-Version und eine XHTML/CSS-Version, sondern auch ein XML/XSLT Version aus - damit könnten aktuelle Browser auch klarkommen, der Server spart sich das Parsen, und die die wollen können mit den XML-Daten veranstalten was sie wollen. Diese Version fände ich glaube ich am besten.

                Seid Ihr eigentlich mit gar nichts mehr zufrieden? Sind noch nicht genuegend Features implementiert?

                Aber eigentlich ist es mir egal und es könnte alles bleiben wie es ist, für mich wäre es lediglich eine interessante "Spielwiese" ;-)

                Es bleibt Dir doch umbenommen eine "eigene Spielwiese" zu entwerfen.

                Auch ;-)
                und
                :)

                Gruesse
                Wilhelm

                1. Hallo!

                  Interessant. ;-)

                  Ab sofort werden im Web alle Datenbanken freigegeben und jeder Pflupftl darf dort rumwuehlen und machen was er will.

                  solange jeder Pflupftl doch nur lesend zugreifen kann - was ist das Problem? Die Daten stehen sowieso jedem zur Verfügung. Browser sind doch heut in der Lage diese Daten direkt zu interpretieren, also was ist daran so schlecht?

                  Seid Ihr eigentlich mit gar nichts mehr zufrieden? Sind noch nicht genuegend Features implementiert?

                  Wie schon oben geschreiben - das war ein kleiner lustiger Vorschlag, Eurer Reaktion nach vermutlich fernab jeglicher Realisierbarkeit. Ich wollte doch diese Idee nur mal in den Raum werfen.

                  Aber eigentlich ist es mir egal und es könnte alles bleiben wie es ist, für mich wäre es lediglich eine interessante "Spielwiese" ;-)

                  Es bleibt Dir doch umbenommen eine "eigene Spielwiese" zu entwerfen.

                  ich weiß, nur würde ich es hier zu keiner sinnvollen Anwendung bringen ;-)

                  |Grüße
                  Andreas

                  1. Moin

                    solange jeder Pflupftl doch nur lesend zugreifen kann - was ist das Problem? Die Daten stehen sowieso jedem zur Verfügung. Browser sind doch heut in der Lage diese Daten direkt zu interpretieren, also was ist daran so schlecht?

                    Naja, wenn jeder per "eigener Spielwiese" am Datenbestand fummelt, wird wohl ein nicht unerheblicher Traffic auf dem Server generiert. Irgendwie muessen die Daten ja ueber die Leitung, oder?

                    Eurer Reaktion nach vermutlich fernab jeglicher Realisierbarkeit.

                    "Eurer" impliziert jetzt irgendeine Kompetenz meinerseits, dem ist nicht so. Ich habe nix damit zu tun. Meine Erfahrungen hier zeigen mir jedoch, dass der kleine Finger ganz schnell abgefieselt ist und die Leute gleich eine ganze Hand wollen. Heute nur lesen, morgen updaten, absaugen, uebermorgen weiss der Himmel was.

                    :)

                    Gruss
                    Wilhelm

                  2. Hi Andreas,

                    solange jeder Pflupftl doch nur lesend zugreifen kann - was ist das Problem? Die Daten stehen sowieso jedem zur Verfügung.

                    nur diejenigen, die von der Ausgaberoutine als unbedenklich betrachtet werden - also beispielsweise eben nicht die IP-Adresse.

                    Viele Grüße
                          Michael

                    --
                    T'Pol: I apologize if I acted inappropriately.
                    V'Lar: Not at all. In fact, your bluntness made me reconsider some of my positions. Much as it has now.
              2. Hallo Andreas,

                Nichts für ungut, aber "nein" heisst nunmal "nein".
                Außerdem wozu?
                Ich könnte mir vorstellen das man alles so läßt wie es ist, außer das man die IPs in speziellen logs(postID:IP) speichert und aus der xml-Datei rausläßt.

                Das heisst doppelte Datenhaltung für uns und zusätzliche Softwareprogramierung um die IPs rauszufiltern.

                »»Dann könnte man die XML-Datei innerhalb des document-root ablegen, so das Leute wenn sie wollen auf diese zugreifen könnten, und damit machen was sie wollen. »»

                Oder ein anderer Ansatz, man liefert nicht nur eine HTML/CSS-Version und eine XHTML/CSS-Version, sondern auch ein XML/XSLT Version aus - damit könnten aktuelle Browser auch klarkommen, der Server spart sich das Parsen, und die die wollen können mit den XML-Daten veranstalten was sie wollen. Diese Version fände ich glaube ich am besten.

                1. dass der Srver das Parsen spart ist illusorisch, denn es werden nicht plötzlich alle das Forum im IE und in XML haben wollen, also eine HTML-Transformation muss nach wie vor stattfinden.
                2. wir haben dann nur noch mehr Traffic und belastung für den Server:
                  also wir sind bei:
                • doppelte Datenhaltung
                • zusätzliche Softwareprogrammierung
                • mehr Traffic
                • erstellung von diversen XSL-Sheets, denn da kommt ja wieder wer, der fragt, "warum man das sich selber proggen muss?".
                • und ich bin sicher 'man' fällt noch einiges mehr ein.

                Sorry, aber bei solchen unüberlegten Forderungen, kann ich nur noch eines Fragen: was zahlt ihr dafür im Monat??
                Dass hier alles, aber wirklich alles! auf freiwillige Arbeit in der Freizeit beruht schein keinen von 'euch' besonders zu interessieren.

                Aber eigentlich ist es mir egal

                Gott sei Dank! ;-)

                Schöne Grüße
                Thomas

                1. Hallo!

                  Das heisst doppelte Datenhaltung für uns und zusätzliche Softwareprogramierung um die IPs rauszufiltern.

                  Wieso? Man kann diese XML-Daten grundsätzlich im doc-root aufbewahren.

                  1. dass der Srver das Parsen spart ist illusorisch, denn es werden nicht plötzlich alle das Forum im IE und in XML haben wollen, also eine HTML-Transformation muss nach wie vor stattfinden.

                  Aber nur für die die nicht XML verwenden. Also weniger als vorher, oder?(wenn auch so gut wie kaum merklich)

                  1. wir haben dann nur noch mehr Traffic und belastung für den Server:

                  Wieso das??? Ich will ja _entweder_  das ein _oder_ das andere.

                  also wir sind bei:

                  • doppelte Datenhaltung

                  nicht unbedingt

                  • zusätzliche Softwareprogrammierung

                  Natürlich

                  • mehr Traffic

                  keine Ahnung wieso

                  • erstellung von diversen XSL-Sheets, denn da kommt ja wieder wer, der fragt, "warum man das sich selber proggen muss?".

                  Eins reicht als Standard. Genau wie CSS, das macht Ihr doch auch nicht für jeden extra oder?
                  Und auch das könnte man sich sparen wenn man XML nicht als standard-Einstellung hinterlegt.

                  • und ich bin sicher 'man' fällt noch einiges mehr ein.

                  dann laß mal hören ;-)

                  Sorry, aber bei solchen unüberlegten Forderungen, kann ich nur noch eines Fragen: was zahlt ihr dafür im Monat??

                  Hallo? Kennst Du den Unterschied zw. einer Forderung und einem Vorschlag? Ich habe das nur gechreiben weil ich es interessant fände, mir ist klar das das programmiert werden muß und ich weiß was Ihr da alles schon leistet, daher würde es mir im Traum nicht einfallen etwas von Euch zu fordedrn! Aber es ist doch interessant mal über sowas zu diskutieren, das selfforum und dessen Technik wurde mir irgendwann mal als "Spielwiese" erklärt, um halt Dinge auszuprobieren... und da fand ich das eine XML-Version gut da reinpasst. Wie gesagt - es war ein VORSCHLAG!

                  Dass hier alles, aber wirklich alles! auf freiwillige Arbeit in der Freizeit beruht schein keinen von 'euch' besonders zu interessieren.

                  Jajajaja, das weiß ich auch zu schätzen und bin Euch wahnsinnig dankbar dafür, in diesem Forum habe ich einen sehr großen Teil meines leider noch etwas spärlichen Wissens erworben!

                  Aber eigentlich ist es mir egal
                  Gott sei Dank! ;-)

                  ;-)

                  Viele Grüße
                  Andreas

                  1. Hallo Andreas,

                    Wieso? Man kann diese XML-Daten grundsätzlich im doc-root aufbewahren.

                    Ja, aber eben nur die ohne IP.
                    Die richtigen, müssten wir nach wie vor wo anders speichern.

                    1. dass der Srver das Parsen spart ist illusorisch, denn es werden nicht plötzlich alle das Forum im IE und in XML haben wollen, also eine HTML-Transformation muss nach wie vor stattfinden.
                      Aber nur für die die nicht XML verwenden. Also weniger als vorher, oder?(wenn auch so gut wie kaum merklich)

                    Nein. Das "Parsen" passiert so oder so, und weil die aktuellen XML-Dateien im RAM sind ist es (aus "Parsersicht") wurscht ob nur 1 Mensch oder 100-e die HTML-Version abrufen, denn sie muss eben erstellt werden.

                    1. wir haben dann nur noch mehr Traffic und belastung für den Server:
                      Wieso das??? Ich will ja _entweder_  das ein _oder_ das andere.

                    Weil es nunmal mehr Serverlast verursacht, wenn man doppelgleisig fährt.

                    also wir sind bei:

                    • doppelte Datenhaltung
                      nicht unbedingt

                    Stimmt, nicht unbeding, aber 100%.

                    • zusätzliche Softwareprogrammierung
                      Natürlich
                    • mehr Traffic
                      keine Ahnung wieso

                    Siehe oben.

                    • und ich bin sicher 'man' fällt noch einiges mehr ein.
                      dann laß mal hören ;-)

                    Netter Versuch. ;-)

                    Sorry, aber bei solchen unüberlegten Forderungen, kann ich nur noch eines Fragen: was zahlt ihr dafür im Monat??
                    Hallo? Kennst Du den Unterschied zw. einer Forderung und einem Vorschlag?

                    Hier in diesem Forum? Nach fast 4 Jahren? Nein, kenne ich nicht.

                    Aber es ist doch interessant mal über sowas zu diskutieren, das selfforum und dessen Technik wurde mir irgendwann mal als "Spielwiese" erklärt, um halt Dinge auszuprobieren... und da fand ich das eine XML-Version gut da reinpasst. Wie gesagt - es war ein VORSCHLAG!

                    Das mit der "eine Art Spielwiese" stimmt sogar, und diskutiert werden kann es auch, aber wir sollten dann eben einen Unterschied zwischen Diskussion über Möglichkeiten und einer Forderung machen.
                    Ich darf die Ausgangsposting zitieren:
                    "kann man von aussen auf die "Roh"-Daten der aktuellen Postings zugreifen? Sprich sind diese in einer einzelnen XML Datei gesichert oder in einer DB?"

                    Erkennst du darin einen Vorschlag?

                    Grüße
                    Thomas

                    1. Hallo Thomas!

                      Ja, aber eben nur die ohne IP.
                      Die richtigen, müssten wir nach wie vor wo anders speichern.

                      Ich weiß das Ihr das eh nicht machen wollt/werdet, aber mal rein hypothetisch:

                      Ich schreibe den Dämon um, so dass der die Daten so wie jetzt nur ohne IP speichert, und zwar im doc-root. Gleichzeitig, wenn Daten geschreiben werden, dann generiert man dabei halt auch direkt eien IP-log Datei mit
                      postID1:IP1
                      postID2:IP3
                      postID3:IP6
                      ...

                      Das wäre dann eine kleine Änderung in der Datenstruktur der XML-Datein, und eine etwas größere im Dämon.

                      Nein. Das "Parsen" passiert so oder so, und weil die aktuellen XML-Dateien im RAM sind ist es (aus "Parsersicht") wurscht ob nur 1 Mensch oder 100-e die HTML-Version abrufen, denn sie muss eben erstellt werden.

                      Ach so ;-)
                      Das heißt alle Threads/Postings im Aktuellen Forum befinden sich komplett im RAM??? Ich dachte nur die Hauptdatei! Dan ist es natürlich was anderes und ich nehme es zurück.

                      Hallo? Kennst Du den Unterschied zw. einer Forderung und einem Vorschlag?
                      Hier in diesem Forum? Nach fast 4 Jahren? Nein, kenne ich nicht.

                      Dann guck mal im Duden nach ;-)
                      Im Ernst, da ist IMHO serh wohl ein Unterschied, udn das was ich geschreiben habe war zumindest als Vorschlag gemeint, sorry wenn es anders rübergekommen ist. Und außerdem hat sich dieser Vorschlag ja auch bereits erledigt ;-)

                      Das mit der "eine Art Spielwiese" stimmt sogar, und diskutiert werden kann es auch, aber wir sollten dann eben einen

                      Unterschied zwischen

                      Diskussion über Möglichkeiten

                      entspricht im weitesten Sinne meiner Definition eiens Vorschlages

                      und einer Forderung machen.

                      Ich darf die Ausgangsposting zitieren:
                      "kann man von aussen auf die "Roh"-Daten der aktuellen Postings zugreifen? Sprich sind diese in einer einzelnen XML Datei gesichert oder in einer DB?"

                      Erkennst du darin einen Vorschlag?

                      Nein das ist eine Frage ;-)

                      Aber ich verstehe Dich schon. Ich diskutiere gerne über solche Dinge, kann das leider noch nicht so kompetent wie andere, aber das wird schon früher oder später, wenn ich genügend Begründung gegen meine utopischen Vorschläge gelesen und verstanden habe ;-)

                      Jedenfalls sind Vorschläge das einzige was ich hier einbringen kann, wenn ich hier was in C programmieren sollte, dann gute Nacht, und auf PHP steht Ihr ja alle nicht so besonders ;-)

                      Grüße
                      Andreas

                      1. Hallo Andreas,

                        Ja, aber eben nur die ohne IP.
                        Die richtigen, müssten wir nach wie vor wo anders speichern.
                        Ich weiß das Ihr das eh nicht machen wollt/werdet, aber mal rein hypothetisch:

                        Ich schreibe den Dämon um, so dass der die Daten so wie jetzt nur ohne IP speichert, und zwar im doc-root. Gleichzeitig, wenn Daten geschreiben werden, dann generiert man dabei halt auch direkt eien IP-log Datei mit
                        postID1:IP1
                        postID2:IP3
                        postID3:IP6
                        ...

                        So eine Art der Datenhaltung ist wirklich nicht gewollt, nicht zuletzt weil die ja auch doch ziemlich umständlich ist und sie auch letzlich die Integrität der Daten beeinflusst.

                        und auf PHP steht Ihr ja alle nicht so besonders ;-)

                        Dass wir nicht auf PHP stehen (wer hat übrigens das erzählt?), heisst aber nicht das wir es nicht einsetzten, wenn damit sinvolle Lösungen erreicht werden könnten. ;-)

                        Grüße
                        Thomas

                        1. Hallo!

                          und auf PHP steht Ihr ja alle nicht so besonders ;-)

                          Dass wir nicht auf PHP stehen (wer hat übrigens das erzählt?), heisst aber nicht das wir es nicht einsetzten, wenn damit sinvolle Lösungen erreicht werden könnten. ;-)

                          Wenn ich da mal was helfen kann bin ich gerne dabei. Ich habe mich ja schonmal "unaufgefordert" ein wenig mit einer Such-Funktion für das Archiv beschäftigt, aber irgendwann habe ich dann auch eingesehen das mir um sowas performant programmieren zu können noch ein paar elementare Kenntnisse fehlen, bin halt kein Informatiker. Wobei ich dabei ne ganze Menge gelernt habe.

                          Viele Grüße
                          Andreas

                      2. Hi Andreas,

                        Jedenfalls sind Vorschläge das einzige was ich hier einbringen kann, wenn ich hier was in C programmieren sollte, dann gute Nacht, und auf PHP steht Ihr ja alle nicht so besonders ;-)

                        Soweit ich die Dokumentation des Forums in Erinnerung habe, ist nur der Kernel-daemon in C, die Client-CGI-Skripte aber in Perl.
                        Das sind allerdings schon zwei Programmiersprachen, die für die Pflege der Forum-Software beherrscht werden müssen - mit Gewalt auch noch eine dritte einzuführen, die nichts besser kann als die bereits verwendeten, macht irgendwie keinen Sinn, finde ich.

                        Viele Grüße
                              Michael

                        --
                        T'Pol: I apologize if I acted inappropriately.
                        V'Lar: Not at all. In fact, your bluntness made me reconsider some of my positions. Much as it has now.
                        1. Hi Michael

                          Soweit ich die Dokumentation des Forums in Erinnerung habe, ist nur der Kernel-daemon in C, die Client-CGI-Skripte aber in Perl.
                          Das sind allerdings schon zwei Programmiersprachen, die für die Pflege der Forum-Software beherrscht werden müssen - mit Gewalt auch noch eine dritte einzuführen, die nichts besser kann als die bereits verwendeten, macht irgendwie keinen Sinn, finde ich.

                          Die Clients sind auch in C, nur die Benutzereinstellungen sind in Perl.

                          Gruss Daniela

                          --
                          Nein, wir frieren unsere Hühner nicht auf Gletschern fest.
                          1. Hallo Daniela,

                            Die Clients sind auch in C, nur die Benutzereinstellungen sind in Perl.

                            ah - danke schön für die Klarstellung.

                            Ist auch naheliegend: Alles, was performance-relevant ist, in C (ohne Interpreter-Aufruf), während die Benutzereinstellungen ja eher selten aufgerufen werden und dann auf leichtere Wartbarkeit ausgelegt sind.

                            Viele Grüße
                                  Michael

                            --
                            T'Pol: I apologize if I acted inappropriately.
                            V'Lar: Not at all. In fact, your bluntness made me reconsider some of my positions. Much as it has now.
                            1. Hallo zusamen!

                              Ist auch naheliegend: Alles, was performance-relevant ist, in C (ohne Interpreter-Aufruf), während die Benutzereinstellungen ja eher selten aufgerufen werden und dann auf leichtere Wartbarkeit ausgelegt sind.

                              Wird die Suche dann auch in C geschreiben? Wobei - vermutlich passiert eh das meiste in der 4GL, da bringt C am Ende vermutlich nicht so viel, oder? Wobei es schon gut wäre wenn das Suchscript ebenfalls im RAM gehalten werden könnte, oder?

                              Grüße
                              Andreas

                              1. Hi Andreas

                                Ist auch naheliegend: Alles, was performance-relevant ist, in C (ohne Interpreter-Aufruf), während die Benutzereinstellungen ja eher selten aufgerufen werden und dann auf leichtere Wartbarkeit ausgelegt sind.
                                Wird die Suche dann auch in C geschreiben? Wobei - vermutlich passiert eh das meiste in der 4GL, da bringt C am Ende vermutlich nicht so viel, oder? Wobei es schon gut wäre wenn das Suchscript ebenfalls im RAM gehalten werden könnte, oder?

                                Die Suche wird in C geschrieben. Nicht weil sie im Speicher gehalten wird dann, es gibt
                                imho keinen Grund für einen Suchserver (die Suchergebnisse sind sehr schnell nicht
                                mehr gültig, es ist ziemlich unwahrscheinlich das in der kurzen Zeit so oft
                                genau das selbe gesucht wird, und Suchergebnisse werden auf einer Seite dargestellt).

                                Die Gründe sind sehr einfach, Suche, altes Forum und Archivviewer werden benutzt für DOS-Attacken.
                                Die Scripte haben zwar alle eine Bremse drin damit sie sich bei zuviel Traffic gleich wieder beenden,
                                aber bei Perl muss der Interpreter erst gestartet werden... Das hat gereicht um den Load im
                                höchsten Fall schon auf 800 zu bringen (2-4 ist gerade noch vertretbar, mehr wird heikel).

                                Zudem kann so compiliertes SQL genommen werden (kein MySQL da es das nicht beherrscht),
                                nach meinen Erfahrungen bringt das einen Geschwindigkeitszuwachs im Bereich von 10er
                                Potenzen bei einfachere Abfragen. Bei grösseren Abfragen entsprechend weniger da der Anteil
                                vom interpretieren an der gesamten Zeit gemessen kleiner wird.

                                Gruss Daniela

                                --
                                Nein, wir frieren unsere Hühner nicht auf Gletschern fest.
                                1. Hallo!

                                  Die Suche wird in C geschrieben. Nicht weil sie im Speicher gehalten wird dann, es gibt
                                  imho keinen Grund für einen Suchserver (die Suchergebnisse sind sehr schnell nicht
                                  mehr gültig, es ist ziemlich unwahrscheinlich das in der kurzen Zeit so oft
                                  genau das selbe gesucht wird, und Suchergebnisse werden auf einer Seite dargestellt).

                                  Das habe ich bei meinen Versuchen auch gelernt, das caching der möglichen Ergebnisse bringt nur in selteneren Fällen was.

                                  Die Gründe sind sehr einfach, Suche, altes Forum und Archivviewer werden benutzt für DOS-Attacken.

                                  Wieso ist das archiv nicht statisch? Es würde doch reichen eifnach die html-Dateien im doc-root abzulegen, oder?

                                  aber bei Perl muss der Interpreter erst gestartet werden... Das hat gereicht um den Load im
                                  höchsten Fall schon auf 800 zu bringen (2-4 ist gerade noch vertretbar, mehr wird heikel).

                                  Ist perl als Apache-Modul installiert?

                                  Zudem kann so compiliertes SQL genommen werden

                                  au ja, das ist bestimmt sehr gut,

                                  (kein MySQL da es das nicht beherrscht),

                                  kann das postgresql?

                                  nach meinen Erfahrungen bringt das einen Geschwindigkeitszuwachs im Bereich von 10er
                                  Potenzen bei einfachere Abfragen.

                                  Das kann ich mir vorstellen.

                                  Bei grösseren Abfragen entsprechend weniger da der Anteil
                                  vom interpretieren an der gesamten Zeit gemessen kleiner wird.

                                  Bin ich wirklich mal gespannt, wie schätzt Du den Unterschied zu alten Suche ein?

                                  viele Grüße
                                  Andreas

                                  1. Hi Andreas

                                    aber bei Perl muss der Interpreter erst gestartet werden... Das hat gereicht um den Load im
                                    höchsten Fall schon auf 800 zu bringen (2-4 ist gerade noch vertretbar, mehr wird heikel).
                                    Ist perl als Apache-Modul installiert?

                                    Nein, dann gäbs das Problem nicht, einige Scripte kommen nicht mit
                                    mod_perl klar.

                                    Zudem kann so compiliertes SQL genommen werden
                                    au ja, das ist bestimmt sehr gut,

                                    Ich werds sehen. Kommt drauf an wie das Verhältnis Ausführzeit:Planzeit
                                    ist.

                                    (kein MySQL da es das nicht beherrscht),
                                    kann das postgresql?

                                    Jap

                                    Bei grösseren Abfragen entsprechend weniger da der Anteil
                                    vom interpretieren an der gesamten Zeit gemessen kleiner wird.
                                    Bin ich wirklich mal gespannt, wie schätzt Du den Unterschied zu alten Suche ein?

                                    Es wird wohl sehr auf die Suchbegriffe ankommen. Wenn ich mich
                                    jetzt nicht völlig irre (Michael bitte korrigieren wenns nicht passt.)
                                    müsste die bisherige Suche einen O(n) Algorithmus sein, also linear
                                    zur Datenmenge und die neue Suche ein O(log(n)). Ich denke, für den
                                    Benutzer wirds nicht wirklich zu merken sein, die Suche funktioniert
                                    bei mir sehr flott, aber für den Server wirds wohl eine Entlastung
                                    werden.

                                    Ich hoffe, das geplante Rating verbessert auch die Qualität der Ergebnisse,
                                    das wäre für den Benutzer wohl der grössere Mehrwert als nur die Umstellung
                                    auf eine Baumsuche (DB-Index-Bäume).

                                    Gruss Daniela

                                    --
                                    Nein, wir frieren unsere Hühner nicht auf Gletschern fest.
                                    1. Hallo!

                                      Nein, dann gäbs das Problem nicht, einige Scripte kommen nicht mit
                                      mod_perl klar.

                                      Aber C ist doch auf alle Fälle noch besser als mod_perl, oder?

                                      kann das postgresql?
                                      Jap

                                      postgres wird langsam interessant ;-)

                                      Es wird wohl sehr auf die Suchbegriffe ankommen.

                                      stimmt, das habe ich auch gemerkt, selten vorkommende Begriffe sind das beste!

                                      Wenn ich mich
                                      jetzt nicht völlig irre (Michael bitte korrigieren wenns nicht passt.)
                                      müsste die bisherige Suche einen O(n) Algorithmus sein, also linear
                                      zur Datenmenge und die neue Suche ein O(log(n)). Ich denke, für den
                                      Benutzer wirds nicht wirklich zu merken sein, die Suche funktioniert
                                      bei mir sehr flott, aber für den Server wirds wohl eine Entlastung
                                      werden.

                                      Also bei mir war es theorisch auch eine logarithmische Suche, schon die erste Verison nu rmit Volltext-Index, war von der Performance aber nicht mit Michaels alter Suche zu vergeichen, vor allem bei "mittel-oft" vorkommenden Wörtern, die seltenen waren OK, und die ganz heufigen waren im Cache, das war schon gut, aber alles in allem erheblich langsamer. Hinterher habe ich es mit einer temporären Zwischentabelle zum sortieren schon etwas beschleunigen können, dann noch mit einer Funktion die die Reihenfolge der Suchbegriffe nach Vorkommen sortiert... war aber noch weit weg von dem was bestimmt möglich ist.

                                      Ich hoffe, das geplante Rating verbessert auch die Qualität der Ergebnisse,
                                      das wäre für den Benutzer wohl der grössere Mehrwert als nur die Umstellung
                                      auf eine Baumsuche (DB-Index-Bäume).

                                      Der Rating-Algorithmus ist dann aber selbstgeschrieben, oder? Die z.B. von MySQL implementierte hat hier einfach nicht gepasst.

                                      Hier(http://knet-systems.de/temp/suche.php) habe ich mal meine Oberfläche im SELF-design hochgeladen, unten rechts ist auch ein link auf den PHP-Source. Die Suche funktioniert online nicht, da ich dort die Daten nicht zur Verfügung habe.

                                      Erklärung:

                                      • neben dem submit habe ich ein Häkchen, wenn das wie standardmäßig aktiviert ist, werden die Begriffe mit AND verknüpft, sonst nicht.
                                      • sonst kann man auch mit +/-  arbeiten
                                      • Auswahl der Kategorie aus Select-Feld
                                      • Eingabe-Feld für Verfasser-Name
                                      • Auswahl ob Auflistung als Ranking oder chronologisch, ersteres war noch nicht implementiert

                                      Habe den Quellcode mal auf die Schnelle _etwas_ kommentiert, sieht aber nicht gut aus, würde das heute anders machen(den kompletten Code ;-)), aber naja, besser so als das es ganz umsonst war ;-)

                                      Viele Grüße
                                      Andreas

                                      1. Hallo nochmal,

                                        was mich noch interessieren würde - findet die Suche auch Teilstrings? Das war so für mich das schwerste. Vor allem Teilstrings am Wortende - wie soll das mit annehmbarer Performance klappen? Man kann nur die Wörter in alle erdenklichen strings zerteilen, bei einem Wort wie Datenbank würden das ne ganze Menge Teilstrings. Daher müßte die Funktion möglichst intelligent sein, so z.B. nur ab 3 Zeichen, bestimmte Wörter in Ruhe lassen... aber das ist ganz schön aufwendig wenn Du mich fragst. Hast Du da eine bessee Methode gefunden?

                                        Viele Grüße und Danke für die Auskünfte,
                                        Andreas

                                        1. Hi Andreas

                                          was mich noch interessieren würde - findet die Suche auch Teilstrings? Das war so für mich das schwerste. Vor allem Teilstrings am Wortende - wie soll das mit annehmbarer Performance klappen? Man kann nur die Wörter in alle erdenklichen strings zerteilen, bei einem Wort wie Datenbank würden das ne ganze Menge Teilstrings. Daher müßte die Funktion möglichst intelligent sein, so z.B. nur ab 3 Zeichen, bestimmte Wörter in Ruhe lassen... aber das ist ganz schön aufwendig wenn Du mich fragst. Hast Du da eine bessee Methode gefunden?

                                          Nein, ich habe vor das genau so zu machen, über den Teilstring auf
                                          die möglichen Worte und die dann per OR zu benutzen. Das ganze ein
                                          allerdings per Default ausgeschaltet damits nicht zu heftig wird
                                          weil es wohl gar nicht so häufig benutzt wird. Die Teilstrings am
                                          Wortanfang sind ja kein Problem.

                                          Gruss Daniela

                                          --
                                          Nein, wir frieren unsere Hühner nicht auf Gletschern fest.
                                          1. Hi Daniela,

                                            Nein, ich habe vor das genau so zu machen, über den Teilstring auf
                                            die möglichen Worte und die dann per OR zu benutzen. Das ganze ein
                                            allerdings per Default ausgeschaltet damits nicht zu heftig wird
                                            weil es wohl gar nicht so häufig benutzt wird. Die Teilstrings am
                                            Wortanfang sind ja kein Problem.

                                            Und weil das so ist, reicht es, alle Postfixe zu indexen und diese dann mit einer Präfixsuche zu bearbeiten. Damit es nicht zu viele Einträge sind, erzwingt man dann noch eine Mindestlänge für die eingegebenen Suchbegriffe - sagen wir mal drei Zeichen.

                                            Beispiel: "Daniela" wird geindext als ["Daniela", "aniela", "niela", "iela", "ela"] - und mit einer Präfixsuche nach "nie" (LIKE "nie%" in SQL) in dieser Liste findet man nun sehr performant (mit Indexzugriff) "Daniela", was "nie" als Substring enthält.

                                            Bei einer mittleren Wortlänge der deutschen Sprache von etwa sieben Buchstaben und einer Mindestlänge der Einträge von drei Zeichen entstehen etwa fünfmal so viele Indexeinträge wie Worte. Bei dieser Technik bringt eine Stopwortliste übrigens fast nichts, weil sie überwiegend kurze Worte eliminieren würde, die oftmals schon an der geforderten Mindestlänge scheitern würden.

                                            Viele Grüße
                                                  Michael

                                            --
                                            T'Pol: I apologize if I acted inappropriately.
                                            V'Lar: Not at all. In fact, your bluntness made me reconsider some of my positions. Much as it has now.
                                            1. Hallo!

                                              Bei einer mittleren Wortlänge der deutschen Sprache von etwa sieben Buchstaben und einer Mindestlänge der Einträge von drei Zeichen entstehen etwa fünfmal so viele Indexeinträge wie Worte. Bei dieser Technik bringt eine Stopwortliste übrigens fast nichts, weil sie überwiegend kurze Worte eliminieren würde, die oftmals schon an der geforderten Mindestlänge scheitern würden.

                                              Weiß ich nicht, IMHO sind in deutsch sehr viele Worte mit 4 oder 5 Buchstaben in so einer Liste, das bringt zwar nicht so viel, aber machen sollte man das IMHO schon.

                                              Beispiel: "Daniela" wird geindext als ["Daniela", "aniela", "niela", "iela", "ela"] - und mit einer Präfixsuche nach "nie" (LIKE "nie%" in SQL) in dieser Liste findet man nun sehr performant (mit Indexzugriff) "Daniela", was "nie" als Substring enthält.

                                              Sollte mna nicht die ganze Suche mit LIKE machen? Also ohne den overhead  von z.B. mysqls match against?
                                              Ich würde folgende Tabellen verwenden:

                                              • Tabelle mit den Suchworten und einer WortID
                                              • Tabelle mit allen Teilstrings mit zugeordneter WortID
                                              • Tabelle mit WortID und PostingID
                                              • Tabelle mit den 10.000 am häufigsten vorkommenden Worten, mit Ihrer Anzahl
                                              • Temporäre Tabelle zum Sortieren des Ergebnisses

                                              Suchen dann wie folgt:
                                              1. Ermitteln der Häufigkeit der Suchwörter
                                              2a. Suche ohne Teilstrings: Abfrage gegen die "normale" Worte-Tabelle mit den Worten nach Häufigkeit in der Where-Bedingung ("= wort") geordnet, LEFT JOIN über wortID -> postingID
                                              2b. Suche mit Teilstrings: Abfrage gegen die Teilstring-Tabelle mit den Worten nach Häufigkeit in der Where-Bedingung ("LIKE wort%") geordnet, LEFT JOIN über wortID -> postingID
                                              3. obige Abfrage liefern je nachdem(da weiß ich noch nicht nach welcher Bedingung) entweder die Daten direkt, oder erstellen eine Temporäre Tabelle Daten
                                              4. ggfs. Sortierung nach Zeit,Relevanz der temporären Tabelle -> Ausgabe der Daten

                                              2 Fragen:
                                              1. das ist doch in diesem Fall auf alle Fälle eien logarithmische Suche, oder? Eine lineare Suche wäre, wenn ich _alle_ Suchbegriffe (also nicht nur jeden einmal) in eine Tabelle schreibe, oder? Nur was sollte das Bringen? Was ich mir dann spare ist der LEFT JOIN. Wird die Abfrage dann durch diesen JOIN so langsam bei häufigem Vorkommen? Wörde sich dann noch ein 2c. lohnen, in dem man eine Tabelle mit allen Suchbegriffen linear durchsucht?

                                              2. Was bringt eine Temporäre Tabelle? Dasselbe erreiche ich doch wenn ich die Daten ausgebe und eine Sortierung in der 3GL implementiere, oder?

                                              Viel Grüße
                                              Andreas

                                      2. Hi Andreas

                                        Also bei mir war es theorisch auch eine logarithmische Suche, schon die erste Verison nu rmit Volltext-Index, war von der Performance aber nicht mit Michaels alter Suche zu vergeichen, vor allem bei "mittel-oft" vorkommenden Wörtern, die seltenen waren OK, und die ganz heufigen waren im Cache, das war schon gut, aber alles in allem erheblich langsamer. Hinterher habe ich es mit einer temporären Zwischentabelle zum sortieren schon etwas beschleunigen können, dann noch mit einer Funktion die die Reihenfolge der Suchbegriffe nach Vorkommen sortiert... war aber noch weit weg von dem was bestimmt möglich ist.

                                        Das dürfte daran liegen das Michael genau einmal durch den Datenbestand muss
                                        für alle Suchbegriffe, für eine Baumsuche aber pro Suchbegriff einmal und
                                        dann die Resultate zusammengefügt werden müssen.

                                        Der Rating-Algorithmus ist dann aber selbstgeschrieben, oder? Die z.B. von MySQL implementierte hat hier einfach nicht gepasst.

                                        Ja, insbesondere wird das Markup auch benutzt. Dazu ist es schliesslich da
                                        zu zeigen was wichtig ist und worum es geht und so.

                                        Hier(http://knet-systems.de/temp/suche.php) habe ich mal meine Oberfläche im SELF-design hochgeladen, unten rechts ist auch ein link auf den PHP-Source.

                                        Erklärung:

                                        • neben dem submit habe ich ein Häkchen, wenn das wie standardmäßig aktiviert ist, werden die Begriffe mit AND verknüpft, sonst nicht.
                                        • sonst kann man auch mit +/-  arbeiten
                                        • Auswahl der Kategorie aus Select-Feld
                                        • Eingabe-Feld für Verfasser-Name
                                        • Auswahl ob Auflistung als Ranking oder chronologisch, ersteres war noch nicht implementiert

                                        +/- wird vermutlich erst Version 2, AND ist zwangsweise vorgeschrieben.

                                        Habe den Quellcode mal auf die Schnelle _etwas_ kommentiert, sieht aber nicht gut aus, würde das heute anders machen(den kompletten Code ;-)), aber naja, besser so als das es ganz umsonst war ;-)

                                        Ich schau mal rein wenn ich Zeit habe (nicht vor dem Wochenende).

                                        Gruss Daniela

                                        --
                                        Nein, wir frieren unsere Hühner nicht auf Gletschern fest.
                                        1. Hi Daniela,

                                          Das dürfte daran liegen das Michael genau einmal durch den Datenbestand muss
                                          für alle Suchbegriffe, für eine Baumsuche aber pro Suchbegriff einmal und
                                          dann die Resultate zusammengefügt werden müssen.

                                          im Prinzip ja - nur muß die Baumsuche eben nur durch einen (hoffentlich kleinen) Teil des Baums.
                                          Ihre Performance steht und fällt mit der Projektivität der Suchbegriffe: Bei seltenen Begriffen ist sie ganz toll, bei häufigen kann sie ganz schrecklich viele Treffer finden - und diese durch Herumklettern im Baum zu extrahieren, das ist deutlich langsamer, als dieselbe Menge von Zeilen linear abzulaufen.
                                          Der linearen Suche dagegen ist es egal, was sie sucht - nur nicht, worin (deshalb die getrennten Indexdateien, um "kleine Töpfe" zu schaffen).

                                          Viele Grüße
                                                Michael

                                          --
                                          T'Pol: I apologize if I acted inappropriately.
                                          V'Lar: Not at all. In fact, your bluntness made me reconsider some of my positions. Much as it has now.
                                          1. Hallo!

                                            im Prinzip ja - nur muß die Baumsuche eben nur durch einen (hoffentlich kleinen) Teil des Baums.
                                            Ihre Performance steht und fällt mit der Projektivität der Suchbegriffe: Bei seltenen Begriffen ist sie ganz toll, bei häufigen kann sie ganz schrecklich viele Treffer finden - und diese durch Herumklettern im Baum zu extrahieren, das ist deutlich langsamer, als dieselbe Menge von Zeilen linear abzulaufen.
                                            Der linearen Suche dagegen ist es egal, was sie sucht - nur nicht, worin (deshalb die getrennten Indexdateien, um "kleine Töpfe" zu schaffen).

                                            Hat es dann keinen Sinn das man für besonders häufige Begriffe einen linearen Suchepfad verwendet? Also man muß sowieso die Suchbegriffe testen, und wenn es nunmal zu häufig ist dann sucht man linear. Oder hat das keinen Sinn?

                                            Und nochwas, hat es keinen Sinn für die Suche 1 GB extra RAM zu besorgen, und die Tabellen im RAM zu halten? Denn mehrere 100 MB(und wenn man das mit den Teilstrings macht werden das _einige_ 100, wobei man diese Tabelle wohl lieber auf der Platte ist, denn irgendwann sind sind auch 1 GB voll ;-)) auf der Platte zu durchsuchen ist IMHO übel! Man schreibt die Tabellen erst auf die Platte (als Sicherung, passiert vermutlich eh nicht on the fly sondern nachts) und dann schreibt man bestimmte Tabellen in den RAM. Für die paar 100 EUR kann würde ich dann Spenden organisieren ;-)

                                            Kleine Hilfs-Tabellen die man immer braucht(z.B. die Liste mit den häufig vorkommenden Suchworten) sollten sowieso in den RAM, oder?

                                            Grüße
                                            Andreas

                                            1. Hi Andreas,

                                              Hat es dann keinen Sinn das man für besonders häufige Begriffe einen linearen Suchepfad verwendet? Also man muß sowieso die Suchbegriffe testen, und wenn es nunmal zu häufig ist dann sucht man linear. Oder hat das keinen Sinn?

                                              das Problem ist, daß bei hinreichend großer Datenmenge die lineare Suche einfach gar nicht mehr funktioniert - egal, welche Eigenschaften die Suchbegriffe haben.

                                              Das Ziel muß es sein, in vielen Fällen guter Suchbegriffe deutlich schneller zu werden als bisher und in wenigen Fällen schlechter Suchbegriffe zuverlässig zu erkennen, daß die Eingabe den Anwender nicht zu seinem Ziel führen wird.
                                              Denn eine hohe Trefferzahl bedeutet ja nicht nur eine entsprechende CPU-Belastung - sie bedeutet insbesondere eine wahrscheinlich schlechte Qualität der Treffer. Es sei denn, es würde eine _sehr gute_ Ranking-Funktion angewendet ... aber selbst bei Google lasse ich mich von der Meldung, es gäbe mehrere tausend Treffer, dazu motivieren, weitere Suchbegriffe anzugeben, und das spült oftmals bessere Seiten nach oben, die ich vorher nicht gesehen hätte.

                                              Meine Strategie wäre hier, zweigleisig zu fahren, also einerseits dem Anwender ab einer bestimmten Anzahl von Treffern zu sagen, daß seine Frage zu allgemein gestellt war (wie wir das hier im Forum ja auch oft genug tun ;-), und andererseits natürlich wirklich an einer Ranking-Funktion zu arbeiten und auszuprobieren, ob diese in der Realität zufriedenstellende Ergebnisse zu erträglichen Kosten liefern kann.

                                              Und nochwas, hat es keinen Sinn für die Suche 1 GB extra RAM zu besorgen, und die Tabellen im RAM zu halten? Denn mehrere 100 MB(und wenn man das mit den Teilstrings macht werden das _einige_ 100, wobei man diese Tabelle wohl lieber auf der Platte ist, denn irgendwann sind sind auch 1 GB voll ;-)) auf der Platte zu durchsuchen ist IMHO übel!

                                              Im Prinzip hast Du recht.

                                              Andererseits: Wie viele Archivsuche-Anfragen gehen denn wirklich über das gesamte Archiv? Haben wir da eine Statistik, Daniela (oder Christian)?
                                              Es hat sehr wohl einen Sinn, wie die Häkchen im Such-Formular vorbelegt sind - solange der Anwender daran nichts ändert (was ein DAU hoffentlich nicht tun wird - das umfangreiche Formular _darf_ ein bißchen abschreckend wirken, finde ich ;-), wird _sehr_ viel weniger als das ganze Archiv durchsucht.

                                              Moment, ich schaue gerade mal nach:
                                               [X] SELFHTML V8.0      (  4.77 MB)
                                               [X] Feature-Artikel    (  1.50 MB)
                                               [X] Link-Verzeichnis   (  0.09 MB)
                                               [X] Forums-Archiv 2003 (  6.13 MB)
                                               [ ] Forums-Archiv 2002 (140.39 MB)
                                               [ ] Forums-Archiv 2001 ( 31.75 MB)
                                               [ ] Forums-Archiv 2000 ( 49.43 MB)
                                               [ ] Forums-Archiv 1999 ( 31.17 MB)
                                              Verfügbar sind also 265,23 MB, durchsucht werden aber nur 12,49 MB - das sind gerade mal 4.7% des Datenbestandes! Aber die besten Seiten, nämlich SelfHTML und die Feature-Artikel (leider noch nicht die Tips & Tricks ...), sind immer dabei. Auch dies ist eine Performance- und Qualitätsfrage.

                                              Kleine Hilfs-Tabellen die man immer braucht(z.B. die Liste mit den häufig vorkommenden Suchworten) sollten sowieso in den RAM, oder?

                                              Wenn die Tabelle wirklich klein ist, dann wird sie von der Datenbank (oder ersatzweise vom Festplattentreiber des Betriebssystems) ohnehin gecached. Interessant wäre der zusätzliche RAM, um eine _große_ Tabelle zu beschleunigen ... oder einen großen Indexbaum mit relativ zufällig verteilten Zugriffen.

                                              Viele Grüße
                                                    Michael

                                              --
                                              T'Pol: I apologize if I acted inappropriately.
                                              V'Lar: Not at all. In fact, your bluntness made me reconsider some of my positions. Much as it has now.
                                              1. Hallo Michael!

                                                Moment, ich schaue gerade mal nach:
                                                [X] SELFHTML V8.0      (  4.77 MB)
                                                [X] Feature-Artikel    (  1.50 MB)
                                                [X] Link-Verzeichnis   (  0.09 MB)
                                                [X] Forums-Archiv 2003 (  6.13 MB)
                                                [ ] Forums-Archiv 2002 (140.39 MB)
                                                [ ] Forums-Archiv 2001 ( 31.75 MB)
                                                [ ] Forums-Archiv 2000 ( 49.43 MB)
                                                [ ] Forums-Archiv 1999 ( 31.17 MB)
                                                Verfügbar sind also 265,23 MB, durchsucht werden aber nur 12,49 MB - das sind gerade mal 4.7% des Datenbestandes! Aber die besten Seiten, nämlich SelfHTML und die Feature-Artikel (leider noch nicht die Tips & Tricks ...), sind immer dabei. Auch dies ist eine Performance- und Qualitätsfrage.

                                                IMHO ein sehr schlechtes Beispiel. Hättest Du dasselbe vor 3 Wochen gebracht lägen wir bei über 50%, und in ein paar Monaten sind wir schnell wieder bei 30%. Außerdem bringt die Suche im Archiv 2003 nicht sooo viel, denn so viel wurde noch nicht geschrieben, da das Jahr erst 16 Tage hatte!

                                                Grüße
                                                Andreas

                                                1. Hallo nochmal!

                                                  Noch ein kleiner Nachtrag:
                                                  IMHO wäre es sehr hilfreich die derzeitige Nutzung der Suche so gut wie möglich zu dokumentieren, wie Sven schon sagte - wie oft wurde in welchen Kategorien gesucht, aber auch von welcher Seite wird die Suche wie oft geöffnet, welche Suchbegriffe, wann und von wo welche Suchbegriffe..., teilweise ist das ja dokumentiert, und man kann sicher ne Menge aus den Log-Files entnehmen, nur ich denke daraus läßt sich ne Menge für eine zukünftige optimale Gestaltung und (Vor-)Einstellung der Suche ableiten.

                                                  Grüße
                                                  Andreas

                                                2. Hi Andreas,

                                                  Verfügbar sind also 265,23 MB, durchsucht werden aber nur 12,49 MB - das sind gerade mal 4.7% des Datenbestandes!

                                                  IMHO ein sehr schlechtes Beispiel. Hättest Du dasselbe vor 3 Wochen gebracht lägen wir bei über 50%, und in ein paar Monaten sind wir schnell wieder bei 30%.

                                                  das kommt darauf an, wann und wie oft man die Indexdateien splittet.
                                                  Würde ich noch auf diesem Server arbeiten, dann gäbe es zu 2002 bereits nur noch Quartalsdateien.

                                                  Ein System mit so großen Datenmengen will nun mal regelmäßig gepflegt sein - zehn Minuten alle drei Monate muß da im Etat drin sein.

                                                  Viele Grüße
                                                        Michael

                                                  --
                                                  T'Pol: I apologize if I acted inappropriately.
                                                  V'Lar: Not at all. In fact, your bluntness made me reconsider some of my positions. Much as it has now.
                                              2. Hallo Michael,

                                                [X] SELFHTML V8.0      (  4.77 MB)
                                                [X] Feature-Artikel    (  1.50 MB)
                                                [X] Link-Verzeichnis   (  0.09 MB)
                                                [X] Forums-Archiv 2003 (  6.13 MB)
                                                [ ] Forums-Archiv 2002 (140.39 MB)
                                                [ ] Forums-Archiv 2001 ( 31.75 MB)
                                                [ ] Forums-Archiv 2000 ( 49.43 MB)
                                                [ ] Forums-Archiv 1999 ( 31.17 MB)

                                                Irgendwie fehlt mir hier das 1998er-Archiv. Kann es sein, dass vom aktuellen Jahr immer 5 Jahre »runtergezählt« werden? Mir persönlich ist das nicht so wichtig, aber es wundert mich schon.

                                                Christian

                                                --
                                                Ich bitte darum, dass ein Themenbereich (BARRIEREFREIHEIT) eingerichtet wird.
                                                1. Hi Christian,

                                                  Hallo Michael,

                                                  [X] SELFHTML V8.0      (  4.77 MB)
                                                  [X] Feature-Artikel    (  1.50 MB)
                                                  [X] Link-Verzeichnis   (  0.09 MB)
                                                  [X] Forums-Archiv 2003 (  6.13 MB)
                                                  [ ] Forums-Archiv 2002 (140.39 MB)
                                                  [ ] Forums-Archiv 2001 ( 31.75 MB)
                                                  [ ] Forums-Archiv 2000 ( 49.43 MB)
                                                  [ ] Forums-Archiv 1999 ( 31.17 MB)

                                                  Irgendwie fehlt mir hier das 1998er-Archiv. Kann es sein, dass vom aktuellen Jahr immer 5 Jahre »runtergezählt« werden? Mir persönlich ist das nicht so wichtig, aber es wundert mich schon.

                                                  Nein, da gibt es niemanden, der "rechnet". Das ist alles explizit auscodiert in der Parameterdatei.

                                                  Ich vermute, die Umstellung auf 2003 hat jemand (in allerletzter Minute?) gemacht, der Angst davor hatte, die Anzahl der Einträge innerhalb der Konfigurationsdatei der Archivsuche zu ändern, weil er die Konsequenzen nicht überblickte ... dabei ist eigentlich die 'schlimmste' Konsequenz, daß _überhaupt_ etwas geändert wurde. Denn in bestimmten Archiv-Postings gibt es Links auf Suchmaschinenaufrufe - und in deren URL stehen die Werte des CGI-Parameters zur Adressierung der einzelnen Archivdateien nicht symbolisch, sondern numerisch drin (als Positionen innerhalb der Parameterdatei). Diese Links generieren nun also alle nicht mehr denjenigen Aufruf, den sie ursprünglich einmal hätten bewirken sollen. Naja, sooo furchtbar finde ich das alles auch wieder nicht ...
                                                  Verglichen damit ist das Einfügen einer neunten Indexdatei eigentlich gar kein Problem ... wenn man mal davon absieht, daß dadurch natürlich das Formular um eine Zeile höher wird, so daß man dies nicht als Lösung für die Ewigkeit ansehen sollte. Andererseits macht es auch nicht wirklich etwas aus, wenn das Formular ein bißchen höher wird, solange man dann an alle Daten ran kommt ... finde ich zumindest.

                                                  Mein Lösungsvorschlag für die 1998er-Postings wäre es, die Jahrgänge 1998 und 1999 mit "cat" und ">>" zu einer gemeinsamen Datei zusammenzumischen (die 1998er ans Ende der 1999er anhängen, nicht umgekehrt! Die Postungs sind zeitlich umgekehrt sortiert, um in dieser Reihenfolge als Ergebnisse ausgelesen werden zu können, wir haben ja noch keine Ranking-Funktion) und die Beschriftung des untersten Eintrags in der Parameterdatei anzupassen. Das sollte eigentlich in ein paar Minuten erledigt sein ... ("11th commandment: Thou shalt make backups" nicht vergessen.)

                                                  Ein ählicher Eingriff steht ja übrigens noch bevor, um endlich die Tips & Tricks zu indexen - wie sieht's aus, liebe Redaktion?

                                                  Viele Grüße
                                                        Michael

                                                  --
                                                  T'Pol: I apologize if I acted inappropriately.
                                                  V'Lar: Not at all. In fact, your bluntness made me reconsider some of my positions. Much as it has now.
                                                  1. ... halt, Kutscher:

                                                    Ich vermute, die Umstellung auf 2003 hat jemand (in allerletzter Minute?) gemacht, der Angst davor hatte, die Anzahl der Einträge innerhalb der Konfigurationsdatei der Archivsuche zu ändern, weil er die Konsequenzen nicht überblickte ...
                                                    Mein Lösungsvorschlag für die 1998er-Postings wäre es, die Jahrgänge 1998 und 1999 mit "cat" und ">>" zu einer gemeinsamen Datei zusammenzumischen

                                                    nicht, daß das jetzt mißverstanden wird: Es ist _kein_ Problem, einen 9. Eintrag in der Parameterdatei zu erzeugen. Das hätte man gleich machen können (und ggf. sogar sollen).

                                                    Nur wäre mein Lösungsvorschlag selbst dann praktikabel gewesen, wenn tatsächlich eine Beschränkung auf diese 8 Einträge existiert hätte ...

                                                    Viele Grüße
                                                          Michael

                                                    --
                                                    T'Pol: I apologize if I acted inappropriately.
                                                    V'Lar: Not at all. In fact, your bluntness made me reconsider some of my positions. Much as it has now.
                                                    1. Hallo!

                                                      Aber das mit dem Aufspalten, das finde ich schon irgendwie doof. Sicher brauche ich nicht alle Ergebnisse von 1998, aber wenn ich was Suche dann wenigstens Jahresweise(ich persönlich). Wie säre das denn mit deiner Datenbank, würdet Ihr dann extra für jeden Abschnitt eigene Tabellen verwenden?

                                                      Grüße
                                                      Andreas

                                    2. Hi Daniela,

                                      Ist perl als Apache-Modul installiert?
                                      Nein, dann gäbs das Problem nicht, einige Scripte kommen nicht mit
                                      mod_perl klar.

                                      kann man mod_perl nicht so installieren und konfigurieren, daß nur Skripte mit "mod_perl-tauglichen", besonderen Endungen von mod_perl und alle *.pl weiterhin von /usr/bin/perl interpretiert werden?

                                      Es wird wohl sehr auf die Suchbegriffe ankommen. Wenn ich mich
                                      jetzt nicht völlig irre (Michael bitte korrigieren wenns nicht passt.)
                                      müsste die bisherige Suche einen O(n) Algorithmus sein, also linear
                                      zur Datenmenge und die neue Suche ein O(log(n)).

                                      Full Ack.

                                      Ich hoffe, das geplante Rating verbessert auch die Qualität der Ergebnisse,

                                      Da wird also die große Kristallkugel implementiert - ich bin sehr gespannt darauf. :-)

                                      Viele Grüße
                                            Michael

                                      --
                                      T'Pol: I apologize if I acted inappropriately.
                                      V'Lar: Not at all. In fact, your bluntness made me reconsider some of my positions. Much as it has now.
                    2. Hallo,

                      Ich darf die Ausgangsposting zitieren:
                      "kann man von aussen auf die "Roh"-Daten der aktuellen Postings zugreifen? Sprich sind diese in einer einzelnen XML Datei gesichert oder in einer DB?"

                      Erkennst du darin einen Vorschlag?

                      ??? Es ist eine Frage, keine Forderung!!!

                      Es wäre schön wenn man es könnte, es ist aber _kein_ MUSS.
                      Ich finde auch die Benutzerstylesheet's keine Funktion die man _unbedingt_ braucht, es sind nette Features. In diesem Zug dachte ich mal zu Fragen ob es nicht generell möglich wäre, alles selbst zu gestalten. Klar man kann es auch aus der aktuellen Hauptdatei machen, aber eine XML - Version wäre etwas eleganter.

                      Nichts für ungut,
                      ueps

                      1. Hallo uepsylon,

                        In diesem Zug dachte ich mal zu Fragen ob es nicht generell möglich wäre, alles selbst zu gestalten.

                        Das ist ganz legel und ok, aber du hast ja auch eine Antwort bekommen. Was ich nicht verstehe ist, warum du die Antwort nicht akzeptieren willst. (kam bei _mir_ so an)

                        Klar man kann es auch aus der aktuellen Hauptdatei machen, aber eine XML - Version wäre etwas eleganter.

                        Du hast eine Beispieldatei, du hast die DTD, du kannst dir damit also diesen Thread erstmal in XML-Abbilden. Dieser Thread hat ca. 50 Postings und diverse Zweigbäume, also ist sehr gut geignet um etwas komplexere Strukturen darzustellen.
                        Also du kannst erstmal deine Ausgabeformat planen, parsen/transformieren.
                        Fertig? Hat alles geklappt?
                        Dann würde ich gerne wissen, was gibt es bei dir, was du weder durch die Usereinstellungen, noch durch Benutzer-CSS, noch durch die Bookmarklets noch durch den SelfBrowser haben kannst?

                        Grüße
                        Thomas

                        PS: die Antwort auf meine letzte Frage interessiert mich wirklich.

                        1. Hallo,

                          In diesem Zug dachte ich mal zu Fragen ob es nicht generell möglich wäre, alles selbst zu gestalten.

                          Das ist ganz legel und ok, aber du hast ja auch eine Antwort bekommen. Was ich nicht verstehe ist, warum du die Antwort nicht akzeptieren willst. (kam bei _mir_ so an)

                          Ich akzeptiere die Antwort doch, falls es anders rüber kam war das keine Absicht.

                          Fertig? Hat alles geklappt?

                          Ja, allerdings ohne DTD da ich damit nicht viel Anfangen konnte.
                          Ich hab einfach die Hauptdatei mal mit RegExp auseinander genommen.
                          Allerdings noch nicht wirklich mit einer direkten Anbindung in Echtzeit (PHP macht Probleme).

                          http://ueps.8bit.co.uk/php/index.php

                          Dann würde ich gerne wissen, was gibt es bei dir, was du weder durch die Usereinstellungen, noch durch Benutzer-CSS, noch durch die Bookmarklets noch durch den SelfBrowser haben kannst?

                          Ich hoffe man sieht es ;-)
                          Es ist allerdings nur ein Versuch, ich bin auch nicht unbedingt ein Freund von Boards, ich möchte jedoch die Anordnung der Postings geren selbst in die Hand nehmen.

                          Gruß,
                          ueps

                          1. Hallo uepsylon,

                            Dann würde ich gerne wissen, was gibt es bei dir, was du weder durch die Usereinstellungen, noch durch Benutzer-CSS, noch durch die Bookmarklets noch durch den SelfBrowser haben kannst?

                            Ich hoffe man sieht es ;-)

                            Darf ich "kontern"? ;-)

                            http://www.meta-text.net/etc/selfbrowser301.gif

                            Ich finde Spieltrieb schon ganz ok ;-) sonst würde es ja auch mir hier keinen Spaß machen.

                            Grüße
                            Thomas

                            1. Hallo,

                              Darf ich "kontern"? ;-)

                              du darfst :-)

                              http://www.meta-text.net/etc/selfbrowser301.gif

                              Der Selfbrowser scheint ja eine feine Sache zu sein, das Problem ist nur das ich ihn eigentlich nicht extra installieren will. Mit einer Lösung per web, kann ich von jedem Ort aus, meine individuelle Ansicht genießen (wenns mal läuft).

                              Ich finde Spieltrieb schon ganz ok ;-) sonst würde es ja auch mir hier keinen Spaß machen.

                              Ohne ab und an ein bischen rumzutüfteln wäre es ja auch langweilig.

                              Gruß,
                              ueps

                  2. Hi Andreas,

                    Das heisst doppelte Datenhaltung für uns und zusätzliche Softwareprogramierung um die IPs rauszufiltern.
                    Wieso? Man kann diese XML-Daten grundsätzlich im doc-root aufbewahren.

                    es macht aber keinen Sinn, die XML-Daten überhaupt irgendwo statisch aufzubewahren - bei den HTML-Dateien ist das ja genauso. Egal, wie viele Ausgabeformate die Forum-Software unterstützen würde - die Erzeugung des entsprechenden Dokuments sollte dynamisch erfolgen, weil nur dadurch das Konzept der benutzerspezifischen Eingriffsmöglichkeiten via serverseitige Registrierung möglich ist. Und redundante Datenhaltung ist ja generell böse[tm].

                    1. wir haben dann nur noch mehr Traffic und belastung für den Server:
                      Wieso das??? Ich will ja _entweder_  das ein _oder_ das andere.

                    Da stimme ich Dir allerdings zu.

                    also wir sind bei:

                    • doppelte Datenhaltung
                      nicht unbedingt

                    Hier auch.

                    • mehr Traffic
                      keine Ahnung wieso

                    Ich auch nicht. XML-Dokumente sind weder größer als HTML noch (deutlich) schlechter komprimierbar.

                    Viele Grüße
                          Michael

                    --
                    T'Pol: I apologize if I acted inappropriately.
                    V'Lar: Not at all. In fact, your bluntness made me reconsider some of my positions. Much as it has now.
                2. Hallo Thomas,

                  Das heisst doppelte Datenhaltung für uns und zusätzliche Softwareprogramierung um die IPs rauszufiltern.

                  Ähm, ich habe mich ein bisschen mit dem Forum hier beschäftigt (wegen Bugs in der GDOME-Bibliothek habe ich es dann irgendwann bleiben lassen) und von daher weiß ich, dass für die unterschiedliche Ausgabe von HTML4 und XHTML1.0 verschiedene Templates verwendet werden. (http://cvs.teamone.de/selfforum/cgi-shared/config/templates/) Warum kann man das nicht auch mit XML-Daten machen? Ich sehe da kein größeres Problem, theoretisch könnte man jegliche Art von Datenformat so erzeugen. Bei XML müßte man aber IMHO nicht mal die Template-Engine modifizieren - da müßte man einfach nur neue Templates erstellen, die halt XML und nicht XHTML beinhalten. (und die halt noch mal durch den Compiler jagen) Oder sehe ich da was falsch? Wenn nicht, dann könnte auch jemand anderes, zum Beispiel jemand, der dieses Feature haben will, diese Templates erstellen, dazu bräuchte man nicht mal Ahnung von C.

                  Christian

                  --
                  Ich bitte darum, dass ein Themenbereich (BARRIEREFREIHEIT) eingerichtet wird.
                  1. Hallo Christian,

                    Das heisst doppelte Datenhaltung für uns und zusätzliche Softwareprogramierung um die IPs rauszufiltern.

                    daher weiß ich, dass für die unterschiedliche Ausgabe von HTML4 und XHTML1.0 verschiedene Templates verwendet werden.

                    Richtig.

                    Warum kann man das nicht auch mit XML-Daten machen? Ich sehe da kein größeres Problem, theoretisch könnte man jegliche Art von Datenformat so erzeugen. Bei XML müßte man aber IMHO nicht mal die Template-Engine modifizieren - da müßte man einfach nur neue Templates erstellen, die halt XML und nicht XHTML beinhalten. (und die halt noch mal durch den Compiler jagen) Oder sehe ich da was falsch?

                    Nein, du siehst nichts falsch.
                    Wer erstellt die Templates? --> Auch programmierung.
                    Durch den Compiler jagen --> fein, wer bring es dem Compiler bei was er zu tun wenn jemand so eine Datei anfordert? Wer richtet es ein, dass überhaupt solche Dateien angefordert werden können, und das ja auch dann gleich bitte in den Usereinstellungen, weil man ja es gerne bequem haben mag? Wer bringt dem Server bei wie er sich verhalten soll? --> Auch programmierung.

                    »»Wenn nicht, dann könnte auch jemand anderes, zum Beispiel jemand, der dieses Feature haben will, diese Templates erstellen, dazu bräuchte man nicht mal Ahnung von C.

                    Wirklich?
                    Also ich wüsste nicht was ich darin verändern dürfte und was nicht, weiss du das?
                    ----------------------thread-template ------------------
                    http://cvs.teamone.de/cgi-bin/cvsweb.cgi/~checkout~/selfforum/cgi-shared/config/templates/tpl_xhtml10/thread.html?rev=1.1&content-type=text/html
                    ------------------------------------------------------------

                    Und wenn du noch so nett sein würdest mir zu erklären, wie man aus dem geposteteten Beispieldatei einen Template erstellt, würde ich mir vermutlich viel leichter tun.

                    Das es dann noch mehr Serverlast verursacht, wenn die Dateien immer on the Fly generiert werden, als es statische XML-Dateien täten, dürfte auch klar sein.

                    Nichts für ungut. Aber so 'mir nix, dir nix' geht das ja nunmal nicht und das Forum ist auch nicht das eizige was gepflegt werden möchte ;-)

                    Grüße
                    Thomas

                    1. Hallo Thomas,

                      Wer erstellt die Templates? --> Auch programmierung.

                      Nein, keine Programmierung. Es gibt zwar gewisse Programmierlogik in den Templates (if) - aber die Templatesprache ist, soweit ich es beurteilen kann, nicht turingvollständig, daher keine »richtige« Programmiersprache. Und für eine If-Anweisung muss man nicht viel von Programmierung verstehen.

                      Durch den Compiler jagen --> fein, wer bring es dem Compiler bei was er zu tun wenn jemand so eine Datei anfordert?

                      Nicht, wenn er so eine Datei anfordert. AFAIK werden die Template-Dateien (die von den C-Programmen verwendet werden, die Perl-Programme parsen sie direkt) durch ein Perl-Script in C-Dateien »verwandelt« und diese dann als Shared Objects kompiliert.

                      Wer richtet es ein, dass überhaupt solche Dateien angefordert werden können, und das ja auch dann gleich bitte in den Usereinstellungen, weil man ja es gerne bequem haben mag? Wer bringt dem Server bei wie er sich verhalten soll? --> Auch programmierung.

                      Programmierung: AFAIK nein, s.u. Aber das wäre ein geringerer Aufwand als die Roh-XML-Daten irgendwie verfügbar zu machen. (und die IP und andere Daten irgendwie rauszuschneiden)

                      Wirklich?
                      Also ich wüsste nicht was ich darin verändern dürfte und was nicht, weiss du das?

                      Ich weiß es natürlich nicht mit Sicherheit, aber erschließen kann ich es. Der Code in den Templates ist - zumindest für mich - selbsterklärend, zumal ich ja auch die Ausgabe kenne.

                      ----------------------thread-template ------------------
                      http://cvs.teamone.de/cgi-bin/cvsweb.cgi/~checkout~/selfforum/cgi-shared/config/templates/tpl_xhtml10/thread.html?rev=1.1&content-type=text/html

                      Ich habe da mal einen Vorschlag, wie das aussehen _könnte_ - die XML-Struktur ist noch mehr als suboptimal, ich will hier nur mal etwas anregen. (ich habe mich bewußt _gegen_ die interne XML-Struktur des Forums entschieden, da ich sonst die Ausgabe beziehungsweise das Formular nicht richtig abbilden kann)

                      <?xml version="1.0"?>
                      <!DOCTYPE selfforum ...>
                      <selfforum>
                        <postingform action="<$ print $script; $>" type="<$ if $fupto then $>answer<$ else $>newthread<$ endif; $>">
                          <$ if $genprev then $>
                            <preview>
                              <name><$ print $Name; $></name>
                              <$ if $EMail then $><email><$ print $EMail; $></email><$ endif; $>
                              <date><$ print $date; $></date>
                              <homepage><$ if $HomepageUrl then $><$ print $HomepageUrl; $></homepage><$ endif; $>
                              <$ if $cat then $><category><$ print $cat; $></category><$ endif; $>
                              <subject><$ print $subject; $></subject>
                              <message>
                                <$ print $message; $>
                              </message>
                              <$ if $ImageUrl then $><imageurl><$ print $ImageUrl; $></imageurl><$ endif; $>
                            </preview>
                          <$ endif; $>
                          <$ if $err then $>
                            <error><$ print $err; $></error>
                          <$ endif; $>
                          <$ if $fupto then $><hiddenfield name="fupto" value="<$ print $fupto; $>" /><$ endif; $>
                          <$ if $assicheck then $><hiddenfield name="assicheck" value="1" /><$ endif; $>
                          <hiddenfield name="unid" value="<$ print $unid; $>" />
                          <hiddenfield name="qchar" value="<$ print $qchar; $>" />
                          <field name="Name" value="<$ print $Name; $>" />
                          <field name="Email" value="<$ print $Email; $>" />
                          <categorylist>
                            <$ print $cats; $>
                          <categorylist>
                          <body>
                            <$ print $body; $>
                          </body>
                          <field name="HomepageUrl" value="<$ if $HomepageUrl then print $HomepageUrl; else print "http://"; endif; $>" />
                          <field name="ImageUrl" value="<$ if $ImageUrl then print $ImageUrl; else print "http://"; endif; $>" />
                        </postingform>
                      </selfforum>

                      So _könnte_ so etwas aussehen; natürlich müßten die anderen Templates auch noch angepasst werden. Außerdem weiß ich nicht, inwieweit die Software selbst Code generiert, (was sehr schlecht wäre) ich habe da irgendwas mit den Plugins in Erinnerung...

                      Und wenn du noch so nett sein würdest mir zu erklären, wie man aus dem geposteteten Beispieldatei einen Template erstellt, würde ich mir vermutlich viel leichter tun.

                      Die Beispieldatei, die Du gepostet hast, ist doch ein Template. Oder meinst Du, wie man sie einbindet? Die Template-Dateien, die von den Perl-Scripten verwendet werden (fo_post, fo_userconf) müssen nicht erst in C »verwandelt« werden. Die Dateien müssen nur in ein entsprechendes Unterverzeichnis eingebunden werden. (.../templates/xml/abc.html) Die anderen Templates müssen kompiliert und installiert werden, indem ein »make templates templates-install« im Verzeichnis, wo das SELFForum kompiliert wurde, durchgeführt wird. (ich weiß aber nicht, in welcher Weise das Forum auf dem SELF-Server installiert ist, von daher wäre ich da _sehr_ vorsichtig, warscheinlich würde ich es lassen und warten, bis CK mal _sehr viel_ Zeit hat (ich weiß, dass er jetzt andere Sorgen hat, wenn er beim BUND ist) und die Forensoftware das nächste Mal »updated«)

                      Die Einbindung des XML-Modus erfolgt über Veränderung der Datei modconf.xml: (ziemlich am Anfang)
                      http://cvs.teamone.de/cgi-bin/cvsweb.cgi/selfforum/cgi-shared/config/modconf/modules.xml?rev=1.33&content-type=text%2Fx-cvsweb-markup

                      Das es dann noch mehr Serverlast verursacht, wenn die Dateien immer on the Fly generiert werden, als es statische XML-Dateien täten, dürfte auch klar sein.

                      Natürlich. Aber das gleiche passiert auch mit der HTML-Ausgabe, oder?

                      Aber so 'mir nix, dir nix' geht das ja nunmal nicht

                      Ich wollte nur einen einfacheren Weg der Machbarkeit aufzeigen. (als die zur-Verfügung-Stellung der Roh-Daten) Natürlich ist das nicht sofort erledigt und IMHO kann das ganze niedrigste Priorität haben.

                      und das Forum ist auch nicht das eizige was gepflegt werden möchte ;-)

                      Ich wollte lediglich eine andere Möglichkeit aufzeigen, mir persönlich reicht vorerst die XHTML-Ansicht inklusive der Optionen in der Benutzerkonfiguration.

                      Christian

                      --
                      Ich bitte darum, dass ein Themenbereich (BARRIEREFREIHEIT) eingerichtet wird.
          2. Moin!

            Die XML-Dateien werden nicht ständig gelesen - ihren (bereits analysierten) Inhalt hält ein daemon permanent im RAM. Und aus diesen Daten wird die Hauptdatei dynamisch generiert (inklusive diverser Ausblendungen im User-Style-Modus).

            Wenn ich forum.de.selfhtml.org aufrufe, müssen ja fast alle aktuell relevanten xml Dateien, neu überprüft werden, oder nicht?
            Oder werden erst dann gelsen wenn sich eine Änderung an ihr ergeben hat?

            Die XML-Dateien müssen nicht gelesen werden, weil ihr Inhalt bereits im RAM gespeichert vorliegt. Und RAM ist immer schneller als Festplatte. Außerdem kann man im RAM bessere bzw. der Aufgabe maßgeschneiderte Datenstrukturen verpassen, die sich direkt auslesen lassen, während man bei XML-Dateien immer zuerst parsen muss, um zu verstehen, welche Inhalte überhaupt vorliegen.

            - Sven Rautenberg

            --
            "Bei einer Geschichte gibt es immer vier Seiten: Deine Seite, ihre Seite, die Wahrheit und das, was wirklich passiert ist." (Rousseau)
          3. Hi uepselon,

            So problematisch finde ich das nicht. Wenn ich in einem Chat bin, oder in einem anderen Forum, ist die IP oft auch für jedermann lesbar. Zum Missbrauch würde es denke ich nicht verleiten.

            wenn die IP-Adresse diejenige eines Firmen-Gateways ist, dann dokumentiert sie, daß ein Anwender einer bestimmten Firma sie benutzt hat.
            Nun kombiniere dies mit der Uhrzeit des Postings und dem Intervall der Arbeitszeiten in der entsprechenden Firma ... und dann denke Dir noch Anforderungen in Richtung Datenschutz dazu.

            Die XML-Struktur ist für die interne Repräsentation gedacht - nicht für die externe.
            Ja, das hab ich jetzt begriffen. Aber eine Seite mit Rohdaten wäre trotzdem nicht schlecht.

            Man könnte sicherlich (als Zusatzfeature) eine alternative XML-Ausgabeschiene anbieten, ja.

            Wenn ich forum.de.selfhtml.org aufrufe, müssen ja fast alle aktuell relevanten xml Dateien, neu überprüft werden, oder nicht?

            Nein.

            Oder werden erst dann gelsen wenn sich eine Änderung an ihr ergeben hat?

            Sie werden überhaupt nicht gelesen - außer ein einziges Mal beim Start des daemon. Während dessen Programmlauf werden sie m. E. nur noch geschrieben.

            Ich vermute, Du gehst davon aus, daß das Forum-Viewer-Skript direkt auf die XML-Dateien zugreifen kann. Genau das ist seit der aktuellen Neu-Implementierung des Forums aber nicht mehr der Fall.

            Früher waren diese Dateizugriffe (und vor allem die gegenseitigen Sperren, wenn etwas gepostet wurde!) tatsächlich ein Engpaß; genau deshalb sind es nun nicht mehr die eigentlichen CGI-Skripte, sondern ein Server-daemon, der - im Prinzip ähnlich wie ein RDBMS-daemon - die eigentlichen Forums-Daten verwaltet (und alle aktiven Threads permanent komplett im RAM hält), als einziger darin ändern darf und mit jedem Client über eine Interprozeßkommunikationsverbindung Daten austauscht.

            Viele Grüße
                  Michael

            --
            T'Pol: I apologize if I acted inappropriately.
            V'Lar: Not at all. In fact, your bluntness made me reconsider some of my positions. Much as it has now.
            1. Hallo,

              wenn die IP-Adresse diejenige eines Firmen-Gateways ist, dann dokumentiert sie, daß ein Anwender einer bestimmten Firma sie benutzt hat.
              Nun kombiniere dies mit der Uhrzeit des Postings und dem Intervall der Arbeitszeiten in der entsprechenden Firma ... und dann denke Dir

              noch Anforderungen in Richtung Datenschutz dazu.

              OK, ich geb mich in dieser Hinsicht geschlagen.

              Ja, das hab ich jetzt begriffen. Aber eine Seite mit Rohdaten wäre trotzdem nicht schlecht.

              Man könnte sicherlich (als Zusatzfeature) eine alternative XML-Ausgabeschiene anbieten, ja.

              Das wäre nett, es braucht ja nur eine Seite zu sein, in der alle aktuellen Daten drin stehen, die man auch sonst im Forum zu sehen bekommt.

              Sie werden überhaupt nicht gelesen - außer ein einziges Mal beim Start des daemon. Während dessen Programmlauf werden sie m. E. nur noch geschrieben.

              Ja, das kann sein, bei max. 250 KB an Daten kann ja alles relevante im RAM bleiben und der Rest wird dann Archiviert.

              Ich vermute, Du gehst davon aus, daß das Forum-Viewer-Skript direkt auf die XML-Dateien zugreifen kann. Genau das ist seit der aktuellen Neu-Implementierung des Forums aber nicht mehr der Fall.

              Ich muss zugeben das ich gar nicht an die Möglichkeit gedacht habe, alles im RAM zu lassen.

              Gruß,
              ueps

              1. Hi uepselon,

                Ich muss zugeben das ich gar nicht an die Möglichkeit gedacht habe, alles im RAM zu lassen.

                das haben die Implementierer der bis vor einem Vierteljahr produktiven Forum-Software auch nicht getan.

                Und doch hat das Forum in diesem Zustand vier Jahre lang durchgehalten - erst jetzt war der revolutionäre Wechsel in der Software-Architektur (echtes Client-Server-Produkt statt vieler einzelner CGI-Anwendungen) fällig - dank Christians erfolgreicher Anstrengungen bei der Implementierung.

                Viele Grüße
                      Michael

                --
                T'Pol: I apologize if I acted inappropriately.
                V'Lar: Not at all. In fact, your bluntness made me reconsider some of my positions. Much as it has now.
                1. Hallo Michael,

                  Ich muss zugeben das ich gar nicht an die Möglichkeit gedacht habe, alles im RAM zu lassen.

                  das haben die Implementierer der bis vor einem Vierteljahr produktiven Forum-Software auch nicht getan.

                  Das würde ich so nicht sagen. Wir hätten das gar nicht können, denn wie du ja auch weisst, hatten wir für eine ganze Weile einen gesponsorten Rechner womit wir eben auskommen müssten und ich denke wir haben das beste damals darausgeholt.
                  Erst mit unserem eigenen leistungsfähigem Rechner war es möglich, dass solche Möglichkeiten auch umgesetzt werden konnten, was aber keines Wegs Christians Leistung schmälert.

                  Grüße
                  Thomas

      2. Hallo uepselon,

        Ich wollte nämlich mal versuchen mir ein eigenes kleines Layout zu basteln, da die User - CSS Möglichkeiten doch etwas beschränkt sind.

        Du kennst http://zapp.i-networx.de/? Mit entsprechenden JS-Kenntnissen hast du sehr weitgehende Möglichkeiten.

        Grüße, Stefan

        1. Hallo,

          Du kennst http://zapp.i-networx.de/? Mit entsprechenden JS-Kenntnissen hast du sehr weitgehende Möglichkeiten.

          Nein, kenn ich bis jetzt noch nicht. Aber ich werd mich mit der Möglichkeit mal vertraut machen. Danke.

          Gruß,
          ueps

          1. Hallo,

            Bei mir kommen JS Fehler, bei deinem Demo Script.

            Gruß,
            ueps

            1. Hallo uepselon,

              Bei mir kommen JS Fehler, bei deinem Demo Script.

              Oh, das überrascht mich jetzt. Natürlich wäre ich sehr interessiert, näheres zu erfahren..

              Grüße, Stefan

              1. Hallo,

                Bei mir kommen JS Fehler, bei deinem Demo Script.

                Oh, das überrascht mich jetzt. Natürlich wäre ich sehr interessiert, näheres zu erfahren..

                Also die Funktionalität ist gewährleistet. Aber auf anhieb ging erst mal  garnichts. Fehler "undefined ist kein Objekt". Aber ansich ist die Sache recht gut. Schade das es nur im IE geht.

                Gruß,
                ueps

                1. Hallo uepselon,

                  Also die Funktionalität ist gewährleistet. Aber auf anhieb ging erst mal  garnichts. Fehler "undefined ist kein Objekt".

                  Hmm, ich glaube, sowas hatte ich mal, als die Forumsdatei noch nicht vollständig geladen war.

                  Aber ansich ist die Sache recht gut. Schade das es nur im IE geht.

                  Ja, zumindest Mozilla könnte das meiste davon auch. Leider akzeptiert er aber keine JS-Dateien über Domaingrenzen hinweg, so dass die Sache schon im Ansatz scheitert.

                  Danke für deine Rückmeldung!

                  Grüße, Stefan

      3. Hallo Uepselon,

        Ich habe selbst auch schon ein etwas einfacheres Forum mit einer XML Datei erstellt, die sogar noch bei über 500 KB schnell und sauber geladen wurde.

        Ich glaube, da hab ich was vergessen zu erwaehnen. Es gibt natuerlich neben den Thread-Dateien auch noch eine XML-Datei, in der die aktuelle Forumshauptdatei abgebildet ist. Aber weder diese noch die Threaddateien muessen immer neu geladen werden - siehe Antworten der anderen (Stichwort: Forums-Daemon).

        viele Gruesse
          Stefan Muenz

  2. Hallo ueps,

    kann man von aussen auf die "Roh"-Daten der aktuellen Postings zugreifen? Sprich sind diese in einer einzelnen XML Datei gesichert oder in einer DB?

    nachdem ich ein bisschen im Thread gelesen hab, frag ich mich, warum Du nicht einfach die XHTML-Sicht des Forums hernimmst. Dort sind doch alle Daten vorhanden, die Du brauchst. Mit XSLT müsste das doch zu verwurschteln sein, oder? Ich hab mir für das alte Forum einen kleinen Parser geschrieben, der eine Black/Whitelist und ein Themenfilter in gerade mal drei Zeilen Shellscript implementiert. Wenn man da noch ein bisschen feilt, kann man aus der Forumshauptdatei noch alles machen, was man will (IMHO).

    viele Grüße
      Achim Schrepfer

    --
    »Wenn die meisten sich schon armseliger Kleider und Möbel schämen, wieviel mehr sollten wir uns da erst armseliger Ideen und Weltanschauungen schämen.« - Albert Einstein
    1. Hallo,

      nachdem ich ein bisschen im Thread gelesen hab, frag ich mich, warum Du nicht einfach die XHTML-Sicht des Forums hernimmst. Dort sind doch alle Daten vorhanden, die Du brauchst. Mit XSLT müsste das doch zu verwurschteln sein, oder?

      Im Prinzip schon, aber wie du schon sagst, "zu verwurschteln". Es ist keine schöne Lösung, aber zur Not kann man es auch so machen.
      Das Problem ist hier halt, das man die Daten zuerst von den HTML Tags trennen muss um einen eigenen Aufbau zu realisieren.

      Ich hab mir für das alte Forum einen kleinen Parser geschrieben, der eine Black/Whitelist und ein Themenfilter in gerade mal drei Zeilen Shellscript implementiert. Wenn man da noch ein bisschen feilt, kann man aus der Forumshauptdatei noch alles machen, was man will (IMHO).

      Über jedes Quelltextbeispiel wäre ich sehr dankbar. Ich will das ganze mittels PHP lösen.

      Gruß,
      ueps