Amazon DynamoDB, S3 oder mit SQL Server RDS für BLOB fortfahren?

367
Jimson Kannanthara James

Im Moment verwenden wir den lokalen SQL Server 2016 als DB-Server und planen, ihn zu Amazon RDS zu verschieben. Das Problem ist, derzeit wird eine Dateistream-Dateigruppe verwendet, um gelegentlich binäre Blobs wie einige kleine Bilder, wenige Json- und XML-Dateien, einige MS Office-Dokumente usw. zu speichern. Die Verwendung ist sehr gelegentlich und die Dateigrößen reichen von wenigen Hundert KB bis wenige MB.

Da RDS SQL Server FILESTREAM noch nicht unterstützt, muss es ausgezogen werden.

Was ist der ideale empfohlene Ansatz? 1. Amazon DynamoDB - Durch Erstellen eines Wrapper-Objekts, das die Dokumente enthält. Die 400-KB-Attributbeschränkung ist jedoch ein Problem. 2. Amazon S3 als Dokumentenspeicher und Platzieren der S3-URL in SQL Server anstelle des binären Blobs. 3. Verwenden Sie weiterhin SQL Server, verschieben Sie das FILESTREAM jedoch in eine andere Zeilendaten-Dateigruppe, damit die primären Zeilendaten nicht beeinträchtigt werden.

In Anbetracht der Programmierschwierigkeit wäre Option # 3 die einfachste, da absolut keine Codierung erforderlich ist und die Änderung auf einige Schemaänderungen beschränkt ist. und Option # 2 wäre am schwierigsten (da dazu das richtige Programmiermuster benötigt wird).

Was wäre die beste Vorgehensweise, wenn man die Programmierschwierigkeit, Leistung, Skalierbarkeit / Verfügbarkeit und Verwendung berücksichtigt?

1

0 Antworten auf die Frage