-2

Это мой первый раз, когда вы создаете веб-приложение, использующее hibernate и postgresql. Я намерен использовать Amazon S3 при публикации веб-сайта. Поэтому мне интересно, нужно ли мне динамически менять свой код? В частности, смогу ли я спящий режим сфокусироваться на таблицах S3? Будет ли S3 поддерживать postgresql? Или прямо, что мне делать после завершения проекта?Hibernate + postgresql + Amazon S3

Извините, если это глупые вопросы; но этот мир для меня так новенький. Если есть какие-то ресурсы, которые помогли бы моим знаниям, я хотел бы углубиться в это.

+1

Hibernate ORM предназначен для сохранения реляционных хранилищ (например, PostgreSQL), а S3 - это просто хранение объектов. Непонятно, о чем вы просите. – mkobit

+0

На самом деле, я не знаю, что спросить, так как у меня пока нет достаточных знаний об этом поле.Поэтому я отправляю вопрос с надеждой, что кто-то поделится некоторыми своими ценными знаниями со мной. –

+0

И под полем, что вы имеете в виду? «Я намерен использовать Amazon S3 при публикации веб-сайта», на самом деле не имеет смысла для меня, поскольку я не понимаю, какую проблему вы пытаетесь решить или в каком контексте это означает. Почему вы хотите использовать S3? Что вы пытаетесь выполнить и почему вы решили использовать эти инструменты? – mkobit

ответ

4

Я думаю, вы смущены.

Возможно, вы имеете в виду Amazon RDS for PostgreSQL, услугу реляционной базы данных для AWS? С RDS он почти такой же, как и любая другая установка PostgreSQL; только с несколькими недостатками и ограничениями:

  • Вы не получите прав доступа суперпользователя;
  • Вы не можете установить пользовательские расширения, вы ограничены теми, которые предоставляет Amazon;
  • Вы не можете воспроизвести в или из RDS или принимать физические резервные копии/WAL архивы в или из RDS
  • Вы не можете войти в или управлять компьютером PostgreSQL работает на непосредственно

RDS Безразлично Не запускайте свою программу, как ваш Java + Hibernate. Это просто база данных. Если вы хотите запустить свой собственный код, вам необходимо разместить его на EC2 (где вы можете использовать RDS для базы данных или собственную установку БД на своих узлах EC2) или использовать Elastic Beanstalk.

Amazon S3 - это магазин предметов. Вы храните и загружаете в него файлы. Это не база данных в каком-либо значимом смысле. Это в некоторой степени похоже на файловую систему , чем на любую базу данных. Совершенно бессмысленно говорить о Hibernate со ссылкой на S3. В S3 нет «таблиц» или «полей». (Вы можете опубликовать статический веб-сайт с S3, но я не думаю, что это то, что вы пытаетесь сделать здесь, если используете Java и Hibernate).

Если вы не имеете в виду RDS, возможно, вы имеете в виду EC2? Это elastic cloud compute service (EC2). Он запускает виртуальные машины. Вы можете запустить PostgreSQL поверх этих виртуальных машин, если хотите. (RDS - это только автоматическая версия этого, которая скрывает все детали и управляет всем этим для вас). С EC2 + PostgreSQL он похож на PostgreSQL в другом месте, вы подключаетесь через обычный сетевой сокет.

Вы также можете подумать о simple database service, SimpleDB. Это хранилище ключей/значений. Вы не можете использовать Hibernate. В нем нет таблиц. Это нереляционная база данных. Существует также DynamoDB, проприетарный механизм реляционной базы данных.

Другое, что я могу думать о том, что вы можете иметь значение, это Redshift, a column-store based on ParAccel that's partially PostgreSQL compatible. Hibernate будет работать с этим, но если вы новичок в базах данных, вы делаете не нужно Redshift.

Если у вас есть сомнения, используйте RDS или, возможно, экземпляр EC2, работающий с PostgreSQL. Отправьте свой код в экземпляр EC2 или адаптируйте его для запуска по адресу Elastic Beanstalk.