Thiết kế cơ sở dữ liệu không gian cho dữ liệu tạm thời? [đóng cửa]


11

Tôi đang làm việc trên Ứng dụng GIS dựa trên thời tiết.

Tôi có dữ liệu từ một số trạm thời tiết và dữ liệu này sẽ được cập nhật hàng ngày (bởi một dịch vụ web).

Những trở ngại tôi đang gặp phải là:

  • Hiện tại có 40 trạm ghi âm, nhưng điều đó có thể thay đổi
  • Các trạm khác nhau ghi số lượng tham số khác nhau, một số bản ghi 5, một số bản ghi 7. ect
  • Một số thông số được ghi lại hàng ngày (ví dụ: Nhiệt độ tối đa), một số thông số được ghi theo giờ (nhiệt độ hiện tại) trong khi các thông số khác được ghi hàng tuần.
  • Một số cơ sở tại một trạm ghi cụ thể có thể ngừng hoạt động (ví dụ: Một trạm hiện đang báo cáo 7 tham số, có thể chỉ báo cáo 5 năm tới)
  • Đôi khi một tham số có thể không được báo cáo do vấn đề kỹ thuật; Do đó tôi có thể phân biệt giữa, value = 0, null value & value không được ghi lại.

Tôi đang làm việc với ArcGIS (máy tính để bàn & Máy chủ) cho phần không gian của ứng dụng web này và sử dụng ArcSDE không phải là vấn đề, nhưng tôi nghĩ rằng loại cơ sở dữ liệu này tốt nhất là cơ sở dữ liệu thuần túy và không mang ArcSDE vào đó.

Bất cứ ai có thể đề nghị bất kỳ cuốn sách hoặc liên kết sẽ giúp tôi?

Câu trả lời:


7

Cách tiếp cận đơn giản nhất dường như là ba bảng:

  • trạm (id, tên, vị trí, ...)
  • tham số (id, tên, đơn vị, ...)
  • đọc (trạm_id, tham số_id, dấu thời gian, giá trị, ...)
  • Hiện tại có 40 trạm ghi âm, nhưng điều đó có thể thay đổi

Bạn có thể thêm bất kỳ số lượng các trạm. Thật thú vị khi thêm thông tin về thời gian hoạt động của một trạm vào bảng.

  • Các trạm khác nhau ghi số lượng tham số khác nhau, một số bản ghi 5, một số bản ghi 7. ect.
  • Một số cơ sở tại một trạm ghi âm cụ thể có thể ngừng hoạt động

Không phải là một vấn đề, vì mối quan hệ giữa các tham số được ghi lại và các trạm được lưu trữ ngầm trong bảng đọc.

  • Một số thông số được ghi lại hàng ngày (ví dụ: Nhiệt độ tối đa), một số thông số được ghi theo giờ (nhiệt độ hiện tại) trong khi các thông số khác được ghi hàng tuần.

Mỗi lần đọc sẽ được thể hiện bằng một mục trong bảng đọc. Khoảng cách khác nhau là không có vấn đề.

  • Đôi khi một thông số có thể không được báo cáo do vấn đề kỹ thuật

Trong trường hợp đó, đơn giản là không có mục nào trong bảng đọc.

Ngoài ra, tôi khuyên bạn nên xem xét Tiêu chuẩn quan sát cảm biến OGC . Có rất nhiều ví dụ bao gồm các bản ghi trạm thời tiết. Các triển khai như 52 ° North đi kèm với một lược đồ cơ sở dữ liệu chung tốt (cho PostGIS trong trường hợp này). Mặc dù tiêu chuẩn này (một tiêu chuẩn SWE khác) cần nỗ lực để học hỏi, tôi tin chắc rằng khoản đầu tư sẽ hoàn vốn.


7

Tôi đã thực hiện nghiên cứu của riêng tôi về cơ sở dữ liệu tạm thời trong tuần này. Tôi thấy câu trả lời này trên StackOverflow rất hữu ích. Để hiểu cơ bản về các nguyên tắc, đáng để đọc các chương giới thiệu về Phát triển ứng dụng cơ sở dữ liệu định hướng theo thời gian trong SQL của Snodgrass. Tôi thấy rằng cơ sở dữ liệu thời gian thực sự là khá phức tạp, nhưng một giải pháp đơn giản hơn - chẳng hạn như Underdark gợi ý - có thể đủ.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.