사실 하고 싶은 건 단순히 1000 여 건 될까말까한 데이터를 저장하고 싶은데,
완전 오버스펙이지만 공부한다고 생각하고 Spark 를 해보려고 한다.
AWS 에 올리려다가 일단 로컬에서 한 번 돌려보자는 생각이 들어서, 로컬에 다운 받고 해보았다.
다운이야 공식 사이트 https://spark.apache.org 여기서 다운 받았고,
참고는 역시 조대협씨 블로그를 참고 했다.
Spark에서 지원하는 언어를 고르려고 하는데 참 고민이 많이 된다.
Scala / Java / Python / R 중에서 고르면 되는데,
R은 아예 할 줄 모르기도 하거니와 새로 공부해서 하기에는 Spark 만으로도 새로 익히기 벅찬데
R을 익히느라 스트레스 받고 싶지 않았다.
Java는 그냥 너무 답답하고(...) 지겹고 싫어서 탈락.
나머지 Scala 와 Python 중에서 고르려고 하니,
Python이 오래 전 부터 너무 배우고 싶었고 써본지도 오래되어서 해보고 싶었다.
Scala는 실무에서 한 번 써보니 내가 잘 쓰는 건 아닌데(...) 물려서 그냥 하기 싫고.
그런데 조사해보니 python 이 scala 보다 성능이 너무 떨어진다고 해서 고민이 되었다.
아래는 간단히 조사한 내용이다.
링크 타고타고타고 가다보니 내용은 참 많은데 다 읽기는 귀찮아서(...) 눈에 띄는 것만...
scala
- 조대협 씨 블로그에서 나온 링크를 따라가보니 python 에 비해 scala가 속도면에서 압도적으로 좋은 성능을 보였다.
- 아래 링크의 글을 보니 spark의 python API 들은 jvm에서 돌리려고 한 번 더 Scala로 감싸져 있다고 하네...
그리고 그 과정에서 버그도 있고, 이슈도 있는데다가 이 과정 자체가 느려져서 성능에 bottleneck 이 된다고 한다.
거기다 spark 최신 feature 들은 scala에 더 빨리 반영되고 python은...
https://www.linkedin.com/pulse/java-vs-scala-python-big-data-apache-spark-project-jeetendra-gangele
- 함수형을 쓸거면 python 보다는 scala가 더 적합하다고도 하고.
조대협씨 블로그
조대협씨가 참고한 글
http://emptypipes.org/2015/01/17/python-vs-scala-vs-spark/
python
- 아래 링크를 보니 python은 좋은 CLI가 있다고 하네. Scala 도 꽤 긍정적이고.
게다가 java 는 배포한 후에나 결과를 확인할 수 있고, 디버깅도 불편하다고 하는 후기가 있다.
http://hoondongkim.blogspot.kr/2014/11/spark-2-python-vs-scala-vs-java-spark.html
- 아래 링크를 보니 scala의 장점도 많지만, 6번 visualization 툴이나 분석 툴을 쓰고 싶을 경우에는
scala를 쓰는게 python 에 비하면 nightmare...라고 한다.
- 아까 처음 링크의 끝부분에 보면, python 의 장점이 하나(...) 있다고.
예전 ML 알고리즘은 MLlib 에 없어서 MLlib 를 쓰지 않고 다른 Pandas 나 Scikit-learn 같은 걸 쓰면 python이 낫다고 한다.
그래도 최근 ML 관련 알고리즘 들은 python 보다 scala 로 먼저 구현될거라서(...) 최신 ML 관련된 걸 하려면 Scala가 낫다고 하네.
결론은
내가 하고 싶은 건 성능 상 이슈가 클 정도로 그렇게 많은 데이터를 다루지는 않고,
그냥 내가 하고 싶은 언어가 python 이니까 python 으로 하자(...)
Data Visualization도 하고 싶고.
하지만 실서비스에서 한다면 scala나 java로 해야 할 것 같다.
편하게 인터프리터 쓰려면 scala를 하겠지만 scala 익숙한 사람들이 없으면 java로 하게 되겠지.
'Develop Log' 카테고리의 다른 글
처음 완성한 Toy Project - 푸코의 진자 (0) | 2021.03.26 |
---|---|
Jest 와 Enzyme 으로 unit test code 짜봤다. (0) | 2017.04.23 |
c++ 로 학교 때 과제 다시 하기 (0) | 2016.10.07 |
아 책이 너무 어렵다아 (0) | 2016.10.06 |
간만에 기초 공부 (0) | 2016.10.02 |