1

mysqlテーブルからelasticsearchインデックスに1600万ドキュメント(47GB)のインデックスを作成しようとしています。これを行うために、 jparanteのelasticsearchjdbcリバーを使用しています。しかし、川を作成して約15分間待った後、川が流れている兆候やドキュメントのインデックスが作成されることなく、ヒープメモリ全体が消費されます。インデックスを作成するレコードが約1,000〜1200万あるとき、川は元気に流れていました。私は川を3〜4回走らせてみましたが、無駄でした。

Heap Memory pre allocated to the ES process = 10g

Elasticsearch.yml

 cluster.name: test_cluster

 index.cache.field.type: soft
 index.cache.field.max_size: 50000
 index.cache.field.expire: 2h

 cloud.aws.access_key: BBNYJC25Dij8JO7YM23I(fake)
 cloud.aws.secret_key: GqE6y009ZnkO/+D1KKzd6M5Mrl9/tIN2zc/acEzY(fake)
 cloud.aws.region: us-west-1

 discovery.type: ec2
 discovery.ec2.groups: sg-s3s3c2fc(fake)
 discovery.ec2.any_group: false
 discovery.zen.ping.timeout: 3m

 gateway.recover_after_nodes: 1
 gateway.recover_after_time: 1m

 bootstrap.mlockall: true

 network.host: 10.111.222.33(fake)

river.sh

curl -XPUT 'http://--address--:9200/_river/myriver/_meta' -d '{
    "type" : "jdbc",
    "jdbc" : {
        "driver" : "com.mysql.jdbc.Driver",
        "url" : "jdbc:mysql://--address--:3306/mydatabase",
        "user" : "USER",
        "password" : "PASSWORD",
        "sql" : "select * from mytable order by creation_time desc",
        "poll" : "5d",
        "versioning" : false
    },
    "index" : {
        "index" : "myindex",
        "type" : "mytype",
        "bulk_size" : 500,
        "bulk_timeout" : "240s"
    }
}'

システムプロパティ:

16gb RAM
200gb disk space
4

1 に答える 1

0

使用しているelasticsearch-river-jdbcのバージョンによっては(で調べるls -lrt plugins/river-jdbc/)、このバグは閉じられる可能性があります(https://github.com/jprante/elasticsearch-river-jdbc/issues/45

それ以外の場合は、Githubにバグレポートを提出してください。

于 2013-02-28T15:20:44.587 に答える