H?quản tr?cơ s?d?liệu Archives - Cao Đẳng FPT M?ng c c??c bng ? xét tuyển //westview-heights.com/tag/he-quan-tri-co-so-du-lieu Cao Đẳng FPT M?ng c c??c bng ? tuyển sinh theo hình thức xét tuyển h?sơ. Tiêu chí đào tạo: Thực học ?Thực nghiệp! Thu, 13 Jul 2023 04:42:21 +0000 vi hourly 1 //wordpress.org/?v=6.4.1 //westview-heights.com/wp-content/uploads/cropped-logo-fpt-32x32.png H?quản tr?cơ s?d?liệu Archives - Cao Đẳng FPT M?ng c c??c bng ? xét tuyển //westview-heights.com/tag/he-quan-tri-co-so-du-lieu 32 32 H?quản tr?cơ s?d?liệu Archives - Cao Đẳng FPT M?ng c c??c bng ? xét tuyển //westview-heights.com/tin-tuc-poly/ha-noi-tin-sinh-vien/tim-hieu-ve-he-quan-tri-co-so-du-lieu-mongodb-phan-1.html //westview-heights.com/tin-tuc-poly/ha-noi-tin-sinh-vien/tim-hieu-ve-he-quan-tri-co-so-du-lieu-mongodb-phan-1.html#respond Thu, 13 Jul 2023 04:42:21 +0000 //westview-heights.com/?p=242073 Với hầu hết các thời k?web, h?quản trị cơ s?d?liệu quan h?dựa trên SQL đã thống tr?hầu hết các h?quản tr?cơ s?d?liệu. Tuy nhiên, thời gian gần đây, một cách ...

The post Tìm hiểu v?H?quản tr?cơ s?d?liệu MongoDB (phần 1) appeared first on Cao Đẳng FPT M?ng c c??c bng ? xét tuyển.

]]>
Với hầu hết các thời k?web, h?quản trị cơ s?d?liệu quan h?dựa trên SQL đã thống tr?hầu hết các h?quản tr?cơ s?d?liệu. Tuy nhiên, thời gian gần đây, một cách tiếp cận mới đã bắt đầu biết đến là NoSQL, tạo ra s?thay th?cho các hệ quản trị cơ sở dữ liệu quan hệ truyền thống.

NoSQL còn có nghĩa là Non – Relational – không ràng buộc. Tuy nhiên, thuật ng?đó ít ph?biến hơn và ngày nay người ta thường dịch NoSQL thành Not only SQL – không ch?SQL. NoSQ nói đến đến những cơ s?dữ?liệu không dùng mô hình dữ?liệu quan h?đ?quản lý d?liệu trong lĩnh vực phần mềm

Thuật ng?NoSQL được giới thiệu lần đầu vào năm 1998  s?dụng làm tên gọi chung cho các cơ s?d?liệu quan h?nguồn m?nh?nhưng không s?dụng SQL cho truy vấn.

Vào năm 2009, Eric Evans, nhân viên của Rackspace giới thiệu lại thuật ng?NoSQL khi Johan Oskarsson của Last.fm muốn  t?chức một hội thảo v?cơ s?dữ?liệu nguồn m?phân tán. Thuật ng?NoSQL đánh dấu bước phát triển của th?h?CSDL mới: một th?h?CSDL không ràng buộc, phân tán nguồn mở, kh?năng m?rộng theo chiều ngang, có th?lưu tr? xử?lý t?một lượng rất nh?cho tới hàng petabytes dữ?liệu trong h?thống có đ?chịu tải, chịu lỗi cao với những đòi hỏi v?tài nguyên phần cứng thấp.

H?quản tr?cơ s?d?liệu SQL (Nguồn: vn.got-it.ai)

Một s?đặc điểm nhận dạng cho th?h?CSDL mới này bao gồm: schema-free, h?tr?m?rộng d?dàng, API đơn giản, nhất quán cuối (eventual consistency),  không giới hạn không gian d?liệu,…

Sau đây là danh sách các CSDL NoSQL:

  • Wide Column Store / Column Families: Hadoop/HBase  ? Apache,  BigTable  ? Google, Cassandra  – Facebook/Apache, Hypertable – Zvents Inc/Baidu, Cloudera, SciDB, Mnesia, Tablets,?/li>
  • Key-Value Store/Tuple store
    • Key/value cache in RAM: memcached,  Citrusleaf database, Velocity, Redis, Tuple space,…
    • Key/value save on disk: Memcachedb, Berkeley DB, Tokyo Cabinet, Redis,…
    • Eventually Consistent Key Value Store: Amazon Dynamo, Voldemort, Dynomite, KAI, Cassandra, Hibari, Project Voldemort,?/li>
    • Ordered key-value store: NMDB, Memcachedb, Berkeley DB,…
    • Distributed systems: Apache River, MEMBASE, Azure Table Storage, Amazon Dynamo,…
  • Document Store: Apache Jackrabbit, CouchDB, IBM Lotus Notes Storage Format (NSF),  MongoDB,  Terrastore,  ThruDB, OrientDB, RavenDB,…
  • Graph Database: Neo4J, Sones, AllegroGraph, Core Data, DEX, FlockDB, InfoGrid, OpenLink Virtuoso,…

Tuy cùng mang những đặc điểm chung của NoSQL nhưng mỗi CSDL NoSQL cũng có những đặc điểm riêng và vì thế thường được dùng cho những d?án khác nhau. Ví dụ:

  • MongoDB và Redis là những lựa chọn tốt cho việc lưu tr?các d?liệu thống kê ít được đọc mà lại được viết thường xuyên.
  • Hadoop – CSDL dạng t?do, phân tán làm tốt công việc lưu tr?các d?liệu lớn như các con s?thống kê thời tiết hoặc công việc phân tích nghiệp v?
  • Memcachedb – CSDL nhất thời chóng tàn, tuyệt vời trong lưu tr?các phiên làm việc web, các khóa và các con s?thống kê ngắn hạn.
  • Cassandra và Riak (các lưu tr?dư thừa, t?động tạo bó cluster) làm tốt trong các môi trường với các ứng dụng có tính sẵn sàng cao, khi thời gian sống tối đa là sống còn.

Để tìm hiểu sâu hơn về các CSDL hiện đại NoSQL, chúng ta đi nghiên cứu chi tiết CSDL đặc trưng là MongoDB.

H?quản tr?cơ s?d?liệu MongoDB

Trong những gương mặt góp phần làm suy tàn đ?ch?SQL thì MongoDB nổi lên là một CSDL đáng tin cậy và d?dùng nhất. Mongo viết bằng C++. Nó thích hợp cho các ứng dụng tầm trung tr?lên. Nếu t?l?lượng d?liệu ghi vào CSDL của ứng dụng lớn hơn lượng đọc thì đây càng là lựa chọn hợp lý.

MongoDB là một CSDL có khả năng mở rộng, hiệu suất cao, mã nguồn mở và hướng văn bản.

MongoDB là một CSDL (Nguồn: vn.got-it.ai)

Trước khi đi vào tìm hiểu kỹ hơn về MongoDB, chúng ta làm quen với một số khái niệm cơ bản của MongoDB:

  • Văn bản (document) là đơn vị cơ bản của dữ liệu trong MongoDB, nó tương đương với một dòng trong CSDL quan hệ.
  • Bộ sưu tập (collection) có thể được coi như tương đương với một bảng.
  • MongoDB có thể lưu trữ nhiều CSDL độc lập, mỗi CSDL này có các bộ sưu tập và điều khoản riêng của mình.
  • MongoDB đi kèm với một trình tiện ích JavaScript đơn giản nhưng mạnh mẽ, nó hữu ích trong quản trị và thao tác dữ liệu.
  • Mỗi văn bản có một khóa đặc biệt, đó là “_id? nó là duy nhất trong bộ sưu tập của văn bản.

Văn bản

Văn bản là một khái niệm quan trọng trong MongoDB. Văn bản bao gồm tập hợp các khóa với các giá trị tương ứng.

Ví dụ: {“greeting” : “Hello, world!”}

Văn bản trên gồm một khóa là “greeting? với giá trị là “Hello, world!? Các văn bản có thể chứa nhiều cặp khóa/giá trị.

Ví dụ: {“greeting” : “Hello, world!”, “foo” : 3}

Một số lưu ý:

  • Các cặp khóa/ giá trị trong văn bản được sắp xếp. Văn bản trên sẽ khác với văn bản sau {“foo” : 3, “greeting” : “Hello, world!”}.
  • Khóa trong văn bản là một chuỗi
  • MongoDB phân biệt chữ hoa chữ thường
  • Văn bản trong MongoDB không được chứa những khóa giống nhau. Ví dụ văn bản sau là không hợp lệ {“greeting” : “Hello, world!”, “greeting” : “Hello, MongoDB!”}

Bộ sưu tập

Bộ sưu tập là một nhóm các văn bản. Nếu văn bản tương đương với dòng trong CSDL quan hệ thì bộ sưu tập tương đương với bảng.

Bộ sưu tập là một Schema-Free, nghĩa là các văn bản có hình dạng khác nhau có thể cùng được lưu trữ trong 1 bộ sưu tập.

Ví dụ các văn bản sau có thể cùng được lưu trong một bộ sưu tập:

{“greeting” : “Hello, world!”}

{“foo” : 5}

Bộ sưu tập được xác định bởi tên của nó là một chuỗi UTF-8

Các đặc trưng của MongoDB:

  • Lưu trữ hướng văn bản: văn bản theo phong cách JSON với những lược đồ động đơn giản.
  • Hỗ trợ chỉ mục đầy đủ: chỉ mục trên bất kỳ các thuộc tính.
  • Tính sao lặp và tính sẵn sàng cao: mở rộng.
  • Auto-sharding: mở rộng theo chiều ngang mà không ảnh hưởng đến chức năng.
  • Truy vấn: đa dạng, truy vấn dựa trên văn bản.
  • Cập nhật nhanh.
  • Map/Reduce.
  • GridFS: lưu trữ file với bất kỳ kích cỡ nào mà không làm phức tạp ngăn xếp.
  • Hỗ trợ thương mại: hỗ trợ doanh nghiệp, đào tào, tư vấn.

B?môn Công ngh?thông tin
Trường Cao đẳng FPT M?ng c c??c bng ? cơ s?Hà Nội

The post Tìm hiểu v?H?quản tr?cơ s?d?liệu MongoDB (phần 1) appeared first on Cao Đẳng FPT M?ng c c??c bng ? xét tuyển.

]]>
//westview-heights.com/tin-tuc-poly/ha-noi-tin-sinh-vien/tim-hieu-ve-he-quan-tri-co-so-du-lieu-mongodb-phan-1.html/feed 0