Можно ли использовать Sequelize с Redshift? Если нет, то каковы альтернативы? Мне нужен ORM для Node.js со встроенной поддержкой транзакций, поэтому Sails.js не является вариантом. Я также посмотрел Bookshelf, но не нашел поддержки для Redshift.Использование Sequelize с Redshift
ответ
Redshift основан на вершине postgres 8.0.2 (http://docs.aws.amazon.com/redshift/latest/dg/c_redshift-and-postgres-sql.html), поэтому как postgres, так и sequelize должны быть в состоянии подключиться к нему.
У меня нет никакого личного опыта с ним, но документация красного смещения предполагает, что вы можете подключиться к нему с помощью регулярных драйверов JDBC/ODBC, так что я был бы удивлен, если водители узла не работают
Sequelize несовместим с Redshift. Хотя Redshift написан поверх Postgres, это столбчатая БД, и основные основные функции переписываются.
При попытке подключения к ней выдает ошибку «Set Time Zone не поддерживается»
Следующая нить показывает несколько людей переопределения ошибки часового пояса, но, с которыми сталкиваются другие проблемы в дальнейшей. 'Using Node 'pg' library to connect to Amazon Redshift
если Redshift является обязательным, вы можете использовать пакет узлового-JDBC для подключения с Redshift https://github.com/CraZySacX/node-jdbc
из если ОРМ является обязательным, вы должны, возможно, попытайтесь переместить хранилище данных чистых Postgres
Я был в состоянии получить sequelize по крайней мере подключения к Redshift (и сделать простой запрос на выборку) с этими параметрами:
var Sequelize = require('sequelize');
Sequelize.HSTORE.types.postgres.oids.push('dummy'); // avoid auto-detection and typarray/pg_type error
module.exports = new Sequelize(process.env.REDSHIFT_DATABASE, process.env.REDSHIFT_USER, process.env.REDSHIFT_PASSWORD, {
host: process.env.REDSHIFT_HOST,
port: process.env.REDSHIFT_PORT,
dialect: 'postgres',
pool: false,
keepDefaultTimezone: true, // avoid SET TIMEZONE
databaseVersion: '8.0.2' // avoid SHOW SERVER_VERSION
});
- 1. Использование bycryptJS с sequelize
- 2. Использование магистрали с sequelize/postgres
- 3. Использование BCrypt с Sequelize Model
- 4. Использование Sequelize вместе с ActiveRecord
- 5. Использование метода POST с Sequelize
- 6. Использование схем Postgresql с Sequelize
- 7. использование bulkDestroy в Sequelize
- 8. Использование нескольких баз данных Django с RedShift
- 9. Что означает «использование» в Redshift?
- 10. Возможно ли использование трансакции с помощью sequelize?
- 11. Sequelize: Использование нескольких баз данных
- 12. Использование Sequelize как Rails console
- 13. Sequelize model case insensitive
- 14. Использование функции sql generate_series() в redshift
- 15. использование Sequelize включена модель в где-объект
- 16. Использование нескольких диапазонов дат в Amazon Redshift
- 17. Sequelize ExpressJS Использование идентификатора для метода почты
- 18. Sequelize - Query to Sequelize методы
- 19. Создание с соответствующими экземплярами - Sequelize
- 20. Sequelize pagination
- 21. Использование функции на объединенной таблице в Sequelize
- 22. Использование транзакции в Sequelize для Postgres
- 23. Использование group by и join in sequelize
- 24. QueryDSL с настройкой Redshift
- 25. Использование psycopg2 с Lambda для обновления Redshift (Python)
- 26. Distinct граф с sequelize
- 27. Интеграционные тесты с Sequelize
- 28. Sequelize model.update с ассоциацией
- 29. Сохранение объекта с Sequelize
- 30. Sequelize обновление с ассоциацией
Кажется узел-пг (который используется как sequelize и книжной полке) подключается повторно dshift просто отлично https://github.com/brianc/node-postgres/issues/686 –
Это ранее [вопрос] (http://stackoverflow.com/questions/28178923/using-node-pg-library-to-connect -to-amazon-redshift) предполагает, что были проблемы с часовыми поясами, но они, возможно, были исправлены к настоящему времени. –
Вопрос о часовой пояс был исправлен да. Я не знаю никаких проблем, ни один из них не был зарегистрирован в официальном сиквелите отслеживания ошибок (полное раскрытие, я являюсь разработчиком продолжения) –