ทำความเข้าใจการแบ่งส่วนและแบบจำลอง
ทำความเข้าใจแนวคิดการแบ่งส่วนเพื่อเพิ่มขนาดระบบในแนวนอน และแบบจำลองเพื่อให้พร้อมใช้งานสูงและทนต่อความขัดข้องใน Elasticsearch
ทำความเข้าใจการแบ่งส่วนและแบบจำลอง เป็นบทเรียน Elasticsearch & Full Text Search Systems ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Elasticsearch & Full Text Search Systems และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Elasticsearch & Full Text Search Systems มีบทเรียนทั้งหมด 4 บทเรียน
บางส่วนของบทเรียนนี้ยังไม่ได้รับการแปล และแสดงเป็นภาษาอังกฤษ
Scaling Elasticsearch Data
Welcome to a crucial lesson on scaling and reliability in Elasticsearch! As your data grows, a single server might not be enough.
Today, we'll explore two fundamental concepts: Sharding and Replicas. They are essential for handling large datasets and ensuring your search service stays online.
The Data Growth Challenge
Imagine your application becomes super popular, and you're collecting millions of documents every day. A single Elasticsearch server (called a node) has limits:
- Storage Capacity: It can only hold so much data.
- Processing Power: Searching through huge amounts of data takes time.
- Single Point of Failure: If that one server goes down, your search is offline!
We need a way to distribute data and ensure constant availability.
Introducing Sharding
Sharding is how Elasticsearch handles horizontal scaling. Think of it like breaking a very large book into several smaller, independent books.
Each 'smaller book' is called a shard. When you index documents, Elasticsearch distributes them across these shards. This allows you to store more data and process queries faster by using multiple servers.
Primary Shards: Data Distribution
When you create an index, you define a certain number of primary shards. Every document you add to that index will belong to one of these primary shards.
These shards are distributed across the nodes in your Elasticsearch cluster. This means that if you have 3 primary shards and 3 nodes, each node could hold one primary shard, spreading the load.
Configuring Primary Shards
You define the number of primary shards when you create an index. Once an index is created, you cannot change the number of primary shards for it.
Here's how to create an index with 3 primary shards:
PUT /my_products_index
{
"settings": {
"number_of_shards": 3
}
}The Need for Replicas
Sharding helps with scaling, but what about reliability? If one node (and its primary shard) fails, you lose part of your data and your search service might become incomplete or unavailable.
This is where replicas come in. They are copies of your primary shards, designed to provide high availability and fault tolerance.
Replica Shards: Safety & Speed
A replica shard is an exact copy of a primary shard. If a node hosting a primary shard fails, a replica shard can be promoted to become the new primary, preventing data loss and downtime.
Replicas also serve another purpose: they can handle read requests! This means you can scale your search throughput by having multiple copies of your data ready to respond to queries.
Configuring Replica Shards
You can define the number of replica shards when creating an index, or you can change it later for an existing index. A common setup is to have 1 replica (meaning 2 copies of your data in total: 1 primary + 1 replica).
Here's how to create an index with 3 primary shards and 1 replica per primary shard:
PUT /my_products_index
{
"settings": {
"number_of_shards": 3,
"number_of_replicas": 1
}
}Shards & Replicas Together
Elasticsearch smartly distributes primary and replica shards across different nodes. This is crucial for resilience!
- A primary shard and its replicas are never placed on the same node.
- If a node fails, Elasticsearch can use a replica on another node to keep your data available.
- This setup ensures high availability and allows your cluster to continue operating even with node failures.
Quick Check
You've learned about the core concepts of sharding and replicas. Let's see if you can identify their primary roles.
Recap: Sharding & Replicas
Great job! In this lesson, we demystified sharding and replicas, two vital concepts for any robust Elasticsearch deployment.
- Sharding (primary shards) allows you to break your data into smaller pieces, enabling horizontal scaling for storage and processing.
- Replicas (replica shards) are copies of primary shards that provide fault tolerance (high availability) and boost read performance.
Together, they make your Elasticsearch cluster scalable, resilient, and performant!
เรียนรู้ Elasticsearch & Full Text Search Systems ด้วย AI tutor — ฟรี
เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป
- คอร์ส
- 12
- บทเรียน
- 48
คำถามที่พบบ่อย
บทเรียน “ทำความเข้าใจการแบ่งส่วนและแบบจำลอง” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “ทำความเข้าใจการแบ่งส่วนและแบบจำลอง” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Elasticsearch & Full Text Search Systems ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Elasticsearch & Full Text Search Systems มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “ทำความเข้าใจการแบ่งส่วนและแบบจำลอง”
ทำความเข้าใจแนวคิดการแบ่งส่วนเพื่อเพิ่มขนาดระบบในแนวนอน และแบบจำลองเพื่อให้พร้อมใช้งานสูงและทนต่อความขัดข้องใน Elasticsearch คุณปฏิบัติ Elasticsearch & Full Text Search Systems ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Elasticsearch & Full Text Search Systems หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Elasticsearch & Full Text Search Systems บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน
บทเรียน “ทำความเข้าใจการแบ่งส่วนและแบบจำลอง” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Elasticsearch & Full Text Search Systems นี้ได้ไหม
ได้ บทเรียน Elasticsearch & Full Text Search Systems ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- ทำความเข้าใจการแบ่งส่วนและแบบจำลอง
- สุขภาพและการตรวจสอบคลัสเตอร์
- บทบาทโหนดและสถาปัตยกรรม
- การจัดสรรชาร์ดและการปรับสมดุลใหม่