Wiele do wielu relacji w elasticsearch

Wiem, że w elasticsearch możemy miećrelacje dziecko / rodzic między dokumentami.

Następnie, podczas indeksowania, mogę przekazać identyfikator nadrzędny, aby dokumenty podrzędne i nadrzędne były połączone:

$ curl -XPUT localhost:9200/blogs/blog_tag/1122?parent=1111 -d '{    "tag" : "something"}'

Czy w modelu elasticsearch istnieje modelowanie wielu do wielu relacji?

Dane znajdują się w bazie danych MySQL z następującym schematem:

account
========
id
name
some_property

group
========
id
name
description

account_group
=============
account_id
group_id
primary_group //This is 1 or 0 depending on whether the group is the primary group for that account.

To jest obecnie moje mapowanie dlaaccount (proszę wybaczyć notację tablicową, używamElastica w PHP, aby porozmawiać z moim serwerem elasticsearch):

**Mapping for account**

'name' => array(
    'type' => 'string'),

'some_property' => array(
    'type' => 'string'),

'groups' => array(
   'properties' => array(
    'id'      => array('type' => 'integer'),
    'primary' => array('type' => 'boolean')
    )
),

**Mapping for group**

'name' => array(
        'type' => 'string'),

'description'=> array(
        'type' => 'string')

Problem z tym podejściem polega na tym, że jeśli grupa zostanie usunięta z indeksu, będę musiał przejść przez każde konto i usunąć identyfikator grupy z każdego konta. To wydaje mi się trochę nieefektywne. Zakładam również, że nie byłoby to problemem w przypadku korzystania z relacji dziecko / rodzic elasticsearch.

Czy w modelu elasticsearch istnieje modelowanie relacji wiele do wielu?

questionAnswers(2)

yourAnswerToTheQuestion