programing

기존 SQL 데이터베이스 위에 탄력 검색을 사용하는 방법

megabox 2023. 3. 5. 09:42
반응형

기존 SQL 데이터베이스 위에 탄력 검색을 사용하는 방법

javascript 또는 PHP를 사용하여 웹 사이트에서 Elastic Search를 구현하는 방법에 대한 좋은 문서를 많이 읽어왔습니다.

ES에 대한 매우 좋은 소개입니다.

여기도 여기도 문서도 완전합니다.

전체 CRUD.

PHP를 사용한 유연한 검색: 여기, 여기, 여기.

이러한 URL을 제공하는 이유는 기존 SQL DB가 있을 때 이러한 훌륭한 문서를 하나 또는 여러 개 사용하는 방법을 이해하기 위해서입니다.

요점을 놓치고 있습니다.Elastic Search가 MongoDB를 사용하여 자체 인덱스 및 DB를 만든다고 했는데 SQL을 사용하여 (기가틱) 데이터베이스를 어떻게 사용할 수 있는지 모르겠습니다.MySQL DB를 가지고 있는데 Elastic Search를 사용하여 연구를 가속화하고 사용자가 미리 만든 쿼리를 제안한다고 가정해 보겠습니다. 어떻게 하면 될까요?ES는 MySQL에서 어떻게 작동합니까?처음에 최대한 효율적으로 사용하기 위해 이 거대한 데이터 세트(8GB 이상)를 ES DB로 전송하려면 어떻게 해야 합니까?

대단히 고맙습니다

mysql과 함께 jdbc-river를 사용하고 있습니다.그것은 매우 빠르다.데이터를 지속적으로 폴링하거나 일회성(원샷 전략) Import를 사용하도록 설정할 수 있습니다.

예.

curl -xPUT http://es-server:9200/_river/my_river/_meta -d '
{
    "type" : "jdbc",
    "jdbc" : {
        "strategy" : "simple",
        "poll" : "5s",
        "scale" : 0,
        "autocommit" : false,
        "fetchsize" : 10,
        "max_rows" : 0,
        "max_retries" : 3,
        "max_retries_wait" : "10s",
        "driver" : "com.mysql.jdbc.Driver",
        "url" : "jdbc:mysql://mysql-server:3306/mydb",
        "user" : "root",
        "password" : "password*",
        "sql" : "select c.id, c.brandCode, c.companyCode from category c"
    },
    "index" : {
        "index" : "mainIndex",
        "type" : "category",
        "bulk_size" : 30,
        "max_bulk_requests" : 100,
        "index_settings" : null,
        "type_mapping" : null,
        "versioning" : false,
        "acknowledge" : false
    }
}'

jdbc-river가 제공하는 폴링에 대해 보다 퍼포먼스와 확장성이 뛰어난 솔루션이 필요한 경우 SQL Server에서 Elastic Search로 증분 동기화를 수행하는 방법을 설명하는 다음 프레젠테이션을 참조하십시오.

비디오에서 설명한 원칙은 다른 RDBMS -> NoSQL 복제 애플리케이션에도 적용됩니다.

언급URL : https://stackoverflow.com/questions/17856457/how-to-use-elastic-search-on-top-of-a-pre-existing-sql-database

반응형