OpenTSDB และ Graphite ต่างกันอย่างไร


28

เท่าที่ฉันสามารถบอกได้นี่คือความแตกต่างที่สำคัญ:

  1. OpenTSDBไม่ทำให้ข้อมูลเสื่อมสภาพเมื่อเวลาผ่านไปซึ่งแตกต่างจากGraphiteที่ขนาดของฐานข้อมูลถูกกำหนดไว้ล่วงหน้า
  2. OpenTSDB สามารถจัดเก็บการวัดต่อวินาทีเมื่อเทียบกับ Graphite ซึ่งมีช่วงเวลาเป็นนาที (ฉันไม่แน่ใจในเรื่องนี้เอกสาร Graphite แสดงนโยบายการเก็บข้อมูลที่เก็บการวัดทุกนาที แต่ฉันไม่รู้ว่านี่เป็นหน่วยต่ำสุดของเวลาหรือไม่ สามารถเล่นด้วย)

ฉันต้องการตัดสินใจอย่างชาญฉลาดเกี่ยวกับเครื่องมือที่จะใช้ในการจัดเก็บตัวชี้วัดฉันเคยพลาดความแตกต่างอื่น ๆ ในทั้งสองระบบหรือไม่ พวกเขาเป็นนักแสดง / ปรับขนาดได้อย่างไร?

คำถามโบนัส: มีระบบอนุกรมเวลาอื่นใดที่ฉันควรดู?

คำตอบ:


46

Disclaimer: ผมเขียนOpenTSDB

ฉันจะบอกว่าประโยชน์ที่ใหญ่ที่สุดของกราไฟท์ดูเหมือนว่าจะมีความสามารถในการสร้างกราฟที่เหนือกว่า มันมีประเภทกราฟและคุณสมบัติมากขึ้น ความซับซ้อนในการปรับใช้อาจลดลงเล็กน้อยเมื่อใช้ Graphite เนื่องจากไม่ใช่ระบบกระจายและมีชิ้นส่วนที่เคลื่อนไหวน้อยลง

ในทางกลับกันOpenTSDBสามารถเก็บจุดข้อมูลที่ละเอียดยิ่งขึ้นได้อย่างมีนัยสำคัญ สิ่งนี้มาจากต้นทุนของการปรับใช้HBaseซึ่งไม่ใช่ข้อตกลงที่ยิ่งใหญ่ที่จะซื่อสัตย์ หากคุณต้องการรับข้อมูลแบบเรียลไทม์ด้วยจุดข้อมูลใหม่ >> 10k จุด / s ใหม่ OpenTSDB จะเหมาะกับคุณ

ข้อมูลบางอย่างเกี่ยวกับมาตราส่วนปัจจุบันของเราที่ StumbleUpon (โดยทั่วไปตัวเลขเหล่านี้จะเพิ่มเป็นสองเท่าทุกๆ 2-3 เดือน):

  • จุดข้อมูลใหม่มากกว่า 1B ต่อวัน (= 12k / s โดยเฉลี่ย)
  • จุดข้อมูลนับพันล้านที่เก็บไว้
  • ใช้พื้นที่ดิสก์น้อยกว่า 2TB (ก่อนการจำลองแบบ 3 เท่าโดย HDFS)
  • คำสั่งการอ่านมักจะสามารถเรียกค้น munging และพล็อตจุดข้อมูลมากกว่า 500k ต่อวินาที

3
ช่วงเวลาของกราไฟท์สามารถกำหนดค่าได้ ฉันมักจะใช้ช่วงเวลาตรวจสอบ 10 วินาที และกราฟก็น่ารักจริงๆ มิฉะนั้นฉันคิดว่าคำตอบของสึนะเป็นไปอย่างราบรื่น
Travis Bear

19

หน้าจอผู้ใช้

Graphiteมีเครื่องมือสร้างกราฟที่ยอดเยี่ยม เว็บอินเตอร์เฟสเริ่มต้นน่าเกลียด (แม้ว่าจะใช้งานได้) แต่คุณก็มีตัวเลือกกราฟและแดชบอร์ดมากมาย

ตัวอย่างบางส่วน:

  • แผงควบคุมGrafanaพร้อมกราฟแบบไดนามิก (ซูมได้)

ตัวอย่างแดชบอร์ด grafana

ตัวอย่างแดชบอร์ดของ explorer กราฟ

  • แผนภูมิขอบฟ้าCubism.js

ตัวอย่างแผนภูมิ cubism.js

ดูที่นี่หรือที่นี่เพื่อค้นหาอีกมากมาย

OpenTSDBที่อื่น ๆ ยังอยู่ในช่วง gnuplot: เว็บอินเตอร์เฟส OpenTSDB

ติดตั้ง

ในทางปฏิบัติกราไฟท์นั้นเจ็บปวดมากกว่าการติดตั้งมากกว่า HBase + OpenTSDB OpenTSDB มีเอกสารที่ครอบคลุมและขั้นตอนที่ไม่ซับซ้อน เหล่านี้คือคำสั่งในการติดตั้ง Graphiteสิ่งต่างๆจะยิ่งซับซ้อนหากคุณสร้างจากแหล่งที่มา

การแสดง

OpenTSDB ไม่ทำให้ข้อมูลเสื่อมสภาพเมื่อเวลาผ่านไปซึ่งแตกต่างจาก Graphite ที่ขนาดของฐานข้อมูลถูกกำหนดไว้ล่วงหน้า

จริง นอกจากนี้ Graphite ยังใช้รูปแบบไฟล์ที่คล้ายกับ RRD ซึ่งในทางปฏิบัติหมายความว่าจุดข้อมูลเดียวจะใช้พื้นที่ดิสก์เท่ากับชุดเต็มเวลาเนื่องจากพื้นที่นี้ได้รับการจัดสรรล่วงหน้า นี่ก็หมายความว่าการวางแผนช่วงเวลาว่างจะใช้เวลามากเท่ากับว่ามีข้อมูลอยู่ที่นั่น ( เซเรสเอนจิ้นหน่วยเก็บข้อมูลสำรองกำลังทำงานอยู่ แต่ฉันยังไม่ได้ลองเลย)

ดังที่สึนะกล่าวว่า OpenTSDB จะช่วยให้คุณสามารถเก็บจุดข้อมูลได้มากขึ้นใช้ประโยชน์จาก HDFS ของ Hadoop กราไฟท์ในทางกลับกันซึ่งมีรายละเอียดสถาปัตยกรรมในบท AOSAนี้เป็นโซลูชัน adhoc เพิ่มเติม

OpenTSDB สามารถจัดเก็บการวัดต่อวินาทีเมื่อเทียบกับกราไฟท์ซึ่งมีช่วงเวลานาที

ไม่ทั้งสองสามารถล็อกอินไปที่สองได้


1
ดูเหมือนว่า opentsdb นั้นยอดเยี่ยมสำหรับการจัดเก็บข้อมูลและแกรไฟต์นั้นดีที่สุดสำหรับการสร้างกราฟ เป็นไปได้ไหมที่จะชี้ไฟท์ไปที่ opentsdb เพื่อแบ็กเอนด์ ฉันอยากรู้ว่าใครสามารถเชื่อมต่อ opentsdb จากแกรไฟต์ได้หรือไม่
user1471980

4
โปรดทราบว่า Grafana ยังสนับสนุน OpenTSDB และมี frontends ที่น่าสนใจอื่น ๆ สำหรับ OpenTSDB เช่นmetrilyx
Wilfred Hughes

@WilfredHughes เป็นจุดที่ดีเกี่ยวกับ Grafana ที่สนับสนุน OpenTSDB นอกจากนี้โปรดทราบว่า OpenTSDB สามารถจัดเก็บความแม่นยำลงไปเป็นมิลลิวินาที
นิโคลัส
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.