2012-12-17 34 views
8

Chúng tôi cần thu thập thông tin về thời gian trên nhiều máy chủ và quy trình kinh doanh và xem xét sử dụng graphite. Có vẻ tốt nếu chúng tôi muốn hiển thị dữ liệu thô. Nhưng điều gì sẽ xảy ra nếu chúng ta muốn BI trên dữ liệu này và chạy truy vấn tùy chỉnh? Graphite có cho phép, hoặc cách khác tôi có thể hướng dẫn graphite để lưu trữ dữ liệu trên postgress?truy vấn tùy chỉnh trong graphite

Trả lời

10

Graphite chắc chắn cho phép bạn truy vấn dữ liệu của mình, cả hai graphically and returning csv or json. Các truy vấn trong graphite không được thực hiện với một ngôn ngữ như sql. Chúng được thực hiện với functions áp dụng cho một chỉ số cùng một lúc. Mỗi số liệu là cơ sở dữ liệu riêng của nó, mà chỉ là một loạt các cặp thời gian, giá trị.

Điều phổ biến nhất bạn có thể muốn là tóm tắt dữ liệu trong các khoảng thời gian khác nhau. Dưới đây là một ví dụ về những gì các url sẽ trông như thế cho một đồ thị nơi dữ liệu được tóm tắt hàng ngày trong một tuần:

http://graphite.example.com/render/?width=586&height=308&_salt=1355992522.674&target=summarize(stats_counts.mystat.subname%2C%20'1day')&from=-7days 

Nếu bạn muốn trở lại csv thay vì một đồ thị, bạn sẽ chỉ cần thêm format = json để url. Và nếu bạn đang xem xét dữ liệu thông qua giao diện web của graphite, bạn chỉ cần đặt những thứ sau vào để xem cùng một biểu đồ.

summarize(stats_counts.mystat.subname, '1day') 

Hầu hết các truy vấn dữ liệu bạn làm lúc đầu sẽ được ở nhà soạn nhạc graphite, mà chỉ là một giao diện web cho phép bạn click vào số liệu mà bạn muốn thêm vào đồ thị, và áp dụng các chức năng khác nhau đối với họ.

Để thêm dữ liệu vào Postgres, có thể bạn sẽ không muốn làm điều đó để truy vấn nó. Dữ liệu không thực sự được cấu trúc theo cách tuyệt vời cho các cơ sở dữ liệu quan hệ.

Các vấn đề liên quan