สถาปัตยกรรมฐานข้อมูล NoSQL: แนวทางแบบคอลัมน์
เผยแพร่แล้ว: 2022-12-14มีสถาปัตยกรรมที่แตกต่างกันจำนวนมากที่สามารถปฏิบัติตามได้เมื่อทำงานกับ ฐานข้อมูล NoSQL แต่รูปแบบที่พบมากที่สุดคือแนวทางที่เน้นคอลัมน์ วิธีการนี้มักใช้เพราะช่วยให้มีสคีมาที่ยืดหยุ่นมากขึ้น ซึ่งจะมีประโยชน์เมื่อทำงานกับข้อมูลจำนวนมาก นอกจากนี้ วิธีการนี้ยังช่วยปรับปรุงประสิทธิภาพโดยอนุญาตให้มีการบีบอัดข้อมูลได้ดีขึ้น
ความเคลื่อนไหวของ NoSQL ได้เริ่มต้นขึ้นในช่วงไม่กี่ปีที่ผ่านมาด้วยโมเดลสำหรับการจัดเก็บและดึงข้อมูล ไม่จำเป็นต้องสร้างตารางและเก็บข้อมูลในหลายแถวในคีย์นอก ใน NoSQL ข้อมูลจะถูกจัดเก็บในรูปแบบคีย์-ค่า ฐานข้อมูล NoSQL เป็นฐานข้อมูลที่เก็บข้อมูลจำนวนมากแบบเรียลไทม์ ในฐานข้อมูล NoSQL ฟังก์ชันแฮชจะใช้ที่ระดับบนสุด ซึ่งจะดำเนินการตามอัลกอริทึมที่รู้จักกันดีซึ่งรับอินพุตที่มีความยาวผันแปรและสร้างเอาต์พุตที่มีความยาวคงที่ เมื่อคีย์นี้ถูกแฮชอีกครั้ง โปรแกรม ฐานข้อมูลจะ ดึงคู่ค่าที่สอดคล้องกับคีย์ที่ค้นพบในฐานข้อมูล (หากคีย์นั้นมีอยู่) โดยทั่วไป ฐานข้อมูล NoSQL มีสามประเภท: ประกาศ ความหมาย และกราฟ นอกจากนี้ยังมีที่เก็บคีย์-ค่า ที่เก็บเอกสาร กราฟ และที่เก็บแบบคอลัมน์
ในสถาปัตยกรรมแบบไฮบริด โมเดลฐานข้อมูลต่างๆ จะใช้เพื่อสร้างโมเดลแบบไฮบริด หากคุณใช้สถาปัตยกรรมแบบไฮบริด คุณสามารถทำงานกับ SQL และ NoSQL ในระบบเดียวได้
Nosql ติดตามสถาปัตยกรรมใด
คุณสมบัติเป็นหนึ่งในคุณสมบัติมากมายของฐานข้อมูล NoSQL ซึ่งแตกต่างจาก ACID ซึ่งเป็นชุดของคุณสมบัติ ซึ่งเป็นชุดของกฎและแนวทางปฏิบัติ ความพร้อมใช้งานพื้นฐาน BA สถานะ S-soft และความสม่ำเสมอของ E-even เป็นตัวบ่งชี้ความสอดคล้องของ E-even ทั้งหมด ตรงกันข้ามกับ ฐานข้อมูลที่มีโครงสร้าง ซึ่งเก็บข้อมูลในรูปแบบเฉพาะ ข้อมูลในฐานข้อมูล NoSQL จะถูกจัดเก็บในรูปแบบคีย์-ค่า
ผู้ดูแลระบบเปลี่ยนความจุของฐานข้อมูล RDBMS และฐานข้อมูล NoSQL ได้หลายวิธี วิธีเดียวที่จะเพิ่มความจุของระบบเชิงสัมพันธ์คือการเพิ่มฮาร์ดแวร์ราคาแพง CPU ที่เร็วขึ้น และ RAM ให้มากขึ้น องค์ประกอบเครือข่ายที่มีฟังก์ชันขั้นสูง โหนดซึ่งเพิ่มและลบออกได้อย่างง่ายดายตามความต้องการ ให้ความจุแบบ "ยืดหยุ่น" ในคลัสเตอร์ NoSQL แอปพลิเคชันปริมาณสูงและเวลาแฝงต่ำจะได้รับประโยชน์จากการใช้ฐานข้อมูล NoSQL ที่ใช้สถาปัตยกรรมแบบมาสเตอร์เลส ฐานข้อมูล NoSQL แตกต่างจากฐานข้อมูลเชิงสัมพันธ์ตรงที่สนับสนุนแนวทางการพัฒนาแอปพลิเคชันในครั้งแรก วิธีการจำลองแบบข้อมูลนี้ใช้ในฐานข้อมูลเหล่านี้ ซึ่งโหนดทั้งหมดจะถูกจำลองแบบพร้อมกัน
ฐานข้อมูล NoSQL ใช้ประโยชน์จากออบเจกต์ข้อมูลหลายรูปแบบ ซึ่งหมายความว่าสามารถอยู่ร่วมกันและทำให้ข้อมูลมีความยืดหยุ่นมากขึ้น แต่ก็สร้างข้อผิดพลาดได้มากขึ้นเช่นกัน แบบจำลองข้อมูลสามารถจัดโครงสร้างแบบประกาศในฐานข้อมูลเชิงสัมพันธ์ซึ่งตรงกันข้ามกับแบบจำลองที่มีโครงสร้างแบบประกาศในสคีมา วิธีการนี้มักถูกยกเลิกโดย NoSQL ซึ่งให้อำนาจแก่นักพัฒนามากขึ้นและมักจะกระจายอำนาจมากขึ้นในการควบคุมโครงสร้างข้อมูล
ฐานข้อมูล NoSQL ของ LinkedIn ทำให้เหมาะสำหรับแพลตฟอร์มของเครือข่าย ข้อมูลบน LinkedIn มีการเปลี่ยนแปลงและหมุนเวียนตลอดเวลา ทำให้เป็นตัวเลือกที่ยอดเยี่ยมสำหรับบริษัทที่ต้องการสร้างเครือข่าย เนื่องจาก LinkedIn ใช้ฐานข้อมูล NoSQL จึงช่วยประหยัดเวลาและทรัพยากรจำนวนมากโดยไม่ต้องสร้างฐานข้อมูลใหม่ทุกครั้งที่มีการเปลี่ยนแปลง ผู้ใช้สามารถติดตามเทรนด์และการเชื่อมต่อล่าสุดได้โดยตอบสนองต่อไซต์
สถาปัตยกรรมฐานข้อมูล Nosql คืออะไร?
ฐานข้อมูล NoSQL แตกต่างจากเซิร์ฟเวอร์ที่ใช้ SQL ตรรกะของการตรวจสอบความถูกต้อง การควบคุมการเข้าถึง การทำแผนที่ข้อมูลที่จัดทำดัชนีที่สืบค้นได้ ความสัมพันธ์ระหว่างข้อมูลที่เกี่ยวข้อง การแก้ไขข้อขัดแย้ง การรักษาข้อจำกัดด้านความสมบูรณ์ และขั้นตอนการทริกเกอร์จะถูกลบออกจาก ชั้นฐานข้อมูล
ในกรณีของฐานข้อมูล NoSQL ทางที่ดีควรเปลี่ยนสถาปัตยกรรมแอปพลิเคชันด้วย แนวทาง NoSQL ซึ่งตรงข้ามกับเซิร์ฟเวอร์ที่ใช้ SQL เน้นความเรียบง่าย เราจะพูดถึง การจัดการข้อมูล ในเชิงลึกมากขึ้นในบทความนี้ และเราจะเสนอระดับการจัดการข้อมูลที่รวมฐานข้อมูล NoSQL และแง่มุมต่างๆ ของการจัดการข้อมูล โครงสร้างที่ซ้อนกันแบบลำดับชั้นในหน่วยงานข้อมูลเป็นหนึ่งในคุณสมบัติที่ใช้บ่อยที่สุดของฐานข้อมูล NoSQL โครงสร้างข้อมูลที่ซ้อนกันจะทำงานได้อย่างสง่างามในสถานการณ์ที่สามารถเข้าถึงโครงสร้างย่อย/โครงสร้างย่อยได้จากภายในเอกสารหลัก ในบางกรณี โครงสร้างที่ซ้อนกันสามารถช่วยขจัดความสัมพันธ์แบบสองทิศทางที่ไม่จำเป็นได้ ในความเป็นจริงแล้ว ความสัมพันธ์ยังคงมีความสำคัญมากในการใช้งานจริงบางอย่าง
ความสัมพันธ์ระหว่าง RDBMS แบบดั้งเดิม กับฐานข้อมูลอื่นๆ ได้รับการทำความเข้าใจอย่างถี่ถ้วนแล้ว เราจะจำลองความสัมพันธ์และฐานข้อมูล NoSQL ได้อย่างไร โดยสรุปแนวทางต่างๆ ได้ดังนี้ เพื่อป้องกันไม่ให้ข้อมูลซ้ำซ้อน ขอแนะนำให้ใช้กลยุทธ์การทำให้เป็นมาตรฐาน ข้อมูลที่ทำให้เป็นมาตรฐานยังมีศักยภาพในการปรับปรุงประสิทธิภาพการสืบค้น หากวิธีการของ NoSQL พยายามทำให้เสาหลักของการจัดการข้อมูลที่ก่อตั้งโดย Edgar Codd เป็นโมฆะ แสดงว่ากำลังไปผิดทาง แทนที่จะใช้ API ที่ใช้ซ้ำได้เพื่อเข้าถึงฐานข้อมูล แนวทางนี้มุ่งเน้นไปที่การนำฐานข้อมูลไปใช้
การจัดการความสอดคล้องของข้อมูลกลายเป็นองค์ประกอบสำคัญของพื้นที่จัดเก็บ NoSQL เนื่องจากจำเป็นต้องมีการรวบรวมและจัดการข้อมูล BerkeleyDB API คือ API ฐานข้อมูลเอกสารคีย์-ค่าที่จำลองตาม API ฐานข้อมูลเอกสารคีย์-ค่าที่ทำดัชนี ตามรายงานล่าสุดของ W3C ควรใช้ดัชนีแบบโปรแกรมมากกว่าดัชนีที่ใช้แบบสอบถามในฐานข้อมูล NoSQL ที่เข้าถึงได้ผ่านเบราว์เซอร์ อย่างไรก็ตาม ไม่ได้หมายความว่าข้อจำกัดด้านความถูกต้องและความสมบูรณ์ของข้อมูลสามารถลบออกได้ การย้ายการตรวจสอบจากชั้นการจัดเก็บไปยังชั้นการจัดการข้อมูลช่วยลดความจำเป็นในการจัดเก็บ โดยทั่วไป ระบบการจำลองแบบตามความสอดคล้องที่ผ่อนคลายมากขึ้นสามารถนำไปใช้กับระบบจัดเก็บฐานข้อมูลแต่ละระบบตามความหมายของธุรกรรมที่เข้มงวดขึ้น การจำลองแบบแบบกำหนดเองและการบังคับใช้ความสอดคล้องจะมีประโยชน์อย่างมากในแอปพลิเคชัน ซึ่งการอัปเดตบางอย่างอาจมีความเสถียรมากกว่า ในขณะที่การอัปเดตอื่นๆ อาจผ่อนคลายกว่า
การแก้ไขข้อขัดแย้งตามรูปแบบการแก้ไขข้อขัดแย้งแบบ Multi-Version Concurency Control (MVCC) เช่นที่พบใน CouchDB อาจไร้เดียงสา สามารถใช้ Persevere 2.0 เพื่อกำหนดโมเดลข้อมูลและเชื่อมโยงผลิตภัณฑ์กับผู้ผลิตได้ เราได้นำโมเดล MVC มาใช้อย่างเต็มที่ ด้วยเหตุนี้ ฉันจึงเชื่อว่าเลเยอร์ส่วนต่อประสานผู้ใช้ประเภทนี้ควรได้รับการเพิ่มทุนเป็น mVC ซึ่งบ่งบอกถึงการไม่เน้นความกังวลเกี่ยวกับการสร้างแบบจำลองข้อมูลในตรรกะส่วนต่อประสานผู้ใช้
ฐานข้อมูล NoSQL เป็นตัวเลือกที่ยอดเยี่ยมสำหรับที่เก็บข้อมูลที่ต้องการประสิทธิภาพและความสามารถในการปรับขนาดสูง สามารถจัดการข้อมูลจำนวนมากและใช้งานง่าย ฐานข้อมูล NoSQL นอกจากจะมีความน่าเชื่อถือสูงและสามารถรองรับปริมาณการรับส่งข้อมูลสูงแล้ว ยังสามารถปรับเปลี่ยนได้อย่างมากอีกด้วย
Schemaless คืออะไร เหตุใด Nosql จึงติดตาม Schemaless Architecture
สคีมาเป็นพิมพ์เขียวหรือแผนที่ใช้สร้างฐานข้อมูล สคีมาสามารถมีกฎที่ควบคุมข้อมูลที่ได้รับอนุญาตในฐานข้อมูล ตลอดจนวิธีจัดระเบียบข้อมูล
ฐานข้อมูล NoSQL มักถูกกล่าวว่าเป็นไปตามสถาปัตยกรรมแบบ "สคีมาเลส" ซึ่งหมายความว่าจะไม่บังคับใช้สคีมาเฉพาะกับข้อมูลที่จัดเก็บไว้ในนั้น สิ่งนี้สามารถถูกมองว่าเป็นข้อได้เปรียบที่สำคัญ เนื่องจากช่วยให้มีความยืดหยุ่นมากขึ้นในวิธีการจัดเก็บและเรียกใช้ข้อมูล
คำว่า "Schema-less" ฐานข้อมูลเพิ่งได้รับความนิยมในอุตสาหกรรมไอที แทนที่จะวางฐานข้อมูลแบบ schemaless ไว้ในมือของนักพัฒนา ถึงเวลาแล้วที่จะพาพวกเขาเข้าสู่ตลาดเปิด เมื่อข้อมูลถูกจัดเก็บในฐานข้อมูลแบบไร้สคีมา ข้อมูลจะถูกจัดเก็บเป็นคู่คีย์/ค่า (หรือที่เรียกว่า KV) หรือเอกสาร JSON ฐานข้อมูล schemaless ซึ่งตรงข้ามกับแถวในฐานข้อมูลเชิงสัมพันธ์สามารถมีความสามารถในการเปลี่ยนสถานะของแถวบัญชีได้อย่างสมบูรณ์ สิ่งที่จำเป็นในการกำหนดวิธีจัดกลุ่มเอนทิตีคือแอตทริบิวต์เดียวของเอนทิตี กิจกรรมส่วนใหญ่นี้ถูกตัดออกจากฐานข้อมูลโดยไม่มีสคีมาโดยสิ้นเชิง นี่เป็นผลกระทบร้ายแรงต่อองค์กรที่การอยู่รอดต้องพึ่งพาข้อมูลเป็นอย่างมาก
เพื่อตอบสนองเวลาแฝง ต้องซื้ออุปกรณ์ล้ำสมัยด้วยทุนและต้นทุนการดำเนินงานที่สูง ข้อผิดพลาดในการปรับใช้ด้วยตนเองอาจส่งผลให้เกิดความล่าช้าเป็นเวลาหลายวันหรือหลายเดือน เนื่องจากรูปแบบการจัดเก็บข้อมูลที่ยืดหยุ่น ฐานข้อมูล NoSQL จึงช่วยลดการย้ายข้อมูลที่ซับซ้อนและการซิงโครไนซ์การเปลี่ยนแปลง คุณสามารถกำหนดมุมมองของข้อมูลแทนที่จะต้องต่อสู้เพื่อมันในฐานข้อมูลแบบ schemaless ฐานข้อมูล Schemaless ไม่จำเป็นต้องพัฒนาหรือปรับใช้โครงสร้างพื้นฐานที่ซับซ้อน/ที่เป็นกรรมสิทธิ์ รวมถึงค่าใช้จ่ายด้านเงินทุนหรือการดำเนินงานจำนวนมาก เพียงแค่กดปุ่ม อินสแตนซ์ขนาดเล็กก็สามารถปรับขนาดได้เกือบทุกขนาด
เสรีภาพนี้สามารถปลดปล่อยและท้าทายคุณได้ ความสามารถในการเปลี่ยนแปลงข้อมูลโดยไม่ต้องกลัวว่าจะทำให้แอปพลิเคชันเสียหาย อาจเป็นเรื่องยากที่จะหาสคีมาที่มีทั้งความยืดหยุ่นและมีประสิทธิภาพ ตลอดจนจัดโครงสร้างข้อมูลด้วยวิธีที่ดีที่สุดเท่าที่จะเป็นไปได้ ฐานข้อมูลแบบ schemaless ซึ่งแตกต่างจาก RDBMS แบบดั้งเดิม มีชุดของความท้าทายและสามารถให้ความยืดหยุ่นและประสิทธิภาพที่สำคัญเมื่อเทียบกับ RDBMS แบบดั้งเดิม
ข้อใดต่อไปนี้เป็นสถาปัตยกรรม Nosql ที่ง่ายที่สุด
สถาปัตยกรรม NoSQL มีหลายประเภท แต่ละประเภทมีข้อดีและข้อเสียของตัวเอง สถาปัตยกรรม NoSQL ที่ง่ายที่สุดคือที่เก็บคีย์-ค่า ซึ่งเป็นฐานข้อมูล NoSQL ประเภทพื้นฐาน ที่เก็บคีย์-ค่ามีความรวดเร็วและปรับขนาดได้ แต่ไม่ยืดหยุ่นมากนัก และไม่รองรับการสืบค้นที่ซับซ้อน
ฐานข้อมูล NoSQL สามารถเก็บข้อมูลแทนที่จะเป็นฐานข้อมูลเชิงสัมพันธ์ สร้างขึ้นเพื่อให้ปรับเปลี่ยนได้ ปรับขนาดได้ และสามารถตอบสนองความต้องการด้านการจัดการข้อมูลทางธุรกิจสมัยใหม่ได้อย่างรวดเร็ว คำว่า NoSQL หมายถึงประเภทฐานข้อมูลที่หลากหลาย รวมถึงฐานข้อมูลเอกสารล้วน ที่เก็บคีย์-ค่า ฐานข้อมูลคอลัมน์ กว้าง และฐานข้อมูลกราฟ ด้วยการเพิ่มขึ้นของบริษัททั่วโลกกว่า 2,000 แห่ง ฐานข้อมูล NoSQL กำลังได้รับแรงผลักดันเพื่อเป็นช่องทางในการขับเคลื่อนแอปพลิเคชันที่มีความสำคัญต่อภารกิจ มีแนวโน้มสำคัญ 5 ประการที่ทำให้ฐานข้อมูลเชิงสัมพันธ์ใช้งานยากเนื่องจากความท้าทายทางเทคนิค เนื่องจากโมเดลข้อมูลตายตัว ฐานข้อมูลเชิงสัมพันธ์จึงไม่รองรับการพัฒนาแบบ Agile ได้เป็นอย่างดี เมื่อใช้ NoSQL โมเดลข้อมูลจะถูกกำหนดโดยโมเดลแอปพลิเคชัน
การสร้างแบบจำลองข้อมูลไม่ได้กำหนดไว้ใน NoSQL ตามความหมายดั้งเดิม ข้อมูลถูกจัดเก็บในรูปแบบ JSON โดยเป็นส่วนหนึ่งของฐานข้อมูลเชิงเอกสาร กรอบ ORM ไม่มีความจำเป็นอีกต่อไป และกระบวนการพัฒนาได้รับการปรับปรุง N1QL (ออกเสียงว่า นิเกิล) ซึ่งเป็นภาษาคิวรีที่ทรงพลังซึ่งขยาย SQL เป็น JSON ได้รับการแนะนำใน Couchbase Server 4.0 นอกจากนี้ยังรองรับอาร์เรย์ (GROUP BY) การเรียงลำดับ (SORT BY) การรวม (ซ้าย OUTER / INNER) และอื่น ๆ มากกว่าคำสั่ง SELECT / FROM / WHERE ประโยชน์ของฐานข้อมูลแบบกระจาย NoSQL มีมากมาย รวมถึงการใช้สถาปัตยกรรมแบบขยายขนาดและไม่มีจุดล้มเหลวแม้แต่จุดเดียว ความสามารถในการให้บริการที่รวดเร็วและมีประสิทธิภาพมีความสำคัญมากขึ้นเรื่อย ๆ เนื่องจากมีการจัดการความผูกพันกับลูกค้าทางออนไลน์ผ่านแอพมือถือและเว็บมากขึ้น
ฐานข้อมูล NoSQL มีหลายขนาด ติดตั้งง่าย และสามารถกำหนดค่าให้ตรงตามข้อกำหนดเฉพาะได้ ได้รับการออกแบบมาเพื่อให้สามารถเคลื่อนย้ายการอ่าน เขียน และจัดเก็บได้ พวกเขาสามารถจัดการและตรวจสอบคลัสเตอร์ขนาดต่างๆ ตลอดจนดำเนินการในทุกระดับ คุณไม่จำเป็นต้องติดตั้งซอฟต์แวร์ใดๆ เพื่อเรียกใช้ฐานข้อมูล NoSQL: มันง่ายเหมือนการจัดเก็บข้อมูลในฐานข้อมูล NoSQL แบบกระจาย นอกจากนี้ การใช้เราเตอร์ฮาร์ดแวร์ช่วยให้เกิดความล้มเหลวในทันทีโดยไม่จำเป็นต้องรอให้ฐานข้อมูลตรวจพบปัญหาและดำเนินกระบวนการกู้คืนโดยอิสระ โครงสร้างข้อมูลที่ใช้ NoSQL กำลังได้รับความนิยมมากขึ้นในฐานะส่วนหนึ่งของแอปพลิเคชันบนเว็บ อุปกรณ์พกพา และ Internet of Things (IoT) ในปัจจุบัน
สถาปัตยกรรมของฐานข้อมูล NoSQL ขึ้นอยู่กับคอลัมน์ หมายความว่าข้อมูลถูกจัดเก็บไว้ในแถวและคอลัมน์เหมือนใน ฐานข้อมูล ทั่วไป ตรงกันข้ามกับฐานข้อมูลปกติ ฐานข้อมูล NoSQL ได้รับการออกแบบเพื่อให้มีประสิทธิภาพมากกว่าความสม่ำเสมอ เนื่องจากได้รับการออกแบบมาสำหรับข้อมูลปริมาณมาก จึงไม่ถูกจำกัดด้วยความสามารถในการตอบสนองต่อการเปลี่ยนแปลงอย่างรวดเร็ว ไม่มีความแตกต่างว่าฐานข้อมูล NoSQL เป็นข้อมูลประเภทใด: สามารถใช้สำหรับการจัดเก็บข้อมูลขนาดใหญ่ได้ ยังเป็นทางเลือกที่ดีสำหรับธุรกิจที่ต้องตอบสนองต่อการเปลี่ยนแปลงอย่างรวดเร็ว สามารถค้นหาข้อมูลได้อย่างรวดเร็วและง่ายดาย เนื่องจากฐานข้อมูล NoSQL เป็นแบบคอลัมน์ เนื่องจากการเข้าถึงข้อมูลที่เฉพาะเจาะจงได้อย่างรวดเร็ว โซลูชันเหล่านี้จึงเป็นตัวเลือกที่ยอดเยี่ยมสำหรับธุรกิจที่ต้องการคำตอบอย่างรวดเร็ว นอกจากนี้ยังเป็นความคิดที่ดีสำหรับธุรกิจที่ต้องการข้อมูลจำนวนมากเพื่อใช้ฐานข้อมูล NoSQL ด้วยเหตุนี้จึงเป็นตัวเลือกที่ยอดเยี่ยมสำหรับธุรกิจที่ต้องการเซิร์ฟเวอร์เพิ่มเติม ฐานข้อมูล NoSQL สามารถขยายได้อย่างง่ายดายโดยใช้โครงสร้างข้อมูลแบบคอลัมน์ ด้วยเหตุนี้ การเพิ่มข้อมูลลงในฐานข้อมูลจึงไม่จำเป็นต้องลดทอนประสิทธิภาพสำหรับธุรกิจ ฐานข้อมูล NoSQL เป็นทางเลือกที่ดีสำหรับธุรกิจที่ต้องการจัดเก็บข้อมูลจำนวนมาก
บทนำของ Nosql
Nosql เป็นฐานข้อมูลที่จัดเก็บข้อมูลในรูปแบบอื่นที่ไม่ใช่ รูปแบบเชิงสัมพันธ์แบบดั้งเดิม แม้ว่าฐานข้อมูล nosql จะมีรูปแบบต่างๆ ได้มากมาย แต่ทั้งหมดก็มีลักษณะร่วมกันคือปรับขนาดได้และใช้งานง่าย
ฐานข้อมูลเชิงสัมพันธ์เป็นผลจากเอกสารในปี 1970 โดย EFCodd ที่ชื่อว่า แบบจำลองเชิงสัมพันธ์ของข้อมูลสำหรับธนาคารข้อมูลที่ใช้ร่วมกันขนาดใหญ่ ระบบกระจายเป็นระบบที่ใช้คอมพิวเตอร์และส่วนประกอบซอฟต์แวร์จำนวนมากสื่อสารกันผ่านเครือข่ายคอมพิวเตอร์ เพื่อให้ระบบบรรลุเป้าหมายร่วมกัน คอมพิวเตอร์ต้องมีปฏิสัมพันธ์กับผู้อื่นและใช้ทรัพยากรร่วมกัน ระบบคอมพิวเตอร์แบบกระจายมีพลังในการประมวลผลมากกว่าระบบประเภทอื่นเนื่องจากความเร็วในการประมวลผลสูง ไม่เหมือนกับ ฐานข้อมูลเชิงสัมพันธ์แบบดั้งเดิม ฐานข้อมูล NoSQL ไม่จำเป็นต้องใช้ SQL หรืออัลกอริทึมอื่นที่คล้ายคลึงกัน เมื่อใช้ระบบ NoSQL จะสามารถจัดเก็บข้อมูลได้รวดเร็วยิ่งขึ้นเนื่องจากใช้ประโยชน์จากการขยายขนาด Carlo Strozzi บัญญัติคำว่า NoSQL ในปี 1998 สำหรับแนวคิดทางธุรกิจ
ฐานข้อมูลแบบดั้งเดิม มีลักษณะที่ชัดเจนสี่ประการที่เหมือนกัน: เป็นแบบเชิงสัมพันธ์ เป็นแบบกระจาย ไม่เป็นเชิงสัมพันธ์ และไม่เป็นไปตามปรมาณู ความสม่ำเสมอ การแยกตัว หรือความทนทาน ตามทฤษฎีบท CAP มีข้อกำหนดพื้นฐานสามประการที่ต้องปฏิบัติตามในขณะที่พัฒนาแอปพลิเคชันสำหรับระบบแบบกระจาย ตามทฤษฎีบทของ CAP ระบบคอมพิวเตอร์แบบกระจายไม่สามารถรับประกันได้ว่าคุณสมบัติทั้งสามนี้จะมีอยู่ในเวลาเดียวกัน ฐานข้อมูล NoSQL แบ่งออกเป็นสี่ประเภท (ประเภทที่พบมากที่สุดคือประเภท) ขอบหรือส่วนโค้งคือชุดของคู่คำสั่งที่จำกัด (หรือเปลี่ยนแปลงได้) ในโครงสร้างข้อมูลกราฟ