목록 분류 전체보기 (301)
KEEP GOING
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/Oksm3/btskgqFY9WJ/9vUng9FGU1ZtJyK2vsuAJk/img.png)
예를 들어 다음과 같이 spark dataframe이 있다고 가정합니다. df = spark.createDataFrame([(1,), (1,), (4,), (4,), (4,), (5,), (6,), (8,), (3,)], ('col1',)) df.show() find duplicate values in spark dataframe 한 컬럼 안에서 중복인 값을 확인하고 싶을 때 df.groupBy('col1').count().where('count > 1').show() 만약 count 값은 확인하고 싶지 않다면 drop('count')를 추가합니다. df.groupBy('col1').count().where('count > 1').drop('count').show()
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/4CIXD/btsjjDe2FMR/iUrgvmzSkx3wQBy1SMpXMk/img.png)
목차 from pyspark.sql import SparkSession spark = SparkSession.builder.getOrCreate() columns = ['id', 'phone_number', 'name', 'sex'] df = spark.createDataFrame([['1', "010-3333-4234", 'Jisu', 'female'], ['2', '010-9999-3231', 'Karina', 'female'], ['3', '010-6653-5888', 'Winter', 'female'], ['4', '010-7732-0029', 'Eunwoo', 'male']], columns) df.show() 우선 실습을 진행하기 앞서 샘플 spark dataframe을 생성합니다. 1. fi..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/brfosd/btshCcJSvyt/Ondyqk113zqzL0Pwj6kweK/img.png)
목차 1. 정규 표현식 [0-9]: 숫자 [a-z]: 영어 소문자 [A-Z]: 영어 대문자 ^: not |: or ?:하나 혹은 아예 없음(1개 또는 0개) *:없거나 하나 이상 있는 경우(0개 또는 1개 이상) +:하나 이상 있는 경우(1개 이상) .: 어떤 문자나 기호나 숫자 대괄호 밖의^: 맨 앞 .$: 문자열 맨 뒤의 문자나 기호, 숫자 2. 정규표현식 연습해보기 좋은 사이트(regex101) https://regex101.com/ regex101: build, test, and debug regex Regular expression tester with syntax highlighting, explanation, cheat sheet for PHP/PCRE, Python, GO, JavaScri..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/oQYvt/btsex3QopXZ/sroNA0eNDT6rkVLxmaMgZ1/img.png)
목차 Spark Configuration(스파크 설정)spark application의 동작 방식을 제어하기 위해서는 다양한 설정이 필요합니다. 이러한 설정은 spark-default.conf 파일, spark-shell 또는 spark-submit 옵션, SparkConf을 통해 수정할 수 있습니다. 만약 여러 property를 동시에 적용한 경우, 적용 우선 순위는 SparkConf, spark-shell, spark-submit, spark-default.conf 순입니다. 1. SparkConf 인스턴스 사용from pyspark.sql import SparkSession from pyspark.conf import SparkConf conf = SparkConf().setMaster("local..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/y76Ux/btselQQ0zLK/0rB1Fl6c1VyJXMDiKtJhfk/img.png)
목차 ClassNotFoundException 오류 원인 SparkSession으로 spark 객체를 생성하고, spark.read.jdbc()로 tibero db에 연결하여 테이블을 spark df로 읽어오는 과정이었습니다. 이 과정에서 ClassNotFoundException: com.tmax.tibero.jdbc.tbdriver 라는 오류가 발생했습니다. from pyspark.sql import SparkSession spark = SparkSession.builder.appName('jdbc connect test')\ .getOrCreate() df = spark.read.format("jdbc")\ .option("driver", "com.tmax.tibero.jdbc.TbDriver")\ ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/dAKmWI/btsdaaDH8UX/8981ENKHdAA4x6kxFoKnbK/img.png)
목차 0. nlp(자연어처리) 인간의 언어를 컴퓨터가 이해할 수 있도록 처리하는 기술 1. nltk 토크나이징, 어간 추출, 품사 태깅 등 자연어 처리에 사용하는 파이썬 모듈 import nltk print(dir(nltk.corpus)) # 말뭉치 목록 확인 2. 말뭉치(corpus) 자연어처리를 위한 목적으로 정리해놓은 문서 집합 import nltk nltk.download('movie_reviews') # 말뭉치 중 'movie_reviews' 다운로드 from nltk.corpus import movie_reviews nltk.corpus 패키지는 다양한 연구용 말뭉치를 제공합니다. 말뭉치 자료를 사용하려면 nltk.download 명령으로 다운받으면 됩니다. 3. 토크나이징(tokenizing..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/djhF6t/btsa6cP18M4/wEw4QrwqrsoN5P0fTguDG0/img.png)
목차 oozie w/f에서 sqoop 액션 실행 시 아래와 같은 에러가 발생했습니다. [main] ERROR org.apache.sqoop.tool.ImportTool - Import failed: org.apache.hadoop.mapred.FileAlreadyExistException: Output directory hdfs://nameservice1/user/hive/warehouse/***db.****table already exists FileAlreadyExistException 오류 원인 FileAlreadyExistsException 오류는 sqoop import 사용 시 --target-dir 옵션으로 디렉터리를 지정했을 때, 지정된 디렉토리가 hdfs에 이미 존재하는 경우에 발생합니다...
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/c4hb8i/btsatVA8oT7/jefIDayDRHTSOVpyyhzwCk/img.webp)
목차 yarn이란 YARN은 Hadoop 클러스터의 자원을 효율적으로 관리하고 분배하는 시스템입니다. 클러스터 전체 리소스 사용률을 모니터링하고 자원을 요청하고 할당을 조절하면서 애플리케이션 성능을 최적화합니다. YARN은 리소스 매니저(ResourceManager)와 노드 매니저(NodeManager)로 구성되어 있습니다. yarn과 하둡과의 관계 하둡(Hadoop)은 대용량 데이터를 분산 처리할 수 있는 오픈 소스 프레임워크입니다. 이때 하둡 클러스터에서 자원을 효율적으로 관리하고 분배하기 위해 사용되는 것이 바로 YARN입니다. 즉, YARN은 하둡의 하위 컴포넌트 중 하나이며 분산 컴퓨팅 애플리케이션을 실행하기 위한 자원 관리 시스템입니다. yarn의 구성요소 1)리소스매니저(Resource Ma..