Ist das ein guter Ansatz für den Aufbau einer imagebibliothek in .NET?

Ich habe ein Projekt erhalten, das den Aufbau einer Fotobibliothek für unser Firmen-Intranet beinhaltet und ich bin mir nicht sicher, wie es am besten ist, sich dem zu nähern. Ich wäre sehr gespannt darauf, deine Meinung darüber zu hören, wie ich das anpacken sollte. Ich entschuldige mich auch vorne, wenn meine Frage für diese Boards unangemessen ist, da ich realisiere, dass es subjektiv sein kann, aber ich weiß nicht, wo sonst es zu sagen ist?

DAS PROBLEM:

Um anzufangen, werden wir in der Region von mehreren hunderttausend imageern von verschiedenen Größen hosten und es muss eine webbasierte Lösung sein. Ich werde auch in .Net / MS Sql server entwickeln. Im Idealfall möchte ich das in Umbraco CMS integrieren, da die meisten unserer Administratoren mit dieser interface vertraut sind. Die data müssen nicht unbedingt im CMS gespeichert werden – es muss lediglich editierbar sein und es Benutzern erlauben, Elemente daraus hinzuzufügen / zu löschen.

Meine größte Sorge hier ist performance. Wir wollen nicht, dass die Benutzer Minuten für die Ergebnisse warten. Idealerweise wollen wir sie in Sekundenschnelle zurückkehren.

Grundsätzlich möchte ich etwas wie alamy / istockphoto emulieren. Ich möchte, dass jedes image einen zugehörigen Titel, eine Jobnummer, einen Projektnamen, eine Kategorie, Tags usw. mit einem Thumbnail und dann natürlich einen Link zum rohen, Vollbild hat.

Nur um zu klären, sind einige dieser imageer sehr groß (1gb + TIFFs). Wir haben auch schon alle fileen auf einem separaten fileserver. Die Rolle dieser Fotobibliothek sollte lediglich darin bestehen, die datasätze in der database mit den physischen fileen abzubilden, nicht die Struktur des vorhandenen filesystems oder so ähnlich zu ändern.

MEINE VORGESEHENE LÖSUNG:

Ich denke, die erste Aufgabe sollte es sein, eine database zu erstellen, die alle Standard-properties wie ID, Job-Nummer, Alias, Image-file Pfad etc. zu speichern. Ich werde dann separate Tags / Kategorien Tabellen mit einem vielen-to- viele beziehung

Sobald ich die Tabellen erstellt habe, schreibe ich einige benutzerdefinierte Steuerelemente für das CMS, die es einem Administrator erlauben, sich einzuloggen und datasätze aus der database hinzuzufügen / zu bearbeiten / zu entfernen.

Ich denke dann an die Umsetzung von Lucene.net, um meine Aufzeichnungen zu durchsuchen. Von dem, was ich sammeln kann es scheint wie eine gute API für immer schnelle Ergebnisse.

Ist das eine anständige Lösung? Ich habe mich noch nie mit vielen Projekten dieser Skala beschäftigt, also bin ich ein bisschen verwirrt über meine Optionen. Wenn jemand mich einfach in die richtige Richtung stellen könnte, würde ich es sehr schätzen. Ich möchte auch die Lösung so einfach wie möglich halten.

Danke vielmals!

Ich würde sagen, du bist auf den richtigen Linien.

  • Sei nicht versucht zu versuchen, die imageer in der DB zu speichern. Erlaube dem fileserver den Umgang mit den physischen fileen.
  • Erzeugen Sie einige kleine jpg / png thumbnails für die imageer. Auf diese Weise wird es bei der Abfrage und search nicht verlangsamen. Ich würde für zwei Varianten gehen – eine, die in den searchrgebnissen zu zeigen und eine bessere Qualität für das Bohren in.
  • Überlegen Sie, wie Sie Gb sortierte imageer an Ihre Benutzer liefern werden.
  • Betrachten Sie das Hinzufügen von Metadaten zu den imageern selbst. Auf diese Weise sind die data auch mit den eigentlichen imageern.
  • Ich kann nicht auf Lucene .Net kommentieren, da ich es nicht benutzt habe, aber ich würde sagen, dass der SQL-server mehr als fähig sein sollte, die imagedaten mit Hilfe der nativen Volltextsuche zu durchsuchen und zu bedienen. Ich würde sicher damit anfangen und sehen, wie du gehst