Python

Як створити базу даних у MongoDB за допомогою Python

Як створити базу даних у MongoDB за допомогою Python
Немає сумнівів, що Python - це потужна і популярна мова програмування, здатна обробляти будь-який проект, який ми кидаємо. Він дуже гнучкий і може пристосовуватися до різних середовищ розробки, таких як тестування на проникнення до веб-розробки та машинного навчання.

У поєднанні з великими програмами, такими як ті, що потребують баз даних, Python додає більше функціональних можливостей, і з ними важко працювати, особливо для початківців.

Python знає, що цей додаток забезпечує нам кращі способи додавання баз даних до наших проектів без шкоди для нашого робочого процесу за допомогою простої та інтуїтивно зрозумілої бази даних NoSQL. Використовуючи Python та популярну базу даних NoSQL, MongoDB, розробка стає більш зручною та, загалом, веселою.

У цій статті ми розглянемо різні концепції баз даних MongoDB, щоб дати вам чітке розуміння того, що це означає. Після цього ми розглянемо, як встановити MongoDB на Linux, і покажемо, як використовувати Python для взаємодії з MongoDB.

Давайте почнемо:

Основний вступ до MongoDB

MongoDB - це база даних із відкритим кодом, що базується на документах, що забезпечує високу масштабованість та гнучкість. Як і більшість баз даних NoSQL, MongoDB використовує JSON для зберігання даних, що робить її однією з найбільш гнучких і простих баз даних для роботи, оскільки вона не вимагає схеми.

Завдяки своїй гнучкості та простоті навчання розробники часто використовують MongoDB для великих проектів, що вимагають швидкої швидкості читання та запису даних. Він поставляється в упаковці з драйверами для популярних мов програмування, таким чином усуваючи необхідність вивчати нові мови програмування перед його використанням.

ПРИМІТКА: Якщо ви не знайомі з поняттям баз даних SQL та NoSQL, перегляньте поданий нижче ресурс:

https: // www.mongodb.com / nosql-пояснено / nosql-vs-sql

Навчитися працювати з MongoDB - це важлива навичка, головним чином тому, що ми живемо у світі, керованому даними, де, будучи програмістом, ви будете працювати з даними 90% часу, якщо не більше.

Приємно зауважити, що MongoDB має не тільки те, що ми розглянемо у сьогоднішньому посібнику. Подумайте про перевірку офіційної документації та зовнішніх ресурсів, щоб дізнатись більше.

Як встановити MongoDB на Linux (Debian 10)

Давайте швидко розглянемо, як встановити MongoDB Community Edition на Debian 10.

ПРИМІТКА: Переконайтеся, що ви видаляєте пакет MongoDB, який підтримується Debian, оскільки це не офіційний пакет MongoDB, і якщо його не видалити, це може суперечити останній версії:

По-перше, переконайтесь, що ваша система оновлена, що можна зробити за допомогою команди:

sudo apt-get update && sudo apt-get upgrade -y

Далі встановіть GnuPG та імпортуйте відкритий ключ сховища MongoDB, використовуючи команду:

sudo apt-get install gnupg && wget -qO - https: // www.mongodb.org / static / pgp / server-4.4.asc | sudo apt-key add -

Додайте список файлів у джерела.список.d каталог за допомогою команди:

echo "deb http: // repo.mongodb.org / apt / debian buster / mongodb-org / 4.4 головних "| sudo tee / etc / apt / sources.список.г / монгодб-орг-4.4.список

Оновіть свої локальні сховища та встановіть пакет mongodb-org.

sudo apt-get update && sudo apt-get install mongodb-org

Після того, як ви успішно встановили MongoDB, запустіть службу, використовуючи систему наступним чином:

sudo systemctl запустити

Ви також можете запустити оболонку mongo за допомогою команди mongo

Як використовувати Python для роботи з MongoDB

Давайте зараз обговоримо, як використовувати Python для роботи з MongoDB.

На цьому етапі я припускаю, що у вас вже встановлено та встановлено Python у вашій системі.

Оскільки це швидкий посібник для початківців, а не вичерпний посібник MongoDB, ми обговоримо лише основи використання PyMongo для взаємодії з базою даних.

PyMongo

Ми розглянемо стандартний метод при взаємодії з MongoDB для використання офіційного драйвера Python, PyMongo. PyMongo - це дуже ефективний спосіб роботи з Python і MongoDB і є одним з найкращих способів розпочати роботу.

ПРИМІТКА: Хоча цей посібник із початку роботи містить безліч деталей, вам слід заглянути в офіційну документацію, щоб дізнатись більше.

Ось декілька ресурсів для вашого розгляду:

https: // pymongo.readthedocs.io / en / stable / index.html
https: // pypi.org / project / pymongo /
https: // docs.mongodb.com / drivers / pymongo

Як встановити PyMongo

Як зазвичай, перше, що нам потрібно зробити, це встановити драйвер PyMongo у нашому середовищі Python; Ви можете використовувати конда або піп.

Для встановлення використовуйте команду:

pip встановити

Дочекайтеся завершення необхідних транзакцій, і ви успішно встановите PyMongo у вашій системі. Для підтвердження запустіть інтерактивну оболонку python і виконайте команду:

>>> імпорт pymongo

Після успішного запуску без помилок ви успішно встановили PyMongo, і ми можемо перейти до наступного розділу.

Як використовувати PyMongo для підключення до MongoDB

Для підключення до MongoDB за допомогою PyMongo ми використовуємо об'єкт MongoClient і створюємо екземпляр для mongod, головного процесу демона для MongoDB.

>>> з імпорту pymongo MongoClient
>>> клієнт = MongoClient (“localhost”, 27017)

Вищезазначений фрагмент коду імпортує об'єкт MongoClient з PyMongo, а потім створює екземпляр клієнта для mongod. Якщо вам не потрібно вказувати цільовий хост і порт, ви можете залишити їх порожніми, встановивши тим самим з'єднання за замовчуванням.

Ви також можете використовувати формат URI MongoDB як:

>>> клієнт = MongoClient ("mongodb: // localhost: 27017 /")

Обидва ці методи будуть робити одне і те ж; це залежить лише від того, що ви віддаєте перевагу використовувати у своєму проекті.

Як створити базу даних за допомогою PyMongo

Використання PyMong для створення бази даних у MongoDB є відносно простим. Все, що вам потрібно зробити, це запитати базу даних, і якщо вона не існує, MongoDB створить її автоматично.

Розглянемо наведений нижче код:

>>> з імпорту pymongo MongoClient
>>> клієнт = MongoClient ("localhost", 27017)
>>> база даних = клієнт ["test_database"]

Ви також можете використовувати метод атрибутів, а не метод словника, для доступу до бази даних.

>>> база даних = клієнт.test_database

На відміну від інших баз даних, у MongoDB база даних не створюється повністю, поки колекції (дані) не будуть збережені - уявіть колекції як таблиці в базах даних SQL.

Як вставити документи в базу даних

Як уже згадувалося на початку цього підручника, MongoDB зберігає дані як документи JSON, що зберігаються в колекції - уявіть документи як рядки в базах даних SQL.

У PyMongo ми використовуємо словники python для представлення документа. Розглянемо такий приклад коду:

від імпорту pymongo MongoClient
клієнт = MongoClient ("localhost", 27017)
база даних = клієнт ["movie_db"]
фільми = база даних.фільми
фільм_ =
"title": "Пане. Робот ",
"У головних ролях": "Рамі Малек, Крістіан Слейтер, Карлі Чайкін",
"created": "Сем Есмаїл",
"Рік": "2016"

id = фільми.insert_one (movie_).insert_id
друк (ідентифікатор)

Цей код повинен надрукувати ідентифікатор, як показано:

5ff57066fee7e4e965f02267

Коли ми створюємо новий документ і додаємо його до колекції, створюється спеціальний ключ або _id. Значення ідентифікатора має бути унікальним у наборі наборів.

Ми можемо перевірити наявність бази даних, колекції та документа за допомогою простого запиту.

>>> база даних.list_collection_names ()
['фільми']

Програмісти - ніщо, якщо не ефективно - і ліниво.

Через цей нахил за замовчуванням ми також можемо використовувати метод insert_many () для додавання декількох документів замість одного документа за допомогою методу insert_one ().

Розглянемо наведений нижче код:

від імпорту pymongo MongoClient
клієнт = MongoClient ("localhost", 27017)
база даних = клієнт ["movie_db"]
фільми = база даних.фільми
фільми_ = [

“Title”: “Mr. Робот "
"У головних ролях": "Рамі Малек, Крістіан Слейтер, Карлі Чайкін"
"created": "Сем Есмаїл",
“Рік”: “2016 рік."
,

“Title”: “Теорія Великого Вибуху”,
"У головних ролях": "Джим Парсонс, Кейлі Куоко, Джонні Галекі, Куналь Найяр, Саймон Хелбер, Майїм Бялік, Меліса Раух"
"Створено": "Чак Лорр, Білл Праді",
“Рік”: “2007."
,

"title": "Зоряний шлях: оригінальна серія",
"У головних ролях": "Вільям Шатнер, Леонард Німой, Нішель Ніколас"
"Створено": "Джин Родденберрі",
“Рік”: “1966 рік."

]
ідентифікатори = фільми.insert_many (фільми_).insert_ids
друк (ідентифікатори)

Це має дати вам ідентифікатори вставленого документа, як показано нижче:

[ObjectId ('5ff5749fbbc71282a634303d'), ObjectId ('5ff5749fbbc71282a634303e'), ObjectId ('5ff5749fbbc71282a634303f')]

Як отримати документи

Отримати документи з колекції також дуже просто, і за допомогою методу find_one () ми можемо зробити це за один рядок коду. Розглянемо наведений нижче приклад для збору фільмів Джина Родденберрі.

друк (фільми.find_one ("Створено": "Джин Роденберрі"))

Це має отримати всі фільми, створені Джином Родденберрі, у цій базі даних.

'_id': ObjectId ('5ff57472e027b7cd22b1f2f4'), 'title': 'Star Trek: Original Series', 'Starring': 'William Shatner, Leonard Nimoy, Nichelle Nicholas,', 'Created': 'Gene Roddenbery', ' Рік ':' 1966 '

Ви можете переглянути графічний інтерфейс бази даних та колекцій. Ось знімок екрана, зроблений за допомогою MongoDB Compass у Windows.

Висновок

Щоб ефективно використовувати мову програмування Python під час роботи з базами даних, вам знадобиться гнучка та ефективна база даних для вашого проекту. MongoDB - правильний вибір. Будь ласка, не помиляйтесь, це означає, що MongoDB - найкращий вибір баз даних за всю історію. Він має недоліки, але також є ідеальним вибором для більшості випадків використання.

Цей посібник надав вам усе необхідне, щоб почати експериментувати з базами даних, використовуючи вибрану вами мову.

На розставання, подумайте про читання документації та посібників, щоб глибше зрозуміти цю тему.

Control & manage mouse movement between multiple monitors in Windows 10
Dual Display Mouse Manager lets you control & configure mouse movement between multiple monitors, by slowing down its movements near the border. Windo...
WinMouse lets you customize & improve mouse pointer movement on Windows PC
If you want to improve the default functions of your mouse pointer use freeware WinMouse. It adds more features to help you get the most out of your h...
Mouse left-click button not working on Windows 10
If you are using a dedicated mouse with your laptop, or desktop computer but the mouse left-click button is not working on Windows 10/8/7 for some rea...