Liên hệ với chúng tôi

Đề cương khóa học

1. Giới thiệu về Elasticsearch

  • Elasticsearch là gì?
  • Các trường hợp sử dụng Elasticsearch
  • Kiến trúc Elasticsearch
  • Các thành phần của Elastic Stack (Elasticsearch, Logstash, Kibana, Beats)
  • Cài đặt và chạy Elasticsearch với container
  • Khám phá REST API

2. Hiểu về chỉ mục (Indices) và tài liệu (Documents)

  • Tài liệu và cấu trúc JSON
  • Các chỉ mục và tổ chức dữ liệu
  • Shards và bản sao
  • Khá niệm vòng đời chỉ mục
  • Tạo, cập nhật và xóa các chỉ mục
  • Thao tác CRUD cho tài liệu

3. Viết truy vấn tìm kiếm

  • Tổng quan về Query DSL
  • Truy vấn Match
  • Truy vấn Term
  • Truy vấn Boolean
  • Truy vấn Range
  • Tìm kiếm tiền tố (prefix), ký tự đại diện (wildcard) và mờ (fuzzy)
  • Phân trang và sắp xếp
  • Lọc (filtering) so với truy vấn (querying)

4. Phân tích văn bản

  • Nguyên tắc cơ bản của tìm kiếm toàn văn
  • Analyzers
  • Tokenizers
  • Character filters
  • Token filters
  • Analyzers ngôn ngữ
  • Analyzers tùy chỉnh
  • Cải thiện độ liên quan của tìm kiếm

5. Định nghĩa Mappings

  • Mappings động
  • Mappings rõ ràng
  • Kiểu dữ liệu trường
  • Các trường lồng nhau và đối tượng
  • Các trường ngày tháng và số
  • Thực hành tốt nhất cho mappings
  • Cập nhật mappings một cách an toàn

6. Mở rộng khả năng tìm kiếm

  • Tìm kiếm trên nhiều trường
  • Truy vấn multi-match
  • Tìm kiếm cụm từ
  • Hiển thị kết quả tìm kiếm
  • Tăng trọng số tìm kiếm (search boosting)
  • Truy vấn function score
  • Mẫu tìm kiếm

7. Hiểu mô hình phân tán

  • Kiến trúc cụm
  • Các node và vai trò
  • Shards chính và bản sao
  • Sức khỏe của cụm
  • Phân phối dữ liệu
  • Toleranc lỗi
  • Khá niệm về tính sẵn sàng cao

8. Thao tác kết quả tìm kiếm

  • Các chiến lược phân trang
  • Lọc nguồn (source filtering)
  • Sáp nhập trường
  • Các trường script
  • Kỹ thuật sắp xếp
  • Hiển thị kết quả tìm kiếm
  • Tối ưu hóa phản hồi tìm kiếm

9. Các hàm tổng hợp và phân tích

  • Metric aggregations
  • Bucket aggregations
  • Pipeline aggregations
  • Tính toán thống kê
  • Histograms
  • Dates aggregations
  • Xây dựng truy vấn phân tích
  • Hiệu suất của các hàm tổng hợp

10. Xử lý mối quan hệ dữ liệu

  • Các trường đối tượng
  • Tài liệu lồng nhau
  • Mối quan hệ cha-con
  • Chiến lược phi chuẩn hóa (denormalization)
  • Lựa chọn mô hình dữ liệu phù hợp
  • Truy vấn dữ liệu liên quan

11. Tích hợp Elasticsearch với ứng dụng

  • Tích hợp REST API
  • Thư viện client Elasticsearch
  • Xử lý ghi dữ liệu ứng dụng
  • Bulk API
  • API tìm kiếm
  • Xử lý lỗi
  • Thực hành tốt nhất cho tích hợp

12. Tối ưu hóa hiệu suất

  • Chiến lược ghi dữ liệu hiệu quả
  • Tối ưu hóa truy vấn
  • Ghi hàng loạt
  • Khoảng thời gian làm mới
  • Lưu đệm (caching)
  • Quản lý bộ nhớ
  • Giám sát hiệu suất

13. Giám sát và xử lý sự cố

  • Giám sát sức khỏe cụm
  • Thống kê chỉ mục
  • Chẩn đoán các truy vấn chậm
  • Các vấn đề ghi dữ liệu phổ biến
  • Giải quyết các sự cố của cụm
  • Khá niệm về sao lưu và snapshot
  • Nhật ký và chẩn đoán

14. Phòng thí nghiệm thực hành và Tổng kết

  • Xây dựng ứng dụng có khả năng tìm kiếm
  • Thiết kế chỉ mục và mappings
  • Triển khai tìm kiếm toàn văn
  • Tạo các hàm tổng hợp và phân tích
  • Tối ưu hóa hiệu suất tìm kiếm
  • Ôn lại các khái niệm chính
  • Hỏi và đáp
  • Thực hành tốt nhất và các bước tiếp theo

Yêu cầu

  • Kinh nghiệm phát triển phần mềm.
  • Thông thạo dòng lệnh (command line).
  • Không yêu cầu kinh nghiệm trước với Elasticsearch.

Đối tượng

  • Nhà phát triển phần mềm
 14 Giờ

Số người tham gia


Giá cho mỗi học viên

Đánh giá (7)

Các khóa học sắp tới

Các danh mục liên quan