Venice เป็นแพลตฟอร์มการจัดเก็บข้อมูลที่ได้รับมา โดยมีลักษณะดังต่อไปนี้:
สิ่งที่กล่าวมาข้างต้นทำให้เวนิสมีความเหมาะสมเป็นพิเศษในฐานะองค์ประกอบของรัฐที่สนับสนุน Feature Store เช่น Feathr แอปพลิเคชัน AI ป้อนผลลัพธ์ของงานการฝึกอบรม ML ไปยังเวนิส จากนั้นจึงสืบค้นข้อมูลเพื่อใช้ระหว่างปริมาณงานการอนุมานออนไลน์
เวนิสเป็นระบบที่คร่อมโลกออฟไลน์ ใกล้โลก และออนไลน์ ดังภาพด้านล่าง
เส้นทางการเขียนของเวนิสสามารถแบ่งย่อยออกเป็นสามส่วนย่อย: การสลับชุดข้อมูลแบบเต็ม การแทรกแถวจำนวนมากลงในชุดข้อมูลที่มีอยู่ และการอัปเดตบางคอลัมน์ของบางแถว รายละเอียดทั้งสามประการได้รับการสนับสนุนโดย Hadoop และ Samza นอกจากนี้ บริการใดๆ สามารถสร้างการแทรกและการอัพเดตแถวเดียวแบบอะซิงโครนัสได้เช่นกัน โดยใช้ไลบรารี Online Producer ตารางด้านล่างสรุปการดำเนินการเขียนที่รองรับโดยแต่ละแพลตฟอร์ม:
ฮาดูป | ซามซ่า | บริการใดๆ | |
---|---|---|---|
การสลับชุดข้อมูลแบบเต็ม | |||
การแทรกบางแถวลงในชุดข้อมูลที่มีอยู่ | |||
อัปเดตบางคอลัมน์ของบางแถว |
ยิ่งไปกว่านั้น การดำเนินการเขียนทั้งสามส่วนสามารถผสมผสานกันภายในชุดข้อมูลเดียวได้ ชุดข้อมูลที่ได้รับการสลับชุดข้อมูลแบบเต็มนอกเหนือจากการแทรกแถวหรือการอัปเดตแถวเรียกว่า ไฮบริด
ในส่วนหนึ่งของการกำหนดค่าร้านค้าให้เป็น แบบไฮบริด แนวคิดที่สำคัญคือ เวลาย้อนกลับ ซึ่งกำหนดว่าการเขียนแบบเรียลไทม์ล่าสุดควรย้อนกลับไปไกลแค่ไหนและนำไปใช้กับชุดข้อมูลรุ่นใหม่ที่ถูกสลับเข้ามา
การใช้ประโยชน์จากกลไกนี้ทำให้สามารถซ้อนทับเอาต์พุตของงานประมวลผลสตรีมทับซ้อนกับงานแบตช์ได้ หากใช้การอัปเดตบางส่วน ก็เป็นไปได้ที่จะให้บางคอลัมน์ได้รับการอัปเดตแบบเรียลไทม์และบางคอลัมน์เป็นชุด และคอลัมน์ทั้งสองชุดนี้สามารถทับซ้อนกันหรือแยกจากกันได้ตามต้องการ
Write Compute มีการดำเนินการสองประเภท ซึ่งสามารถดำเนินการกับค่าที่เกี่ยวข้องกับคีย์ที่กำหนด:
หมายเหตุ: ปัจจุบัน การประมวลผลการเขียนได้รับการสนับสนุนร่วมกับการจำลองแบบแอคทีฟ-พาสซีฟเท่านั้น การสนับสนุนสำหรับการจำลองแบบที่ใช้งานอยู่อยู่ระหว่างการพัฒนา
Venice รองรับ API การอ่านต่อไปนี้:
มีสองโหมดหลักสำหรับการเข้าถึงข้อมูลเวนิส:
ตารางด้านล่างสรุปคุณลักษณะของลูกค้า:
กระโดดเครือข่าย | เวลาแฝงทั่วไป (p99) | รอยเท้าของรัฐ | |
---|---|---|---|
ไคลเอ็นต์แบบบาง | 2 | < 10 มิลลิวินาที | ไร้สัญชาติ |
ลูกค้าด่วน | 1 | < 2 มิลลิวินาที | น้อยที่สุด (ข้อมูลเมตาการกำหนดเส้นทางเท่านั้น) |
ไคลเอนต์ดาวินชี (RAM + SSD) | 0 | < 1 มิลลิวินาที | Bounded RAM ชุดข้อมูลเต็มบน SSD |
ไคลเอนต์ Da Vinci (ออลอินแรม) | 0 | < 10 ไมโครวินาที | ชุดข้อมูลเต็มใน RAM |
ไคลเอ็นต์ทั้งหมดเหล่านี้ใช้ API การอ่านเดียวกันกับที่อธิบายไว้ข้างต้น สิ่งนี้ทำให้ผู้ใช้สามารถเปลี่ยนแปลงต้นทุน/ประสิทธิภาพโดยไม่จำเป็นต้องเขียนแอปพลิเคชันใหม่
บล็อกและการพูดคุยในการประชุม ของ Open Sourcing Venice เป็นจุดเริ่มต้นที่ดีเพื่อให้เห็นภาพรวมของกรณีการใช้งานและขนาดที่เวนิสสามารถรองรับได้ หากต้องการดูโพสต์ การพูดคุย และพอดแคสต์ของเวนิสเพิ่มเติม โปรดดูหน้าเรียนรู้เพิ่มเติมของเรา
โปรดดูการเริ่มต้นอย่างรวดเร็วของเวนิสเพื่อสร้างคลัสเตอร์เวนิสของคุณเอง และลองใช้คุณสมบัติบางอย่าง เช่น การสร้างที่เก็บข้อมูล การพุชแบบแบตช์ การพุชแบบเพิ่มหน่วย และการรับครั้งเดียว เราขอแนะนำให้ยึดติดกับเวอร์ชันเสถียรล่าสุดของเรา
รู้สึกอิสระที่จะมีส่วนร่วมกับชุมชนโดยใช้:
ติดตามเราเพื่อทราบข้อมูลเพิ่มเติมเกี่ยวกับความคืบหน้าของโครงการและชุมชนเวนิส: