라이브러리

[PHP] SolrClient::commit - 인덱스에 대한 모든 추가/삭제를 마무리합니다.




SolrClient::commit은 Apache Solr의 데이터를 저장하는 데 사용되는 메서드입니다. SolrClient는 PHP로 작성된 Apache Solr 클라이언트 라이브러리의 일부입니다. 이 메서드는 Solr 인덱스에 데이터를 저장하고, 인덱스에 변경된 데이터를 반영하는 데 사용됩니다.

commit 메서드의 사용법


SolrClient::commit 메서드는 두 가지 형태로 사용할 수 있습니다.

# 1. commit 메서드 (기본 사용법)


#hostingforum.kr
php

use SolariumClient;

use SolariumCoreQueryUpdateQuery;



$client = new Client($config);

$query = $client->createUpdateQuery();

$query->addDocument($document);

$client->commit();



# 2. commit 메서드 (옵션 사용법)


#hostingforum.kr
php

use SolariumClient;

use SolariumCoreQueryUpdateQuery;



$client = new Client($config);

$query = $client->createUpdateQuery();

$query->addDocument($document);

$client->commit(array('waitFlush' => true, 'waitSearcher' => true));



commit 메서드의 옵션


commit 메서드에는 다음과 같은 옵션을 사용할 수 있습니다.

- `waitFlush`: 데이터를 저장하기 전에 flush 옵션을 활성화합니다. 기본값은 false입니다.
- `waitSearcher`: 데이터를 저장하기 전에 searcher 옵션을 활성화합니다. 기본값은 false입니다.
- `maxSegments`: 인덱스를 분할할 때 사용되는 최대 세그먼트 수입니다. 기본값은 1입니다.

예제


다음 예제는 SolrClient::commit 메서드를 사용하여 데이터를 저장하는 방법을 보여줍니다.

#hostingforum.kr
php

use SolariumClient;

use SolariumCoreQueryUpdateQuery;

use SolariumCoreQueryUpdateDocument;



$config = array(

    'endpoint' => array(

        'url' => 'http://localhost:8983/solr',

        'key' => 'collection1'

    )

);



$client = new Client($config);



// 데이터를 저장할 문서를 생성합니다.

$document = new Document();

$document->addField('id', '1');

$document->addField('name', 'John Doe');

$document->addField('age', 30);



// 데이터를 저장합니다.

$query = $client->createUpdateQuery();

$query->addDocument($document);



// 데이터를 저장하고, 인덱스에 변경된 데이터를 반영합니다.

$client->commit(array('waitFlush' => true, 'waitSearcher' => true));



// 데이터를 조회합니다.

$query = $client->createSelectQuery();

$query->addFilterQuery('id', '1');

$result = $client->execute($query);



// 데이터를 출력합니다.

foreach ($result as $document) {

    echo $document->getField('name') . "
";

}



이 예제는 SolrClient::commit 메서드를 사용하여 데이터를 저장하고, 인덱스에 변경된 데이터를 반영하는 방법을 보여줍니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 8,985건 / 171 페이지

검색

게시물 검색