본문 바로가기
반응형

spark26

[We-Co] Spark RDD filter 및 정렬 연산 안녕하세요. 위기의 코딩맨입니다. 오늘은 RDD의 filter 및 정렬 연산에 대해 알아보도록 하겠습니다. [ filter() ] 용어 그대로 내가 원하는 요소를 뽑아내는 함수입니다 scala> val rdd = sc.parallelize(1 to 5) scala> val result = rdd.filter(_>2) scala> print(result.collect.mkString(", ")) 결과를 확인해보면 3, 4, 5 가 출력되는 것을 확인할 수 있습니다. 1~ 5까지 숫자를 RDD에 넣어주고 2보다 큰 수를 result에 넣어주도록 filter()의 조건을 설정해주면 결과 값이 출력 됩니다. [ sortByKey() ] sortByKey() 함수는 키 값을 기준으로 RDD의 요소들을 정렬하는 연.. 2021. 9. 1.
[We-Co] Spark RDD PIPE 및 파티션 연산 안녕하세요. 위기의 코딩맨입니다. 오늘은 Spark RDD PIP 및 파티션 연산에 대해 알아보도록 하겠습니다. [ pipe() ] 데이터를 처리할 때 외부 프로세스를 사용할 수 있습니다. val rdd = sc.parallelize(List("1,2,3","4,5,6","7,8,9")) val result = rdd.pipe("cut -f 1,3 -d,") print(result.collect.mkString(", ")) 결과는 1,3 4,6 7,9 의 결과를 얻을 수 있습니다. 해당 건은 3개 숫자의 문자열을 리눅스의 cut 유틸리티를 이용해 분리하고 1, 3번째 숫자를 가져오는 예제입니다. [ coalesce(), repartition() ] RDD를 생성하고, filter() 연산 등, 많은 트랜.. 2021. 8. 27.
[We-Co] Spark RDD 집계 연산 안녕하세요. 위기의코딩맨입니다. 오늘은 Spark RDD 집계와 관련된 연산들을 알아보도록 하겠습니다. [ reduceByKey() ] RDD의 구성이 키와 값으로 구성되어 있어야 사용가능합니다. 같은 키의 값들을 하나의 값으로 더해서 새로운 RDD를 생성하는 메서드입니다. val rdd = sc.parallelize(List("a","b","b")).map((_,1)) val result = rdd.reduceByKey(_ +_) print(result.collect.mkString(", ")) 결과 값은 (a,1), (b,2) 이유는 rdd의 인자 중 키 b가 2개 존재하며, 1의 인자를 갖고 있어 1+1 하여 b는 2의 출력 값을 얻게됩니다. [ foldBykey() ] RDD의 구성이 키와 값으로.. 2021. 8. 26.
[We-Co] groupBy(), groupByKey(), cogroup() - Spark 안녕하세요. 위기의코딩맨 입니다. 오늘은 Spark의 groupBy와 groupByKey에 대해 알아보도록 하겠습니다. [ groupBy ] RDD의 값들을 설정한 기준에 따라서 여러개의 그룹으로 나누고 해당하는 그룹으로 구성된 새로운 RDD를 생성하는 것이 groupBy()의 역할입니다. 키와 요소들의 시퀀스로 구성되어 있으며, 밑의 예제로 한번 알아보도록 하겠습니다. scala> val rdd = sc.parallelize(1 to 20) rdd: org.apache.spark.rdd.RDD[Int] = ParallelCollectionRDD[0] at parallelize at :24 scala> val result = rdd.groupBy{ case i: Int if(i%2==0) => "even.. 2021. 8. 24.
[We-Co] SparkContext 안녕하세요. 위기의 코딩맨입니다. 오늘은 SparkConf()에 대해서 알아보도록 하겠습니다. [ SparkContext ] SparkContext는 클러스터와 스파크 애플리케이션과의 연결을 관리하는 객체로 모든 스파크 애플리케이션은 반드시 SparkContext를 생성해야 합니다. 스파크에서 사용하는 주요 객체와 RDD를 SparkContext를 이용하여 생성할 수 있습니다. [Python SparkContext 생성] from pyspark import SparkConf, SparkContext conf = SparkConf() sc = SparkContext(master="local", appName="RDDTest", conf=conf) SparkContext는 생성할 때 스파크 동작에 필요한 설.. 2021. 8. 11.
[We-Co] Word Count - Spark 예제 안녕하세요. 위기의 코딩맨입니다. 오늘은 Spark를 이요하여 문자를 count 하는 예제 한번 알아보겠습니다. 텍스트 파일 속에 있는 문자열 들을 Count 하기 위해 텍스트 파일을 하나 작성합니다. [ 예제 ] Spark를 실행하고.. 해당 텍스트 파일을 inputfile로 지정해 주도록 합니다. scala> val inputFile = sc.textFile("생성된텍스트파일경로/sparkTest.txt") Split의 기준을 " "로 기준을 잡고 개수를 count 해주도록 기준을 설정해 주도록 합니다. scala> val counts = inputFile.flatMap(line => line.split(" ")).map(word => (word,1)).reduceByKey(_ + _); scala>.. 2021. 8. 6.
[We-Co] Spark RDD 안녕하세요. 위기의 코딩맨 입니다! 오늘은 Spark의 RDD에 대해 알아보도록 하겠습니다. Spark는 정말 어려운것 같아요..ㅠ 그래도 힘내서 공부해 봅시다! 먼저 RDD보다 Spark에 대해 먼저 알아보고 싶으시면! Spark [We-Co] Apache Spark란?? 안녕하세요. 위기의코딩맨 입니다. 요즘 데이터의 중요성이 많이 오르고 있습니다! 빅데이터는 이제 많은 사업에도 사용되고 있습니다. 그래서 오늘은 이러한 빅데이터를 처리하기위한 Apache Spa we-co.tistory.com [ RDD ] RDD를 풀어서 먼저 해석하면 Resilient - 변하지 않는, 회복력 있는 Distributed - 분산, 분배 Dataset - 데이터, 정보 단순하게 분산되어 존재하고 있는 데이터 요소들의.. 2021. 7. 23.
[We-Co] Apache Spark 안녕하세요. 위기의코딩맨 입니다. 요즘 데이터의 중요성이 많이 오르고 있습니다! 빅데이터는 이제 많은 사업에도 사용되고 있습니다. 그래서 오늘은 이러한 빅데이터를 처리하기위한 Apache Spark에 대해 알아보도록 하겠습니다. 대학생때 Apache Hadoop 에 관해 조금 공부한 적이 있지만, Apache Spark는 처음 접하는 부분이라 천천히 알아가보도록 하겠습니다. [ Apache Spark ] 먼저, 간단하게 말하면 빠른 속도로 작업을 수행하며, 범용적으로 설계가 가능한 클러스터용 연산 플랫폼입니다. 범용적이란 무엇인가? 여러 분야, 용도로 널리 쓰이는 것이라는 의미를 갖고있습니다. [ 속도 측면 ] ★ 맵리듀스 모델을 대화형 명령어, 쿼리, 스트리밍 처리등 가능하도록 확장 ★ 연산 작업을 메.. 2021. 7. 23.
반응형