Lấy mẫu MongoDB cho lược đồ

Các công cụ kinh doanh thông minh kết nối với nguồn dữ liệu và, được cung cấp một lược đồ dạng bảng cố định, cho phép người dùng khám phá dữ liệu của họ một cách trực quan. MongoDB sử dụng lược đồ linh hoạt, vì vậy một số công cụ kinh doanh thông minh không thể sử dụng MongoDB làm nguồn dữ liệu gốc

Để sử dụng MongoDB với công cụ kinh doanh thông minh quan hệ như Tableau , bạn phải xác định ánh xạ quan hệ cho dữ liệu MongoDB của mình. MongoDB Connector cho BI cung cấp một số phương thức để tạo và quản lý lược đồ quan hệ.

Máy chủ proxy của BI Connector,

mongosqld --auth --mongo-username  --mongo-password 
0, có các tùy chọn khởi động xác định cách nó xử lý việc quản lý lược đồ. Chúng được đề cập chi tiết trong tài liệu sử dụng
mongosqld --auth --mongo-username  --mongo-password 
0

Lấy mẫu lưu trữ¶

Mới trong phiên bản 2. 3

Khi

mongosqld --auth --mongo-username  --mongo-password 
0 khởi động, nó có thể lấy mẫu các tài liệu trên một phiên bản MongoDB để tạo ra một biểu diễn quan hệ của lược đồ mà nó lưu vào bộ nhớ đệm. Đây là chế độ mặc định mà
mongosqld --auth --mongo-username  --mongo-password 
0 sử dụng trừ khi bạn chỉ định tệp lược đồ với tùy chọn
mongosqld --auth --mongo-username  --mongo-password 
4 hoặc cơ sở dữ liệu lược đồ với tùy chọn
mongosqld --auth --mongo-username  --mongo-password 
5

Ghi chú

Nếu bạn đã bật

mongosqld --auth --mongo-username  --mongo-password 
6, hãy đảm bảo rằng người dùng MongoDB của bạn có các quyền cần thiết để lấy mẫu được lưu trong bộ nhớ cache .

Bạn có thể định cấu hình

mongosqld --auth --mongo-username  --mongo-password 
0 để tự động lấy mẫu lại theo lịch trình cố định với tùy chọn
mongosqld --auth --mongo-username  --mongo-password 
8. Nếu bạn không chỉ định khoảng thời gian lấy mẫu lại, thì
mongosqld --auth --mongo-username  --mongo-password 
0 sẽ sử dụng lược đồ ban đầu của nó trong thời gian quy trình chạy

Nếu bạn cần chỉnh sửa lược đồ theo cách thủ công để đảm bảo trình bày chính xác dữ liệu của mình, bạn có thể sử dụng tệp lược đồ thay thế.

Xem Biểu đồ tham khảo chế độ lấy mẫu để biết thêm thông tin về các chế độ lấy mẫu.

Quyền của người dùng đối với việc lấy mẫu trong bộ nhớ đệm¶

Nếu phiên bản MongoDB của bạn sử dụng xác thực và bạn muốn sử dụng lấy mẫu được lưu trong bộ nhớ cache, thì phiên bản Trình kết nối BI của bạn cũng phải sử dụng xác thực. Người dùng quản trị kết nối với MongoDB thông qua chương trình

mongosqld --auth --mongo-username  --mongo-password 
0 phải có các đặc quyền sau

  • mongosqld --auth --mongo-username  --mongo-password 
    
    11 trên cụm
  • mongosqld --auth --mongo-username  --mongo-password 
    
    12 trên mỗi cơ sở dữ liệu trong cụm
  • mongosqld --auth --mongo-username  --mongo-password 
    
    13 trên mỗi cơ sở dữ liệu bạn muốn lấy mẫu

Ngoài ra, hãy tạo người dùng có vai trò readAnyDatabase tích hợp để cấp tất cả các đặc quyền cần thiết

sao chép

mongosqld --auth --mongo-username  --mongo-password 
4

Ghi chú

Hãy nhận biết tất cả các đặc quyền có trong vai trò readAnyDatabase trước khi cấp cho người dùng

Để lấy mẫu tất cả các không gian tên, hãy bắt đầu

mongosqld --auth --mongo-username  --mongo-password 
0 mà không có tùy chọn
mongosqld --auth --mongo-username  --mongo-password 
15

sao chép

mongosqld --auth --mongo-username  --mongo-password 

Xem thêm

  • mongosqld --auth --mongo-username  --mongo-password 
    
    16
  • Bật xác thực

Duy trì Schema trong MongoDB¶

Tùy chọn

mongosqld --auth --mongo-username  --mongo-password 
5 hướng dẫn
mongosqld --auth --mongo-username  --mongo-password 
0 sử dụng một cơ sở dữ liệu cụ thể để lưu trữ lược đồ.
mongosqld --auth --mongo-username  --mongo-password 
0 có thể tạo cơ sở dữ liệu mới để sử dụng cho lưu trữ lược đồ hoặc sử dụng cơ sở dữ liệu hiện có

Nếu bạn chỉ định một cơ sở dữ liệu hiện có đã được sử dụng trước đây để lưu trữ lược đồ, thì tùy chọn

mongosqld --auth --mongo-username  --mongo-password 
20 sẽ xác định xem
mongosqld --auth --mongo-username  --mongo-password 
0 có ghi dữ liệu lược đồ mới vào cơ sở dữ liệu đã chỉ định hay chỉ đọc từ nó. Nếu bạn chỉ định cơ sở dữ liệu hiện không tồn tại, bạn phải đặt
mongosqld --auth --mongo-username  --mongo-password 
20 thành
mongosqld --auth --mongo-username  --mongo-password 
23

Tùy chọn

mongosqld --auth --mongo-username  --mongo-password 
8 xác định tần suất
mongosqld --auth --mongo-username  --mongo-password 
0 lấy mẫu lại dữ liệu để cập nhật lược đồ

Để buộc lược đồ cập nhật một lần, hãy sử dụng lệnh FLUSH SAMPLE từ máy khách SQL của bạn.

Xem Biểu đồ tham khảo chế độ lấy mẫu để biết thêm thông tin về các chế độ lấy mẫu.

Quyền của người dùng đối với lược đồ liên tục¶

Khi sử dụng giản đồ liên tục, các quyền người dùng bắt buộc tương tự như đối với lấy mẫu được lưu trong bộ nhớ cache , với việc bổ sung quyền

mongosqld --auth --mongo-username  --mongo-password 
23 bắt buộc trên . Để tạo người dùng có các quyền cần thiết để chạy
mongosqld --auth --mongo-username  --mongo-password 
0 với lược đồ được duy trì, hãy thực hiện lệnh sau trong trình bao
mongosqld --auth --mongo-username  --mongo-password 
28, với các giá trị giữ chỗ
mongosqld --auth --mongo-username  --mongo-password 
29,
mongosqld --auth --mongo-username  --mongo-password 
20 và
mongosqld --auth --mongo-username  --mongo-password 
21 được điền bằng các giá trị của riêng bạn.

sao chép

mongosqld --auth --mongo-username  --mongo-password 
1

Lấy mẫu lại dữ liệu giản đồ với mongosqld --auth --mongo-username --mongo-password

Khi quá trình

mongosqld --auth --mongo-username  --mongo-password 
0 bắt đầu, nó sẽ tạo một lược đồ , từ tệp lược đồ or by sampling data from a MongoDB instance. If the data in your MongoDB instance changes shape significantly with new fields or collections, you may wish to regenerate the schema BI Connector uses. You can regenerate the schema either by restarting
mongosqld --auth --mongo-username  --mongo-password 
0 or by issuing the
mongosqld --auth --mongo-username  --mongo-password 
3 command from within the trình bao MySQL .

Tùy chọn

mongosqld --auth --mongo-username  --mongo-password 
8 cung cấp một cách khác để
mongosqld --auth --mongo-username  --mongo-password 
0 tạo lại lược đồ bằng cách lấy mẫu lại dữ liệu theo khoảng thời gian do người dùng chỉ định

Ghi chú

Bạn không thể sử dụng lệnh

mongosqld --auth --mongo-username  --mongo-password 
3 nếu
mongosqld --auth --mongo-username  --mongo-password 
0 bắt đầu bằng tệp lược đồ thông qua tùy chọn
mongosqld --auth --mongo-username  --mongo-password 
4.

Xem thêm

mongosqld --auth --mongo-username  --mongo-password 
15

mongosqld --auth --mongo-username  --mongo-password 
5

mongosqld --auth --mongo-username  --mongo-password 
20

Quản lý Schema với MongoDB Views¶

Một cách khác để kiểm soát dữ liệu hiển thị với Trình kết nối BI mà không cần sử dụng . tệp drdl là để đọc từ chế độ xem. Chế độ xem cho phép bạn lấy tập hợp nguồn và chọn trường nào sẽ hiển thị, thay đổi tên trường, sắp xếp dữ liệu và thực hiện bất kỳ loại chuyển đổi nào mà đường dẫn tổng hợp có thể thực hiện.

Bạn có thể sử dụng phương thức shell

mongosqld --auth --mongo-username  --mongo-password 
28 createView để xác định chế độ xem trên bộ sưu tập và sau đó sử dụng chế độ xem đó làm không gian tên được chỉ định khi bắt đầu
mongosqld --auth --mongo-username  --mongo-password 
0

Ví dụ¶

Xem xét một bộ sưu tập có tên

mongosqld --auth --mongo-username  --mongo-password 
66 trong cơ sở dữ liệu
mongosqld --auth --mongo-username  --mongo-password 
67. Bằng cách tạo chế độ xem trên bộ sưu tập
mongosqld --auth --mongo-username  --mongo-password 
66 loại trừ tất cả thông tin nhận dạng cá nhân, BI Connector có thể hỗ trợ phân tích dữ liệu trên chế độ xem một cách an toàn mà không ảnh hưởng đến dữ liệu riêng tư trong bộ sưu tập nguồn

Lệnh sau bắt đầu

mongosqld --auth --mongo-username  --mongo-password 
0 với dữ liệu từ chế độ xem có tên
mongosqld --auth --mongo-username  --mongo-password 
00 trong cơ sở dữ liệu
mongosqld --auth --mongo-username  --mongo-password 
67

sao chép

mongosqld --auth --mongo-username  --mongo-password 
2

Xem thêm

  • mongosqld --auth --mongo-username  --mongo-password 
    
    15

Một trường hợp sử dụng khác để quản lý lược đồ của bạn bằng chế độ xem MongoDB là nếu tập dữ liệu đang hoạt động của bạn bao gồm một trường quan trọng nhưng có mật độ dân cư thưa thớt, trường này có thể bị loại trừ trong quy trình lấy mẫu Trình kết nối BI

Xem xét một bộ sưu tập có tên

mongosqld --auth --mongo-username  --mongo-password 
03 chứa một trường xuất hiện trong mọi tài liệu và một trường khác chỉ thỉnh thoảng xuất hiện. Một phần của bộ sưu tập có thể trông như thế này

sao chép

mongosqld --auth --mongo-username  --mongo-password 
2

Để đảm bảo rằng

mongosqld --auth --mongo-username  --mongo-password 
04 được bao gồm khi Trình kết nối BI tạo lược đồ của nó, hãy tạo dạng xem trong đó
mongosqld --auth --mongo-username  --mongo-password 
04 được điền bằng các số 0 trong mọi tài liệu mà nó không xuất hiện

sao chép

mongosqld --auth --mongo-username  --mongo-password 
6

Để sử dụng chế độ xem làm nguồn dữ liệu khi bắt đầu

mongosqld --auth --mongo-username  --mongo-password 
0, hãy chỉ định chế độ xem đó bằng tùy chọn
mongosqld --auth --mongo-username  --mongo-password 
15

sao chép

mongosqld --auth --mongo-username  --mongo-password 
0

Ghi chú

Trình kết nối BI không nhận ra các trường không gian địa lý khi đọc từ chế độ xem .

Tải Lược đồ từ Tệp DRDL¶

Tùy chọn

mongosqld --auth --mongo-username  --mongo-password 
4 cho phép bạn chỉ định tệp lược đồ cho
mongosqld --auth --mongo-username  --mongo-password 
0 để sử dụng

Công cụ tạo lược đồ

mongosqld --auth --mongo-username  --mongo-password 
40 xuất tệp lược đồ ở định dạng Ngôn ngữ định nghĩa quan hệ tài liệu (DRDL), nhưng bạn nên xác minh rằng lược đồ đó . Kiểm tra cả cấu trúc bảng và loại trường để đảm bảo rằng bạn có thể tạo các báo cáo theo ý muốn của mình.

Có thể chỉnh sửa thủ công các tệp định nghĩa lược đồ để thực hiện các hành động sau

  • Thêm các giai đoạn quy trình tổng hợp stages
  • Thêm các trường mà
    mongosqld --auth --mongo-username  --mongo-password 
    
    40 không phát hiện ra trong tập hợp con tài liệu mà nó đã lấy mẫu
  • Xóa các trường
  • Xóa bảng
  • Đổi tên bảng, miễn là trường
    mongosqld --auth --mongo-username  --mongo-password 
    
    42 vẫn giữ nguyên
  • Đổi tên các trường bằng tùy chọn
    mongosqld --auth --mongo-username  --mongo-password 
    
    43

Quan trọng

Để áp dụng bất kỳ thay đổi nào bạn thực hiện đối với các tệp DRDL của mình, bạn phải khởi động lại

mongosqld --auth --mongo-username  --mongo-password 
0

Dữ liệu không gian địa lý¶

Nếu một bộ sưu tập chứa chỉ mục không gian địa lý

mongosqld --auth --mongo-username  --mongo-password 
45 hoặc
mongosqld --auth --mongo-username  --mongo-password 
46, Trình kết nối BI sẽ ánh xạ trường được lập chỉ mục thành một mảng tọa độ kinh độ-vĩ độ dạng số

Ví dụ¶

Cho bộ sưu tập sau

sao chép

mongosqld --auth --mongo-username  --mongo-password 
4

BI Connector tạo lược đồ sau

mongosqld --auth --mongo-username  --mongo-password 
2

Ghi chú

Trình kết nối BI không nhận ra các trường không gian địa lý khi đọc từ chế độ xem .

←   Cài đặt plugin xác thực JDBC Trình kết nối MongoDB cho các thành phần BI  →

© MongoDB, Inc 2008-nay. MongoDB, Mongo và logo chiếc lá là các nhãn hiệu đã đăng ký của MongoDB, Inc

Chúng tôi có thể tạo lược đồ trong MongoDB không?

Tạo Lược đồ đối tượng Realm từ Lược đồ dịch vụ ứng dụng Atlas. Nếu bạn đã có dữ liệu trong cụm MongoDB Atlas, MongoDB sẽ tạo một giản đồ bằng cách lấy mẫu dữ liệu của bạn . Sau đó, Dịch vụ ứng dụng Atlas có thể dịch lược đồ đó thành Lược đồ đối tượng Realm để sử dụng trong ứng dụng di động của bạn với Realm SDK.

mongosqld là gì?

mongosqld là chương trình Trình kết nối BI kết nối phiên bản MongoDB với công cụ BI của bạn . mongosqld yêu cầu lược đồ dữ liệu ánh xạ tới bộ sưu tập và cơ sở dữ liệu MongoDB của bạn. Bạn có một số tùy chọn để tạo lược đồ và khởi chạy mongosqld. Hướng dẫn này sẽ giúp bạn chọn tùy chọn tốt nhất cho nhu cầu của bạn.

Trình kết nối MongoDB là gì?

Các công cụ kinh doanh thông minh truyền thống được thiết kế để hoạt động với dữ liệu dạng bảng, hàng và cột. Trình kết nối MongoDB cho BI cho phép bạn truy vấn dữ liệu MongoDB bằng SQL bằng các công cụ như Tableau, Power BI và Excel .