본문 바로가기

백엔드287

[pyspark] union can only be performed on tables with the same number of columns 기본 Spark 동작 union은 표준 SQL 동작이므로 위치별로 일치한다. 두 DataFrames의 스키마에는 동일한 순서로 동일한 필드가 있는 동일한 필드가 포함되어야 하는데 그러지 않은 경우에 생기는 에러이다. 컬럼의 개수가 다르거나 이름이 다른지 확인해본다. 2021. 9. 16.
[pyspark] Cannot Call methods on a stopped SparkContext zeppelin 에서 pyspark를 실행시켰는데 다음 이미지처럼 sparkContext was shut dow 으로 sparkContext가 종료되었다고 나왔다. 해결방법으로는 인터프리터를 재시작하면된다. 제플린 우측 상단에 유저이름 클릭 Interpreter 클릭 Interpreter 중 spark 나 spark2를 찾아 restart 버튼을 누르면된다. restart 를 누르면 스파크 인터프리터가 재시작되며 zeppelin을 다시 실행시키면 정상적으로 결과가 나온다. 2021. 9. 16.
[spring] querydsl 동적쿼리 동적쿼리가 필요한 상황에서 querydsl을 사용하면 쉽게 해결 가능하다. BooleanBuilder BooleanBuilder를 이용해서 조건들을 이어붙여 where 문에 넣어주는 방식이다 and , or 사용 private List searchMember1(String usernameCond, Integer ageCond) { BooleanBuilder builder = new BooleanBuilder(); if (usernameCond != null) { builder.and(member.username.eq(usernameCond)); } if (ageCond != null) { builder.and(member.age.eq(ageCond)); } return queryFactory .selec.. 2021. 9. 10.
[spring] Page 1 of 1 containing UNKNOWN instances spring 에서 pageable 로 데이터를 페이지 처리 후 다음 값을 확인해보면 0 이 아닌 경우이다. pageable.getPageNumber() 페이지 넘버는 항상 0번으로 시작해야한다. (page number 0 all the time) 2021. 9. 6.
PageRequest - PageableDefault 설정 변경 PageRequest 생성자를 이용한 pageable 사용법이다. 생성자 설명 PageRequest(int page, int size) 페이지 번호(0부터 시작), 페이지당 데이터의 수 PageRequest(int page, int size, Sort.Direction direction, String … props) 페이지 번호, 페이지당 데이터의 수, 정렬 방향, 속성(칼럼)들 PageRequest(int page, int size, Sort sort) 페이지 번호, 페이지당 데이터의 수, 정렬 방향 Pageable paging = PageRequest.of(0, 10, Sort.Direction.ASC, "id"); PageRequest pageRequest = PageRequest.of(curPag.. 2021. 9. 6.
Querydsl like, contains 차이 Querydsl의 like로 코드를 작성하고 확인해보니 컬럼의 풀텍스트가 일치하는 것만 출력이 된다. 앞뒤로 %를 붙이니 부분 텍스트만 입력해도 일치하는 것으로 리스트가 출력된다. contains는 어떨까 싶어서 확인해보니 %를 넣지 않아도 like에다가 %를 앞뒤로 붙인 것과 같은 결과가 출력된다. query = query.where(UserEntity.name.like(userName)); //지정된 str(userName)과 같으면 return query = query.where(UserEntity.name.contains(userName)); //지정된 str(userName)이 포함되는 경우 true를 return 2021. 9. 6.