Kaedah analisis tingkah laku pengguna dilaksanakan menggunakan Elasticsearch dalam PHP

WBOY
Lepaskan: 2023-07-09 12:28:01
asal
1129 orang telah melayarinya

Kaedah analisis tingkah laku pengguna yang dilaksanakan menggunakan Elasticsearch dalam PHP

Gambaran Keseluruhan:
Dengan perkembangan pesat Internet, analisis tingkah laku pengguna telah menjadi bahagian penting dalam syarikat Internet utama. Dengan menganalisis data tingkah laku pengguna, kami dapat memahami dengan lebih baik pilihan dan keperluan pengguna, dengan itu menyediakan pengguna dengan perkhidmatan dan produk yang lebih diperibadikan. Dalam artikel ini, kami akan memperkenalkan cara menggunakan PHP dan Elasticsearch untuk melaksanakan analisis tingkah laku pengguna.

Prasyarat:
Sebelum kita mula, kita perlu memastikan bahawa persekitaran PHP telah dipasang dan perpustakaan pelanggan PHP Elasticsearch telah dipasang. Ia boleh dipasang dengan melaksanakan arahan berikut dalam terminal atau baris arahan:

composer require elasticsearch/elasticsearch
Salin selepas log masuk

Perlu diingat bahawa sebelum pemasangan, anda perlu memastikan bahawa Komposer (alat pengurusan pergantungan PHP) telah dipasang.

Langkah 1: Pemasangan dan konfigurasi Elasticsearch

  1. Muat turun dan pasang Elasticsearch. Anda boleh memuat turun versi terkini dari laman web rasmi Elasticsearch (https://www.elastic.co/downloads/elasticsearch).
  2. Nyahzip fail yang dimuat turun dan mulakan perkhidmatan Elasticsearch. Ia boleh dimulakan dengan melaksanakan arahan berikut dalam terminal atau baris arahan:

    bin/elasticsearch
    Salin selepas log masuk
  3. Pastikan perkhidmatan Elasticsearch telah dimulakan dengan jayanya. Anda boleh mengakses http://localhost:9200/ Jika anda melihat output yang serupa dengan yang berikut, ini bermakna ia telah berjaya dimulakan:

    {
      "name" : "your-computer-name",
      "cluster_name" : "elasticsearch",
      "cluster_uuid" : "XXXXXX",
      "version" : {
     "number" : "7.4.2",
     "build_flavor" : "default",
     "build_type" : "tar",
     "build_hash" : "XXXXXX",
     "build_date" : "XXXXXX",
     "build_snapshot" : false,
     "lucene_version" : "8.2.0",
     "minimum_wire_compatibility_version" : "6.8.0",
     "minimum_index_compatibility_version" : "6.0.0-beta1"
      },
      "tagline" : "You Know, for Search"
    }
    Salin selepas log masuk

Langkah 2: Buat indeks dan pemetaan Elasticsearch

  1. Buat indeks baharu untuk Simpan data tingkah laku pengguna. Ia boleh dibuat dengan melaksanakan kod berikut:

    require 'vendor/autoload.php';
    
    use ElasticsearchClientBuilder;
    
    $client = ClientBuilder::create()->build();
    
    $params = [
     'index' => 'user_behavior',
     'body' => [
         'settings' => [
             'number_of_shards' => 3,
             'number_of_replicas' => 2
         ],
         'mappings' => [
             'properties' => [
                 'user_id' => [
                     'type' => 'integer'
                 ],
                 'action' => [
                     'type' => 'keyword'
                 ],
                 'timestamp' => [
                     'type' => 'date',
                     'format' => 'yyyy-MM-dd HH:mm:ss'
                 ]
             ]
         ]
     ]
    ];
    
    $response = $client->indices()->create($params);
    Salin selepas log masuk
  2. Tentukan pemetaan indeks, nyatakan jenis medan dalam indeks. Dalam kod di atas, kami mentakrifkan medan user_id字段为整数类型,action字段为关键字类型,timestamp sebagai jenis tarikh. Mengikut keperluan sebenar, jenis medan dan hubungan pemetaan boleh disesuaikan.

Langkah 3: Muat naik data gelagat pengguna ke Elasticsearch

  1. Tentukan fungsi untuk memuat naik data gelagat pengguna ke Elasticsearch. Katakan data tingkah laku pengguna kami termasuk ID pengguna, jenis tingkah laku dan cap masa. Anda boleh melaksanakan kod berikut:

    function uploadUserData($user_id, $action) {
     $client = ClientBuilder::create()->build();
    
     $params = [
         'index' => 'user_behavior',
         'body' => [
             'user_id' => $user_id,
             'action' => $action,
             'timestamp' => date("Y-m-d H:i:s")
         ]
     ];
    
     $response = $client->index($params);
    }
    Salin selepas log masuk
  2. Panggil fungsi yang anda perlukan untuk memuat naik data tingkah laku pengguna dan masukkan parameter yang sepadan:

    uploadUserData(123, 'click');
    Salin selepas log masuk

Langkah 4: Soal data gelagat pengguna

  1. a fungsi

  2. Digunakan untuk menanyakan data tingkah laku pengguna tertentu. Anda boleh melaksanakan kod berikut:

    function queryUserData($user_id) {
     $client = ClientBuilder::create()->build();
    
     $params = [
         'index' => 'user_behavior',
         'body' => [
             'query' => [
                 'match' => [
                     'user_id' => $user_id
                 ]
             ]
         ]
     ];
    
     $response = $client->search($params);
    
     return $response['hits']['hits'];
    }
    Salin selepas log masuk

    Panggil fungsi yang anda perlukan untuk menanyakan data tingkah laku pengguna dan masukkan parameter yang sepadan:
  3. $data = queryUserData(123);
    foreach($data as $hit) {
     echo $hit['_source']['action']."
    ";
    }
    Salin selepas log masuk
    Kod di atas akan menanyakan semua data tingkah laku ID pengguna 123 dan menambah Jenis tingkah laku dicetak.


    🎜Ringkasan: 🎜Melalui gabungan PHP dan Elasticsearch, kami boleh melaksanakan fungsi analisis tingkah laku pengguna dengan mudah. Dengan mencipta indeks dan menentukan pemetaan, kami boleh menyimpan dan mengurus data tingkah laku pengguna secara fleksibel. Melalui fungsi muat naik dan pertanyaan, kami boleh mengumpul dan menganalisis data dengan mudah. Kami berharap pengenalan dalam artikel ini dapat membantu pembaca memahami dan menggunakan kaedah analisis tingkah laku pengguna dengan lebih baik. 🎜

    Atas ialah kandungan terperinci Kaedah analisis tingkah laku pengguna dilaksanakan menggunakan Elasticsearch dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!