Cursor เปิด Origin บน S3 เพื่อแก้ปัญหาการสเกลของ Git

ที่มาภาพ: The Register

Cloud-อ่าน 7 นาทีThe Register

Cursor เปิด Origin บน S3 เพื่อแก้ปัญหาการสเกลของ Git

⚡ สรุป 30 วิ

Cursor แนะนำบริการ Origin ที่จัดเก็บรีโพซิทอรีบน object storage ของ AWS S3 พร้อมดิสก์ NVMe เป็น reference copy ระบบนี้ช่วยลดเวลา sync…

Cursor ประกาศเปิดให้ใช้ Origin – บริการจัดเก็บรีโพซิทอรี Git แบบใหม่ที่สร้างบนโครงสร้าง object storage ของ AWS S3 – เป็นส่วนหนึ่งของแผนบริการแบบจ่ายเงินของ Cursor หลังจากหลายเหตุการณ์ระบบล่มของ GitHub ทำให้ผู้พัฒนาเริ่มมองหาวิธีจัดการ Git ในระดับมหากาพย์ ระบบนี้อ้างว่าแก้ไขข้อจำกัดด้านความสามารถในการสเกลของ Git ที่เคยเป็นปัญหาโดยใช้แนวคิด “write‑ahead log” และสำเนาอ้างอิงบนดิสก์ NVMe

Overview

การออกแบบของ Origin เริ่มต้นจากประสบการณ์ของวิศวกรระบบหลักของ Cursor, Vicent Martí, ที่เคยทำงานกับ GitHub เป็นเวลานับสิบปี เขาได้บรรยายว่าการจัดเก็บข้อมูลบน object storage** ทำให้สามารถอัปโหลดการเปลี่ยนแปลง (push) ไปยัง S3 ได้โดยตรงเป็นวัตถุที่ไม่แก้ไขได้ (immutable objects) พร้อมกับบันทึกไว้ใน log แบบ write‑ahead เพื่อรองรับความต่อเนื่องของระบบ

Origin ยังใช้ดิสก์ NVMe เป็น “reference copy” ของรีโพซิทอรี ซึ่งทำหน้าที่เป็นแคชเร็วสำหรับการดำเนินการที่ต้องเดินทางผ่านกราฟ DAG ของ Git การประสานข้อมูลระหว่างหลายสำเนาไม่จำเป็นต้องใช้ quorum เหมือนวิธีของ Spokes ที่ GitHub ใช้ ทำให้ระบบสามารถรับ push ได้เร็วเท่ากับความเร็วของดิสก์ท้องถิ่น

Git’s Scalability Challenges

Git ถูกออกแบบโดย Linus Torvalds ให้ทำงานเป็นที่เก็บข้อมูลตามคอนเทนต์ (content‑addressable) โดยอ็อบเจ็กต์ทั้งหมดถูกจัดเก็บและระบุด้วยค่าแฮช SHA‑1 การดึงข้อมูลต้องผ่านการเดินกราฟ DAG ทีละโหนด ซึ่งหมายความว่าเซิร์ฟเวอร์จะต้อง “walk the DAG” เพื่อรวบรวมอ็อบเจ็กต์ที่ร้องขอ

เมื่อรีโพซิทอรีจำนวนมาก (ประมาณ 400 ล้าน) ต้องให้บริการพร้อมกัน การทำเช่นนี้กลายเป็นภาระหนัก GitHub จึงพัฒนากลยุทธ์ Spokes – เก็บสำเนาอย่างน้อยสามชุดของทุกรีโพซิทอรีบนดิสก์ NVMe ที่ซิงโครไนซ์แน่นหนา แม้จะทำให้การเข้าถึงเร็วขึ้น แต่จำนวนสำเนาที่เพิ่มมากขึ้นทำให้เวลาในการซิงค์ยาวนานและระบบไม่สามารถรองรับ “eventual consistency” ได้ดี

นอกจากนี้ การใช้ agents ในกระบวนการ CI/CD ทำให้มีรีโพซิทอรีขนาดเล็กจำนวนมหาศาลที่ถูกสร้างและลบทิ้งบ่อยครั้ง ส่งผลให้ภาระงานของ Git เพิ่มขึ้นอย่างต่อเนื่องโดยไม่มีวิธีแก้ไขง่าย ๆ

Cursor’s Object‑Storage Architecture

Cursor เลือกใช้ object storage แทนระบบไฟล์หรือบล็อกแบบดั้งเดิม เพราะแต่ละชิ้นข้อมูลใน S3 จะได้รับตัวระบุเฉพาะที่ไม่ซ้ำกันและถูกจัดเก็บอยู่ใน namespace เดียวโดยไม่มีโครงสร้างไดเรกทอรี การทำเช่นนี้ช่วยให้การขยายระบบเป็นไปได้อย่างไม่มีขีดจำกัดและลดค่าใช้จ่ายในการสำรองข้อมูล

ขั้นตอนหลักของ Origin มีดังนี้

  • Push: ข้อมูลที่เปลี่ยนแปลงจะถูกเขียนเป็นวัตถุ immutable ลงใน S3 เป็น write‑ahead log (WAL) พร้อมบันทึกสำเนาอ้างอิงบนดิสก์ NVMe
  • Sync: เมื่อ WAL และ reference copy เสร็จสิ้น ระบบจะอนุญาตให้ replica อื่น ๆ ดึงการเปลี่ยนแปลงจาก S3 ตามความต้องการโดยไม่ต้องทำการเดินกราฟ DAG ผ่านเครือข่าย

แนวทางนี้ทำให้ขั้นตอน “synchronize the reference transaction with a single local repository instead of a quorum of replicas” เป็นไปได้เร็วเท่ากับอัตราการเขียนของดิสก์ NVMe ของเครื่องหลัก

Technical Advantages & Trade‑offs

การใช้ S3 ทำให้ Origin สามารถรับปริมาณ push ได้โดยไม่จำกัดขนาดและจำนวน เนื่องจาก S3 มีระบบทำซ้ำภายในที่มั่นคงและค่าใช้จ่ายต่อ GB ต่ำ อย่างไรก็ตาม การเดินกราฟ DAG ของ Git ยังคงต้องทำบนดิสก์ท้องถิ่น ซึ่งหมายความว่าในบางกรณีการดึงข้อมูลจากแหล่งเก็บระยะไกลยังคงจำเป็นเมื่อต้องสร้าง packfile ขนาดใหญ่

ข้อดีสำคัญของโมเดลนี้ประกอบด้วย

  • ลดเวลาในการซิงโครไนซ์ เนื่องจากต้องอัพเดทเพียง reference copy เดียว
  • ความยืดหยุ่นสูง – รีโพซิทอรีสามารถ “อยู่อย่างใดก็ได้” (anywhere) เพราะแหล่งความจริงคือ WAL บน S3
  • รองรับการเพิ่มจำนวนสำเนาโดยไม่มีผลกระทบต่อ latency ของการ push

แต่ข้อเสียที่ยังคงมี ได้แก่ การพึ่งพาการเข้าถึง SSD ท้องถิ่นสำหรับ DAG traversal ซึ่งอาจเป็นคอขวดเมื่อทำงานกับรีโพซิทอรีขนาดใหญ่มาก รวมถึงความเสี่ยงด้านความปลอดภัยของข้อมูลในคลาวด์ที่ต้องจัดการด้วยนโยบายเข้ารหัสและควบคุมสิทธิ์อย่างเคร่งครัด

Potential Impact on the Market

หาก Origin สามารถทำงานได้โดยไม่มีเหตุการณ์ล่ม ระบบ Git‑as‑a‑service จะมีทางเลือกใหม่ที่ไม่จำเป็นต้องอาศัยโครงสร้าง “Spokes” ของ GitHub ผู้พัฒนาและองค์กรต่าง ๆ อาจเริ่มประเมินการย้ายไปใช้ object storage เป็นพื้นฐานของระบบควบคุมเวอร์ชัน

นอกจากนี้ การเปิดให้ใช้บริการในรูปแบบ beta ภายใต้แผนจ่ายเงินของ Cursor แสดงว่าเทคโนโลยีนี้กำลังเข้าสู่ขั้นตอนทดสอบเชิงพาณิชย์ หากผู้ใช้ไม่พบปัญหาขัดข้องอย่างต่อเนื่อง ความนิยมของโซลูชั่นแบบ “WAL‑on‑S3 + local reference” อาจกระตุ้นให้ผู้ให้บริการคลาวด์อื่น ๆ พิจารณานำเสนอสินค้าที่คล้ายกัน หรือทำให้ GitHub ต้องปรับปรุงสถาปัตยกรรมเดิมเพื่อรักษาตำแหน่งในตลาด

Summary

Cursor ได้ออกแบบ Origin โดยใช้ object storage ของ AWS S3 ร่วมกับดิสก์ NVMe เพื่อแก้ไขข้อจำกัดการสเกลของ Git ที่เคยเป็นปัญหาในระบบ “Spokes” ของ GitHub การเปลี่ยนแปลงนี้อาจสร้างแนวทางใหม่สำหรับบริการจัดการรีโพซิทอรีระดับมหากาพย์และส่งผลต่อกลยุทธ์ของผู้ให้บริการคลาวด์และเครื่องมือ DevOps ในอนาคต.

แชร์บทความนี้:

ชอบบทความแบบนี้?

สมัคร AI Automate Weekly Newsletter — รับเคล็ดลับ AI + how-to ใหม่
ทุกสัปดาห์ตรงถึง inbox ฟรี ไม่มีสแปม

แหล่งข่าวต้นฉบับ

ชื่อต้นฉบับ
How Cursor beat Git's scalability shortcomings
ผู้เขียน
Unknown
แหล่ง
The Register
วันที่เผยแพร่
23 สิงหาคม 2569 เวลา 20:45

Related

บทความที่เกี่ยวข้อง

PBS สูญเสียข้อมูล 70 ปี จำนวน 50TB หลังกระบวนการคลาวด์ปิดกิจการและฟ้อง Iron Mountain คืนข้อมูลCloud
15 สิงหาคม 2569 เวลา 16:00

PBS สูญเสียข้อมูล 70 ปี จำนวน 50TB หลังกระบวนการคลาวด์ปิดกิจการและฟ้อง Iron Mountain คืนข้อมูล

Nine PBS แจ้งว่าข้อมูลสำคัญ 70 ปีกว่า 50 TB ถูกตัดการเข้าถึงเมื่ิอ OSS ปิดกิจการ สถานีจึงฟ้องศาลให้ Iron Mountain ส่งมอบข้อมูลเพื่อรักษาประวัติศาสตร์.

Tom's Hardware7 นาที
เปิดใช้งานโหมด Storage saver ใน Google Photos ลดการใช้พื้นที่ลง 15 GBCloud
29 กรกฎาคม 2569 เวลา 02:30

เปิดใช้งานโหมด Storage saver ใน Google Photos ลดการใช้พื้นที่ลง 15 GB

เปลี่ยนโหมดจาก Original quality เป็น Storage saver จะบีบอัดรูปและวิดีโอ ลดพื้นที่ Google Photos ลงประมาณ 15 GB โดยไม่ต้องลบไฟล์ใด ๆ.…

XDA Developers4 นาที
Amazon เปิดแท็บ Games บน Prime Video ให้เล่น Luna Cloud Gaming อย่าง Fallout 4Cloud
25 กรกฎาคม 2569 เวลา 23:00

Amazon เปิดแท็บ Games บน Prime Video ให้เล่น Luna Cloud Gaming อย่าง Fallout 4

Amazon เพิ่มแท็บ “Games” บนแอป Prime Video สำหรับ Fire TV ในสหรัฐและอังกฤษ ทำให้สมาชิก Prime สามารถเล่นเกมจาก Luna อย่าง Fallout 4 โดยไม่ต้องดาวน์โหลดเพิ่มเติม…

The Verge6 นาที
Alphabet ประกาศผลประกอบการไตรมาส 2 ปี 2026: Cloud โต 82% และ Gemini มีผู้ใช้ถึง 950 ล้านคนCloud
25 กรกฎาคม 2569 เวลา 07:30

Alphabet ประกาศผลประกอบการไตรมาส 2 ปี 2026: Cloud โต 82% และ Gemini มีผู้ใช้ถึง 950 ล้านคน

Alphabet รายงานผลประกอบการไตรมาส 2/2026 ด้วยรายได้รวม 119,796 ล้านดอลลาร์ โดย Google Cloud โต 82% จากการใช้งาน AI และ Gemini มีผู้ใช้ 950 ล้านคน/เดือน…

Blognone8 นาที
คัดลอกลิงก์แล้ว!