ถึงแม้ว่า Core Data จะเป็นลูกหลานของEnterprise Object Frameworkของ Apple แต่mapper เชิงสัมพันธ์ (ORM) ที่เชื่อมโยงกับแบ็คเอนด์เชิงสัมพันธ์อย่างแน่นหนา Core Data ไม่ใช่ ORM ในความเป็นจริงมันเป็นกรอบการจัดการกราฟวัตถุ มันจัดการกราฟวัตถุอินสแตนซ์ที่มีขนาดใหญ่มากซึ่งอาจทำให้แอปสามารถทำงานกับกราฟที่ไม่พอดีกับหน่วยความจำทั้งหมดโดยการใส่วัตถุในหน่วยความจำและหน่วยความจำไม่เพียงพอตามความจำเป็น ข้อมูลหลักยังจัดการข้อ จำกัด เกี่ยวกับคุณสมบัติและความสัมพันธ์และรักษาความสมบูรณ์ของการอ้างอิง (เช่นการเชื่อมโยงไปข้างหน้าและข้างหลังสอดคล้องกันเมื่อวัตถุถูกเพิ่ม / ลบออกไป / จากความสัมพันธ์) Core Data จึงเป็นเฟรมเวิร์กที่เหมาะสำหรับการสร้างส่วนประกอบ "model" ของสถาปัตยกรรม MVC
ในการใช้การจัดการกราฟของ Core Data เกิดขึ้นเพื่อใช้ SQLite เป็นที่เก็บดิสก์ มันอาจจะได้รับการดำเนินการโดยใช้ฐานข้อมูลเชิงสัมพันธ์ที่แตกต่างกันหรือแม้กระทั่งไม่ใช่ฐานข้อมูลเชิงสัมพันธ์เช่นCouchDB ตามที่คนอื่น ๆ ได้ระบุไว้ Core Data ยังสามารถใช้ XML หรือรูปแบบไบนารีหรือรูปแบบอะตอมมิกที่ผู้ใช้เขียนเป็นแบ็กเอนด์ (แม้ว่าตัวเลือกเหล่านี้ต้องการให้กราฟวัตถุทั้งหมดพอดีกับหน่วยความจำ) หากคุณสนใจว่าจะนำ Core Data ไปใช้กับแบ็กเอนด์ SQLite อย่างไรคุณอาจต้องการตรวจสอบกรอบOmniDataObjectsของOmniGroupซึ่งเป็นการนำโอเพ่นซอร์สของชุดย่อยของ Core Data API มาใช้ BaseTenกรอบยังเป็นการดำเนินการของแกน API ข้อมูลโดยใช้ PostgreSQL เป็นแบ็กเอนด์
เนื่องจาก Core Data ไม่ได้มีวัตถุประสงค์เพื่อเป็น ORM สำหรับ SQLite จึงไม่สามารถอ่าน schema ของ SQLite ได้ ในทางกลับกันคุณไม่ควรพึ่งพาความสามารถในการอ่านที่เก็บข้อมูล SQLite ของ Core Data ด้วยเครื่องมือ SQLite อื่น ๆ สคีมาเป็นรายละเอียดการใช้งานที่อาจเปลี่ยนแปลงได้
ดังนั้นจึงไม่มีข้อขัดแย้งใด ๆ ระหว่างการใช้ Core Data หรือ SQLite โดยตรง หากคุณต้องการฐานข้อมูลเชิงสัมพันธ์ให้ใช้ SQLite (โดยตรงหรือผ่านทางหนึ่งใน wrapper Objective-C เช่นFMDB ) หรือเซิร์ฟเวอร์ฐานข้อมูลเชิงสัมพันธ์ อย่างไรก็ตามคุณอาจต้องการเรียนรู้ข้อมูลหลักเพื่อใช้เป็นกรอบการจัดการกราฟวัตถุ เมื่อรวมกับคลาสคอนโทรลเลอร์ของ Apple และวิดเจ็ตมุมมองที่เข้ากันได้กับการเชื่อมโยงคีย์ - ค่าคุณสามารถใช้สถาปัตยกรรม MVC ที่สมบูรณ์พร้อมรหัสน้อยมาก