問題タブ [elasticsearch-hadoop]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - エントリをElasticSearchに挿入する最良の方法は何ですか?
ElasticSearch は初めてで、180 フィールドと 1200 万行のファイルがあります。ElasticSearch と Java プログラムでインデックスとタイプを作成しましたが、1.5 時間かかります。時間を短縮してElasticSearchにデータをロードする他の最良の方法はありますか? マップ削減プログラムを試してみましたが、失敗して重複したエントリが生成され、シーケンシャル プログラムよりも時間がかかる場合があります。
誰でも良い提案をすることができますか?
maven - mvnパッケージelasticsearch-sparkエラー
私は es-spark を使用して elasticsearch から読み取りたい Maven プロジェクトを持っていましたpom.xml
。
私の依存関係はelasticsearch-spark installに従っています。
JAR
依存関係の jar ファイルを含む実行可能なファイルをパッケージ化したいと考えています。
cmd を実行すると、パッケージが見つからなかったmvn package
ことを示していますが、これらのパッケージは私のmaven依存関係にあります。org.apache.spark
org.apache.spark.api.java
私の間違ったステップはどこですか?
elasticsearch - 失敗: SemanticException クラス 'org.elasticsearch.hadoop.hive.ESStorageHandler' が見つかりません
https://gist.github.com/costin/8025827の例に従っていますが、なぜこのエラーが発生するのかわかりません。どんな反応でも大歓迎です。
失敗: SemanticException クラス 'org.elasticsearch.hadoop.hive.ESStorageHandler' が見つかりません
hadoop - Elasticsearch ES-Hadoop コネクタを使用するには、Hadoop をインストールする必要がありますか?
クラスターがあり、それを使用して計算を実行しElasticsaerch
たいと考えています。ES-Hadoop コネクタには、で計算を実行できるライブラリが含まれています。最初に Hadoop をインストールする必要がありますか?それとも、機能させるためにドキュメントに記載されているように Spark クラスパスに入れるだけでよいですか?Apache Spark
Spark
Elasticsearch
elasticsearch-spark_2.10-2.2.0-rc1.jar
apache-storm - 嵐に複数のグループ化を適用する方法はありますか?
「フィールドのグループ化」と「ローカルまたはシャッフルのグループ化」をトポロジに適用して、各スパウトがデータをローカルボルトにのみ送信するだけでなく、ドキュメント内のフィールドを使用してどのローカルボルトに送信するかを決定したいと考えています。
したがって、それぞれ 1 つの Kafka-Spout と 2 つの Elastic-Search-Bolt を持つ 2 つのワーカー プロセスがある場合、ローカルまたはシャッフル グループ化により、次のようになります。
フィールドのグループ化により、次のことがわかります。
しかし、私は次のことをしたいです:
どこ:
KS = カフカスパウト
ES = エラスティックサーチ
ES-bolt で 1 つのシャードのすべてのドキュメントをグループ化できるように、これを行いたいと考えています。このようにして、ES-bolt によって送信されたバッチは、ES サーバーによってさらに分割されることはありません。これは、これらのドキュメントの宛先シャードがすべて同じになるためです (フィールド レベルのグループ化のためにドキュメントにフィールドdestination_shardを追加する予定であり、destination_shard が計算されます)。 Murmurm3.hash(ID)%numShards として)。
そして、プロセス間通信は必要ないため、「ローカルまたはシャッフルのグループ化」が必要です
助けてくれてありがとう !
hadoop - HDFS に保存されたドキュメントからデータを抽出して、Elasticsearch でインデックスを作成する
pdf、ms word ファイル、ppt、csvなどのさまざまなドキュメントを格納する HDFS アーカイブがあります。elasticsearch を使用してファイルまたはテキストの内容を検索するプラットフォームを構築したいと考えています。es-hadoopプラグインを使用して、HDFS から ES へのデータのインデックスを作成できることを知っています。HDFS に保存されているドキュメントからテキスト データを抽出し、同じインデックスを作成する最良の方法を知りたいです。
どんな助けでも大歓迎です。
hadoop - es-hadoop を使用して Elasticsearch に書き込む際の問題
es-hadoop で mapreduce プログラムを使用して Elasticsearch に書き込もうとすると、この例外が発生します。Elasticsearch クラスターに既に存在するindex=employee および type=basicに書き込もうとしています。
私のスタックトレース:-
スレッド "main" org.elasticsearch.hadoop.EsHadoopIllegalArgumentException での例外: リソース ['es.resource'] (index/query/location) が org.elasticsearch.hadoop.util.Assert.hasText(Assert.java:30) で指定されていませんorg.elasticsearch.hadoop.mr.EsOutputFormat.init(EsOutputFormat.java:257) で org.elasticsearch.hadoop.mr.EsOutputFormat.checkOutputSpecs(EsOutputFormat.java:233) で org.apache.hadoop.mapreduce.JobSubmitter.checkSpecs (JobSubmitter.java:266) org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:139) org.apache.hadoop.mapreduce.Job$10.run(Job.java:1290) org.apache org.apache.ハドゥープ。security.UserGroupInformation.doAs(UserGroupInformation.java:1657) at org.apache.hadoop.mapreduce.Job.submit(Job.java:1287) at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:1308) com.mstack.mapreduce.DIGDriver.main(DIGDriver.java:22) で sun.reflect.NativeMethodAccessorImpl.invoke0(ネイティブ メソッド) で sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) で sun.reflect.DelegatingMethodAccessorImpl .invoke(DelegatingMethodAccessorImpl.java:43) で java.lang.reflect.Method.invoke(Method.java:497) で org.apache.hadoop.util.RunJar.run(RunJar.java:221) で org.apache. hadoop.util.RunJar.main(RunJar.java:136)com.mstack.mapreduce.DIGDriver.main(DIGDriver.java:22) の waitForCompletion(Job.java:1308) 62) org.apache.hadoop.util.RunJar.run(RunJar.java) で java.lang.reflect.Method.invoke(Method.java:497) で sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) で:221) org.apache.hadoop.util.RunJar.main(RunJar.java:136) でcom.mstack.mapreduce.DIGDriver.main(DIGDriver.java:22) の waitForCompletion(Job.java:1308) 62) org.apache.hadoop.util.RunJar.run(RunJar.java) で java.lang.reflect.Method.invoke(Method.java:497) で sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) で:221) org.apache.hadoop.util.RunJar.main(RunJar.java:136) で43) org.apache.hadoop.util.RunJar.run(RunJar.java:221) で java.lang.reflect.Method.invoke(Method.java:497) org.apache.hadoop.util.RunJar.main で(RunJar.java:136)43) org.apache.hadoop.util.RunJar.run(RunJar.java:221) で java.lang.reflect.Method.invoke(Method.java:497) org.apache.hadoop.util.RunJar.main で(RunJar.java:136)
ドライバークラス:-
elasticsearch - Elasticsearch-hadoop ライブラリを使用して、storm から Elasticsearch へのタプルのインデックス作成が機能しない
ドキュメントを Storm から Elasticsearch にインデックス付けしたいのですが、Elasticsearch にインデックス付けされるドキュメントを取得できませんでした。
私のトポロジでは、{ "tweetId": 1, "text": "hello" } のような json を、Storm タプルを Elasticsearch (docはこちら: https://www.elastic.co/guide/en/elasticsearch/hadoop/current/storm.html )。これらは、私の EsBolt の構成です。
最初の 2 つの構成にはデフォルトでこれらの値がありますが、明示的に設定することにしました。私もそれらなしで試してみましたが、同じ結果が得られました。
そして、これがトポロジを構築する方法です。
トポロジをローカルで実行する前に、Elasticsearch で「twitter」インデックスを作成し、このインデックスのマッピング「tweet」を作成します。新しく作成したタイプのマッピングを取得すると、次のようになります (curl -XGET ' http://localhost:9200/twitter/_mapping/tweet '):
トポロジをローカルで実行すると、タプルを処理するときにコンソールに次のように表示されます。
したがって、タプルは処理されているようです。ただし、Elasticsearch でインデックスが作成されたドキュメントはありません。
EsBolt の構成を設定するときに、何か間違ったことをしていると思います。おそらく、構成または何かが欠落しています。