본문 바로가기

분류 전체보기

[SPARK]SQLContext / 데이터 프레임에 SQL 날리기 ! SQLContextSparkContext는 Spark SQL을 사용할 때, 시작 지점이라고 볼 수 있다. Spark SQL을 사용할 땐 SparkContext 클래스이거나, 이와 관련된 자식 클래스의 하나일 것이다. 음.. 헷갈린다...암튼... json / csv / parquet 등등의 파일들로 변환된 로그성 데이터들에 SQL문을 날려서 분석하고 싶을 때면 아래의 방식을 사용한다.// 파케이 파일을 읽어온다! 그런데 SQL Context로 읽어온 데이터들은 다 데이터 프레임이다 ! val parquetFile = sqlContext.read.parquet("people.parquet") //파케이 파일을 SQL statement를 날릴 수 있게, 테이블로 등록해준다! parquetFile.regist..
[스파크]DataFrame DataFrame데이터 프레임이란 관계형 데이터베이스의 테이블과 R과 파이썬의 데이터 프레임과 같은 개념이다. (데이터 프레임은 2차원의 배열 구조로 구성되어있다.) DataFrame 특징Spark SQL 옵티마이저로 데이터를 추출할 수 있고, optimization(최적화)를 할 수 있다.자바, 스칼라, R API 함수로 조작할 수 있다.스파크에서 DataFrame 만들기스파크에서는 구조화된 데이터 파일, HIVE의 테이블, 외부 데이터베이스, RDD의 배열로 데이터프레임을 만들 수 있다. 그리고 Spark SQL을 사용할 때, SQL으로 반환되는 값의 유형은 데이터프레임이다.아래는 공식홈페이지에서 가져온 데이터프레임 만들기 스칼라 예시이다.val sc: SparkContext // An existin..
[증강현실]매직리프 VR 기술 나한테 페이스북은 IT 관련 정보를 보는 큐레이션 뉴스 같은 존재가 되었다.IT 관련 페이지들이 팔로우되어 있거나, IT 관련 직종인 지인들이랑 친구가 맺어져있어서 좋아요~~~로 보여지는 게시물들을 보면 흥미로운 것들이 많다! 그런데 오늘 본... 흥미로운 기사가 있었다. 가상 객체를 현실 공간에서 보이도록 만드는 기능을 지닌 매직리프의 기술에 대한 내용이였다. 센서리 웨어(Sensory wear) - 매직리프의 AR 글래스 특허기술 개념도매릭리프 기술에 대해서 간단히 요약하자면 아래와 같다. 매직리프의 기기에 작은 프로젝터가 달려 있는데 투명한 렌즈에 빛을 비춰서 망막에 닿는 빛의 방향을 바꾼다. 그 빛은 망막에서 현실세계로부터 받는 빛과 매우 잘 섞여서 가상의 사물들이 진짜 사물들과 거의 구별이 가지..
[Mac]요세미티에 스파크 설치하기 1. JAVA 설치하기오라클 JDK 다운로드 페이지에서 Oracle Java SE Development Kit 7 혹은 8을 설치한다. -> JAVA jdk 8 설치 링크 << 스크린샷은 JDK7이지만, 나는 JDK8을 설치했다. >>참고 : MAC에 JDK 설치하기2. JAVA HOME 설정하기터미널에 JAVA HOME을 설정하는 아래의 명령어를 입력한다.export JAVA_HOME=$(/usr/libexec/java_home)그리고 터미널에 아래 명령문을 입력하여 정상적으로 설정되었는지 확인한다.echo $JAVA_HOME요렇게! 3. Homebrew 설치하기터미널에 아래의 명령어를 쳐서 Homebrew를 설치한다. ruby -e "$(curl -fsSL https://raw.githubuserco..
[MySQL][Out Of Range] sql_mode Strict Type과 아닌 것의 차이 참고 - [Mysql]Out-Of-Range and Overflow Handling어느날 이런 이슈가 있었다.MySql에 int type으로 설정한 컬럼이 있었다.그런데 테스트용 DB에서는 int에서 허용하는 값의 범위를 초과할 경우, Warn 경고를 주면서 알아서 값을 줄여줬다. (Mysql에서 Int가 허용하는 값은 -2147483648 ~ 2147483647 사이이다. 즉 Int로 타입이 선언된 컬럼에 2147483648 이상의 값을 저장하면, 2147483647의 값이 저장된다.)그런데 같은 테이블을 백업해둔 다른 DB에서는 int에서 허용하는 값 이상을 저장하면 Out-of-Range Mysql error가 나면서, 알아서 값을 줄여주지 않았다.두개의 DB가 데이터 오버플로우에 대한 처리 방식이..
[비주얼씽킹]비주얼 씽킹 기본 요소 따라그리는중...
[ROR]Asset Pipeline / 자바스크립트, CSS 압축 rails 설치 시, node.js를 설치해야하는 이유에 대해서 찾다보니 assets pipeline 키워드가 등장했다. 레일즈를 production 환경으로 서버를 띄우면, javascript 파일과 css가 압축된 형태로 배포된다. 그래서 그러려니.. 했었는데 그게 바로 assets pipeline에 속하는 기능이였다. 이번 포스팅은 rails guide Asset Pipeline를 번역하는 것을 기반으로 작성해나가던 중... rorlab에서 작성한 번역본을 발견하여 핑거프린트의 주의점까지만 작성하고, 블로그 작성을 끝내기로 결정!하였다. asset pipeline은 JavaScript와 CSS 파일들을 압축하는 기능을 갖고 있다. 그리고 assets 안에 다른 언어들과 커피스크립트, Sass, ER..
[ROR]루비온레일즈를 설치할 때, 왜 node.js를 설치해야할까? 이런 일이 있었다. 어느 분이 서버세팅을 하는데, 커피스크립트 쪽에서 에러가 났었다. 그러면서 node.js를 설치하지 않아서 발생한 이슈라는 것을 파악하고, node.js를 설치하면서 문제를 해결했었다.왜... 루비온레일즈를 설치할 때 node.js가 필요한걸까? 궁금했다.구글링을 해봤다. (참조 링크)루비온레일즈 프레임워크를 쓰려면, JavaScript Runtime Environment가 필요하다. 레일즈 기능인 Asset Pipeline을 관리하는 데에 node.js가 사용되기 때문이다.Asset Pipeline이란.. 정확히 뭘까..?우선... 간단하게 보자면... 그 production 환경에서는 javascript랑 css가 압축된 형태로 import되는데, 그 기능에도 Asset Pipel..