Trọng hướng dẫn Python của chúng tôi , chúng tôi đã nghiên cứu Quyền truy cập cơ sở dữ liệu Python. Ở đây, trong hướng dẫn NoSQL DB Python này, chúng tôi sẽ nghiên cứu hoạt động của NoSQL DB trong ngôn ngữ lập trình Python. Ngoài ra, chúng ta sẽ thảo luận về nhu cầu và lợi ích của Cơ sở dữ liệu Python NoSQL. Cùng với phần này sẽ nghiên cứu các loại NoSQL khác nhau và các chức năng khác nhau như cách chèn vào, cập nhật và xóa dữ liệu từ NoSQL DB. Chúng tôi sẽ sử dụng MongoDB cho công việc này. Cuối cùng, chúng tôi sẽ đề cập đến NoSQL và SQL
Các bài viết liên quan
- Cách học Python trong Khoa học dữ liệu
- Python cho Khoa học dữ liệu
- Đọc tệp CSV, JSON, XLSX bằng Python
- Thiết lập Môi trường khoa học dữ liệu cho Python
- Làm sạch dữ liệu với Pandas và Numpy
Vì vậy, hãy bắt đầu NoSQL DB bằng Python
Tóm tắt nội dung
NoSQL DB là gì?
Trước khi bắt đầu NoSQL DB bằng Python, chúng ta hãy tìm hiểu về NoSQL
NoSQL extension to “Không phải là SQL”. Nó cho chúng ta một cách để lưu trữ và truy xuất dữ liệu mà chúng ta có thể thiết lập mô hình ở các định dạng khác với định dạng quan hệ [bảng]. Phần NoSQL DB được sử dụng lớn trong các ứng dụng liên quan đến dữ liệu lớn và thời gian sử dụng. Lý do tôi gọi họ là “Không phải là SQL” là vì họ có thể hỗ trợ các ngôn ngữ truy vấn giống SQL. Chúng ta có thể sử dụng NoSQL để lưu trữ dữ liệu ở các định dạng như từ khóa-giá trị, tài liệu, cột và đồ thị. Khi làm việc với bộ dữ liệu phân tán lớn, chúng tôi sử dụng NoSQL
Xem thêm Kiểm tra lỗi bảo mật SQL injection trong NoSql
Cần chọn NoSQL DB bằng Python
Vì vậy, tại sao chúng ta cần NoSQL?
- Thay vì máy chủ nguyên khối lớn và cơ sở hạ tầng lưu trữ, các tổ chức hiện sử dụng điện toán đám mây, phần mềm nguồn mở và máy chủ hàng hóa
- Các dự án hiện đang áp dụng phương pháp tiếp cận nhanh chóng thay vì vận chuyển hệ thống thác nước dài [Agility]
- Cần phải làm việc với khối lượng lớn dữ liệu thường xuyên thay đổi kiểu. Các loại bao gồm dữ liệu cấu trúc phi cấu trúc, bán cấu trúc, có cấu trúc và đa cấu hình
- Quy mô khai báo đã tăng theo cấp số nhân trong những năm qua [Khả năng mở rộng]
Các loại cơ sở dữ liệu với NoSQL
Như chúng ta đã thảo luận trước đây, chúng ta có các loại dữ liệu khác nhau mà chúng ta có thể thiết lập mô hình với NoSQL DB bằng Python-
Cơ sở dữ liệu tài liệu
Trong cơ sở dữ liệu tài liệu, mỗi từ khóa ghép nối với một tài liệu. Tài liệu là một cấu trúc dữ liệu phức tạp và có thể chứa bất kỳ cặp từ khóa-giá trị, cặp từ khóa-mảng, tài liệu lồng nhau nào sau đây. Những dữ liệu này lưu trữ dữ liệu bán cấu trúc
Chúng tôi sử dụng chúng cho các ứng dụng như quản lý nội dung và xử lý dữ liệu ứng dụng di động
Graph database
Kho lưu trữ đồ thị chứa kiến thức về dữ liệu mạng. Một trong những mạng như vậy là kết nối xã hội. Trong một cửa hàng đồ thị, một nút giống như một bản ghi trong hệ thống cơ sở dữ liệu và một cạnh giống như một kết nối giữa các nút. Điều này cho phép nó có thể hiện các mối quan hệ dữ liệu tốt hơn. Chúng tôi sử dụng chúng cho các ứng dụng như CRM và hệ thống đặt chỗ. Một số ví dụ là Neo4J và Giraph
Cơ sở dữ liệu khóa-giá trị
Kho khóa-giá trị giữ các cặp khóa-giá trị trong cấu trúc của nó. This is NoSQL DB đơn giản nhất. Chúng tôi sử dụng chúng trong các ứng dụng như quản lý phiên bản và bộ đệm trong các ứng dụng web. Một số ví dụ bao gồm Riak, Redis và Berkeley DB
Wide-column database
Khi chúng tôi muốn lưu trữ các cột hoạt động cùng với truy vấn trên tệp dữ liệu lớn, chúng tôi có thể sử dụng các cột rộng. Chúng tôi cũng thấy chúng trong cơ sở dữ liệu SQL và chúng truy vấn khối lượng lớn nhanh hơn. Một số ví dụ là Cassandra , HBase và Google BigTable. Đọc về pháp y Python – Hàm băm, ảo hóa
Xem thêm Tấn công SQL injection là gì?
Lợi ích của việc sử dụng NoSQL DB
Đây là những ưu điểm sau của NoSQL DB bằng Python, hãy thảo luận từng cái một
- Lập trình hướng đối tượng dễ dàng và linh hoạt
- Khối dữ liệu lớn thay đổi nhanh chóng- phi cấu trúc, có cấu trúc hoặc bán cấu trúc
- Quy mô kiến trúc được phân bố theo địa lý
- Chạy nước rút nhanh, mã thông thường, lặp lại lược đồ nhanh chóng
NoSQL và SQL
Vì thế, hai cái này khác nhau như thế nào?
- Lược đồ thường là động cho NoSQL nhưng cố định cho SQL
- NoSQL có thể có nhiều loại cơ sở dữ liệu khác nhau, như đã thảo luận, nhưng SQL chỉ có một
- NoSQL xuất hiện vào cuối những năm 2000, SQL đã có mặt ở đây từ những năm 1970
- Đối với SQL, mô hình lưu trữ dữ liệu là các bản ghi riêng lẻ, nhưng đối với NoSQL, điều này phụ thuộc vào loại cơ sở dữ liệu
- NoSQL có quy mô theo chiều ngang;
- Đối với NoSQL, phát triển là mã nguồn mở;
- NoSQL DB được sử dụng xác định hỗ trợ cho các ACID giao dịch;
- Ví dụ về NoSQL DB là MongoDB, Cassandra, Neo4J và HBase;
Xem thêm Kiểm tra lỗi bảo mật SQL Injection
Cài đặt Điều kiện quyết định của NoSQL DB bằng Python
Trong hướng dẫn Cơ sở dữ liệu Python NoSQL này, chúng tôi sử dụng thư viện pymongo. Đây là thức điều khiển chính được xuất bản bởi các nhà phát triển Mongo. Bạn có thể cài đặt nó theo cách này
pip install pymongo
Phiên bản cài đặt phần 3 này. 7. 0, là phiên bản mới nhất của pymongo tại thời điểm viết bài viết này
Bạn cũng cần cài đặt cơ sở dữ liệu MongoDB
Các hoạt động đã được thực hiện trong NoSQL DB bằng Python
Xem thêm Kiểm tra lỗi bảo mật SQL injection Phía máy khách
Chèn bản ghi
Để chèn dữ liệu vào NoSQL DB trong Python 3, chúng tôi sử dụng phương thức chèn []. Đây là mã chúng tôi sử dụng trong dấu nhắc lệnh [Bạn cũng có thể chạy một tập lệnh hoặc chỉ cần sử dụng trình thông dịch]
from pymongo import MongoClient # khai báo thư viện pymongo from pprint import pprint # sử dụng thư viện pprint client=MongoClient[] #tạo đối tượng client db=client.test #kết nối đến database student=db.student student_record={ # tạo record sinh viên 'Name':'Ayushi Sharma', 'Enrolment':'0875CS191003', 'Age':'22'} result=student.insert_one[student_record] # insert record vào database pprint[student.find_one[{'Age':'22'}]] # show ra một sinh viên có tuổi 22
Cập nhật bản ghi
Bây giờ để cập nhật dữ liệu này, chúng tôi sử dụng phương thức cập nhật []
from pymongo import MongoClient# khai báo thư viện pymongo from pprint import pprint # sử dụng thư viện pprint client=MongoClient[] #Choose client db=client.test #kết nối đến database student=db.student db.student.update_one[{'Age':'22'}, {'$set': {'Name':'Name update', # cập nhật name =Name update 'Enrolment':'0875CS191003', 'Age':'23'}}] #Choosing the record to update pprint[student.find_one[{'Age':'23'}]
Xóa hồ sơ
Bây giờ để xóa bản ghi này, chúng ta có thể sử dụng phương thức xóa []
from pymongo import MongoClient# khai báo thư viện pymongo from pprint import pprint# sử dụng thư viện pprint client=MongoClient[] #Choose client db=client.test #kết nối đến DB student=db.student db.student.delete_one[{'Age':'23'}]# xóa một object có age = 23 pprint[student.find_one[{'Age':'23'}]
Ở đây, Python in Không có vì nó không thể tìm thấy bản ghi đó trong cơ sở dữ liệu
Vì vậy, đây là tất cả về NoSQL DB bằng Python. Hy vọng bạn thích giải thích của chúng tôi
Kết luận
Do đó, điều này giúp bạn bắt đầu với những điều kiện cơ bản của công việc sử dụng NoSQL DB bằng Python bằng PyMongo. To back question your question in the comment bình luận bên dưới