Magento 2'de Elasticsearch Nasıl Yapılandırılır

Yayınlanan: 2022-12-20

İçindekiler

Magento platformu, işletme sahiplerinin mağazalarını daha az sınırlama ve daha fazla esneklikle açmaları için harika bir fırsat yarattı. Bir mağazada birçok kategori ve alt kategori altında binlerce ürün olabilir ve genellikle müşterilerin ürünleri aramak için harcadıkları süre kısa olur. Bu nedenle, müşterilere kolay bir arama deneyimi ve yararlı gerçek zamanlı arama sonuçları sağlayamazsanız, Magento mağazanız dönüşümlerde düşüş yaşayabilir. Güçlü bir arama motoruna ihtiyaç duymanızın nedeni budur ve Magento 2 Elasticsearch imdadınıza yetişir.

Magento 2'de Elasticsearch nedir?

elastik arama logosu

Elasticsearch BV'ye göre Elasticsearch, metinsel, sayısal, jeo-uzamsal, yapılandırılmış ve yapılandırılmamış dahil olmak üzere her türlü veri için dağıtılmış, ücretsiz ve açık bir arama ve analiz motorudur.

İlk olarak 2010 yılında piyasaya sürülen Elasticsearch, Apache Lucene adlı Java tabanlı bir arama ve dizin oluşturma kitaplığı üzerine kurulmuştur. Belge veya veri tabanındaki kelimeleri karşılaştırarak ilgili anahtar kelimeleri öneren ve eksiksiz sorguları gösteren bir tam metin arama motorudur. Ayrıca, dağıtılmış modeli ve her tür veriye açık olması, aramayı hızlı ve ölçeklendirmeyi kolaylaştırır.

Bu yetenekler nedeniyle, Uygulama aramada Elasticsearch kullanılmıştır; Web sitesi araması; Kurumsal arama; Günlük kaydı ve günlük analitiği; Uygulama performansı izleme; Coğrafi veri analizi ve görselleştirme; İş Analitiği vb.

Magento 2.4'ten bu yana, Adobe Commerce veya Magento, Elasticsearch'ün varsayılan katalog arama motoru olmasını gerektirir. Bu nedenle, zorunlu bir bileşen haline gelir ve Magento kurulurken devre dışı bırakılamaz. Elasticsearch, müşterilere gerçek zamanlı olarak daha hızlı ve daha alakalı arama sonuçları sunarak iş dönüşüm oranını artırır. Bu, hem müşteriler hem de Magento 2 mağaza sahipleri için büyük bir avantajdır.

Elasticsearch nasıl çalışır?

Elasticsearch'ün bu kadar hızlı ve güvenilir arama sonuçları vermesini sağlayan şey, metni incelemek yerine indeksleri aradığı indeksleme yeteneğidir. Elastik dizin, hızlı ve verimli veri alımına izin veren ve mantıksal olarak ilişkili belgeleri depolamak için kullanılan, benzer şekilde yapılandırılmış bir belge grubudur.

Günlükler, sistem ölçümleri ve web uygulamaları gibi çeşitli kaynaklardan gelen ham veriler Elasticsearch'e aktığında, Elasticsearch bunları işler. Daha sonra bu verileri dizine ekler ve bundan sonra kullanıcılar veriler üzerinde karmaşık aramalar yapabilir ve toplamaları kullanarak verilerinin ayrıntılı özetlerini alabilir. (Elastik.co)

elastik arama yapısı
Kaynak: Thirdrocktechkno.com

Elasticsearch'ün önemli özelliklerinden bazıları:

  • hızlı metin arama
  • Arama önerileri
  • otomatik tamamlama
  • Yazım/Yanlış Yazım denetimi ve engellenecek sözcük algılama
  • Günlüğe Kaydetme ve Analiz
  • Coğrafi Konum Arama

Magento 2 Elasticsearch'ün Faydaları

Harika arama deneyimi

Yavaş yanıt süreleri ve arama motorlarının zayıf işlevselliği, yüksek hemen çıkma oranlarına yol açabilir. Elasticsearch'ün hızlı sonuç üretimi ve gerçek zamanlı ilgili sonuçları sayesinde müşterilerin cesareti kırılmayacak ve siteden ayrılmayacak.

Ayrıca, otomatik tamamlama ve otomatik öneri sayesinde müşteriler, yanlış sorguları azaltmanın yanı sıra çok fazla zaman ve emek tasarrufu sağlayabilir.

Ayrıca, arama yapanların genellikle karşılaştığı rahatsız edici bir şey de yazım hataları veya yanlış yazımlardır. Bu, arama motorlarının anahtar kelimeleri tanıyamamasına ve “sonuç bulunamadı” durumu vermesine yol açar. Elasticsearch, durma sözcüklerini ve bunlarla eşleşen tümceleri bulabilir, böylece ilgili sonuçları vermeye devam edebilir ve hatta onları daha doğru hale getirebilir.

Hızlı arama

Elasticsearch, aranan anahtar kelimeleri tipik SQL tabanlı aramadan çok daha hızlı bir şekilde 10 saniyenin altında alabilen güçlü bir araçtır. Lucene üzerine inşa edildiğinden ve dağıtılmış ters indeksler kullandığından, Elasticsearch tam metin aramada olağanüstü iyi performans gösterir. ElasticSearch, sonuç kümesi için tüm arama sorgularını yakalayabilir, böylece bir arama sorgusu önbelleğe alınmış bir filtre içerdiğinde, aramayı önbellekten sonuç için yönlendirir. Bu, bir belgenin dizine eklenmesi ile aranabilir hale gelmesi arasındaki sürenin nispeten kısa olduğu ve dolayısıyla arama sonucu yanıtını artırdığı anlamına gelir.

Yüksek ölçeklenebilirlik ve büyük hacimli veri yönetimi

Elasticsearch, dağıtılmış bir mimariye dayalıdır. Şirket, " Elasticsearch'te saklanan belgelerin, donanım arızası durumunda verilerin yedek kopyalarını sağlamak için çoğaltılan, parçalar olarak bilinen farklı kaplara dağıtıldığını" belirtiyor. Bu nedenle, doğası, binlerce sunucuya kadar ölçeklendirmeye ve çok büyük miktarda veriyi yönetmeye izin verir.

Ayrıca herhangi bir küme veya çok sayıda düğüme sahip sistem üzerinde başarılı bir şekilde ilerleyebilecek şekilde yapılandırılmıştır. Sonuç olarak, tek bir küçük kümeden daha büyük bir kümeye genişleme çok az hazırlık gerektirir ve neredeyse sorunsuzdur.

Şema içermez

Elasticsearch, JavaScript Nesne Notasyonu olan JSON'u kullanır. Veri yapısını algılamak ve aranabilir hale getirmek için indeksleme verileriyle JSON belgelerini depolar. Bu, herhangi bir veri tanımı gerektirmediği ve belirli bir veri türü verilmediği sürece verileri indekslemek için normalde varsayılanları kullandığı anlamına gelir. Daha sonra yeni bir özelliğe sahip bir nesne dizine eklendiğinde, eşleme tanımları otomatik olarak güncellenir. Bu nedenle, şema içermez.

Elasticsearch'ü kurmak için ön koşullar

Magento platformu için gerekli bir eklenti olarak, kullanıcılar 2.4.x sürümüne yükseltme yapmadan önce Elasticsearch kurulmalı ve yapılandırılmalıdır. Ayrıca kullanıcılar, Adobe'nin artık Adobe Commerce 2.3.x ve PHP 7.3'ü desteklemediğinin farkında olmalıdır. Bu nedenle, PCI uyumluluğunu korumak için Adobe Commerce 2.4.x ve PHP 7.4.x'e yükseltmeniz önerilir.

adobe-commerce-note-on-sürümleri
Kaynak: Adobe Commerce DevDocs

Mevcut Magento 2.4.x kurulum sırası, kullanıcıların şu ek gereksinimlerle birlikte Elasticsearch'ü kurmasını gerektirir:

  • Web sunucusu (Apache veya Nginx)
  • MySQL
  • PHP

Magento'nun tüm kurulumlar için istediği sürüm Elasticsearch 7.6.x'tir, bu nedenle kullanıcılar bu sürümü tercih ettiğinden emin olmalıdır. Mevcut bazı üçüncü taraf Magento 2 Elasticsearch uzantıları, Elasticsearch'ü Magento mağazalarınıza entegre etmenize yardımcı olabilir.

Magento mağazanız için kolay Elasticsearch yapılandırması

Burada, Magento 2 Yönetici Panelini kullanarak Elasticsearch'ü yapılandırma adımlarında size yol gösteriyoruz.

Adım 1: Magento 2 Elasticsearch Arama Seçeneklerini Yapılandırma

1. Magento 2 Yönetici Panelinizde yönetici olarak oturum açın.

magento-yönetici paneli

2. Mağazalar'a tıklayın. Ayarlar'da Yapılandırma'yı seçin. Bu sayfadan, genişletmek için Katalog bölümüne tıklayın.

magento-konfigürasyon paneli

3. Katalog Arama öğesini seçin. Burada, seçilecek tüm Arama Motoru sürümlerini ve diğer genel ayarları görürsünüz.

  • Minimum Sorgu Uzunluğu : Elasticsearch tavsiyeleri veya önerileri gösterilmeden önce kullanıcıların girmesi gereken minimum karakter sayısı. Ve sistem varsayılan değeri 3'tür.
  • Maksimum Sorgu Uzunluğu : sonuçları görmek için yazılacak maksimum karakter sayısı. Sistem varsayılan değeri 128'dir.
  • Önbelleğe alınan en iyi arama sonuçlarının sayısı: Burada yanıt hızını artırmak için sınırlı sayıda popüler arama sonucu girersiniz. Varsayılan değer 100'dür. Bir terim ikinci kez arandığında, tüm sonuçları önbelleğe almak için bir "0" girin.
  • EAV Dizin Oluşturucuyu etkinleştirin veya devre dışı bırakın: dizin oluşturma hızını artırmak ve dizin oluşturucuyu kullanan üçüncü taraf uzantılardan kaçınmak için bu alanı değiştirin.
  • Otomatik Tamamlama Sınırı: Magento 2 Elasticsearch otomatik tamamlama için görüntülenen maksimum arama sonuçlarını sınırlamak için değeri ayarlarsınız. Bu, arama performansını artırmaya ve görüntülenen listeyi kısaltmaya yardımcı olur. Varsayılan ayar 8'dir.
genel elastik arama ayarları

Adım 2: Magento 2 Elasticsearch Bağlantısını Yapılandırma

Aşağıdaki tablo, Magento ile bağlantıyı yapılandırmak ve test etmek için gerekli seçenekleri göstermektedir. Herhangi bir ayar yapmazsanız ve varsayılanların çalışmasına izin verirseniz bir sonraki adıma geçin.

Magento-2-elasticsearch-bağlantı-test-tablosu
Kaynak: Adobe Commerce DevDocs
Magento-2-elasticsearch-bağlantı-test-alanları

Kurulumu ve testi tamamlamak için Bağlantıyı Test Et'e tıklayın.

Bağlantı başarılı olmazsa aşağıdaki yolları deneyin

  • Elasticsearch sunucunuzun hala çalışıp çalışmadığını kontrol edin.
  • Magento sunucusunda oturum açın ve Magento'dan farklı bir ana bilgisayardaysa Elasticsearch ana bilgisayarına ping atın. Tüm ağ bağlantısı sorunlarını çözün ve bağlantınızı yeniden test edin.
  • Devam etmeden önce Elasticsearch'ü başlattığınız komut penceresinde tüm yığın izlerini ve hatalarını ele alın. Elasticsearch'ü root erişimine sahip bir kullanıcı olarak başlattığınızdan emin olun.
  • UNIX güvenlik duvarı ve SELinux'un kapalı olduğundan emin olun veya kurallar oluşturarak Elasticsearch ile Magento arasında iletişimi etkinleştirin.
  • netstat -an | grep **listen-port** netstat -an | grep **listen-port** komutu.

3. Adım: Önerileri ve Önerileri Yapılandırın

Yukarıda belirtildiği gibi, Magento 2 Elasticsearch'ün arama tavsiyeleri ve önerileri, uygun ürünler arayan müşteriler için uygun ve faydalıdır.

Bu aşamada varsayılan ayarları kullanabilir veya bazı değişiklikler yapabilirsiniz:

  • Arama Önerilerini Etkinleştir ve Arama Önerilerini Etkinleştir alanlarını etkinleştirin.
  • Arama Önerileri Sayısı ve Arama Önerileri Sayısı alanlarında kaç tane arama önerisi ve önerisi sunmayı seçin.
  • Her Öneri İçin Sonuç Sayısını Göster ve Her Öneri İçin Sonuç Sayısını Göster alanlarında her bir öneri ve öneri için bulunan sonuç sayısının gösterilmesine veya gösterilmemesine izin verin.
  • Kullanıcıların en alakalı olanları alması için arama sonuçlarının eşleşmesi gereken minimum terim miktarını ayarlamak için Eşleştirilecek Minimum Terimler'de bir değer belirtin.
Magento-2-elasticsearch-öneri-öneri-ayarları

Kurulumu tamamladığınızda, Yapılandırmayı Kaydet'e basın .

4. Adım: Katalog Aramasını Yeniden Dizine Ekleme ve Tam Sayfa Önbelleğini Yenileme

Magento 2 Elasticsearch yapılandırmasını değiştirdikten sonra, katalog arama dizinini yeniden indekslemeniz ve tüm sayfa önbelleğini yeniden yüklemeniz gerekir. Bunu yapmanın iki yolu vardır: Yönetici veya komut satırını kullanmak.

Kullanmak Admin Paneli:

  1. Yönetici'de, Sistem'e tıklayın ve Önbellek Yönetimi'ne gidin.
  2. Sayfa Önbelleği kutusunu işaretleyin.
  3. Sayfanın sağ üst kısmındaki Eylemler listesinden Yenile'yi seçin.
önbellek yönetimi bölümü

Önbelleği temizlemek için magento cache:clean komutunu çalıştırın.

Komut satırını kullanarak:

  • Dosya sistemi sahibi olarak oturum açın veya Magento sunucunuzda ona geçiş yapın.
  • Yalnızca katalog arama dizinini yeniden dizine eklemek için şunu girin:

bin/magento indexer:reindex catalogsearch_fulltext

  • Tüm indeksleyicileri yeniden indekslemek için şunu girin:

bin/magento indexer:reindex

  • Yeniden indeksleme işleminin tamamlanmasını bekleyin.

Çözüm

Netflix, LinkedIn, eBay vb. gibi ünlü isimler tarafından kullanılan Elasticsearch, müşterileriniz için site aramalarını kolay ve etkili hale getirme konusunda güvenilirdir. Magento 2 Elasticsearch yapılandırması tamamlandığında, mağazanız, aramaları satışa dönüştürmek ve sepet terkini en aza indirmek için güçlendirilecektir.
Bu yazının yararlı olduğunu umar, e-ticarette bol şans dileriz!