คาฟคา: ตัวเลือกที่ยอดเยี่ยมสำหรับนายหน้าข้อความในไมโครเซอร์วิส
เผยแพร่แล้ว: 2022-11-19Kafka เป็นแพลตฟอร์มสตรีมมิ่งแบบกระจาย มักใช้สำหรับการรวมบันทึก การประมวลผลสตรีมตามเวลาจริง และการจัดหาเหตุการณ์ เมื่อเร็ว ๆ นี้ Kafka ได้รับความนิยมในฐานะตัวแทนข้อความสำหรับไมโครเซอร์วิส Kafka ไม่ใช่คิวข้อความแบบดั้งเดิมเช่น ActiveMQ หรือ RabbitMQ ไม่มีเซิร์ฟเวอร์กลางที่เก็บข้อความทั้งหมด แต่จะใช้โมเดลเผยแพร่และสมัครสมาชิกแทน ข้อความจะถูกจัดเก็บไว้ในหัวข้อ และแต่ละหัวข้อสามารถมีได้หลายพาร์ติชั่น คาฟคามีความพร้อมใช้งานสูงและสามารถปรับขนาดได้ สามารถรองรับข้อความหลายพันล้านข้อความต่อวัน คาฟคายังเร็วมากอีกด้วย สามารถประมวลผลข้อความแบบเรียลไทม์ Kafka เป็นตัวเลือกที่ยอดเยี่ยมสำหรับการสร้างนายหน้าข้อความสำหรับไมโครเซอร์วิส มีความพร้อมใช้งานสูง ปรับขนาดได้ และรวดเร็ว
คาฟคาซึ่งเป็นระบบการส่งข้อความตามเวลาจริงทำให้สิ่งนี้เป็นไปได้ สตรีมข้อมูลได้รับการปกป้องจากการรบกวนและสามารถกระจายหรือทนต่อความผิดพลาดได้ Kafka Data Integration Bus เป็นโปรโตคอลการแลกเปลี่ยนข้อมูลที่ช่วยให้ผู้ผลิตและผู้บริโภคที่หลากหลายสามารถแบ่งปันข้อมูลได้ ความสามารถของ Kafka คล้ายกับ MongoDB และ RDS ซึ่งทำหน้าที่เป็นบัฟเฟอร์ข้อมูลเมื่อสิ้นสุดแอปพลิเคชันของคุณ
KSQL ซึ่งเป็นภาษาสคริปต์ที่ใช้ SQL ใช้เพื่อวิเคราะห์และประมวลผลข้อมูลการสตรีมตามเวลาจริงใน Apache Kafka KSQL มี Interactive Framework สำหรับ Stream Processing ซึ่งมีไว้เพื่อให้คุณดำเนินกิจกรรม Stream Processing เช่น การรวมข้อมูล การกรอง การเข้าร่วม เซสชัน การกำหนดหน้าต่าง และอื่นๆ
มันเป็นมากกว่าตัวกลางส่งข้อความที่ยอดเยี่ยม ดังที่แสดงโดย Apache Kafka การใช้งานเฟรมเวิร์กมีคุณสมบัติคล้ายฐานข้อมูลหลายอย่างที่ทำให้เหมาะสำหรับใช้ในฐานข้อมูล ด้วยเหตุนี้ จึงทำหน้าที่เป็นบันทึกเหตุการณ์ทางธุรกิจแทนการใช้ฐานข้อมูลเชิงสัมพันธ์
แอปพลิเคชัน Kafka ช่วยประหยัดเวลาและพลังงานด้วยการสตรีมข้อมูลจาก MongoDB ในลักษณะที่ง่ายและมีประสิทธิภาพ MongoDB จำเป็นสำหรับองค์กรในการเผยแพร่ข้อมูลจำนวนมากไปยังสมาชิกรายอื่นรวมถึงจัดการสตรีมข้อมูลจำนวนมาก บริการการเชื่อมต่อ Kafka MongoDB ช่วยให้นักพัฒนาสามารถสร้างสตรีมแบบอะซิงโครนัสหลายรายการด้วย MongoDB ซึ่งเป็นเครื่องมือยอดนิยมในอุตสาหกรรม
ในฐานข้อมูล Apache Kafka ทำหน้าที่เป็นแบบจำลอง บริษัทหลายร้อยแห่งใช้มันเพื่อรับประกันกรดและปฏิบัติงานที่สำคัญต่อภารกิจ อย่างไรก็ตาม ในกรณีส่วนใหญ่ Kafka ไม่สามารถแข่งขันได้เท่ากับฐานข้อมูลอื่นๆ
คาฟคาเป็นฐานข้อมูลประเภทใด
คาฟคาเป็นฐานข้อมูลประเภทหนึ่งที่ใช้สำหรับจัดเก็บและเรียกค้นข้อความ เป็นระบบแบบกระจายที่ออกแบบมาให้ปรับขนาดได้และทนทานต่อความผิดพลาด
เป็นแพลตฟอร์มประมวลผลสตรีมโอเพ่นซอร์สที่เขียนด้วย Scala และ Java ซึ่งเป็นส่วนหนึ่งของ โครงการ Kafka ของ Apache Software Foundation กระแสวิทยาการคอมพิวเตอร์คือชุดขององค์ประกอบข้อมูลที่มีให้ใช้งานเมื่อเวลาผ่านไป สตรีมสามารถกำหนดเป็นรายการในสายพานลำเลียงที่ดำเนินการทีละรายการ สตรีมในรูปแบบพื้นฐานที่สุดอาจเป็นชุดของเหตุการณ์ที่ดูเหมือนไม่เกี่ยวข้องกัน แนวคิดของการจัดหาเหตุการณ์แตกต่างจากแนวคิดของคลังข้อมูลและการวิเคราะห์ข้อมูลที่นักพัฒนาคุ้นเคย ฉันจะใช้ Kafka เป็นฐานข้อมูลได้อย่างไร Blue คือบริษัทที่ตกลงตกลง
จากข้อมูลของ Team Red โปรแกรมเมอร์กำลังทำผิดพลาดครั้งใหญ่เมื่อเปลี่ยนจากฐานข้อมูลทั่วไปเป็น Kafka ตามที่ Martin Kleppmann ข้อความของ Team Red ที่ว่า Kafka มีไว้สำหรับทุกคนคือการอุปถัมภ์ ปัญหาที่ Team Red มีกับ Kafka และสตรีมคือพวกเขามีปัญหากับนักพัฒนาที่ทิ้ง RDMS เมื่อมีการนำเสนอบันทึกเหตุการณ์แบบถาวร จะมีบริบททางประวัติศาสตร์อยู่เสมอ ทำให้ง่ายต่อการตรวจสอบ การบริหารฐานข้อมูลมีข้อดีมากมาย แต่ก็เป็นหนึ่งในส่วนที่ยากที่สุดเช่นกัน ฐานข้อมูลแบบดั้งเดิมทำงานในสองวิธีที่ต่างกันอย่างสิ้นเชิง: ฐานข้อมูลรวมการอ่านและการเขียนเข้าด้วยกัน เป็นสิ่งสำคัญสำหรับโปรแกรมเมอร์ในการดูแลรักษาและซิงโครไนซ์ข้อมูลที่ซ้ำกันในหลายตาราง
สเกลเปลี่ยนรูปแบบตามที่คุณไป สตรีมมีความแตกต่างที่ชัดเจนระหว่างความกังวลของผู้อ่านและนักเขียน ไม่มีความสัมพันธ์ระหว่างความเร็วที่ Kafka เขียนไปยังไฟล์และความเร็วที่ Elastic Search สามารถพุชการอัปเดตได้ เป็นผลให้ ผู้ใช้ Kafka ประมวลผลบันทึกเพื่อสร้างมุมมองที่เป็นรูปธรรมต่างๆ การทำให้มุมมองที่เป็นรูปธรรมทำงานเป็นกลไกการแคชที่สะดวกทำให้จำเป็นต้องมีค่าใช้จ่ายล่วงหน้า มุมมองที่เป็นรูปธรรม นอกเหนือจากการจัดเก็บข้อมูลและการปรับขนาดของตัวเองแล้ว ยังเป็นส่วนประกอบที่สำคัญของโครงสร้างพื้นฐานอีกด้วย สำหรับ 99% ของธุรกิจ DBMS เป็นรากฐานที่ดีที่สุด
ใบสมัครของคุณอาจอยู่ในหมวดหมู่นี้ และคุณอาจมีสิทธิ์ได้รับสถาปัตยกรรมใหม่ตามภูมิหลังของคุณ คุณสมบัติที่สำคัญหลายอย่างจะหายไปหากคุณแทนที่ฐานข้อมูลด้วยบันทึก ฟีเจอร์นี้รวมถึงข้อจำกัดของคีย์ต่างประเทศ ธุรกรรมระดับปรมาณู (ทั้งหมดหรือไม่มีเลย) และเทคนิคการแยกขั้นตอนที่ช่วยแก้ปัญหาการทำงานพร้อมกัน Arjun ถือว่าใบสมัครของคุณมีความสมบูรณ์อยู่ตลอดเวลา คุณสมบัติพื้นฐานที่คนส่วนใหญ่มักมองข้ามกลายเป็นความรับผิดชอบเพิ่มเติมเมื่อคุณทำงานในสตรีม สิ่งสำคัญคือต้องแยกเจตนาออกจากข้อความที่เป็นลายลักษณ์อักษร การกำหนดค่าทั่วไปคือการใช้ Kafka ร่วมกับระบบ Change Data Capture
จากข้อมูลของ Team Red คุณลักษณะความสมบูรณ์ของข้อมูลของฐานข้อมูลมีความสำคัญต่อการควบคุมข้อมูล การทำธุรกรรมต้องแยกออกจากฐานข้อมูลทั่วไปเพื่อให้ได้รับการพิจารณา เป็นผลให้งานเขียนชิ้นเดียวอาจมีค่าใช้จ่ายสูง หากแอปพลิเคชันของคุณประสบปัญหาในการรับมือกับปริมาณการเขียนที่มีราคาแพง คุณอาจถูกบังคับให้ย้ายข้อมูลไปยังฐานข้อมูลแบบเดิม Team Red ไม่ได้พูดถึงว่าการใช้ฐานข้อมูลต่อหน้า Kafka จะลดคุณสมบัติที่ดีที่สุด
ข้อดีของการออกแบบนี้มีความสำคัญเหนือระบบการส่งข้อความแบบเดิม ข้อได้เปรียบประการแรกของ Kafka คือสามารถรองรับคำขอจำนวนมากได้ นอกจากนี้ เนื่องจากข้อมูลถูกเขียนลงดิสก์เมื่อจำเป็นเท่านั้น คาฟคาจึงสามารถจัดการกับข้อมูลจำนวนมหาศาลได้
SQL Server เป็นเครื่องมือฐานข้อมูลที่อยู่ในประเภทของเครื่องมือ อุปกรณ์พกพานี้ใช้งานได้หลากหลายและเชื่อถือได้ แต่บางครั้งอาจใช้งานยาก Kafka และ Azure ต่างเป็นแพลตฟอร์มที่มีความสามารถสูง แต่ Kafka ถูกปรับขนาดให้ใหญ่ขึ้น ในขณะที่ Azure ถูกลดขนาดลง
SQL Server เป็นเครื่องมือที่ยอดเยี่ยมสำหรับธุรกิจที่ต้องการพื้นที่จัดเก็บข้อมูลจำนวนมาก แต่อาจไม่ใช่ตัวเลือกที่ดีที่สุดสำหรับผู้ที่ต้องการปรับขนาดอย่างรวดเร็วหรือปริมาณงานสูง สำหรับธุรกิจที่ต้องประมวลผลข้อมูลจำนวนมากโดยไม่สูญเสียประสิทธิภาพ Kafka เป็นตัวเลือกที่ดีกว่า SQL Server
Kafka: ระบบจัดเก็บข้อมูลแบบกระจายสำหรับ Telemetry อนุกรมเวลา
Kafka Distributed Storage System ซึ่งใช้โมเดลตามหัวข้อเก็บข้อมูล ข้อมูลสามารถจัดเก็บไว้ในโมเดลตามหัวข้อของฐานข้อมูล Kafka แทนที่จะเป็นฐานข้อมูลเชิงสัมพันธ์ มันทำงานคล้ายกับคิวใน Kafka Topic แม้ว่าจะไม่ใช่ในลักษณะเดียวกับคิวก็ตาม สามารถจัดเก็บอนุกรมเวลาจำนวนมากในกรอบคาฟคาแทนที่จะเป็นฐานข้อมูลอนุกรมเวลา
อะไรคือความแตกต่างระหว่างคาฟคาและ Mongodb?
เป็นบริการบันทึกการกระทำแบบกระจาย แบ่งพาร์ติชัน และจำลองตามระบบแบบกระจาย แม้จะมีการออกแบบที่ไม่เหมือนใคร แต่ก็เป็นองค์ประกอบสำคัญของระบบการส่งข้อความ ในทางกลับกัน MongoDB ถูกอธิบายว่าเป็น "ฐานข้อมูลสำหรับความคิดที่ยิ่งใหญ่"
เนื่องจากคาฟคาไม่รองรับการเข้าคิวนอกกรอบ คุณจึงต้องแฮ็คมันเข้าไปในระบบเวอร์ชันผู้บริโภค หากต้องการฐานข้อมูลเชิงสัมพันธ์ เครื่องมืออื่นอาจมีประโยชน์มากกว่า MongoDB เป็นตัวเลือกที่ยอดเยี่ยมด้วยเหตุผลหลายประการ รวมถึงความง่ายในการใช้งานและความยืดหยุ่น มีการสนับสนุนผู้ใช้ของ Apache Confound มี Kafka (หากยินดีจ่าย) ซึ่งสร้างขึ้นที่ Linkedin ในเวลาเดียวกับโครงการ Kafka การมีผู้จำหน่ายที่ทำการสำรองข้อมูลอัตโนมัติและปรับขนาดคลัสเตอร์โดยอัตโนมัตินั้นสะดวกมาก หากคุณไม่มีผู้ดูแลระบบหรือ DBA ที่รู้จัก MongoDB เป็นความคิดที่ดีที่จะใช้บุคคลที่สามที่เชี่ยวชาญในการโฮสต์ MongoDB
Kafka ในรูปแบบพื้นฐานที่สุด มีวัตถุประสงค์เพื่อให้เราสามารถจัดคิวข้อความได้ เครื่องมือจัดเก็บข้อมูลของ Cassandra ช่วยให้มั่นใจได้ถึงการเขียนข้อมูลของคุณตลอดเวลาไม่ว่าข้อมูลนั้นจะใหญ่แค่ไหนก็ตาม MongoDB จัดทำแผนที่แบบกำหนดเอง/ลดการใช้งาน รวมทั้งรองรับ Hadoop ดั้งเดิมสำหรับการวิเคราะห์ ในขณะที่ Cassandra ไม่มี ไม่ว่าจะโฮสต์โดยคุณหรือผู้ให้บริการรายอื่นก็ไม่สร้างความแตกต่าง เพราะโดยปกติแล้วค่าใช้จ่ายจะสมเหตุสมผล
คาฟคากับ ระบบฐานข้อมูลแบบดั้งเดิม
สิ่งสำคัญคือต้องสังเกตว่ามีความแตกต่างหลายประการระหว่าง Kafka และระบบฐานข้อมูลแบบดั้งเดิม
เนื่องจาก Kafka เป็นแพลตฟอร์มการสตรีม จึงสามารถจัดการการนำเข้าข้อมูลในอัตราสูงโดยไม่ต้องมีการประมวลผลล่วงหน้าจำนวนมาก
ข้อมูลถูกใช้โดยการอ่านแบบหางมากกว่าการอ่านดิสก์เมื่อรัน Kafka
การใช้การแคชหน้าช่วยลดความจำเป็นในการเยี่ยมชมฐานข้อมูลแบบไปกลับสำหรับ Kafka
ในการส่งข้อมูลดาวน์สตรีมไปยังลูกค้าดาวน์สตรีม คาฟคาใช้การส่งข้อความแบบผับ/ย่อย
ฐานข้อมูลคาฟคาคืออะไร
Kafka เป็นฐานข้อมูลที่มักใช้สำหรับจัดเก็บข้อมูลการสตรีม เป็นระบบแบบกระจายที่ออกแบบมาให้ปรับขนาดได้และทนทานต่อความผิดพลาด Kafka มักใช้เพื่อสร้างไปป์ไลน์ข้อมูลแบบเรียลไทม์และแอพสตรีมมิ่ง สามารถจัดการปริมาณงานสูงและเวลาแฝงต่ำ
นายหน้าข้อความเช่น Kafka ได้รับความนิยมเพิ่มขึ้นในช่วงไม่กี่ปีที่ผ่านมา ตามที่ผู้เสนอ Kafka คือการเปลี่ยนแปลงกระบวนทัศน์ในการจัดการข้อมูล สิ่งสำคัญคือต้องจำไว้ว่าการใช้ Kafka เป็นที่เก็บข้อมูลหลักของคุณไม่ได้ทำให้คุณรู้สึกโดดเดี่ยว ทุกปัญหาที่พบในระบบฐานข้อมูลจะได้รับการแก้ไขในอนาคต แฮ็กเกอร์สามารถขโมยข้อมูลโดยใช้ประโยชน์จากข้อบกพร่องในสถาปัตยกรรมอิสระ หากผู้ใช้สองคนพยายามที่จะซื้อสินค้าเดียวกันในเวลาเดียวกัน พวกเขาจะประสบความสำเร็จทั้งคู่ และเราจะไม่มีสินค้าคงคลังสำหรับพวกเขาทั้งคู่ สถาปัตยกรรมเหล่านี้ซึ่งใช้คุณสมบัติการเดินทางข้ามเวลาเมื่อใช้งานเครื่องใช้ไฟแก๊ส อาศัยสถาปัตยกรรมที่ขับเคลื่อนด้วยเหตุการณ์
การจัดการข้อมูลจำนวนมากเป็นการใช้ Kafka ที่ยอดเยี่ยม ควรแยกธุรกรรมโดยใช้ DBMS แบบดั้งเดิม ใช้ฐานข้อมูล OLTP สำหรับการควบคุมการรับเข้า CDC สำหรับการสร้างเหตุการณ์ และจำลองสำเนาดาวน์สตรีมเมื่อมุมมองปรากฏขึ้นเพื่อเปลี่ยนฐานข้อมูลของคุณจากภายนอก
คาฟคายังสามารถใช้เพื่อจัดเก็บข้อมูลจำนวนมากและประมวลผลในแต่ละวัน ความสามารถในการประมวลผลข้อมูลขนาดใหญ่เป็นชุดหรือโหมดสตรีมมิ่งเป็นข้อได้เปรียบเหนือวิธีอื่นๆ กระบวนการ Kafka สามารถใช้เพื่อดึงไฟล์บันทึกจากเซิร์ฟเวอร์หลายเครื่องและจัดเก็บไว้ในฐานข้อมูลหรือดัชนีการค้นหา เป็นต้น นอกจากนี้ยังมี API การสตรีมที่สามารถใช้เพื่อประมวลผลข้อมูลแบบเรียลไทม์
คาฟคา vs ตร
โดยทั่วไป Kafka และ MySQL แบ่งออกเป็น 2 ประเภท ได้แก่ Message Queues และ Database Applications นักพัฒนาส่วนใหญ่มองว่า Kafka เป็นโซลูชันที่มีปริมาณงานสูง กระจาย และปรับขนาดได้ ในขณะที่ MySQL ถูกมองว่าเป็นที่นิยมมากที่สุดเนื่องจากความเรียบง่าย ประสิทธิภาพ และความสะดวกในการใช้งาน
การส่งข้อความ Pub-sub บน Kafka เป็นระบบแบบกระจาย ทนทานต่อข้อผิดพลาด มีปริมาณงานสูงที่สามารถจัดการข้อมูลปริมาณมากได้ MySQL เป็นฐานข้อมูลโอเพ่นซอร์สที่ได้รับความนิยมมากที่สุดในโลก ซึ่งมีวัตถุประสงค์เพื่อใช้ในระบบการผลิตที่มีความสำคัญต่อภารกิจและรองรับงานหนัก การพัฒนาถือว่า Kafka มีประสิทธิภาพมากกว่า MySQL เนื่องจากมีปริมาณงานสูง สถาปัตยกรรมแบบกระจาย และความสามารถในการปรับขนาด ในขณะที่ SQL, ฟรีและง่ายเป็นเหตุผลหลักว่าทำไมผู้ใช้ MySQL ถึงชอบ ฉันแนะนำ PostgreSQL หากคุณต้องการรับประสบการณ์จริงกับระบบจัดการฐานข้อมูล (DBMS) ที่ Vital Beats เราใช้ Postgres เป็นหลักเพราะช่วยให้เราบรรลุความสมดุลที่ต้องการระหว่างการจัดการข้อมูลที่มีประสิทธิภาพและการสำรองข้อมูลในขณะที่ยังคงรองรับบรรทัดคำสั่ง หากคุณวางแผนที่จะโฮสต์ฐานข้อมูลในสถานที่หรือในระบบคลาวด์ จุดติดต่อแรกคือฐานข้อมูล PaaS (Platform as a Service) เนื่องจาก MongoDB เขียนข้อมูลในระดับเดียวกับเอกสารเดียว ความสอดคล้องจึงเป็นเรื่องยากหากไม่มีธุรกรรม
ที่เก็บเอกสาร เช่น ที่พบใน Amazon DynamoDB และ AWS RedShift นั้นแตกต่างจากคู่คีย์-ค่า (หรือที่เก็บคอลัมน์) ที่พบใน MongoDB เป็นอย่างมาก การสอบถามโดยใช้ฐานข้อมูล #Nosql ทำได้เร็วและง่ายกว่า เนื่องจากเวลาในการพัฒนาลดลง ในฐานะพนักงานครั้งแรกในอุตสาหกรรมอสังหาริมทรัพย์ ฉันต้องการเลือกฐานข้อมูลที่จะมีประสิทธิภาพสูงเมื่อเวลาผ่านไป หากคุณเรียกใช้ Aurora Postgres บน AWS ด้วยการปรับใช้ในภูมิภาคเดียว นี่เป็นหนึ่งในแพลตฟอร์มที่ดีที่สุดที่ฉันแนะนำ หากคุณใช้ PostgreSQL ในสภาพแวดล้อมระบบคลาวด์สามแห่ง คุณจะได้สัมผัสประสบการณ์การจำลองแบบหลายภูมิภาคที่ดีขึ้น หากคุณกำหนดค่าอย่างถูกต้อง ฐานข้อมูลทั้งสามนี้จะทำงานได้อย่างมีประสิทธิภาพ ปรับขยายได้ และเชื่อถือได้ในระยะยาว Uber เปลี่ยนจาก Postgres เป็น MySql ด้วยเหตุผลหลายประการ รวมถึงความต้องการระบบการส่งข้อมูลที่คล่องตัวและเชื่อถือได้มากขึ้น
ประธานเจ้าหน้าที่ฝ่ายเทคโนโลยีของ OPS Platform ระบุว่า Postgres เป็นตัวเลือกระยะยาวที่มีประสิทธิภาพมากที่สุดสำหรับผลิตภัณฑ์ของตน เนื่องจากความเร็วและความสะดวกในการใช้งาน เมื่อเปรียบเทียบกับ MySQL 7.x การทำธุรกรรมจะได้รับการจัดการที่รวดเร็วกว่าใน MySQL 8.0 ฐานข้อมูลมีความปลอดภัยมากขึ้นหรือไม่? เป็นไปได้ไหมที่จะเปลี่ยนคีย์เข้ารหัสแบบสุ่ม? MySQL และ MongoDB เป็นสองฐานข้อมูลโอเพ่นซอร์สที่ได้รับความนิยมสูงสุด นอกจากความง่ายในการจัดเก็บข้อมูลแล้ว MongoDB ยังสามารถใช้เพื่อจัดเก็บข้อมูลขาเข้าจำนวนมากผ่านทาง Content Distribution Network (CDN) ข้อได้เปรียบหลักของ Postgres เหนือฐานข้อมูลเชิงวัตถุอื่น ๆ คือการเน้นที่ความสามารถในการขยายและการปฏิบัติตามมาตรฐาน
สามารถสร้าง B-tree และดัชนีแฮชแบบปกติ รวมถึง Expression และ Partial Indices (ที่มีผลเฉพาะบางส่วนของตาราง) ได้ ความแตกต่างพื้นฐานที่สุดระหว่าง Redis และ Kafka คือการใช้เฟรมเวิร์กการส่งข้อความระดับองค์กร ฉันกำลังมองหาเทคโนโลยีที่ใช้ระบบคลาวด์เมื่อฉันเลือก นอกเหนือจากการค้นหาบริการแล้ว NATS ยังสามารถนำมาใช้เพื่อแทนที่การทำโหลดบาลานซ์ มัลติคลัสเตอร์ส่วนกลาง และการดำเนินการอื่นๆ สิ่งเดียวที่ Redis ไม่ทำคือทำหน้าที่เป็นนายหน้าข้อความบริสุทธิ์ (ในขณะที่เขียน) ด้วยเหตุนี้ จึงเป็นที่เก็บคีย์-ค่าทั่วไปในหน่วยความจำมากกว่า แม้จะมีคลังเพลงมากมาย แต่เพลงของฉันมักมีความยาวมากกว่าสองชั่วโมง
ปัญหาในการจัดเก็บไฟล์เสียงในแถวฐานข้อมูลเป็นเวลาหลายชั่วโมงคือไม่สามารถค้นหาได้ง่าย หากต้องการ ให้พิจารณาจัดเก็บไฟล์เสียงในบริการพื้นที่จัดเก็บบนคลาวด์ เช่น Backblaze b2 หรือ AWS S3 มีโซลูชันที่ใช้ MQTT Broker บน IoT World หรือไม่ ตั้งอยู่ในศูนย์ข้อมูลแห่งใดแห่งหนึ่ง ขณะนี้เรากำลังประมวลผลเพื่อวัตถุประสงค์ที่เกี่ยวข้องกับการแจ้งเตือนและการเตือนภัย เป้าหมายหลักของเราคือการใช้ผลิตภัณฑ์ที่เบาขึ้นซึ่งช่วยลดความซับซ้อนในการดำเนินงานและค่าบำรุงรักษา จะดีมากหากเราสามารถรวม Apache Kafka เข้ากับการเรียก API ของบุคคลที่สามเพิ่มเติมเหล่านี้ได้
แอป RabbitMQ เป็นตัวเลือกที่ยอดเยี่ยมสำหรับการลองใหม่และเข้าคิว หากคุณไม่ต้องการให้แต่ละข้อความประมวลผลโดยผู้ใช้มากกว่าหนึ่งราย คุณสามารถใช้ RabbitMQ ได้ มันไม่สมเหตุสมผลเลยที่จะใช้ Kafka เพื่อส่งมอบระบบด้วยการยืนยัน ตัวจัดการสถานะเหตุการณ์ของ Kafka เช่น ตัวจัดการสถานะเหตุการณ์แบบถาวร ช่วยให้คุณสามารถแปลงและสืบค้นแหล่งข้อมูลต่างๆ โดยใช้สตรีม API เฟรมเวิร์ก RabbitMQ เหมาะอย่างยิ่งสำหรับผู้เผยแพร่หรือผู้สมัครสมาชิกแบบหนึ่งต่อหนึ่ง (หรือผู้บริโภค) และฉันเชื่อว่าการแลกเปลี่ยน fanout สามารถกำหนดค่าเพื่อเปิดใช้งานผู้บริโภคหลายคน โครงการ Pushnami สาธิตวิธีการย้ายข้อมูลสดจากฐานข้อมูลหนึ่งไปยังอีกฐานข้อมูลหนึ่ง เนื่องจากแต่ละส่วนหน้า (เชิงมุม) ส่วนหลัง (Node.js) และส่วนหน้า (MongoDB) เป็นแบบเนทีฟ การแลกเปลี่ยนข้อมูลจึงง่ายกว่ามาก
เพื่อหลีกเลี่ยงเลเยอร์การแปล ฉันข้ามส่วนที่เกี่ยวข้องกับลำดับชั้น การรักษาขนาดที่จำกัดในออบเจ็กต์ MongoDB และใช้ดัชนีที่ถูกต้องเป็นสิ่งสำคัญ ในช่วงต้นทศวรรษ 1960 เวชระเบียนอิเล็กทรอนิกส์ (EMR) รุ่นแรกสุดบางส่วนใช้ MUMPS ซึ่งเป็นฐานข้อมูลเชิงเอกสาร MongoDB ซึ่งจัดเก็บได้ถึง 40% ของประวัติโรงพยาบาลทั้งหมด ถือเป็นฐานข้อมูลทางการแพทย์ที่แข็งแกร่ง อย่างไรก็ตาม มีวิธีการที่ชาญฉลาดมากในการดำเนินการค้นหาทางภูมิศาสตร์ที่ไม่ได้รับการสนับสนุน ซึ่งในระยะยาวจะช้ามาก Amazon Kinesis ประมวลผลไฟล์ข้อมูลหลายแสนไฟล์ต่อวินาทีจากแหล่งข้อมูลนับแสน RabbitMQ ช่วยให้คุณส่งและรับข้อความจากแอพใดก็ได้ Apache ActiveMQ รวดเร็ว รองรับไคลเอ็นต์ข้ามภาษาที่หลากหลาย และเป็นภาษาสคริปต์ที่มีประสิทธิภาพ ข้อมูล Hadoop ได้รับการประมวลผลโดยใช้เครื่องมือประมวลผลที่รวดเร็วและใช้งานทั่วไปชื่อ Spark
คาฟคา vs มองก็อด
Mongodb เป็นฐานข้อมูลเชิงเอกสารที่ทรงพลังซึ่งมีฟีเจอร์มากมายที่ทำให้เป็นตัวเลือกที่ดีสำหรับแอพพลิเคชั่นที่หลากหลาย Kafka เป็นแพลตฟอร์มการสตรีมประสิทธิภาพสูงที่สามารถใช้สร้างไปป์ไลน์ข้อมูลแบบเรียลไทม์และแอพพลิเคชั่นการสตรีม
การถ่ายโอนจาก MongoDB เป็น Source ไปยัง MongoDB อื่นหรือ MongoDB อื่นๆ สามารถทำได้อย่างราบรื่นด้วยแอปพลิเคชัน Kafka ไปยัง MongoDB ด้วยความช่วยเหลือของ MongoDB Kafka Connector คุณจะได้เรียนรู้วิธีการถ่ายโอนข้อมูลอย่างมีประสิทธิภาพ ด้วยคุณลักษณะนี้ คุณสามารถสร้างไปป์ไลน์ ETL ใหม่ทั้งหมดสำหรับองค์กรของคุณได้ คอนฟลูเอนเซอร์มีตัวเชื่อมต่อที่หลากหลายซึ่งทำหน้าที่เป็นต้นทางและซิงก์ ช่วยให้ผู้ใช้สามารถถ่ายโอนข้อมูลระหว่างทั้งสองได้ ตัวเชื่อมต่อ Debezium MongoDB เป็นหนึ่งในกลไกการเชื่อมต่อที่ช่วยให้ผู้ใช้ Kafka MongoDB สามารถเชื่อมต่อกับฐานข้อมูล MongoDB ได้ ก่อนที่คุณจะเริ่ม Confluent Kafka คุณต้องแน่ใจก่อนว่ามันกำลังทำงานอยู่บนระบบของคุณ ด้วยการใช้ฟังก์ชัน เช่น KStream, KSQL หรือเครื่องมืออื่นๆ เช่น Spark Streaming คุณสามารถวิเคราะห์ข้อมูลใน Kafka
การป้อนข้อมูลในคลังสินค้าจำเป็นต้องใช้สคริปต์แบบแมนนวลและโค้ดแบบกำหนดเอง แพลตฟอร์มไปป์ไลน์ข้อมูลแบบไม่มีโค้ดของ Hevo ช่วยให้คุณสร้างระบบไปป์ไลน์ข้อมูลอย่างง่ายโดยไม่ต้องเขียนโค้ด แพลตฟอร์มการกำหนดราคาที่โปร่งใสของ Hevo ช่วยให้คุณเห็นทุกรายละเอียดการใช้จ่าย ELT ของคุณแบบเรียลไทม์ ระยะเวลาทดลองใช้ 14 วันและรวมถึงการสนับสนุน 24 × 7 การเข้ารหัสจากต้นทางถึงปลายทางทำได้โดยใช้การรับรองความปลอดภัยที่เข้มงวดที่สุด สามารถใช้ Hevo เพื่อถ่ายโอนข้อมูล Kafka และ MongoDB ของคุณอย่างปลอดภัยไปยังแหล่งข้อมูลต่างๆ 150 แห่ง (รวมถึงแหล่งข้อมูลฟรี 40 แห่ง)
คาฟคาและ Mongob คืออะไร?
ตัวเชื่อมต่อ MongoDB Kafka เป็นตัวเชื่อมต่อที่ผ่านการตรวจสอบแล้วซึ่งเก็บข้อมูลจากหัวข้อ Kafka เป็นอ่างข้อมูลใน MongoDB และเผยแพร่การเปลี่ยนแปลงไปยังหัวข้อเหล่านั้นเป็นแหล่งข้อมูล
ข้อดีและข้อเสียของการใช้ Kafka เป็นฐานข้อมูล
ฐานข้อมูลใดดีสำหรับคาฟคา ตามหลักการแล้ว Kafka สามารถใช้สร้างฐานข้อมูลได้ ผลลัพธ์จะเป็นการตรวจสอบทุกปัญหาสำคัญที่รบกวนระบบการจัดการฐานข้อมูลมานานหลายทศวรรษ ระบบจัดการฐานข้อมูล (DBMS) เป็นซอฟต์แวร์ประเภทหนึ่งที่จัดระเบียบและสืบค้นข้อมูล จำเป็นสำหรับแอปพลิเคชันขนาดใหญ่และสำหรับการจัดเก็บข้อมูลที่ต้องเข้าถึงโดยผู้ใช้หลายคน DBMS แบ่งออกเป็นสองประเภท: เชิงสัมพันธ์และไม่ใช่เชิงสัมพันธ์ โมเดลเชิงสัมพันธ์เป็นวิธีการมาตรฐานในการแสดงข้อมูลใน DBMS เชิงสัมพันธ์ เป็นที่นิยมเนื่องจากใช้งานง่าย และสามารถใช้เพื่อเก็บข้อมูลที่จัดอยู่ในตาราง DBMS ที่ไม่ใช้โมเดลเชิงสัมพันธ์จะไม่มีประสิทธิภาพเท่ากับโมเดลที่ใช้โมเดลอื่นๆ ข้อมูลจะถูกจัดเก็บไว้ในรูปแบบอื่นนอกเหนือจากตารางเพื่อให้จัดระเบียบได้อย่างมีประสิทธิภาพมากขึ้น เช่น สตรีมข้อมูล แบบจำลองของคาฟคา ใช้ในการสร้างฐานข้อมูล ซึ่งสามารถนำไปใช้เพื่อวัตถุประสงค์ที่หลากหลาย การประมวลผลสตรีมเป็นหัวใจของ Kafka ซึ่งเป็นโมเดลการแสดงข้อมูลใหม่ ระบบการจัดการข้อมูล (DMS) เป็นองค์ประกอบสำคัญของการจัดการข้อมูล อย่างไรก็ตาม การใช้ Kafka เป็นฐานข้อมูลอาจเป็นเรื่องยากในบางครั้ง ปัญหาทั่วไปบางส่วนที่ DBMS พบ ได้แก่ ประสิทธิภาพ ความสามารถในการปรับขนาด และความน่าเชื่อถือ George Fraser ซีอีโอของ Fivetran และ Arjun Narayan ซีอีโอของ Materialize ร่วมเขียนโพสต์นี้
ฐานข้อมูลการคงอยู่ของคาฟคา
ฐานข้อมูลการคงอยู่ของคาฟคาให้วิธีการจัดเก็บข้อมูลใน คลัสเตอร์ คาฟคาในลักษณะที่พร้อมใช้งานสูงและปรับขนาดได้ ตามค่าเริ่มต้น คาฟคาจะใช้ฐานข้อมูลในหน่วยความจำเพื่อจัดเก็บข้อมูล แต่ไม่เหมาะสำหรับการปรับใช้จริง สามารถใช้ฐานข้อมูลการคงอยู่ของคาฟคาเพื่อจัดเตรียมตัวเลือกการจัดเก็บที่เชื่อถือได้มากขึ้นสำหรับข้อมูลคาฟคา
LinkedIn สร้าง Apache kaffef แบบโอเพ่นซอร์สในปี 2554 แพลตฟอร์มนี้ทำให้สามารถป้อนข้อมูลแบบเรียลไทม์ในเวลาแฝงและปริมาณงานต่ำมาก ในกรณีส่วนใหญ่ สามารถนำเข้าและส่งออกข้อมูลผ่าน Kafka Connect จากระบบภายนอกได้ โซลูชันใหม่ๆ สามารถช่วยแก้ไขปัญหาต่างๆ เช่น ประสิทธิภาพการจัดเก็บข้อมูลที่ไม่มีประสิทธิภาพและการใช้งานไดรฟ์น้อยเกินไป แม้จะมีความท้าทายของสถาปัตยกรรม แต่แฟลชภายในก็เป็นตัวเลือกที่ยอดเยี่ยมสำหรับระบบ Kafka เนื่องจากแต่ละหัวข้อใน Kakfa สามารถเข้าถึงได้ในไดรฟ์เดียวเท่านั้น จึงมีการใช้น้อยเกินไป การซิงโครไนซ์ยังทำได้ยาก ส่งผลให้เกิดปัญหาด้านต้นทุนและประสิทธิภาพ
เมื่อ SSD ล้มเหลว ข้อมูลจาก SSD จะต้องสร้างใหม่ทั้งหมด ขั้นตอนใช้เวลานานนี้ลดประสิทธิภาพของคลัสเตอร์ Kafka เหมาะที่สุดสำหรับพื้นที่เก็บข้อมูลที่ใช้ NVMe/TCP เนื่องจากจะทำให้การแลกเปลี่ยนระหว่างความน่าเชื่อถือและประสิทธิภาพลดลง
Kafka เป็นระบบการส่งข้อความที่ยอดเยี่ยม แต่ไม่ใช่โซลูชันที่สมบูรณ์แบบสำหรับการจัดเก็บข้อมูล
Kafka เป็นระบบส่งข้อความที่ยอดเยี่ยมที่สามารถใช้เพื่อเก็บข้อมูล หนึ่งในตัวเลือกการเก็บรักษาของ Kafka คือเวลาเก็บรักษา -1 ซึ่งหมายถึงการเก็บรักษาตลอดชีวิต อย่างไรก็ตาม ความเชื่อถือได้ของ Kafka นั้นต่ำกว่าฐานข้อมูลแบบดั้งเดิมมาก สิ่งสำคัญคือต้องสังเกตว่า Kafka เก็บข้อมูลไว้ในดิสก์ เช็คซัม และจำลองแบบเพื่อความทนทานต่อข้อผิดพลาด ดังนั้นการสะสมข้อมูลที่เก็บไว้มากขึ้นจะไม่ทำให้ช้าลง คาฟคาสามารถใช้เพื่อส่งและรับข้อความได้ แต่ไม่ใช่ตัวเลือกที่ดีที่สุดสำหรับการจัดเก็บข้อมูล
คาฟคาคืออะไร
Kafka เป็นระบบส่งข้อความสมัครรับข่าวสารที่รวดเร็ว ปรับขนาดได้ ทนทาน และทนทานต่อข้อผิดพลาด Kafka ถูกใช้ในการผลิตโดยบริษัทต่างๆ เช่น LinkedIn, Twitter, Netflix และ Airbnb
คาฟคามีการออกแบบที่เรียบง่ายและตรงไปตรงมา เป็นระบบกระจายที่ทำงานบนคลัสเตอร์ของเครื่องและสามารถปรับขนาดในแนวนอนได้ Kafka ได้รับการออกแบบมาเพื่อรองรับปริมาณงานสูงและเวลาแฝงต่ำ
Kafka ใช้เพื่อสร้างไปป์ไลน์ข้อมูลและแอพพลิเคชั่นสตรีมมิ่งตามเวลาจริง สามารถใช้ในการประมวลผลและรวบรวมข้อมูลแบบเรียลไทม์ คาฟคายังสามารถใช้สำหรับการประมวลผลเหตุการณ์ การบันทึก และการตรวจสอบ
LinkedIn เปิดตัว Kafka ในปี 2554 เพื่อจัดการฟีดข้อมูลแบบเรียลไทม์ Kafka ถูกใช้โดยมากกว่า 80% ของ Fortune 100 ในปัจจุบัน Kafka Streams API เป็นไลบรารีที่มีประสิทธิภาพและน้ำหนักเบาซึ่งออกแบบมาเพื่อให้ประมวลผลได้ทันที นอกเหนือจากฐานข้อมูลแบบกระจายยอดนิยมแล้ว Kafka ยังมีสิ่งที่เป็นนามธรรมของบันทึกการกระทำแบบกระจาย ซึ่งแตกต่างจากคิวการส่งข้อความ Kafka เป็นระบบกระจายที่ปรับเปลี่ยนได้สูงและทนทานต่อข้อผิดพลาดพร้อมความสามารถในการปรับขนาดสูง ตัวอย่างเช่น สามารถใช้เพื่อจัดการการจับคู่ผู้โดยสารและคนขับที่ Uber หรือให้การวิเคราะห์ตามเวลาจริงที่ British Gas ไมโครเซอร์วิสจำนวนมากพึ่งพาคาฟคา บริการแบบเนทีฟบนคลาวด์ สมบูรณ์ และได้รับการจัดการอย่างเต็มรูปแบบของ Confluent นั้นเหนือกว่าของ Kafka Confound ทำให้การสร้างหมวดหมู่ใหม่ของแอปพลิเคชันที่ทันสมัยที่ขับเคลื่อนด้วยเหตุการณ์เป็นเรื่องง่ายโดยการรวมข้อมูลในอดีตและเรียลไทม์เข้าไว้ในแหล่งความจริงที่รวมเป็นหนึ่งเดียว
ด้วยความช่วยเหลือของ Kinesis คุณสามารถจัดการสตรีมข้อมูลได้หลากหลาย ทำให้เป็นแพลตฟอร์มการประมวลผลสตรีมที่ทรงพลังและหลากหลาย เป็นแพลตฟอร์มยอดนิยมเนื่องจากความเร็ว ความเรียบง่าย และเข้ากันได้กับอุปกรณ์หลากหลายประเภท เนื่องจากความเชื่อถือได้ จึงเป็นหนึ่งในแพลตฟอร์มสตรีมมิ่งที่ได้รับความนิยมสูงสุด สามารถจัดการข้อมูลปริมาณมากได้โดยไม่มีปัญหาใด ๆ เนื่องจากความทนทาน นอกจากนี้ เนื่องจากเป็นแพลตฟอร์มที่รู้จักกันดีซึ่งใช้และรองรับอย่างกว้างขวาง การหาพันธมิตรหรือผู้รวมระบบจึงเป็นเรื่องง่ายที่จะช่วยคุณในการเริ่มต้นใช้งาน หากคุณกำลังมองหาแพลตฟอร์มสตรีมมิ่งที่ทั้งทรงพลังและเชื่อถือได้ Kinesis คือตัวเลือกที่ยอดเยี่ยม
คาฟคา: ระบบการส่งข้อความที่มาแทนที่ฐานข้อมูล
กระแสข้อมูลตามเวลาจริงสามารถปรับเปลี่ยนให้เข้ากับสภาพแวดล้อมข้อมูลที่เปลี่ยนแปลงได้โดยใช้ Kafka ซึ่งเป็นระบบการส่งข้อความสำหรับสร้างไปป์ไลน์ข้อมูลและแอพพลิเคชั่นสตรีมมิ่งตามเวลาจริง ข้อมูลขนาดใหญ่ได้รับการประมวลผลผ่านสตรีมเหตุการณ์แบบเรียลไทม์ผ่านการใช้ Kafka ซึ่งเขียนด้วย Scala และ Java การเชื่อมต่อของคาฟคาสามารถขยายจากจุดหนึ่งไปยังอีกจุดหนึ่งได้ และยังสามารถใช้ส่งข้อมูลระหว่างแหล่งข้อมูลได้อีกด้วย แพลตฟอร์มการสตรีมเหตุการณ์มีวัตถุประสงค์เพื่อให้บริการสตรีมสดของกิจกรรม การเปรียบเทียบฐานข้อมูลกับโซลูชันการส่งข้อความเช่น Kafka นั้นไม่ยุติธรรม เนื่องจากคุณสมบัติใน Kafka จึงไม่จำเป็นต้องใช้ฐานข้อมูลอีกต่อไป
คาฟคาไม่ใช่ฐานข้อมูล
คาฟคาไม่ใช่ฐานข้อมูล แต่มักใช้ร่วมกับฐานข้อมูล เป็นนายหน้าข้อความที่สามารถใช้ส่งข้อความระหว่างส่วนประกอบต่างๆ ของระบบ มักใช้เพื่อแยกส่วนต่าง ๆ ของระบบออกเพื่อให้สามารถปรับขนาดได้อย่างอิสระ
เป็นไปได้ที่จะแทนที่ Apache Kafka ด้วยฐานข้อมูล แต่อย่าทำเช่นนั้นเพื่อความสะดวก ในตอนของ Top Gear ที่ตัวเอกได้รับเงิน 10,000 ดอลลาร์ต่อคนจากการซื้อรถซูเปอร์คาร์อิตาลีเครื่องยนต์วางกลางมือสอง ทำให้ฉันนึกถึงตอนเก่าๆ ของ Top Gear ที่ตัวเอกได้รับคนละ 10,000 ดอลลาร์ ในปี 2554 LinkedIn เปิดตัว Kafka และตอนนี้ออกอากาศในปีเดียวกัน ช่วยให้คุณทำการส่งข้อความต่อเนื่องขั้นต่ำโดยไม่ต้องลงทุนในแพลตฟอร์มการส่งข้อความที่มีคุณสมบัติครบถ้วน หลักฐานพื้นฐานคือมีกฎพื้นฐาน สร้างตาราง (หรือบัคเก็ต คอลเลกชัน ดัชนี อะไรก็ตาม) สำหรับแต่ละเหตุการณ์ที่บันทึกไว้ในระหว่างกระบวนการผลิต สำรวจฐานข้อมูลเป็นประจำจากอินสแตนซ์ของผู้บริโภค อัปเดตสถานะของผู้บริโภคขณะที่ประมวลผล
เพื่อให้โมเดลทำงานได้อย่างถูกต้อง ผู้ผลิตและผู้บริโภคควรสามารถทำงานพร้อมกันได้ ลองใช้หนังสือของคาฟคาเป็นแนวทางและจัดเก็บบันทึกอย่างไม่มีกำหนด แทนที่จะอ่านอย่างเดียว ในทางกลับกัน กลุ่มผู้บริโภคที่แยกจากกัน สามารถดำเนินการได้โดยการทำซ้ำเรกคอร์ดเมื่อแทรก จากนั้นจึงลบเรกคอร์ดหลังการบริโภค Kafka ใช้การชดเชยอย่างต่อเนื่องเพื่อเปิดใช้งานการกระจายข้อมูลที่ผู้ใช้กำหนดและสนับสนุนผู้บริโภคที่แยกจากกันหลายราย หากต้องการหยุดการทำงานนี้ คุณต้องพัฒนาบริการตั้งแต่เริ่มต้น การนำแนวคิดการกวาดล้างตามเวลาไปใช้ไม่ใช่เรื่องยาก แต่จำเป็นต้องอาศัยตรรกะของผู้เก็บขยะ ใน Kafka มีการควบคุมโดยละเอียดสำหรับนักแสดงทุกคน (ผู้บริโภค ผู้ผลิต และผู้ดูแลระบบ)
สามารถประมวลผลบันทึกนับล้านต่อวินาทีบนเซิร์ฟเวอร์โภคภัณฑ์และคลาวด์โดยไม่มีปัญหาใดๆ Kafka ได้รับการปรับให้เหมาะสมสำหรับปริมาณงานในระดับสูงทั้งในส่วนผู้ผลิตและผู้บริโภค ในแง่ที่ไม่เกี่ยวกับการทำงาน การใช้ Kafka เป็นบันทึกแบบกระจายและต่อท้ายเท่านั้นที่ไม่มีใครเทียบได้ในฟิลด์นี้ ซึ่งแตกต่างจากนายหน้าข้อความแบบดั้งเดิมที่ลบข้อความในขั้นตอนการบริโภค Kafka จะไม่ลบข้อความหลังจากใช้งานแล้ว ทรูพุตและเวลาแฝงของฐานข้อมูลจะต้องได้รับการปรับปรุงอย่างมีนัยสำคัญผ่านการใช้ฮาร์ดแวร์พิเศษและการปรับแต่งประสิทธิภาพที่มุ่งเน้นอย่างมาก การจ่ายกับนายหน้าอาจดึงดูดสายตาตั้งแต่แรกเห็น เมื่อคุณใช้แพลตฟอร์มการสตรีมเหตุการณ์เช่น Kafka คุณจะได้ประโยชน์จากความพยายามทางวิศวกรรมจำนวนมหาศาลในการก่อสร้าง
เพื่อให้แน่ใจว่าโซลูชันใดก็ตามที่คุณเลือกปรับใช้ในปัจจุบันสามารถรักษาไว้ได้ คุณต้องแน่ใจว่าสามารถรักษามาตรฐานระดับสูงได้ ฟังก์ชันส่วนใหญ่ในที่เก็บเหตุการณ์สามารถนำไปใช้ได้ผ่านการใช้ฐานข้อมูลเท่านั้น ไม่มีร้านค้ากิจกรรมขนาดเดียวที่เหมาะกับทุกคน ที่เก็บเหตุการณ์ที่ไม่สำคัญใด ๆ ในกรณีส่วนใหญ่ เกือบจะแน่นอนว่าเป็นการดำเนินการตามสั่งที่ได้รับการสนับสนุนโดยฐานข้อมูลนอกชั้นวางตั้งแต่หนึ่งฐานข้อมูลขึ้นไป คุณสามารถใช้ฐานข้อมูลในด้านการจัดระเบียบข้อมูลเพื่อการดึงข้อมูลที่มีประสิทธิภาพ แต่คุณควรหลีกเลี่ยงการใช้ฐานข้อมูลเพื่อกระจายข้อมูล (ใกล้เคียง) ตามเวลาจริง