Frage von simonderfrager1, 46

Mit Datenbank verbinden?

Wie werden Websiten angezeigt wenn ich sie suche?

http://simongrde.bplaced.net/Test1.htm

also wenn ich ein Wort suche z.B. Google wie werden dann Websiten von Google angezeigt? (gmail.com, google.com etc.) bzw. wie kann ich meine Datenbank damit verbinden?

Antwort
von DaMenzel, 31

Gar nicht, weil Dein "Eingabefeld" nichts an etwas verarbeitendes sendet.

https://wiki.selfhtml.org/wiki/HTML/Formulare

Du bräuchtest also etwas das Deine Eingabe verarbeitet. Meistens ist dies ein PHP - Script -> dieses baut die Verbindung zu einer Datenbank (oft mySQL) auf und fragt diese ab und vergleicht die Eingabe mit den dortigen Einträgen.

Antwort
von areaDELme, 31

kannst du deine frage vielleicht etwas ausformulieren und das problem genauer beschreiben?
willst du z.b. einen gmail zugriff von deinem gmailkonto auf der eigenen website erstellen?
oder willst du eine suchmaschine schreiben?
und was meinst du mit verbinden mit deiner datenbank?, willst du websiten in deiner datenbank indexieren, sodass du ähnlich wie google eine vorschau mit link generieren kannst? oder was willst du genau machen?

Kommentar von simonderfrager1 ,

ich will eine suchmaschine schreiben

Kommentar von DaMenzel ,

Eine Suchmaschine für was?

Kommentar von areaDELme ,

ich denke eine selbstgeschriebene alternative zu google/bing, etc. :D
hoffentlich liege ich falsch :DDDD

Kommentar von LeonardM ,

Nadann brauchst du nen crawler und ne liste mit domains die dein crawler abklappern soll. Die ergebnisse kannst du in ne datenbank hauen und nen selbstgeschriebener Webserver liefert dann die ausgabe. Ums wie google darzustellen nutzt du dann in javascript ajax und fertig ist deine Suchmaschine. Bräuchtest zwar nen rechentzentrum für dich voller festplatten und server aber hey.. yolo!

Kommentar von areaDELme ,

Also theoretisch brauchst du erstmal sehr viel speicherplatz und mehr als einen server der dir alleine nur die seiten "sucht".

du kannst dir ganze folgendermaßen vorstellen:

du hast ein "dauerprogramm" (crawler) laufen, das eine relativ kleine "straßenkarte" hat. nun läuft es alle straßen (websites) ab, die es findet und speichert alle davon abgehenden straßen (links) in eine liste. sobald es in einer "sackgasse" ankommt, nimmt es einfach die nächste straße, auf der er noch nicht war, und  macht immer wieder das gleiche.

dabei speichert er alle straßen  die er noch nicht besucht hat in einer liste ab um sie sich zu merken. außerdem speichert er zu jeder straße noch informationen (alles was du gerade auf der aktuellen seite an textinformationen gibt). [[bilder ignorieren wir jetzt mal]]
jede website ist mindestens ein dorf, wenn nicht sogar eine stadt oder gar eine millionenstadt.
--> je größer die website, desto mehr gibt es zu indexieren.
alles was du speicherst wird vereinfacht als text in einer datenbank ablegt
(aufbau z.b.: | website | text | datum der indexierung | links | hauptseite | ...)
dann musst du deine indexierung möglichst oft wiederholen, da du ja aktuell sein möchtest. also z.b. ein zusätzliches "dauerprogramm" was nicht nach neuen websites sucht, sondern die alten auf änderungen und neue links untersucht.

um ein suchergebnis zu generieren, musst du dann eine
volltextsuche gegen deine datenbank laufen lassen und dann deine
ergebnisse auch noch mit gewissen algorithmen so sortieren, dass
wirklich das wichtigste ergebnis möglichts ganz oben erscheint.
-hier die suchmaschine um filter zu erweitern ist dan relativ simpel-
--> hierfür brauchst du ganz schön viel power!, denn du hast verdammt wie text der durchsucht werden muss.

=> du musst zusätzlich deine ganzen texte nochmals nach keywords indexieren und diese mit einer häufigkeitsabfrage von suchanfragen verknüpfen, damit du schneller die ergebnisse findest.

danach kann man an allen ecken und kanten unendlich viel optimieren.

=> dein hauptproblem ist und bleibt die serverlast. so viel rechenkapazität bekommst du nur mit rechenzentren hin. den speicherbedarf kannst du nicht bezahlen.

zitat google:
Unser Index umfasst weit über 100 Millionen Gigabyte

-> okay da sind zwar auch bilder und co mit indexiert, aber das ausmaß des internet ist einfach viel zu groß.

Keine passende Antwort gefunden?

Fragen Sie die Community

Weitere Fragen mit Antworten