Elasticsearch https://dongthoigian.net/big-data/elasticsearch/ Sat, 18 Jun 2022 03:11:37 +0000 vi hourly 1 https://wordpress.org/?v=6.7.2 https://dongthoigian.net/wp-content/uploads/2025/02/cropped-dongthoigian_huedc-32x32.png Elasticsearch https://dongthoigian.net/big-data/elasticsearch/ 32 32 241113670 Elasticsearch – Bản đồ nhiệt https://dongthoigian.net/elasticsearch-ban-do-nhiet/ https://dongthoigian.net/elasticsearch-ban-do-nhiet/#respond Sat, 18 Jun 2022 03:00:42 +0000 https://dongthoigian.net/?p=14122 chúng ta sẽ sử dụng tập dữ liệu có tên là sample_data_flights để xây dựng biểu đồ bản đồ nhiệt

The post Elasticsearch – Bản đồ nhiệt appeared first on Dongthoigian.net.

]]>
Bản đồ nhiệt là một loại hình trực quan trong đó các sắc thái màu khác nhau thể hiện các khu vực khác nhau trong biểu đồ. Các giá trị có thể liên tục thay đổi và do đó r màu của một màu thay đổi theo các giá trị. Chúng rất hữu ích để thể hiện cả dữ liệu thay đổi liên tục cũng như dữ liệu rời rạc.

Trong chương này, chúng ta sẽ sử dụng tập dữ liệu có tên là sample_data_flights để xây dựng biểu đồ bản đồ nhiệt. Trong đó, chúng tôi xem xét các biến có tên quốc gia xuất phát và quốc gia đích của các chuyến bay và tính toán.

Trong Màn hình chính của Kibana, chúng tôi tìm thấy tên tùy chọn Visualize cho phép chúng tôi tạo trực quan hóa và tổng hợp từ các chỉ số được lưu trữ trong Elasticsearch. Chúng tôi chọn thêm hình ảnh trực quan mới và chọn Bản đồ nhiệt như tùy chọn được hiển thị bên dưới & mimus;

Elasticsearch - Logs UI

Chọn các chỉ số

Màn hình tiếp theo nhắc chúng tôi chọn các số liệu sẽ được sử dụng để tạo Biểu đồ Bản đồ Nhiệt. Ở đây chúng tôi chọn số lượng làm loại chỉ số tổng hợp. Sau đó, đối với các nhóm trong Trục Y, chúng tôi chọn Điều khoản làm tập hợp cho trường OriginCountry. Đối với Trục X, chúng tôi chọn cùng một tập hợp nhưng DestCountry làm trường sẽ được sử dụng. Trong cả hai trường hợp, chúng tôi chọn kích thước của thùng là 5.

Elasticsearch - Logs UI

Khi chạy cấu hình hiển thị ở trên, chúng tôi nhận được biểu đồ bản đồ nhiệt được tạo ra như sau.

Elasticsearch - Logs UI

Lưu ý – Bạn phải cho phép phạm vi ngày là Năm nay để biểu đồ thu thập dữ liệu trong một năm nhằm tạo ra biểu đồ nhiệt hiệu quả.

Elasticsearch – Canvas

Ứng dụng Canvas là một phần của Kibana cho phép chúng tôi tạo các màn hình dữ liệu động, nhiều trang và pixel hoàn hảo. Khả năng tạo đồ họa thông tin chứ không chỉ biểu đồ và số liệu là điều khiến nó trở nên độc đáo và hấp dẫn. Trong chương này, chúng ta sẽ thấy các tính năng khác nhau của canvas và cách sử dụng các tấm làm việc canvas.

Mở Canvas

Truy cập trang chủ Kibana và chọn tùy chọn như trong sơ đồ bên dưới. Nó mở ra danh sách các miếng đệm làm việc canvas mà bạn có. Chúng tôi chọn theo dõi Doanh thu từ thương mại điện tử cho nghiên cứu của mình.

Elasticsearch - Logs UI

Nhân bản một Workpad

Chúng tôi sao chép bảng làm việc Theo dõi Doanh thu [Thương mại điện tử] để sử dụng trong nghiên cứu của chúng tôi. Để sao chép nó, chúng tôi đánh dấu hàng có tên của bàn làm việc này và sau đó sử dụng nút sao chép như thể hiện trong sơ đồ bên dưới

Elasticsearch - Logs UI

Kết quả của bản sao ở trên, chúng ta sẽ nhận được bảng công việc mới có tên Theo dõi doanh thu [Thương mại điện tử] – Bản sao khi mở sẽ hiển thị đồ họa thông tin bên dưới.

Nó mô tả tổng doanh số và Doanh thu theo danh mục cùng với hình ảnh và biểu đồ đẹp mắt.

Elasticsearch - Logs UI

Sửa đổi Workpad

Chúng ta có thể thay đổi kiểu và số liệu trong bảng làm việc bằng cách sử dụng các tùy chọn có sẵn trong tab bên phải. Ở đây, chúng tôi muốn thay đổi màu nền của bàn làm việc bằng cách chọn một màu khác như thể hiện trong sơ đồ bên dưới. Lựa chọn màu có hiệu lực ngay lập tức và chúng ta nhận được kết quả như hình dưới đây

Elasticsearch - Logs UI

Elasticsearch – Logs UI

Giao diện người dùng nhật ký

Kibana cũng có thể giúp trực quan hóa dữ liệu nhật ký từ nhiều nguồn khác nhau. Nhật ký là nguồn phân tích quan trọng về tình trạng cơ sở hạ tầng, nhu cầu hiệu suất và phân tích vi phạm bảo mật, v.v. Kibana có thể kết nối với các nhật ký khác nhau như nhật ký máy chủ web, nhật ký tìm kiếm đàn hồi và nhật ký đồng hồ đám mây, v.v.

Nhật ký Logstash

Trong Kibana, chúng ta có thể kết nối với nhật ký logstash để trực quan hóa. Đầu tiên, chúng tôi chọn nút Nhật ký từ màn hình chính của Kibana như hình dưới đây

Elasticsearch - Logs UI

Sau đó, chúng tôi chọn tùy chọn Thay đổi cấu hình nguồn mang đến cho chúng tôi tùy chọn chọn Logstash làm nguồn. Màn hình bên dưới cũng hiển thị các loại tùy chọn khác mà chúng tôi có làm nguồn nhật ký.

Elasticsearch - Logs UI

Bạn có thể phát trực tuyến dữ liệu để theo dõi nhật ký trực tiếp hoặc tạm dừng phát trực tuyến để tập trung vào dữ liệu nhật ký lịch sử. Khi bạn đang phát trực tuyến nhật ký, nhật ký gần đây nhất sẽ xuất hiện ở cuối bảng điều khiển.

The post Elasticsearch – Bản đồ nhiệt appeared first on Dongthoigian.net.

]]>
https://dongthoigian.net/elasticsearch-ban-do-nhiet/feed/ 0 14122
Elasticsearch – Time Series https://dongthoigian.net/elasticsearch-time-series/ https://dongthoigian.net/elasticsearch-time-series/#respond Sat, 18 Jun 2022 02:47:37 +0000 https://dongthoigian.net/?p=14111 mẫu và vẽ biểu đồ đếm số lượng đơn đặt hàng cho mỗi ngày để tạo chuỗi thời gian

The post Elasticsearch – Time Series appeared first on Dongthoigian.net.

]]>
Chuỗi thời gian

Chuỗi thời gian là sự biểu diễn chuỗi dữ liệu trong một chuỗi thời gian cụ thể. Ví dụ: dữ liệu cho mỗi ngày bắt đầu từ ngày đầu tiên của tháng đến ngày cuối cùng. Khoảng thời gian giữa các điểm dữ liệu không đổi. Bất kỳ tập dữ liệu nào có thành phần thời gian trong đó đều có thể được biểu diễn dưới dạng chuỗi thời gian. Trong chương này, chúng tôi sẽ sử dụng tập dữ liệu thương mại điện tử mẫu và vẽ biểu đồ đếm số lượng đơn đặt hàng cho mỗi ngày để tạo chuỗi thời gian

Elasticsearch

Chọn số liệu

Đầu tiên, chúng tôi chọn mẫu chỉ mục, trường dữ liệu và khoảng thời gian sẽ được sử dụng để tạo chuỗi thời gian. Từ tập dữ liệu thương mại điện tử mẫu, chúng tôi chọn order_date làm trường và 1d làm khoảng thời gian. Chúng tôi sử dụng tab Tùy chọn bảng điều khiển để thực hiện các lựa chọn này. Ngoài ra, chúng tôi để các giá trị khác trong tab này làm mặc định để lấy màu và định dạng mặc định cho chuỗi thời gian.

Elasticsearch

Trong tab Dữ liệu , chúng tôi chọn tính là tùy chọn tổng hợp, nhóm theo tùy chọn làm mọi thứ và đặt nhãn cho biểu đồ chuỗi thời gian.

Elasticsearch

Kết quả

Kết quả cuối cùng của cấu hình này xuất hiện như sau. Xin lưu ý rằng chúng tôi đang sử dụng khoảng thời gian từ Tháng đến nay cho biểu đồ này. Khoảng thời gian khác nhau sẽ cho kết quả khác nhau.

Elasticsearch

Elasticsearch – Tag Clouds

Một đám mây thẻ đại diện cho văn bản chủ yếu là từ khóa và siêu dữ liệu ở dạng trực quan hấp dẫn. Chúng được căn chỉnh theo các góc độ khác nhau và được thể hiện bằng các màu sắc và kích thước phông chữ khác nhau. Nó giúp tìm ra các thuật ngữ nổi bật nhất trong dữ liệu. Mức độ nổi bật có thể được quyết định bởi một hoặc nhiều yếu tố như tần suất của cụm từ, tính duy nhất của thẻ hoặc dựa trên một số trọng số được gắn với các cụm từ cụ thể, v.v. Dưới đây, chúng tôi xem các bước để tạo Đám mây thẻ.

Hình dung

Trong Màn hình chính của Kibana, chúng tôi tìm thấy tên tùy chọn Visualize cho phép chúng tôi tạo trực quan hóa và tổng hợp từ các chỉ số được lưu trữ trong Elasticsearch. Chúng tôi chọn thêm hình ảnh trực quan mới và chọn Đám mây thẻ như tùy chọn được hiển thị bên dưới

Elasticsearch

Chọn các chỉ số

Màn hình tiếp theo nhắc chúng tôi chọn các chỉ số sẽ được sử dụng để tạo Đám mây thẻ. Ở đây chúng tôi chọn số lượng làm loại chỉ số tổng hợp. Sau đó, chúng tôi chọn trường tên sản phẩm làm từ khóa được sử dụng làm thẻ.

Elasticsearch

Kết quả hiển thị ở đây cho thấy biểu đồ hình tròn sau khi chúng tôi áp dụng lựa chọn. Vui lòng lưu ý các sắc thái của màu sắc và giá trị của chúng được đề cập trong nhãn

Elasticsearch

Tag Cloud Options

Khi chuyển sang tab tùy chọn trong Tag Cloud, chúng ta có thể thấy các tùy chọn cấu hình khác nhau để thay đổi giao diện cũng như cách sắp xếp hiển thị dữ liệu trong Tag Cloud. Trong ví dụ dưới đây, Đám mây thẻ xuất hiện với các thẻ trải rộng theo cả chiều ngang và chiều dọc.

Elasticsearch

Elasticsearch – Bản đồ nhiệt (xem thêm)

The post Elasticsearch – Time Series appeared first on Dongthoigian.net.

]]>
https://dongthoigian.net/elasticsearch-time-series/feed/ 0 14111
Elasticsearch – Area and Bar Charts https://dongthoigian.net/elasticsearch-area-and-bar-charts/ https://dongthoigian.net/elasticsearch-area-and-bar-charts/#respond Thu, 16 Jun 2022 02:50:31 +0000 https://dongthoigian.net/?p=14098 chúng tôi tìm thấy tên tùy chọn Visualize

The post Elasticsearch – Area and Bar Charts appeared first on Dongthoigian.net.

]]>
Biểu đồ Khu vực và Thanh

Biểu đồ vùng là phần mở rộng của biểu đồ đường trong đó vùng giữa biểu đồ đường và các trục được đánh dấu bằng một số màu. Biểu đồ thanh thể hiện dữ liệu được tổ chức thành một dải giá trị và sau đó được vẽ dựa trên các trục. Nó có thể bao gồm thanh ngang hoặc thanh dọc.

Trong chương này, chúng ta sẽ thấy tất cả ba loại đồ thị này được tạo ra bằng cách sử dụng Kibana. Như đã thảo luận trong các chương trước, chúng tôi sẽ tiếp tục sử dụng dữ liệu trong chỉ mục thương mại điện tử.

Biểu đồ khu vực

Trong Màn hình chính của Kibana, chúng tôi tìm thấy tên tùy chọn Visualize cho phép chúng tôi tạo trực quan hóa và tổng hợp từ các chỉ số được lưu trữ trong Elasticsearch. Chúng tôi chọn thêm một hình ảnh trực quan mới và chọn Biểu đồ khu vực như tùy chọn được hiển thị trong hình ảnh bên dưới.

Elasticsearch - Area and Bar Charts

Chọn các chỉ số

Màn hình tiếp theo nhắc chúng tôi chọn các số liệu sẽ được sử dụng để tạo Biểu đồ khu vực. Ở đây chúng tôi chọn tổng làm loại số liệu tổng hợp. Sau đó, chúng tôi chọn trường total_quantity làm trường được sử dụng làm số liệu. Trên trục X, chúng tôi chọn trường order_date và chia chuỗi với số liệu đã cho ở kích thước 5.

Elasticsearch - Area and Bar Charts

Khi chạy cấu hình trên, chúng tôi nhận được biểu đồ vùng sau làm đầu ra:

Elasticsearch - Area and Bar Charts

Biểu đồ thanh ngang

Tương tự, đối với biểu đồ thanh ngang, chúng tôi chọn trực quan hóa mới từ Màn hình chính của Kibana và chọn tùy chọn cho thanh ngang. Sau đó, chúng tôi chọn các số liệu như trong hình ảnh bên dưới. Ở đây chúng tôi chọn Sum làm tổng số lượng sản phẩm đã đặt tên. Sau đó, chúng tôi chọn các nhóm có biểu đồ ngày cho ngày đặt hàng của trường.

Elasticsearch - Area and Bar Charts

Khi chạy cấu hình trên, chúng ta có thể thấy biểu đồ thanh ngang như hình dưới đây

Elasticsearch - Area and Bar Charts

Biểu đồ thanh dọc

Đối với biểu đồ thanh dọc, chúng tôi chọn trực quan hóa mới từ Màn hình chính Kibana và chọn tùy chọn cho Thanh dọc. Sau đó, chúng tôi chọn các số liệu như trong hình ảnh bên dưới.

Ở đây chúng tôi chọn Sum làm tập hợp cho trường có tên là số lượng sản phẩm. Sau đó, chúng tôi chọn các nhóm có biểu đồ ngày cho ngày đặt hàng trường với khoảng thời gian hàng tuần.

Elasticsearch - Area and Bar Charts

Khi chạy cấu hình trên, một biểu đồ sẽ được tạo như hình dưới đây:

Elasticsearch - Area and Bar Charts

Elasticsearch – Time Series Chuỗi thời gian

The post Elasticsearch – Area and Bar Charts appeared first on Dongthoigian.net.

]]>
https://dongthoigian.net/elasticsearch-area-and-bar-charts/feed/ 0 14098
Elasticsearch – Region Maps  Bản đồ khu vực https://dongthoigian.net/elasticsearch-region-maps-ban-do-khu-vuc/ https://dongthoigian.net/elasticsearch-region-maps-ban-do-khu-vuc/#respond Thu, 16 Jun 2022 02:35:10 +0000 https://dongthoigian.net/?p=14089 Elasticsearch - Bản đồ khu vực tìm hiểu thêm

The post Elasticsearch – Region Maps  Bản đồ khu vực appeared first on Dongthoigian.net.

]]>
Bản đồ khu vực hiển thị số liệu trên Bản đồ địa lý. Nó rất hữu ích trong việc xem xét dữ liệu được gắn vào các vùng địa lý khác nhau với cường độ khác nhau. Các sắc thái tối hơn thường biểu thị các giá trị cao hơn và các sắc thái sáng hơn biểu thị các giá trị thấp hơn.

Các bước để tạo hình ảnh trực quan này được giải thích chi tiết như sau:

Hình dung

Trong bước này, chúng tôi chuyển đến nút trực quan hóa có sẵn trong thanh bên trái của Màn hình chính Kibana và sau đó chọn tùy chọn để thêm một Hình ảnh hóa mới. Màn hình sau đây cho thấy cách chúng tôi chọn tùy chọn Bản đồ khu vực.

Elasticsearch

Chọn các chỉ số

Màn hình tiếp theo nhắc chúng tôi chọn các số liệu sẽ được sử dụng để tạo Bản đồ khu vực. Ở đây, chúng tôi chọn Giá trung bình làm chỉ số và country_iso_code làm trường trong nhóm sẽ được sử dụng để tạo hình ảnh trực quan.

Elasticsearch

Kết quả cuối cùng bên dưới hiển thị Bản đồ khu vực khi chúng tôi áp dụng lựa chọn. Vui lòng lưu ý các sắc thái của màu sắc và giá trị của chúng được đề cập trong nhãn.

Elasticsearch

Elasticsearch – Pie Charts

Biểu đồ hình tròn

Biểu đồ hình tròn là một trong những công cụ trực quan đơn giản và nổi tiếng. Nó đại diện cho dữ liệu dưới dạng các lát của một vòng tròn được tô màu khác nhau. Các nhãn cùng với các giá trị dữ liệu phần trăm có thể được trình bày cùng với vòng tròn. Hình tròn cũng có thể có hình dạng của một chiếc bánh rán.

Hình dung

Trong Màn hình chính của Kibana, chúng tôi tìm thấy tên tùy chọn Visualize cho phép chúng tôi tạo trực quan hóa và tổng hợp từ các chỉ số được lưu trữ trong Elasticsearch. Chúng tôi chọn thêm hình ảnh trực quan mới và chọn biểu đồ hình tròn như tùy chọn được hiển thị bên dưới.

Elasticsearch

Chọn các chỉ số

Màn hình tiếp theo nhắc chúng tôi chọn các số liệu sẽ được sử dụng để tạo Biểu đồ hình tròn. Ở đây, chúng tôi chọn số lượng đơn giá cơ sở làm chỉ số và Tổng hợp nhóm làm biểu đồ. Ngoài ra, khoảng thời gian tối thiểu được chọn là 20. Vì vậy, giá sẽ được hiển thị dưới dạng các khối giá trị với 20 là một phạm vi.

Elasticsearch

Kết quả dưới đây cho thấy biểu đồ hình tròn sau khi chúng tôi áp dụng lựa chọn. Vui lòng lưu ý các sắc thái của màu sắc và giá trị của chúng được đề cập trong nhãn.

Elasticsearch

Tùy chọn biểu đồ hình tròn

Khi chuyển đến tab tùy chọn bên dưới biểu đồ hình tròn, chúng ta có thể thấy các tùy chọn cấu hình khác nhau để thay đổi giao diện cũng như cách sắp xếp hiển thị dữ liệu trong biểu đồ hình tròn. Trong ví dụ sau, biểu đồ hình tròn xuất hiện dưới dạng bánh rán và các nhãn xuất hiện ở trên cùng.

Elasticsearch

Elasticsearch – Biểu đồ Khu vực và Thanh (xem thêm)

The post Elasticsearch – Region Maps  Bản đồ khu vực appeared first on Dongthoigian.net.

]]>
https://dongthoigian.net/elasticsearch-region-maps-ban-do-khu-vuc/feed/ 0 14089
Elasticsearch – Lọc theo trường https://dongthoigian.net/elasticsearch-loc-theo-truong/ https://dongthoigian.net/elasticsearch-loc-theo-truong/#respond Wed, 15 Jun 2022 03:27:45 +0000 https://dongthoigian.net/?p=14077 Elasticsearch Bạn có thể tìm kiếm và lọc dữ liệu cho các mẫu chỉ mục đã chọn

The post Elasticsearch – Lọc theo trường appeared first on Dongthoigian.net.

]]>
Chức năng khám phá có sẵn trong trang chủ Kibana cho phép chúng tôi khám phá các tập dữ liệu từ nhiều góc độ khác nhau. Bạn có thể tìm kiếm và lọc dữ liệu cho các mẫu chỉ mục đã chọn. Dữ liệu thường có sẵn dưới dạng phân phối các giá trị trong một khoảng thời gian. Để khám phá mẫu dữ liệu thương mại điện tử, chúng ta bấm vào biểu tượng Khám phá như trong hình bên dưới. Điều này sẽ hiển thị dữ liệu cùng với biểu đồ

Elasticsearch - Lọc theo trường

Lọc theo thời gian

Để lọc ra dữ liệu theo khoảng thời gian cụ thể, chúng tôi sử dụng tùy chọn bộ lọc thời gian như hình dưới đây. Theo mặc định, bộ lọc được đặt ở 15 phút.

Elasticsearch - Lọc theo trường

Lọc theo trường

Tập dữ liệu cũng có thể được lọc theo các trường bằng cách sử dụng tùy chọn Thêm Bộ lọc như được hiển thị bên dưới. Ở đây chúng tôi thêm một hoặc nhiều trường và nhận được kết quả tương ứng sau khi các bộ lọc được áp dụng. Trong ví dụ của chúng tôi, chúng tôi chọn trường DAY_OF_WEEK và sau đó các nhà điều hành cho lĩnh vực đó như  giá trị như chủ nhật

Elasticsearch - Lọc theo trường

Tiếp theo, chúng tôi nhấp vào Lưu với các điều kiện lọc ở trên. Tập hợp kết quả chứa các điều kiện lọc được áp dụng được hiển thị bên dưới.

Elasticsearch - Lọc theo trường

Elasticsearch – Data Tables

Bảng dữ liệu

Bảng dữ liệu là kiểu trực quan được sử dụng để hiển thị dữ liệu thô của một tổng hợp đã tổng hợp. Có nhiều loại tổng hợp khác nhau được trình bày bằng cách sử dụng các bảng Dữ liệu. Để tạo Bảng dữ liệu, chúng ta nên thực hiện các bước được thảo luận chi tiết ở đây.

Hình dung

Trong Màn hình chính của Kibana, chúng tôi tìm thấy tên tùy chọn Visualize cho phép chúng tôi tạo trực quan hóa và tổng hợp từ các chỉ số được lưu trữ trong Elasticsearch. Hình ảnh sau đây cho thấy tùy chọn.

Elasticsearch - Lọc theo trường

Chọn bảng dữ liệu

Tiếp theo, chúng tôi chọn tùy chọn Bảng Dữ liệu trong số các tùy chọn trực quan hóa khác nhau có sẵn. Tùy chọn được hiển thị trong hình ảnh sau & miuns;

Elasticsearch - Lọc theo trường

Chọn số liệu

Sau đó, chúng tôi chọn các chỉ số cần thiết để tạo trực quan hóa bảng dữ liệu. Sự lựa chọn này quyết định loại tập hợp mà chúng tôi sẽ sử dụng. Chúng tôi chọn các trường cụ thể được hiển thị bên dưới từ tập dữ liệu thương mại điện tử cho việc này.

Elasticsearch - Lọc theo trường

Khi chạy cấu hình trên cho Data Table, chúng tôi nhận được kết quả như trong hình ở đây

Elasticsearch - Lọc theo trường

Elasticsearch – Region Maps  Bản đồ khu vực (xem thêm)

The post Elasticsearch – Lọc theo trường appeared first on Dongthoigian.net.

]]>
https://dongthoigian.net/elasticsearch-loc-theo-truong/feed/ 0 14077
Elasticsearch – Frozen Indices https://dongthoigian.net/elasticsearch-frozen-indices/ https://dongthoigian.net/elasticsearch-frozen-indices/#respond Wed, 15 Jun 2022 02:57:39 +0000 https://dongthoigian.net/?p=14068 Elasticsearch xây dựng cấu trúc dữ liệu tạm thời của từng phân đoạn

The post Elasticsearch – Frozen Indices appeared first on Dongthoigian.net.

]]>
Các chỉ số được tìm kiếm thường xuyên được lưu giữ trong bộ nhớ vì cần có thời gian để xây dựng lại chúng và giúp tìm kiếm hiệu quả. Mặt khác, có thể có các chỉ số mà chúng tôi hiếm khi truy cập. Các chỉ số đó không cần chiếm bộ nhớ và có thể được xây dựng lại khi cần thiết. Các chỉ số như vậy được gọi là chỉ số cố định.

Elasticsearch xây dựng cấu trúc dữ liệu tạm thời của từng phân đoạn của chỉ mục cố định mỗi khi phân đoạn đó được tìm kiếm và loại bỏ các cấu trúc dữ liệu này ngay sau khi tìm kiếm hoàn tất. Bởi vì Elasticsearch không duy trì các cấu trúc dữ liệu tạm thời này trong bộ nhớ, các chỉ số cố định tiêu thụ ít đống hơn nhiều so với các chỉ số bình thường. Điều này cho phép tỷ lệ đĩa trên heap cao hơn nhiều so với khả năng có thể.

Ví dụ về đông lạnh và không đông lạnh

Ví dụ sau đây đóng băng và mở một chỉ mục –

POST /index_name/_freeze
POST /index_name/_unfreeze

Các tìm kiếm trên các chỉ số bị đóng băng dự kiến ​​sẽ thực thi chậm. Các chỉ số cố định không dành cho tải tìm kiếm cao. Có thể mất vài giây hoặc vài phút để hoàn thành việc tìm kiếm một chỉ mục bị cố định, ngay cả khi các tìm kiếm tương tự được hoàn thành trong mili giây khi các chỉ mục không được cố định.

Tìm kiếm Chỉ mục Đông lạnh

Số lượng chỉ số cố định được tải đồng thời trên mỗi nút bị giới hạn bởi số luồng trong nhóm luồng tìm kiếm_throttled, theo mặc định là 1. Để bao gồm các chỉ số cố định, yêu cầu tìm kiếm phải được thực hiện với tham số truy vấn – ignore_throttled = false.

GET /index_name/_search?q=user:tpoint&ignore_throttled=false

Theo dõi các chỉ số đông lạnh

Các chỉ số cố định là các chỉ số thông thường sử dụng điều chỉnh tìm kiếm và triển khai phân đoạn hiệu quả trong bộ nhớ.

GET /_cat/indices/index_name?v&h=i,sth

Elasticsearch – Testing

Thử nghiệm

Elasticsearch cung cấp một tệp jar, tệp này có thể được thêm vào bất kỳ IDE java nào và có thể được sử dụng để kiểm tra mã liên quan đến Elasticsearch. Một loạt các thử nghiệm có thể được thực hiện bằng cách sử dụng khuôn khổ do Elasticsearch cung cấp. Trong chương này, chúng ta sẽ thảo luận chi tiết về các bài kiểm tra này –

  • Kiểm tra đơn vị
  • Thử nghiệm hội nhập
  • Thử nghiệm ngẫu nhiên

Điều kiện tiên quyết

Để bắt đầu thử nghiệm, bạn cần thêm phần phụ thuộc thử nghiệm Elasticsearch vào chương trình của mình. Bạn có thể sử dụng maven cho mục đích này và có thể thêm phần sau trong pom.xml.

<dependency>
   <groupId>org.elasticsearch</groupId>
   <artifactId>elasticsearch</artifactId>
   <version>2.1.0</version>
</dependency>

EsSetup đã được khởi tạo để bắt đầu và dừng nút Elasticsearch và cũng để tạo các chỉ mục.

EsSetup esSetup = new EsSetup();

Hàm esSetup.execute () với createIndex sẽ tạo các chỉ mục, bạn cần chỉ định cài đặt, loại và dữ liệu.

Kiểm tra đơn vị

Bài kiểm tra đơn vị được thực hiện bằng cách sử dụng khung kiểm tra JUnit và Elasticsearch. Nút và chỉ số có thể được tạo bằng cách sử dụng các lớp Elasticsearch và trong phương pháp thử nghiệm có thể được sử dụng để thực hiện thử nghiệm. Các lớp ESTestCase và ESTokenStreamTestCase được sử dụng cho thử nghiệm này.

Thử nghiệm hội nhập

Kiểm tra tích hợp sử dụng nhiều nút trong một cụm. Lớp ESIntegTestCase được sử dụng cho thử nghiệm này. Có nhiều phương pháp khác nhau giúp công việc chuẩn bị test case dễ dàng hơn.

S.KhôngPhương pháp & Mô tả
1Làm tươi() Tất cả các chỉ số trong một cụm đều được làm mới
2ensureGreen () Đảm bảo trạng thái cụm sức khỏe xanh
3ensureYellow () Đảm bảo trạng thái cụm sức khỏe màu vàng
4createIndex (tên) Tạo chỉ mục với tên được truyền cho phương thức này
5tuôn ra() Tất cả các chỉ số trong cụm đều được xóa
6flushAndRefresh () flush () và refresh ()
7indexExists (tên) Xác minh sự tồn tại của chỉ mục được chỉ định
số 8clusterService () Trả về lớp java dịch vụ cụm
9cụm () Trả về lớp của cụm kiểm tra

Phương pháp cụm kiểm tra

S.KhôngPhương pháp & Mô tả
1ensureAtLeastNumNodes (n) Đảm bảo số lượng nút tối thiểu trong một cụm nhiều hơn hoặc bằng số lượng đã chỉ định.
2ensureAtMostNumNodes (n) Đảm bảo số lượng nút tối đa trong một cụm nhỏ hơn hoặc bằng số lượng đã chỉ định.
3stopRandomNode () Để dừng một nút ngẫu nhiên trong một cụm
4stopCurrentMasterNode () Để dừng nút chính
5stopRandomNonMaster () Để dừng một nút ngẫu nhiên trong một cụm không phải là nút chính.
6buildNode () Tạo một nút mới
7startNode (cài đặt) Bắt đầu một nút mới
số 8nodeSettings () Ghi đè phương pháp này để thay đổi cài đặt nút.

Tiếp cận khách hàng

Một máy khách được sử dụng để truy cập các nút khác nhau trong một cụm và thực hiện một số hành động. Phương thức ESIntegTestCase.client () được sử dụng để nhận một ứng dụng khách ngẫu nhiên. Elasticsearch cũng cung cấp các phương thức khác để truy cập máy khách và những phương thức đó có thể được truy cập bằng phương thức ESIntegTestCase.internalCluster ().

S.KhôngPhương pháp & Mô tả
1trình lặp () Điều này giúp bạn tiếp cận tất cả các khách hàng có sẵn.
2masterClient () Điều này trả về một máy khách đang giao tiếp với nút chính.
3nonMasterClient () Điều này trả về một máy khách không giao tiếp với nút chính.
4clientNodeClient () Điều này trả về một máy khách hiện đang ở trên nút máy khách.

Thử nghiệm ngẫu nhiên

Thử nghiệm này được sử dụng để kiểm tra mã của người dùng với mọi dữ liệu có thể, để không có bất kỳ loại dữ liệu nào bị lỗi trong tương lai. Dữ liệu ngẫu nhiên là lựa chọn tốt nhất để thực hiện thử nghiệm này.

Tạo dữ liệu ngẫu nhiên

Trong thử nghiệm này, lớp Random được khởi tạo bởi thể hiện do RandomizedTest cung cấp và cung cấp nhiều phương pháp để lấy các loại dữ liệu khác nhau.

phương phápGiá trị trả lại
getRandom ()Phiên bản của lớp ngẫu nhiên
randomBoolean ()Boolean ngẫu nhiên
randomByte ()Byte ngẫu nhiên
randomShort ()Ngắn ngẫu nhiên
randomInt ()Số nguyên ngẫu nhiên
randomLong ()Ngẫu nhiên dài
randomFloat ()Phao ngẫu nhiên
randomDouble ()Đôi ngẫu nhiên
randomLocale ()Ngôn ngữ ngẫu nhiên
randomTimeZone ()Múi giờ ngẫu nhiên
randomFrom ()Phần tử ngẫu nhiên từ mảng

Khẳng định

Các lớp ElasticsearchAssertions và ElasticsearchGeoAssertions chứa các xác nhận, được sử dụng để thực hiện một số kiểm tra phổ biến tại thời điểm kiểm tra. Ví dụ, hãy quan sát đoạn mã được đưa ra ở đây

SearchResponse seearchResponse = client().prepareSearch();
assertHitCount(searchResponse, 6);
assertFirstHit(searchResponse, hasId("6"));
assertSearchHits(searchResponse, "1", "2", "3", "4",”5”,”6”);

Elasticsearch – Kibana Dashboard

Trang tổng quan Kibana là một tập hợp các hình ảnh và tìm kiếm. Bạn có thể sắp xếp, thay đổi kích thước và chỉnh sửa nội dung trang tổng quan, sau đó lưu trang tổng quan để bạn có thể chia sẻ. Trong chương này, chúng ta sẽ xem cách tạo và chỉnh sửa trang tổng quan.

Tạo trang tổng quan

Từ Trang chủ Kibana, chọn tùy chọn bảng điều khiển từ các thanh điều khiển bên trái như hình dưới đây. Điều này sẽ nhắc bạn tạo một trang tổng quan mới.

Elasticsearch - Frozen Indices

Để Thêm hình ảnh trực quan vào trang tổng quan, chúng tôi chọn menu Thêm và chọn từ các hình ảnh trực quan được tạo sẵn có sẵn. Chúng tôi đã chọn các tùy chọn hình ảnh hóa sau đây từ danh sách

Elasticsearch - Frozen Indices

Khi chọn các hình ảnh trực quan ở trên, chúng tôi nhận được bảng điều khiển như được hiển thị ở đây. Sau đó, chúng tôi có thể thêm và chỉnh sửa trang tổng quan để thay đổi các phần tử và thêm các phần tử mới.

Elasticsearch - Frozen Indices

Kiểm tra các yếu tố

Chúng tôi có thể kiểm tra các phần tử của Bảng điều khiển bằng cách chọn menu bảng điều khiển trực quan và chọn Kiểm tra . Điều này sẽ hiển thị dữ liệu đằng sau phần tử mà cũng có thể được tải xuống.

Elasticsearch - Frozen Indices

Chia sẻ trang tổng quan

Chúng ta có thể chia sẻ bảng điều khiển bằng cách chọn menu chia sẻ và chọn tùy chọn để lấy siêu liên kết như hình dưới đây

Elasticsearch - Frozen Indices

Elasticsearch – Lọc theo trường (xem thêm)

The post Elasticsearch – Frozen Indices appeared first on Dongthoigian.net.

]]>
https://dongthoigian.net/elasticsearch-frozen-indices/feed/ 0 14068
Elasticsearch – SQL Access https://dongthoigian.net/elasticsearch-sql-access/ https://dongthoigian.net/elasticsearch-sql-access/#respond Tue, 14 Jun 2022 06:54:24 +0000 https://dongthoigian.net/?p=14060 Mỗi và mọi truy vấn được thực thi hiệu quả dựa trên các nút có liên quan theo bộ nhớ cơ bản.

The post Elasticsearch – SQL Access appeared first on Dongthoigian.net.

]]>
Truy cập SQL

Nó là một thành phần cho phép các truy vấn giống SQL được thực thi trong thời gian thực chống lại Elasticsearch. Bạn có thể coi Elasticsearch SQL như một trình dịch, một trình dịch hiểu cả SQL và Elasticsearch và giúp dễ dàng đọc và xử lý dữ liệu trong thời gian thực, trên quy mô lớn bằng cách tận dụng các khả năng của Elasticsearch.

Ưu điểm của Elasticsearch SQL

  • Nó có tích hợp gốc – Mỗi và mọi truy vấn được thực thi hiệu quả dựa trên các nút có liên quan theo bộ nhớ cơ bản.
  • Không có bộ phận bên ngoài – Không cần phần cứng, quy trình, thời gian chạy hoặc thư viện bổ sung để truy vấn Elasticsearch.
  • Nhẹ và hiệu quả – nó bao gồm và bộc lộ SQL để cho phép tìm kiếm toàn văn phù hợp, trong thời gian thực.

Thí dụ:

PUT /schoollist/_bulk?refresh
   {"index":{"_id": "CBSE"}}
   {"name": "GleanDale", "Address": "JR. Court Lane", "start_date": "2011-06-02",
   "student_count": 561}
   {"index":{"_id": "ICSE"}}
   {"name": "Top-Notch", "Address": "Gachibowli Main Road", "start_date": "1989-
   05-26", "student_count": 482}
   {"index":{"_id": "State Board"}}
   {"name": "Sunshine", "Address": "Main Street", "start_date": "1965-06-01",
   "student_count": 604}

Khi chạy đoạn mã trên, chúng tôi nhận được phản hồi như hình dưới đây:

{
   "took" : 277,
   "errors" : false,
   "items" : [
      {
         "index" : {
            "_index" : "schoollist",
            "_type" : "_doc",
            "_id" : "CBSE",
            "_version" : 1,
            "result" : "created",
            "forced_refresh" : true,
            "_shards" : {
               "total" : 2,
               "successful" : 1,
               "failed" : 0
            },
            "_seq_no" : 0,
            "_primary_term" : 1,
            "status" : 201
         }
      },
      {
         "index" : {
            "_index" : "schoollist",
            "_type" : "_doc",
            "_id" : "ICSE",
            "_version" : 1,
            "result" : "created",
            "forced_refresh" : true,
            "_shards" : {
               "total" : 2,
               "successful" : 1,
               "failed" : 0
            },
            "_seq_no" : 1,
            "_primary_term" : 1,
            "status" : 201
         }
      },
      {
         "index" : {
            "_index" : "schoollist",
            "_type" : "_doc",
            "_id" : "State Board",
            "_version" : 1,
            "result" : "created",
            "forced_refresh" : true,
            "_shards" : {
               "total" : 2,
               "successful" : 1,
               "failed" : 0
            },
            "_seq_no" : 2,
            "_primary_term" : 1,
            "status" : 201
         }
      }
   ]
}

Truy vấn SQL

Ví dụ sau đây cho thấy cách chúng tôi đóng khung truy vấn SQL:

POST /_sql?format=txt
{
   "query": "SELECT * FROM schoollist WHERE start_date < '2000-01-01'"
}

Khi chạy đoạn mã trên, chúng tôi nhận được phản hồi như hình dưới đây

Address             | name          | start_date             | student_count
--------------------+---------------+------------------------+---------------
Gachibowli Main Road|Top-Notch      |1989-05-26T00:00:00.000Z|482
Main Street         |Sunshine       |1965-06-01T00:00:00.000Z|604

Lưu ý – Bằng cách thay đổi truy vấn SQL ở trên, bạn có thể nhận được các tập kết quả khác nhau.

Elasticsearch – Monitoring

Giám sát

Để theo dõi tình trạng của cụm, tính năng giám sát thu thập số liệu từ mỗi nút và lưu trữ chúng trong Chỉ số Elasticsearch. Tất cả các cài đặt liên quan đến giám sát trong Elasticsearch phải được đặt trong tệpasticsearch.yml cho mỗi nút hoặc, nếu có thể, trong cài đặt cụm động.

Để bắt đầu giám sát, chúng tôi cần kiểm tra cài đặt cụm, có thể được thực hiện theo cách sau:

GET _cluster/settings
{
   "persistent" : { },
   "transient" : { }
}

Mỗi thành phần trong ngăn xếp có trách nhiệm tự giám sát và sau đó chuyển tiếp các tài liệu đó đến cụm sản xuất Elasticsearch để định tuyến và lập chỉ mục (lưu trữ). Các quy trình định tuyến và lập chỉ mục trong Elasticsearch được xử lý bởi những người được gọi là người thu thập và nhà xuất khẩu.

Người sưu tầm

Collector chạy một lần cho mỗi khoảng thời gian thu thập để lấy dữ liệu từ các API công khai trong Elasticsearch mà nó chọn để theo dõi. Khi kết thúc thu thập dữ liệu, dữ liệu được giao hàng loạt cho người xuất để gửi đến cụm giám sát.

Chỉ có một bộ thu thập cho mỗi loại dữ liệu được thu thập. Mỗi người thu thập có thể tạo không hoặc nhiều tài liệu giám sát.

Nhà xuất khẩu

Elasticsearch - Monitoring

Các nhà xuất khẩu lấy dữ liệu được thu thập từ bất kỳ nguồn Elastic Stack nào và định tuyến nó đến cụm giám sát. Có thể định cấu hình nhiều hơn một nhà xuất khẩu, nhưng thiết lập chung và mặc định là sử dụng một nhà xuất khẩu duy nhất. Các nhà xuất khẩu có thể định cấu hình ở cả cấp độ nút và cụm.

Có hai loại nhà xuất khẩu trong Elasticsearch –

  • local – Nhà xuất khẩu này định tuyến dữ liệu trở lại cùng một cụm
  • http – Trình xuất ưu tiên, bạn có thể sử dụng để định tuyến dữ liệu vào bất kỳ cụm Elasticsearch được hỗ trợ nào có thể truy cập qua HTTP.

Trước khi nhà xuất khẩu có thể định tuyến dữ liệu giám sát, họ phải thiết lập một số tài nguyên Elasticsearch. Các tài nguyên này bao gồm các mẫu và đường ống dẫn nhập

Elasticsearch – Rollup Data

Công việc tổng hợp là một công việc định kỳ tóm tắt dữ liệu từ các chỉ số được chỉ định bởi một mẫu chỉ mục và cuộn nó vào một chỉ mục mới. Trong ví dụ sau, chúng tôi tạo một chỉ mục có tên là cảm biến với các tem thời gian ngày tháng khác nhau. Sau đó, chúng tôi tạo một công việc cuộn lên để cuộn dữ liệu từ các chỉ số này theo định kỳ bằng cách sử dụng công việc cron.

PUT /sensor/_doc/1
{
   "timestamp": 1516729294000,
   "temperature": 200,
   "voltage": 5.2,
   "node": "a"
}

Khi chạy đoạn mã trên, chúng tôi nhận được kết quả sau:

{
   "_index" : "sensor",
   "_type" : "_doc",
   "_id" : "1",
   "_version" : 1,
   "result" : "created",
   "_shards" : {
      "total" : 2,
      "successful" : 1,
      "failed" : 0
   },
   "_seq_no" : 0,
   "_primary_term" : 1
}

Bây giờ, thêm tài liệu thứ hai, v.v. cho các tài liệu khác.

PUT /sensor-2018-01-01/_doc/2
{
   "timestamp": 1413729294000,
   "temperature": 201,
   "voltage": 5.9,
   "node": "a"
}

Tạo một công việc tổng hợp

PUT _rollup/job/sensor
{
   "index_pattern": "sensor-*",
   "rollup_index": "sensor_rollup",
   "cron": "*/30 * * * * ?",
   "page_size" :1000,
   "groups" : {
      "date_histogram": {
         "field": "timestamp",
         "interval": "60m"
      },
      "terms": {
         "fields": ["node"]
      }
   },
   "metrics": [
      {
         "field": "temperature",
         "metrics": ["min", "max", "sum"]
      },
      {
         "field": "voltage",
         "metrics": ["avg"]
      }
   ]
}

Tham số cron kiểm soát thời gian và tần suất công việc kích hoạt. Khi lịch trình cron của công việc cuộn lên kích hoạt, nó sẽ bắt đầu cuộn lên từ vị trí đã dừng lại sau lần kích hoạt cuối cùng

Sau khi công việc đã chạy và xử lý một số dữ liệu, chúng ta có thể sử dụng Truy vấn DSL để thực hiện một số tìm kiếm.

GET /sensor_rollup/_rollup_search
{
   "size": 0,
   "aggregations": {
      "max_temperature": {
         "max": {
            "field": "temperature"
         }
      }
   }
}

Elasticsearch – Frozen Indices (xem thêm)

The post Elasticsearch – SQL Access appeared first on Dongthoigian.net.

]]>
https://dongthoigian.net/elasticsearch-sql-access/feed/ 0 14060
Elasticsearch – Mô-đun chỉ mục https://dongthoigian.net/elasticsearch-mo-dun-chi-muc/ https://dongthoigian.net/elasticsearch-mo-dun-chi-muc/#respond Tue, 14 Jun 2022 05:31:30 +0000 https://dongthoigian.net/?p=14056 chỉ mục có thể sử dụng hoặc số lượng bản sao mà một phân đoạn chính có thể có cho chỉ mục đó

The post Elasticsearch – Mô-đun chỉ mục appeared first on Dongthoigian.net.

]]>
Đây là các mô-đun được tạo cho mọi chỉ mục và kiểm soát cài đặt và hành vi của các chỉ số. Ví dụ: có bao nhiêu phân đoạn mà một chỉ mục có thể sử dụng hoặc số lượng bản sao mà một phân đoạn chính có thể có cho chỉ mục đó, v.v. Có hai loại cài đặt chỉ mục –

  • Tĩnh – Chúng chỉ có thể được đặt tại thời điểm tạo chỉ mục hoặc trên một chỉ mục đã đóng.
  • Động – Chúng có thể được thay đổi trên chỉ mục trực tiếp.

Cài đặt chỉ mục tĩnh

Bảng sau đây cho thấy danh sách các cài đặt chỉ mục tĩnh:

Cài đặtGiá trị có thểSự miêu tả
index.number_of_shardsMặc định là 5, tối đa 1024Số lượng phân đoạn chính mà một chỉ mục phải có.
index.shard.check_on_startupGiá trị mặc định là false. Có thể đúngNên kiểm tra xem các mảnh vỡ có bị hỏng hay không trước khi mở.
index.codecNén LZ4.Loại nén được sử dụng để lưu trữ dữ liệu.
index.routing_partition_size1Số lượng phân đoạn mà một giá trị định tuyến tùy chỉnh có thể chuyển đến.
index.load_fixed_bitset_filters_eagerlysaiCho biết liệu các bộ lọc được lưu trong bộ nhớ đệm có được tải trước cho các truy vấn lồng nhau hay không

Cài đặt chỉ mục động

Bảng sau đây hiển thị danh sách các cài đặt chỉ mục động:

Cài đặtGiá trị có thểSự miêu tả
index.number_of_replicasMặc định là 1Số lượng bản sao mà mỗi phân đoạn chính có.
index.auto_expand_replicasDấu gạch ngang phân tách giới hạn dưới và trên (0-5)Tự động mở rộng số lượng bản sao dựa trên số lượng nút dữ liệu trong cụm.
index.search.idle. after30 giâyThời gian một phân đoạn không thể nhận được tìm kiếm hoặc nhận được yêu cầu cho đến khi nó được coi là tìm kiếm không hoạt động.
index.refresh_interval1 giâyTần suất thực hiện thao tác làm mới, thao tác này làm cho các thay đổi gần đây đối với chỉ mục hiển thị cho tìm kiếm.

Elasticsearch – IngestNode

Đôi khi chúng ta cần chuyển đổi một tài liệu trước khi lập chỉ mục cho nó. Ví dụ: chúng tôi muốn xóa một trường khỏi tài liệu hoặc đổi tên một trường và sau đó lập chỉ mục nó. Điều này được xử lý bởi nút Ingest.

Mọi nút trong cụm đều có khả năng nhập nhưng nó cũng có thể được tùy chỉnh để chỉ được xử lý bởi các nút cụ thể.

Các bước liên quan

Có hai bước liên quan đến hoạt động của nút nhập:

  • Tạo đường dẫn
  • Tạo tài liệu

Tạo một đường ống

Đầu tiên, tạo một đường dẫn có chứa các bộ xử lý và sau đó thực hiện đường dẫn, như được hiển thị bên dưới:

PUT _ingest/pipeline/int-converter
{
   "description": "converts the content of the seq field to an integer",
   "processors" : [
      {
         "convert" : {
            "field" : "seq",
            "type": "integer"
         }
      }
   ]
}

Khi chạy đoạn mã trên, chúng tôi nhận được kết quả sau:

{
   "acknowledged" : true
}

Tạo tài liệu

Tiếp theo, chúng tôi tạo một tài liệu bằng cách sử dụng bộ chuyển đổi đường ống.

PUT /logs/_doc/1?pipeline=int-converter
{
   "seq":"21",
   "name":"Tutorialspoint",
   "Addrs":"Hyderabad"
}

Khi chạy đoạn mã trên, chúng tôi nhận được phản hồi như hình dưới đây:

{
   "_index" : "logs",
   "_type" : "_doc",
   "_id" : "1",
   "_version" : 1,
   "result" : "created",
   "_shards" : {
      "total" : 2,
      "successful" : 1,
      "failed" : 0
   },
   "_seq_no" : 0,
   "_primary_term" : 1
}

Tiếp theo, chúng tôi tìm kiếm tài liệu đã tạo ở trên bằng cách sử dụng lệnh GET như hình dưới đây:

GET /logs/_doc/1

Khi chạy đoạn mã trên, chúng tôi nhận được kết quả sau:

{
   "_index" : "logs",
   "_type" : "_doc",
   "_id" : "1",
   "_version" : 1,
   "_seq_no" : 0,
   "_primary_term" : 1,
   "found" : true,
   "_source" : {
      "Addrs" : "Hyderabad",
      "name" : "Tutorialspoint",
      "seq" : 21
   }
}

Bạn có thể thấy ở trên rằng 21 đã trở thành một số nguyên.

Không có đường ống

Bây giờ chúng ta tạo một tài liệu mà không cần sử dụng đường dẫn.

PUT /logs/_doc/2
{
   "seq":"11",
   "name":"Tutorix",
   "Addrs":"Secunderabad"
}
GET /logs/_doc/2

Khi chạy đoạn mã trên, chúng tôi nhận được kết quả sau:

{
   "_index" : "logs",
   "_type" : "_doc",
   "_id" : "2",
   "_version" : 1,
   "_seq_no" : 1,
   "_primary_term" : 1,
   "found" : true,
   "_source" : {
      "seq" : "11",
      "name" : "Tutorix",
      "Addrs" : "Secunderabad"
   }
}

Bạn có thể thấy ở trên rằng 11 là một chuỗi không có đường ống được sử dụng.

Elasticsearch – Quản lý Vòng đời Chỉ mục

Quản lý vòng đời chỉ mục liên quan đến việc thực hiện các hành động quản lý dựa trên các yếu tố như kích thước phân đoạn và các yêu cầu về hiệu suất. Các API quản lý vòng đời chỉ mục (ILM) cho phép bạn tự động hóa cách bạn muốn quản lý các chỉ số của mình theo thời gian. Chương này cung cấp danh sách các API ILM và cách sử dụng chúng.

API quản lý chính sách

Tên APIMục đíchThí dụ
Chuyển sang API bước vòng đời.Di chuyển thủ công một chỉ mục vào bước đã chỉ định và thực hiện bước đó.POST_ilm / move / index
Thử lại chính sách.Đặt chính sách trở lại bước xảy ra lỗi và thực hiện bước đó.POST index / _ilm / retry
Xóa chính sách khỏi chỉnh sửa API chỉ mục.Loại bỏ chính sách vòng đời được chỉ định và ngừng quản lý chỉ mục được chỉ định. Nếu một mẫu chỉ mục được chỉ định, hãy xóa các chính sách đã chỉ định khỏi tất cả các chỉ số phù hợp.POST index / _ilm / remove

API quản lý hoạt động

Tên APIMục đíchThí dụ
Nhận API trạng thái quản lý vòng đời chỉ mục.Trả về trạng thái của plugin ILM. Trường chế độ hoạt động trong phản hồi hiển thị một trong ba trạng thái: BẮT ĐẦU, DỪNG hoặc DỪNG.GET / _ilm / trạng thái
Bắt đầu API quản lý vòng đời của chỉ mục.Khởi động plugin ILM nếu nó hiện đang bị dừng. ILM được khởi động tự động khi cụm được hình thành.POST / _ilm / start
Dừng API quản lý vòng đời của chỉ mục.Tạm dừng tất cả các hoạt động quản lý vòng đời và dừng plugin ILM. Điều này hữu ích khi bạn đang thực hiện bảo trì trên cụm và cần ngăn ILM thực hiện bất kỳ hành động nào trên các chỉ số của bạn.ĐĂNG / _ilm / dừng
Giải thích về vòng đời API.Truy xuất thông tin về trạng thái vòng đời hiện tại của chỉ mục, chẳng hạn như giai đoạn, hành động và bước hiện đang thực thi. Hiển thị khi chỉ mục được nhập vào từng chỉ mục, định nghĩa của giai đoạn đang chạy và thông tin về bất kỳ lỗi nào.GET chỉ mục / _ilm / giải thích

Elasticsearch –  Truy cập SQL (xem thêm)

The post Elasticsearch – Mô-đun chỉ mục appeared first on Dongthoigian.net.

]]>
https://dongthoigian.net/elasticsearch-mo-dun-chi-muc/feed/ 0 14056
Elasticsearch – Modules https://dongthoigian.net/elasticsearch-modules/ https://dongthoigian.net/elasticsearch-modules/#respond Tue, 14 Jun 2022 05:05:52 +0000 https://dongthoigian.net/?p=14053 Các cài đặt này có thể được đặt trên Elasticsearch trực tiếp

The post Elasticsearch – Modules appeared first on Dongthoigian.net.

]]>
Mô-đun

Elasticsearch bao gồm một số mô-đun, chịu trách nhiệm về chức năng của nó. Các mô-đun này có hai loại cài đặt như sau:

  • Cài đặt tĩnh – Các cài đặt này cần được định cấu hình trong tệp cấu hình (asticsearch.yml) trước khi khởi động Elasticsearch. Bạn cần cập nhật tất cả các nút quan tâm trong cụm để phản ánh những thay đổi của các cài đặt này.
  • Cài đặt động – Các cài đặt này có thể được đặt trên Elasticsearch trực tiếp.

Chúng ta sẽ thảo luận về các mô-đun khác nhau của Elasticsearch trong các phần sau của chương này.

Định tuyến cấp độ cụm và phân bổ mảnh

Cài đặt cấp độ cụm quyết định việc phân bổ các phân đoạn cho các nút khác nhau và phân bổ lại các phân đoạn để cân bằng lại cụm. Đây là các cài đặt sau để kiểm soát phân bổ phân đoạn. Phân bổ mảnh cấp độ cụm

Cài đặtGiá trị có thểSự miêu tả
cluster.routing.allocation.enable
tất cảGiá trị mặc định này cho phép phân bổ phân đoạn cho tất cả các loại phân đoạn.
bầu cử sơ bộĐiều này chỉ cho phép phân bổ phân đoạn cho các phân đoạn chính.
new_primariesĐiều này chỉ cho phép phân bổ phân đoạn cho các phân đoạn chính cho các chỉ số mới.
không aiĐiều này không cho phép bất kỳ phân bổ phân đoạn nào.
cluster.routing.allocation .node_concurrent_recoveriesGiá trị số (theo mặc định là 2)Điều này hạn chế số lượng phục hồi phân đoạn đồng thời.
cluster.routing.allocation .node_initial_primaries_recoveriesGiá trị số (theo mặc định là 4)Điều này hạn chế số lần khôi phục chính ban đầu song song.
cluster.routing.allocation .same_shard.hostGiá trị boolean (theo mặc định là false)Điều này hạn chế việc phân bổ nhiều hơn một bản sao của cùng một phân đoạn trong cùng một nút vật lý.
indices.recovery.concurrent _streamsGiá trị số (theo mặc định là 3)Điều này kiểm soát số lượng luồng mạng mở trên mỗi nút tại thời điểm khôi phục phân đoạn từ các phân đoạn ngang hàng.
indices.recovery.concurrent _small_file_streamsGiá trị số (theo mặc định là 2)Điều này kiểm soát số lượng luồng mở trên mỗi nút đối với các tệp nhỏ có kích thước dưới 5mb tại thời điểm khôi phục phân đoạn.
cluster.routing.rebalance.enable
tất cảGiá trị mặc định này cho phép cân bằng cho tất cả các loại phân đoạn.
bầu cử sơ bộĐiều này cho phép cân bằng phân đoạn chỉ cho các phân đoạn chính.
bản saoĐiều này cho phép cân bằng phân đoạn chỉ cho các phân đoạn bản sao.
không aiĐiều này không cho phép bất kỳ loại cân bằng phân đoạn nào.
cluster.routing.allocation .allow_rebalance
luôn luônGiá trị mặc định này luôn cho phép tái cân bằng.
indices_primaries _activeĐiều này cho phép tái cân bằng khi tất cả các phân đoạn chính trong cụm được phân bổ.
Indices_all_activeĐiều này cho phép tái cân bằng khi tất cả các phân đoạn chính và bản sao được phân bổ.
cluster.routing.allocation.cluster _concurrent_rebalanceGiá trị số (theo mặc định là 2)Điều này hạn chế số lượng cân bằng phân đoạn đồng thời trong cụm.
cluster.routing.allocation .balance.shardGiá trị nổi (theo mặc định là 0,45f)Điều này xác định hệ số trọng số cho các phân đoạn được phân bổ trên mọi nút.
cluster.routing.allocation .balance.indexGiá trị nổi (theo mặc định là 0,55f)Điều này xác định tỷ lệ số phân đoạn trên mỗi chỉ mục được phân bổ trên một nút cụ thể.
cluster.routing.allocation .balance.thresholdGiá trị float không âm (theo mặc định là 1.0f)Đây là giá trị tối ưu hóa tối thiểu của các hoạt động nên được thực hiện.

Phân bổ mảnh dựa trên đĩa

Cài đặtGiá trị có thểSự miêu tả
cluster.routing.allocation.disk.threshold_enabledGiá trị Boolean (theo mặc định là true)Điều này cho phép và vô hiệu hóa trình quyết định phân bổ đĩa.
cluster.routing.allocation.disk.watermark.lowGiá trị chuỗi (theo mặc định là 85%)Điều này biểu thị mức sử dụng tối đa của đĩa; sau thời điểm này, không có phân đoạn nào khác có thể được cấp phát cho đĩa đó.
cluster.routing.allocation.disk.watermark.highGiá trị chuỗi (theo mặc định là 90%)Điều này biểu thị mức sử dụng tối đa tại thời điểm phân bổ; nếu đạt đến điểm này tại thời điểm phân bổ, thì Elasticsearch sẽ phân bổ phân đoạn đó vào một đĩa khác.
cluster.info.update.intervalGiá trị chuỗi (theo mặc định là 30 giây)Đây là khoảng thời gian giữa các lần kiểm tra việc sử dụng đĩa.
cluster.routing.allocation.disk.include_relocationsGiá trị Boolean (theo mặc định là true)Điều này quyết định xem có nên xem xét các phân đoạn hiện đang được cấp phát hay không trong khi tính toán mức sử dụng đĩa.

Khám phá

Mô-đun này giúp một cụm phát hiện và duy trì trạng thái của tất cả các nút trong đó. Trạng thái của cụm thay đổi khi một nút được thêm vào hoặc xóa khỏi nó. Cài đặt tên cụm được sử dụng để tạo ra sự khác biệt hợp lý giữa các cụm khác nhau. Có một số mô-đun giúp bạn sử dụng các API được cung cấp bởi các nhà cung cấp đám mây và những mô-đun đó như được cung cấp bên dưới –

  • Khám phá Azure
  • Khám phá EC2
  • Khám phá công cụ máy tính của Google
  • Khám phá Zen

Cổng vào

Mô-đun này duy trì trạng thái cụm và dữ liệu phân đoạn trên toàn bộ cụm khởi động lại. Sau đây là các cài đặt tĩnh của mô-đun này:

Cài đặtGiá trị có thểSự miêu tả
gateway.emplete_nodesgiá trị số (theo mặc định là 0)Số lượng các nút dự kiến ​​sẽ nằm trong cụm để khôi phục các phân đoạn cục bộ.
gateway.emplete_master_nodesgiá trị số (theo mặc định là 0)Số lượng nút chính dự kiến ​​sẽ có trong cụm trước khi bắt đầu khôi phục.
gateway.eosystem_data_nodesgiá trị số (theo mặc định là 0)Số lượng nút dữ liệu dự kiến ​​trong cụm trước khi bắt đầu khôi phục.
gateway.recover_osystem_timeGiá trị chuỗi (theo mặc định là 5m)Đây là khoảng thời gian giữa các lần kiểm tra việc sử dụng đĩa.
cluster.routing.allocation. disk.include_relocationsGiá trị Boolean (theo mặc định là true)Điều này chỉ định thời gian mà quá trình khôi phục sẽ đợi để bắt đầu bất kể số lượng nút đã tham gia trong cụm. gateway.recover_ after_nodes
gateway.recover_osystem_master_nodes
gateway.recover_osystem_data_nodes

HTTP

Mô-đun này quản lý giao tiếp giữa máy khách HTTP và các API Elasticsearch. Mô-đun này có thể bị vô hiệu hóa bằng cách thay đổi giá trị của http.enabled thành false. Sau đây là các cài đặt (được định cấu hình trong asticsearch.yml) để điều khiển mô-đun này

S.KhôngCài đặt & Mô tả
1http.port Đây là một cổng để truy cập Elasticsearch và nó nằm trong khoảng từ 9200-9300.
2http.publish_port Cổng này dành cho máy khách http và cũng hữu ích trong trường hợp tường lửa.
3http.bind_host Đây là một địa chỉ máy chủ cho dịch vụ http.
4http.publish_host Đây là địa chỉ máy chủ cho ứng dụng khách http.
5http.max_content_length Đây là kích thước tối đa của nội dung trong một yêu cầu http. Giá trị mặc định của nó là 100mb.
6http.max_initial_line_length Đây là kích thước tối đa của URL và giá trị mặc định của nó là 4kb.
7http.max_header_size Đây là kích thước tiêu đề http tối đa và giá trị mặc định của nó là 8kb.
số 8http.compression Điều này cho phép hoặc vô hiệu hóa hỗ trợ nén và giá trị mặc định của nó là false.
9http.pipelinig Điều này cho phép hoặc vô hiệu hóa đường dẫn HTTP.
10http.pipelining.max_events Điều này hạn chế số lượng sự kiện được xếp hàng trước khi đóng một yêu cầu HTTP.

Chỉ số

Mô-đun này duy trì các cài đặt, được đặt trên toàn cầu cho mọi chỉ mục. Các cài đặt sau chủ yếu liên quan đến việc sử dụng bộ nhớ –

Ngắt mạch

Điều này được sử dụng để ngăn hoạt động gây ra lỗi OutOfMemroyError. Cài đặt chủ yếu hạn chế kích thước heap JVM. Ví dụ: cài đặt indices.breaker.total.limit, mặc định là 70% heap JVM.

Fielddata Cache

Điều này được sử dụng chủ yếu khi tập hợp trên một lĩnh vực. Bạn nên có đủ bộ nhớ để phân bổ nó. Có thể kiểm soát dung lượng bộ nhớ được sử dụng cho bộ đệm dữ liệu trường bằng cách sử dụng cài đặt indices.fielddata.cache.size.

Node Query Cache

Bộ nhớ này được sử dụng để lưu kết quả truy vấn vào bộ nhớ đệm. Bộ nhớ cache này sử dụng chính sách loại bỏ Ít được Sử dụng Gần đây (LRU). Cài đặt Indices.queries.cahce.size kiểm soát kích thước bộ nhớ của bộ đệm này.

Bộ đệm lập chỉ mục

Bộ đệm này lưu trữ các tài liệu mới được tạo trong chỉ mục và xóa chúng khi bộ đệm đầy. Cài đặt như indices.memory.index_buffer_size kiểm soát số lượng heap được phân bổ cho bộ đệm này.

Shard Request Cache

Bộ nhớ cache này được sử dụng để lưu trữ dữ liệu tìm kiếm cục bộ cho mọi phân đoạn. Bộ nhớ đệm có thể được bật trong quá trình tạo chỉ mục hoặc có thể bị vô hiệu hóa bằng cách gửi tham số URL.

Disable cache - ?request_cache = true
Enable cache "index.requests.cache.enable": true

Phục hồi các chỉ số

Nó kiểm soát các tài nguyên trong quá trình khôi phục. Sau đây là các cài đặt –

Cài đặt	Giá trị mặc định
indices.recovery.concurrent_streams	3
indices.recovery.concurrent_small_file_streams	2
indices.recovery.file_chunk_size	512kb
indices.recovery.translog_ops	1000
indices.recovery.translog_size	512kb
indices.recovery.compress	thật
indices.recovery.max_bytes_per_sec	40mb

Khoảng thời gian TTL

Khoảng thời gian tồn tại (TTL) xác định thời gian của tài liệu, sau đó tài liệu sẽ bị xóa. Sau đây là các cài đặt động để kiểm soát quá trình này:

Cài đặtGiá trị mặc định
indices.ttl.interval60s
indices.ttl.bulk_size1000

Nút

Mỗi nút có một tùy chọn là nút dữ liệu hoặc không. Bạn có thể thay đổi thuộc tính này bằng cách thay đổi cài đặt node.data . Đặt giá trị là false xác định rằng nút không phải là nút dữ liệu

Elasticsearch – Mô-đun chỉ mục (xem thêm)

The post Elasticsearch – Modules appeared first on Dongthoigian.net.

]]>
https://dongthoigian.net/elasticsearch-modules/feed/ 0 14053
Elasticsearch – Mapping https://dongthoigian.net/elasticsearch-mapping/ https://dongthoigian.net/elasticsearch-mapping/#respond Mon, 13 Jun 2022 03:48:59 +0000 https://dongthoigian.net/?p=14048 Elasticsearch hỗ trợ một số kiểu dữ liệu khác nhau cho các trường trong tài liệu. 

The post Elasticsearch – Mapping appeared first on Dongthoigian.net.

]]>
Lập bản đồ

Lập bản đồ là phác thảo của các tài liệu được lưu trữ trong một chỉ mục. Nó xác định kiểu dữ liệu như geo_point hoặc chuỗi và định dạng của các trường có trong tài liệu và quy tắc để kiểm soát ánh xạ các trường được thêm động.

PUT bankaccountdetails
{
   "mappings":{
      "properties":{
         "name": { "type":"text"}, "date":{ "type":"date"},
         "balance":{ "type":"double"}, "liability":{ "type":"double"}
      }
   }
 }

Khi chúng tôi chạy đoạn mã trên, chúng tôi nhận được phản hồi như hình dưới đây:

{
   "acknowledged" : true,
   "shards_acknowledged" : true,
   "index" : "bankaccountdetails"
}

Các loại dữ liệu trường

Elasticsearch hỗ trợ một số kiểu dữ liệu khác nhau cho các trường trong tài liệu. Các kiểu dữ liệu được sử dụng để lưu trữ các trường trong Elasticsearch được thảo luận chi tiết tại đây.

Các loại dữ liệu cốt lõi

Đây là các kiểu dữ liệu cơ bản như văn bản, từ khóa, ngày, dài, kép, boolean hoặc ip, được hầu hết các hệ thống hỗ trợ.

Các kiểu dữ liệu phức tạp

Các kiểu dữ liệu này là sự kết hợp của các kiểu dữ liệu cốt lõi. Chúng bao gồm mảng, đối tượng JSON và kiểu dữ liệu lồng nhau. Ví dụ về kiểu dữ liệu lồng nhau được hiển thị bên dưới & dấu trừ

POST /tabletennis/_doc/1
{
   "group" : "players",
   "user" : [
      {
         "first" : "dave", "last" : "jones"
      },
      {
         "first" : "kevin", "last" : "morris"
      }
   ]
}

Khi chúng tôi chạy đoạn mã trên, chúng tôi nhận được phản hồi như hình dưới đây:

{
   "_index" : "tabletennis",
   "_type" : "_doc",
   "_id" : "1",
   _version" : 2,
   "result" : "updated",
   "_shards" : {
      "total" : 2,
      "successful" : 1,
      "failed" : 0
   },
   "_seq_no" : 1,
   "_primary_term" : 1
}

Một mã mẫu khác được hiển thị bên dưới

POST /accountdetails/_doc/1
{
   "from_acc":"7056443341", "to_acc":"7032460534",
   "date":"11/1/2016", "amount":10000
}

Khi chúng tôi chạy đoạn mã trên, chúng tôi nhận được phản hồi như hình dưới đây:

{  "_index" : "accountdetails",
   "_type" : "_doc",
   "_id" : "1",
   "_version" : 1,
   "result" : "created",
   "_shards" : {
      "total" : 2,
      "successful" : 1,
      "failed" : 0
   },
   "_seq_no" : 1,
   "_primary_term" : 1
}

Chúng ta có thể kiểm tra tài liệu trên bằng cách sử dụng lệnh sau:

GET /accountdetails/_mappings?include_type_name=false

Loại bỏ các loại ánh xạ

Các chỉ số được tạo trong Elasticsearch 7.0.0 trở lên không còn chấp nhận ánh xạ _default_. Các chỉ số được tạo trong 6.x sẽ tiếp tục hoạt động như trước trong Elasticsearch 6.x. Các loại không được chấp nhận trong các API trong phiên bản 7.0

Elasticsearch – Phân tích

Khi một truy vấn được xử lý trong một hoạt động tìm kiếm, nội dung trong bất kỳ chỉ mục nào sẽ được phân tích bởi mô-đun phân tích. Mô-đun này bao gồm bộ phân tích, bộ tách mã, bộ lọc mã thông báo và bộ lọc bộ lọc. Nếu không có bộ phân tích nào được xác định, thì theo mặc định, các bộ phân tích, mã thông báo, bộ lọc và bộ phân tích tích hợp sẽ được đăng ký với mô-đun phân tích.

Trong ví dụ sau, chúng tôi sử dụng máy phân tích tiêu chuẩn được sử dụng khi không có máy phân tích nào khác được chỉ định. Nó sẽ phân tích câu dựa trên ngữ pháp và đưa ra các từ được sử dụng trong câu.

POST _analyze
{
   "analyzer": "standard",
   "text": "Today's weather is beautiful"
}

Khi chạy đoạn mã trên, chúng tôi nhận được phản hồi như hình dưới đây:

{
   "tokens" : [
      {
         "token" : "today's",
         "start_offset" : 0,
         "end_offset" : 7,
         "type" : "",
         "position" : 0
      },
      {
         "token" : "weather",
         "start_offset" : 8,
         "end_offset" : 15,
         "type" : "",
         "position" : 1
      },
      {
         "token" : "is",
         "start_offset" : 16,
         "end_offset" : 18,
         "type" : "",
         "position" : 2
      },
      {
         "token" : "beautiful",
         "start_offset" : 19,
         "end_offset" : 28,
         "type" : "",
         "position" : 3
      }
   ]
}

Cấu hình máy phân tích chuẩn

Chúng tôi có thể định cấu hình bộ phân tích tiêu chuẩn với các thông số khác nhau để nhận được các yêu cầu tùy chỉnh của chúng tôi.

Trong ví dụ sau, chúng tôi định cấu hình trình phân tích tiêu chuẩn để có max_token_length là 5. Đối với điều này, trước tiên chúng tôi tạo một chỉ mục với trình phân tích có tham số max_length_token.

PUT index_4_analysis
{
   "settings": {
      "analysis": {
         "analyzer": {
            "my_english_analyzer": {
               "type": "standard",
               "max_token_length": 5,
               "stopwords": "_english_"
            }
         }
      }
   }
}

Tiếp theo, chúng tôi áp dụng bộ phân tích với một văn bản như hình dưới đây. Xin lưu ý cách mã thông báo không xuất hiện vì nó có hai dấu cách ở đầu và hai dấu cách ở cuối. Đối với từ “là”, có một khoảng trắng ở đầu và một khoảng trắng ở cuối từ. Lấy tất cả chúng, nó trở thành 4 chữ cái có dấu cách và điều đó không biến nó thành một từ. Ít nhất phải có một ký tự nonspace ở đầu hoặc cuối để làm cho nó trở thành một từ được đếm.

POST index_4_analysis/_analyze
{
   "analyzer": "my_english_analyzer",
   "text": "Today's weather is beautiful"
}

Khi chạy đoạn mã trên, chúng tôi nhận được phản hồi như hình dưới đây:

Danh sách các máy phân tích khác nhau và mô tả của chúng được đưa ra trong bảng dưới đây

S.KhôngTrình phân tích & Mô tả
1Máy phân tích tiêu chuẩn (tiêu chuẩn) stopwords và cài đặt max_token_length có thể được đặt cho máy phân tích này. Theo mặc định, danh sách từ dừng trống và max_token_length là 255.
2Máy phân tích đơn giản (đơn giản) Máy phân tích này được cấu tạo bởi tokenizer chữ thường.
3Máy phân tích khoảng trắng (khoảng trắng) Bộ phân tích này bao gồm bộ tách khoảng trắng.
4Dừng máy phân tích (dừng) stopwords và stopwords_path có thể được định cấu hình. Theo mặc định, các từ dừng được khởi tạo thành các từ dừng tiếng Anh và stopwords_path chứa đường dẫn đến tệp văn bản có các từ dừng.

Tokenizers

Tokenizers được sử dụng để tạo mã thông báo từ một văn bản trong Elasticsearch. Văn bản có thể được chia nhỏ thành các mã thông báo bằng cách tính đến khoảng trắng hoặc các dấu chấm câu khác. Elasticsearch có rất nhiều công cụ phân tích mã hóa tích hợp, có thể được sử dụng trong bộ phân tích tùy chỉnh.

Dưới đây là một ví dụ về tokenizer ngắt văn bản thành các cụm từ bất cứ khi nào nó gặp một ký tự không phải là chữ cái, nhưng nó cũng viết thường tất cả các cụm từ:

POST _analyze
{
   "tokenizer": "lowercase",
   "text": "It Was a Beautiful Weather 5 Days ago."
}

Khi chạy đoạn mã trên, chúng tôi nhận được phản hồi như hình dưới đây:

{
   "tokens" : [
      {
         "token" : "it",
         "start_offset" : 0,
         "end_offset" : 2,
         "type" : "word",
         "position" : 0
      },
      {
         "token" : "was",
         "start_offset" : 3,
         "end_offset" : 6,
         "type" : "word",
         "position" : 1
      },
      {
         "token" : "a",
         "start_offset" : 7,
         "end_offset" : 8,
         "type" : "word",
         "position" : 2
      },
      {
         "token" : "beautiful",
         "start_offset" : 9,
         "end_offset" : 18,
         "type" : "word",
         "position" : 3
      },
      {
         "token" : "weather",
         "start_offset" : 19,
         "end_offset" : 26,
         "type" : "word",
         "position" : 4
      },
      {
         "token" : "days",
         "start_offset" : 29,
         "end_offset" : 33,
         "type" : "word",
         "position" : 5
      },
      {
         "token" : "ago",
         "start_offset" : 34,
         "end_offset" : 37,
         "type" : "word",
         "position" : 6
      }
   ]
}

Danh sách các Tokenizers và mô tả của chúng được hiển thị ở đây trong bảng dưới đây

S.KhôngTokenizer & Mô tả
1Tokenizer tiêu chuẩn (tiêu chuẩn) Điều này được xây dựng dựa trên tokenizer dựa trên ngữ pháp và max_token_length có thể được định cấu hình cho tokenizer này.
2Edge NGram tokenizer (edgeNGram) Có thể đặt các cài đặt như min_gram, max_gram, token_chars cho tokenizer này.
3Keyword tokenizer (từ khóa) Điều này tạo ra toàn bộ đầu vào dưới dạng đầu ra và có thể đặt buffer_size cho việc này.
4Letter tokenizer (letter) Điều này ghi lại toàn bộ từ cho đến khi gặp một chữ cái không phải.

Elasticsearch – Modules (xem thêm)

The post Elasticsearch – Mapping appeared first on Dongthoigian.net.

]]>
https://dongthoigian.net/elasticsearch-mapping/feed/ 0 14048