Verwenden einer zusätzlichen externen Datenbank?
am 28.10.2013 - 13:11 Uhr in
Mal angenommen ich bau eine Seite wo es um Autos geht. Macht es einen Sinn zusätzlich zur Default Datenbank die Autos in eine extra Datenbank auszulagern? Wobei die Autodatenbank nicht die Drupalstruktur von normalen Nodes verwenden würde. Oder anders gefragt ist das dann überhaupt möglich? Da man ja so vermutlich über die Drupal UI keine Felder mehr anlegen oder verwalten könnte.
Die Frage stellt sich aus zwei Gründen:
- Die Autodatenbank ist vielleicht bereits vorhanden und wird auch durch andere Systeme verwendet.
- Hat man dadurch Performance Vorteile oder Nachteile?
Mir geht es jetzt nicht darum dass ich das wirklich so machen will. Aber meine Kunde erwartet dass ich es zumindest hinterfrage. Ich würde gerne Vor- und Nachteile hören, oder eben ob es überhaupt möglich ist sowas mit Drupal zu machen.
Danke im Voraus für Eure Antworten
kitikonti
- Anmelden oder Registrieren um Kommentare zu schreiben
hi kitikontigrundsätzlich
am 28.10.2013 - 16:12 Uhr
hi kitikonti
grundsätzlich kannst du auch andere datenbanken
in deine drupal installation verwenden
schau mal hier
http://yoodey.com/how-create-and-access-multiple-database-drupal-7
ansonsten wäre es auch ein szenario das du deine autodatenbank
mit migrate mit drupal verknüpfst,
http://drupal.org/project/migrate
insbesondere wenn in die autodatebnak noch weiterhin daten eingetrgen werden
kannst du per migrate ein ständiges update fahren
noch ein anderer weg ist das du deine db per views einbindest
hook_views_data ist da dein freund
https://api.drupal.org/api/views/views.api.php/function/hook_views_data/7
siehe hier:
http://stackoverflow.com/questions/7891518/drupal-7-custom-view-with-cus...
wenn du deine custom table per views reinhängst kannst du auch die
view ui nutzen,
per zugriff auf das $sql objekt kannst du dann einen join anhängen und
direkt deine drupal entities verknüpfen
langeredekurzersinn:
ja, es geht was du vorhast, so oder so. #
abhängig von deinem szenario..
vg
stef
Vielen Dank für deine
am 28.10.2013 - 17:26 Uhr
Vielen Dank für deine Antwort,
interessant zu wissen das es grundsätzlich möglich ist. Tendiere aber sehr stark zu der Migration der Daten entweder per "migrate" oder per "feeds". Die anderen Techniken schränken einfach zu sehr ein, das verarbeiten der Daten ist nur mit eigenen Modulen möglich und mann kann keine Funktionen von anderen Modulen verwenden, das fängt an bei der Übersetzung bis zu Tagging und Rules usw....
Was für mich jedoch noch wichtig wäre ist ob man durch das aufsplitten der Datenbank einen messbaren Performance Gewinn erwarten kann oder nicht. Ich vermute mal wenn überhaupt dann nur bei Seiten mit Enormen Zugriffszahlen wobei das wieder eher un relevant wird durch caching. Korrigiert mich wenn ich falsch liege.
Zitat: Was für mich jedoch
am 29.10.2013 - 17:42 Uhr
Was für mich jedoch noch wichtig wäre ist ob man durch das aufsplitten der Datenbank einen messbaren Performance Gewinn erwarten kann oder nicht
".. einen messbaren Performance Gewinn .." im gegensatz zu was?
und ja, es hängt ja auch von deiner Serverkonfiguartion, verwendung von Cachingm etc
ab ob die Performance Deiner Seite gut ist oder nicht.
Ein Datenbankswitch innerhalb eines PHP Skriptes innerhalb eines DB Servers ist da sicher kein Faktor