私は、JavaScriptまたはPHPを使用してWebサイトにElastic Searchを実装する方法に関する多くの優れたドキュメントを読んでいます。
非常に良い ESの紹介 。
全体 [〜#〜] crud [〜#〜] 。
PHPによる弾性検索: here 、 here 、および here 。
そのため、これらのURLを提供する理由は、既存のSQL DBを使用する際にこれらの優れたドキュメントの1つまたは複数を使用する方法を理解するためです。
私はどこかにポイントを失っています:ElasticsearchがMongoDBで独自のインデックスとDBを作成すると言ったように、SQLを使用して(巨大な)データベースを使用する方法がわかりませんか? MySQL DBがあり、Elasticsearchを使用して研究を高速化し、ユーザーが事前に作成したクエリを提案したい場合、どうすればよいですか? ESがMySQL上でどのように機能しますか?最初に完全に効率的にするために、この巨大なデータセット(8GB以上)をES DBに転送する方法は?
どうもありがとう
jdbc-river w/mysqlを使用しています。とても速いです。データを継続的にポーリングするように構成したり、1回限りの(1回限りの)インポートを使用したりできます。
例えば.
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レプリケーションアプリケーションにも適用されます。