Computer >> Máy Tính >  >> Lập trình >> Cơ sở dữ liệu

Dịch vụ xếp và bản đồ của bên thứ ba với Kibana

Dịch vụ xếp và bản đồ của bên thứ ba với Kibana

Ngoài ra, Kibana bao gồm khả năng hiển thị dữ liệu địa lý trên bản đồ do dịch vụ lát của Elastic cung cấp. Điều này cung cấp một giới thiệu tuyệt vời về những gì Kibana có thể làm, nhưng mức thu phóng tối đa bị giới hạn nếu bạn không có giấy phép X-Pack. Ví dụ:mức thu phóng tối đa cho cơ sở chính của ObjectRocket ở Austin, Texas là dưới đây:

Dịch vụ xếp và bản đồ của bên thứ ba với Kibana

Tin tốt là có thể dễ dàng định cấu hình Kibana để sử dụng dịch vụ ô khác hoặc máy chủ ánh xạ tuân thủ WMS.

Tại sao lại sử dụng một dịch vụ lập bản đồ khác?

Dịch vụ ô đàn hồi là một lợi ích tuyệt vời cho tất cả người dùng, nhưng có thể đôi khi bạn muốn tách khỏi dịch vụ mặc định. Dưới đây là một số:

  • Bạn muốn phóng to hơn nữa đến dữ liệu mức đường phố
  • Bạn muốn thêm các lớp mới hoặc cung cấp một kiểu bản đồ khác
  • Bạn muốn có một bản đồ hoàn toàn tùy chỉnh, chẳng hạn như bên trong một tòa nhà

Tất cả những gì tất cả những thứ này đều hướng đến là tìm một máy chủ cung cấp dữ liệu bạn muốn và sau đó định cấu hình Kibana để sử dụng máy chủ đó.

Thật không may, Kibana có thể gây ra một chút nhầm lẫn vì nó có thể tận dụng hai loại dịch vụ bản đồ hoàn toàn khác nhau. Tôi sẽ giới thiệu những thứ đó trước khi chúng ta tìm hiểu cách sử dụng chúng. Theo mặc định, Kibana vẽ bản đồ từ Dịch vụ Bản đồ Ngói hoặc TMS. Các dịch vụ xếp hình chia nhỏ bản đồ thành các ô vuông có thể được truy cập theo tọa độ và mức thu phóng của chúng. Đây là những gì Elastic cung cấp với dịch vụ của họ và điều này được định cấu hình toàn cầu trong kibana.yml tập tin cấu hình. Một cách thay thế để hiển thị bản đồ trong Kibana là sử dụng Dịch vụ bản đồ tuân thủ WMS hoặc WMS. Dịch vụ bản đồ web hoạt động bằng cách sử dụng một giao thức khác và tạo bản đồ từ dữ liệu trong cơ sở dữ liệu GIS. Điều này có thể được đặt từ trong giao diện người dùng Kibana.

Sử dụng Dịch vụ Bản đồ của Bên Thứ ba

Có một số dịch vụ bản đồ thương mại trên mạng, cũng như các nguồn dữ liệu miễn phí để tạo bản đồ như OpenStreetMap. Đối với mục đích thử nghiệm, có các dịch vụ xếp hình miễn phí dựa trên OpenStreetMap, như Stamen, mà bạn có thể thử nghiệm. Về phía WMS, cũng có một số máy chủ bản đồ miễn phí để thử nghiệm, như National Map ở Mỹ. Cuối cùng, có các tùy chọn để thiết lập dịch vụ bản đồ của riêng bạn mà tôi sẽ đề cập sau.

Thiết lập Kibana để sử dụng một dịch vụ ô khác

Một lần nữa, theo mặc định ánh xạ cho Kibana dựa trên một dịch vụ ô. Stamen, được đề cập ở trên, là một trong những dịch vụ thử nghiệm miễn phí yêu thích của tôi và cung cấp một số kiểu bản đồ sắc nét, vì vậy chúng tôi sẽ thử nghiệm điều đó.

Bạn sẽ cần quyền truy cập vào kibana.yml của mình để thực hiện thay đổi này, vì vậy nếu bạn đang sử dụng một dịch vụ được lưu trữ, chẳng hạn như ObjectRocket cho Elasticsearch, bạn có thể sử dụng bản cài đặt kibana cục bộ để thử nghiệm trước. Khi bạn đã định vị được kibana.yml tệp, bạn sẽ thêm các mục sau:

tilemap.url: "https://stamen-tiles.a.ssl.fastly.net/terrain/{z}/{x}/{y}.jpg"
tilemap.options.maxZoom: 20
tilemap.options.attribution: 'Map tiles by [Stamen Design](https://stamen.com), under [CC BY 3.0](https://creativecommons.org/licenses/by/3.0). Data by [OpenStreetMap](https://openstreetmap.org), under ODbL(https://www.openstreetmap.org/copyright).'

Cài đặt đầu tiên là url cho dịch vụ ô và tuân theo endpoint/{z}/{x}/{y}.jpg/png thông thường định dạng mà các dịch vụ tiêu chuẩn sử dụng. Lưu ý rằng Stamen có một số kiểu thú vị, như "toner" và "watercolor", mà bạn có thể sử dụng bằng cách thay thế "address" trong url. Cài đặt thứ hai là số cài đặt thu phóng tối đa. Một số dịch vụ không quảng cáo điều này, vì vậy nó sẽ chỉ yêu cầu một chút thử và sai. Cuối cùng, và rất quan trọng là phân bổ các bản đồ đúng cách cho người tạo. Đánh dấu phân bổ sẽ được hiển thị ở góc dưới bên phải của hình ảnh hóa bản đồ.

Sau khi điều đó được thiết lập và bạn khởi động lại Kibana, bây giờ bạn sẽ thấy rằng bạn có thể phóng to hơn rất nhiều và nhận được một số bản đồ cách điệu khá thú vị. So sánh hình dưới đây với hình trên:

Dịch vụ xếp và bản đồ của bên thứ ba với Kibana

Dịch vụ xếp và bản đồ của bên thứ ba với Kibana

Kết nối với Bản đồ WMS từ Kibana

Cấu hình hơi khác đối với bản đồ WMS và phải được đặt trong chính Kibana, thay vì từ tệp cấu hình. Đối với ví dụ này, tôi sẽ sử dụng Bản đồ quốc gia của Dịch vụ địa chất Hoa Kỳ, cụ thể là bản đồ giao thông vận tải để chúng ta có thể sử dụng các lớp khác nhau có sẵn. Trước tiên, bạn sẽ cần tải trực quan hóa bản đồ tọa độ trong Kibana và sau đó nhấp vào nút "tùy chọn". Từ đó, bạn sẽ chọn “Máy chủ bản đồ tuân thủ WMS.”

Dịch vụ xếp và bản đồ của bên thứ ba với Kibana

Khi bạn chọn nó, một loạt các cài đặt mới sẽ hiển thị. Bạn sẽ cần điền vào URL cho máy chủ WMS, lớp nào sẽ sử dụng, phiên bản của tiêu chuẩn WMS mà máy chủ đang chạy, loại hình ảnh cần tải và kiểu nào sẽ sử dụng. Các cài đặt này được mô tả trong tài liệu Kibana.

Điều này phức tạp hơn một chút so với dịch vụ lát chỉ lấy một vài tọa độ, nhưng may mắn là dịch vụ bản đồ mà chúng tôi sẽ sử dụng có một số công cụ được tích hợp sẵn. Trước hết, nếu bạn truy cập trang Nationalmap, nó sẽ cho bạn một cái đẹp trang mô tả của bản đồ và các tính năng của nó. Trang này mô tả bản đồ và tất cả các lớp của nó. Nếu bạn muốn biết thêm chi tiết về các khả năng của bản đồ, hãy nhấp vào WMS nhỏ ở trên cùng và bạn sẽ thấy một số XML chi tiết về các khả năng của máy chủ, như phiên bản, các định dạng hình ảnh được hỗ trợ và hơn thế nữa. Dựa trên thông tin này và liên kết WMS, chúng tôi sẽ sử dụng các cài đặt sau cho bản đồ này:

  • Url WMS: https://services.nationalmap.gov/arcgis/services/transportation/MapServer/WMSServer
  • Các lớp WMS: 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24, 25,26,27,28,29,30,31,32,33,34,35,36
  • Phiên bản WMS: 1.3.0
  • Định dạng WMS: hình ảnh / png
  • Phân bổ WMS: Được cung cấp bởi Cục Địa chất Hoa Kỳ (Nationalmap.gov)
  • Kiểu: trống

Một lưu ý về các lớp. Có vẻ như bản đồ chúng tôi đang sử dụng có hệ thống phân cấp các lớp, nhưng tôi không thể tìm thấy cách viết tắt nào để gọi tất cả chúng ra vì vậy chỉ cần liệt kê các lớp riêng lẻ.

Nếu bạn đã thiết lập tất cả, bây giờ bạn sẽ có thể thấy một chế độ xem như sau:

Dịch vụ xếp và bản đồ của bên thứ ba với Kibana

Cài đặt WMS cũng có thể được đặt làm mặc định cho tất cả các hình ảnh trực quan trong màn hình Cài đặt nâng cao Kibana.

Thiết lập bản đồ hoặc máy chủ xếp lớp của riêng bạn

Lưu ý cuối cùng, một khi bạn muốn đưa điều này vào sản xuất, việc chạy máy chủ lát / bản đồ của riêng bạn có thể là cách tốt nhất. Bạn có thể tạo bản đồ hoàn toàn tùy chỉnh, như sân trượt NHL hoặc tạo bản đồ đường phố hoặc bản đồ địa hình từ một thứ như OpenStreetMap và áp dụng các lớp của riêng bạn. Có những công cụ mã nguồn mở tuyệt vời như geoserver, được đề cập trong blog Elastic hoặc TileCache, tất cả đều cung cấp hướng dẫn và tài liệu chi tiết về cách bắt đầu. Ngoài ra, OpenStreepMap cung cấp rất nhiều thông tin trong wiki của họ để giúp bạn bắt đầu với trang SWITCH2OSM cung cấp tài nguyên để bắt đầu cung cấp dữ liệu OpenStreetMap.

Quan tâm đến những gì Elasticsearch có thể làm cho ứng dụng của bạn? Chúng tôi cung cấp các phiên bản Elasticsearch được quản lý và lưu trữ đầy đủ, hoàn chỉnh với các chuyên gia DBA có thể giúp bạn khai thác tối đa Elasticsearch và Kibana mà không cần ràng buộc tài nguyên phát triển của bạn. Liên hệ với chúng tôi để được tư vấn.