Là ứng dụng gần thời gian thực, dưới 1 giây
-
Một tập hợp Nodes (servers) chứa tất cả các dữ liệu.
-
Cái tên nói lên tất cả, 1 cụm cluster trong Elasticsearch là một nhóm của nhiều nút elasticsearch (nodes) được kết nối với nhau
-
Sức mạnh của ES cluster nằm trong phân chia nhiệm vụ (distribution of tasks), tìm kiếm & lập chỉ mục (searching and indexing) trên tất cả các nút (nodes) trong cụm (cluster)
-
Các nút (node) trong cụm (cluster) ES được gán các công việc hoặc trách nhiệm khác nhau:
- Data nodes — lưu trữ dữ liệu và thực hiện các hoạt động liên quan đến dữ liệu như tìm kiếm (search) và tổng hợp (aggregation)
- Master nodes — phụ trách các hành động quản lý và cấu hình trên toàn cụm (cluster-wide) chẳng hạn như thêm và xóa các nút
- Client nodes — chuyển tiếp các yêu cầu cụm tới nút chính (master node) và các yêu cầu liên quan đến dữ liệu đến các nút dữ liệu
- Ingest nodes — tiền xử lý tài liệu (pre-processing documents) trước khi lập chỉ mục (indexing)
-
Khi Mới cài đặt một nút (node) Elasticsearch duy nhất sẽ tạo thành một cụm nút đơn (single-node) mới có tên là "elasticsearch",
-
1 cụm gồm nhiều nodes (servers) cùng nhau nắm giữ toàn bộ dữ liệu và có khả năng search qua tất cả các node.
-
1 cluster được định danh bởi 1 tên duy nhất không trùng nhau khi có nhiều cluster
- Một server duy nhất chứa một số dữ liệu và tham gia vào cluster’s indexing and querying.
- 1 node = 1 server riêng mà là 1 phần trong cluster, dùng để lưu dữ liệu, tham gia lập chỉ mục index và search
- 1 node cũng được định danh bởi 1 tên riêng biệt có thể thay đổi được
- mặc định 1 node được thiết đặt để join với 1 cluster duy nhất định bởi cluster name mặc định cluster "elasticsearch"
- 1 cluster có n node
- Mỗi ES Index là 1 tập hợp các documents.
- 1 index là tập hợp các documents có những đặc điểm chung
- 1 cluster có thể chứa nhiều index
- Một định nghĩa về schema of a Document bên trong một Index (Index có thể có nhiều type).
- trong 1 index có thể định nghĩa 1 hoặc nhiều types
- 1 type là 1 mục/ phân vùng có nghĩa trong index
- 1 type được định nghĩa cho document bao gồm một số fields
- Một JSON object với một số dữ liệu. Đây là basic information unit trong ES.
- 1 document là 1 đơn vị thông tin cơ bản được
- Shard là Tập con các documents của 1 Index. Một Index có thể được chia thành nhiều shard.
- Mỗi index có thể được chia thành nhiều Shards
- Mỗi index cũng có thể được sao lưu nhiều lần
- Mỗi khi được nhân bản, mỗi index sẽ có những shards chính và những shards nhân bản (copy từ shards chính)
- Số lượng shards và replicas có thể được khai báo khi tạo index.
- Sau khi index được tạo, bạn có thể thay đổi số lượng bản sao bất cứ lúc nào nhưng không thể thay đổi số shards.
- mặc định mỗi index trong Elasticsearch được cấp 5 primary shards và 1 replic "which means that if you have at least two nodes in your cluster, your index will have 5 primary shards and another 5 replica shards (1 complete replica) for a total of 10 shards per index."
- Each Elasticsearch shard is a Lucene index.
- There is a maximum number of documents you can have in a single Lucene index.
- As of LUCENE-5843, the limit is 2,147,483,519 (= Integer.MAX_VALUE – 128) documents. You can monitor shard sizes using the_cat/shards api.
- vào trang chủ elasticsearch download file zip giải nén elasticsearch-6.4.0.zip
- vào thư mục bin chạy file elasticsearch.bat đợi chạy xong elasticsearch
- vào localhost:9200
{
name: "5PALYnL",
cluster_name: "elasticsearch",
cluster_uuid: "Y5fUDt2ISwa8PdcsTsQmGQ",
version: {
number: "6.4.0",
build_flavor: "default",
build_type: "zip",
build_hash: "595516e",
build_date: "2018-08-17T23:18:47.308994Z",
build_snapshot: false,
lucene_version: "7.4.0",
minimum_wire_compatibility_version: "5.6.0",
minimum_index_compatibility_version: "5.0.0"
},
tagline: "You Know, for Search"
}
tham khảo
https://thinhpc86.wordpress.com/2015/06/09/elasticsearch-php-mysql-thuc-hanh-phan-1/