# Spark-elasticsearch에서 SQL 문을 사용하면 응답속도가 매우느립니다

**URL:** <https://discuss.elastic.co/t/spark-elasticsearch-sql/222317>\
**Category:** 한국어 질문 및 토론\
**Created:** [March 5, 2020, 2:33pm UTC](https://discuss.elastic.co/t/spark-elasticsearch-sql/222317 "2020-03-05T14:33:39Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![hyungsun\_lim](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/hyungsun_lim/32/50790_2.png) [@hyungsun\_lim](https://discuss.elastic.co/u/hyungsun_lim)\
**Post date:** [March 5, 2020, 2:33pm UTC](https://discuss.elastic.co/t/spark-elasticsearch-sql/222317/1 "2020-03-05T14:33:39Z")

</div>

안녕하세요? 현재 es에서 spark로 데이터를 읽어와 SQL 처리를 하는 기능을 적용중인데요.

아래와 같은 코드 사용시 문제가 있습니다.

```
# Initializing PySpark
from pyspark import SparkContext, SparkConf, SQLContext

# Spark Config
conf = SparkConf().setAppName("es_app")
sc = SparkContext(conf=conf)

# sqlContext
sqlContext = SQLContext(sc)

# ES to dataframe
df = sqlContext.read.format("org.elasticsearch.spark.sql").option("es.nodes","xxx.xxx.xxx.xxx:9200").option("es.nodes.discovery", "true").load("sample")

# make view 
df.registerTempTable("sample")

# Too long
sqlContext.sql("SELECT count(*) from sample").show()

```

sample에 500만개 정도 document를 가지고 있는데, 저 쿼리를 날리면 결과가 나오기 까지 3~5분 정도 소요가 됩니다.

로그를 보니 모든 document를 가져온 다음 처리하는 듯 한데, 이 문제를 해결하려면 어떻게 해야하나요? 샤드 개수를 늘려보아도 한계가 있네요 ㅠㅠ

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [April 2, 2020, 2:33pm UTC](https://discuss.elastic.co/t/spark-elasticsearch-sql/222317/2 "2020-04-02T14:33:45Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
