Продуктивные oodbms для питона?
Кто-нибудь может мне сказать и описать, какую реализацию oodbms можно использовать для продуктивного веб-приложения, в котором хранятся все постоянные данные.
2 ответа
Может быть, вы должны взглянуть на ZODB. Его легко и просто использовать, даже если сообщество пользователей не такое большое, как у других СУБД.
После некоторых исследований и тестов. я нашел MongoDB продуктивным, потому что:
MongoDB (от "humongous") - это масштабируемая, высокопроизводительная база данных NoSQL с открытым исходным кодом. Написанные на C++, возможности MongoDB:
Документно-ориентированное хранение "Документы в стиле JSON с динамическими схемами предлагают простоту и мощь.
Полная поддержка индекса "Индексируйте любой атрибут, как вы привыкли.
Репликация и высокая доступность "Зеркальное отображение между локальными и глобальными сетями для масштабирования и спокойствия.
Авто-Sharding "Масштабирование по горизонтали без ущерба для функциональности.
Запросы "Богатые, основанные на документе запросы.
Быстрые обновления на месте "Атомные модификаторы для безостановочной производительности.
Карта / Уменьшить "Гибкая агрегация и обработка данных.
GridFS "Храните файлы любого размера, не усложняя ваш стек.
Коммерческая поддержка "Корпоративная поддержка, обучение и консультации доступны.
РЕДАКТИРОВАТЬ 1:
Пакеты, которые предоставляют mongodb в python:
Humongolus Humongolus - это облегченная среда ORM для Python и MongoDB. Название происходит от сочетания MongoDB и Homunculus (концепция миниатюрного, но полностью сформированного человеческого тела). Humongolus позволяет создавать модели / схемы с надежной проверкой. Он пытается быть как можно более питоническим и выставляет объекты курсора пимонго, когда это возможно. Код доступен для скачивания на github. Учебные руководства и примеры использования также доступны на GitHub.
MongoKit Платформа MongoKit представляет собой ORM-подобный слой поверх PyMongo. Существует также группа Google MongoKit.
Ming Ming (Merciless) - это библиотека, которая позволяет вам применять схемы в базе данных MongoDB в вашем приложении Python. Он был разработан SourceForge во время их миграции в MongoDB. Смотрите вступительный пост в блоге для более подробной информации.
MongoAlchemy MongoAlchemy - еще один ORM-подобный слой поверх PyMongo. Его API вдохновлен SQLAlchemy. Код доступен на github; Для получения дополнительной информации см. учебник.
MongoEngine MongoEngine - это еще один ORM-подобный слой поверх PyMongo. Он позволяет вам определять схемы для документов и коллекций запросов, используя синтаксис, вдохновленный Django ORM. Код доступен на github; Для получения дополнительной информации см. учебник.
Minimongo Minimongo - это легкий, питонский интерфейс к MongoDB. Он сохраняет API запросов и обновлений Pymongo и предоставляет ряд дополнительных функций, в том числе простой ориентированный на документы интерфейс, пул соединений, управление индексами, а также помощники по сбору и именованию баз данных. Источник на github.