GB Technique: 암 트라이앵글 조르기 철저 분석
2021년 6월 21일 월요일
[번역]GB Technique: 암 트라이앵글 조르기 철저 분석
2021년 6월 14일 월요일
[번역]GB 테크닉: Joe Scarola 사범과 함께하는 서브미션 사냥
GB 테크닉: Joe Scarola 사범과 함께하는 서브미션 사냥
이번 주 GB 테크닉에선 우리의 가장 인기있는 GB 사범 중 한 분인 - 플로리다의 GB 주피터의 Joe Scarola 사범에게서 다양한 서브미션 공격을 살펴보겠다
2021년 6월 3일 목요일
Apache Zeppelin Dynamic Form + JDBC 연동
Apache Zeppelin 에는 Dynamic Form 이란 것이 있다..
paragraph에 사용자가 원하는 매개변수를 입력받을 수 있게 하는 양식을 제공하는 기능이다.
일단 메뉴얼 투척~~!
https://zeppelin.apache.org/docs/0.9.0/usage/dynamic_form/intro.html
메뉴얼 보면.. 매개 변수로 쓸 것을 ${변수명} 으로 사용하면 된다....
라고.. 아주~~~ 간단히 나와있다..
물론.. 이렇게 쓰면 되긴 된다..
그런데 말이지... 이렇게 쓰면.. 큰 문제가 생긴다..(나만 그런걸지도..)
일단 내가 하고 싶은거
공통 입력으로 시작일, 종료일, 매장 선택하여.. 매장별 매출등을 조회하고 싶음
1. 삽질 시작
아~~ 매뉴얼 대로 쿼리 안에다가 넣으니까 폼이 생기고... 오오~~ 신기하네~~ 잘된다..
흠.. 그럼.. 한 Note에 paragraph 3개 생성해서.. jdbc로 연동한 걸
하나는 표, 차트 두개로 해 볼까?
2. 당혹
흠... 되긴 되는데.. 이렇게 되면.. 각 paragraph 마다 입력 폼이 생기잖여.. 입력은 한번만 해서 돌려써야 욕을 안 먹는데..
흠?? 메뉴얼 아래쪽에 Using form Templates (scope: note) 란거 보니.. 전역 변수로 쓸 수 있는 것 같다..
첫번째 paragraph에다가 jdbc interpreter로 쿼리를 날릴때 ${변수명} 을 사용하면 값 입력 폼이 생기고, 이걸 두번째 paragraph에다가 사용하면 되겠지?
해서 jdbc interpreter에다가 $${변수명을} 쓰고 조회!
--> null point exception이 아마 발생할 것이다...
3. 고민
완전 당황함.. sql 프로파일러로 들여다 보니.. 쿼리가 오지도 않음..
왜 이럴까.. 정말 몇일을 고민함..
stacksoverflow에 질문해도 답하는 놈이 없음.
https://stackoverflow.com/questions/67767714/exchanging-variables-between-different-paragraphs
youtube 동영상을 보니.. 다들 기초 예제만 하지..
이렇게 결합해서 하는 경우가 없음.
하여.. 계속 몇일을 삽질을 하다가..
겨우 알아냄..
4. 해결
가) 일단 메뉴얼이 좀 부실하다.. 내용도 좀 잘못된 것이 많음
나) 다른 interpreter는 모르겠으나, 나처럼 jdbc 사용하는 경우에 대해선 메뉴얼이 너무 허접함
다) 하여간 정답 공개
a) 일단 공통으로 입력을 받을 폼은 첫번째 paragraph에 python으로 작성함.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | %python dtst = z.noteTextbox("시작일", "20200101") dted = z.noteTextbox("종료일", "20201231") print("Textbox note " + dtst) print("Textbox note " + dted) arrStore = [("001", "PubDept"), ("002", "Store1"), ("003", "Store2")] selStore = z.noteSelect("매장선택", arrStore ) print( "Select note " + selStore ) z.z.run("paragraph_1622092568030_1007352330") | cs |
1 2 3 | %jdbc EXEC USP_BIGDATA_003 '$${시작일}', '$${종료일}', '$${매장선택}'; | cs |
-
진짜.. 이걸로.. 쌩쑈를 다 해서리.. 정리차 적어 놓음.. 0. 쇼핑몰 리뉴얼 중 주문 화면에서 우편 번호를 받으면 이게 산간 오지 지역이면 도선료를 추가로 부여해야 하는 상황 발생. 1. 쇼핑몰 솔루션을 자체 마이그레이션 하는 것이기에 알...
-
"Recordset.Get Rows() + Recordset.Move()" this is fastest way without using stored procedures. 프로시저 없을시엔 getrows + move 가 가장 성능이...
-
모든 일의 시작은.. 최근에 JRE를 업데이트를 했는데.. 32-Bit로 update가 된 듯... Eclipse 실행시 !ENTRY org.eclipse.osgi 4 0 2015-03-31 14:21:48.411 !MESSAGE Ap...
BE Band (비밴드) - 2024년 03월 02일 잠실새내 락앤롤욱스 공연
나의 10~20대를 보낸 잠실에서의 공연.. 오랜만에 가보니.. 여기가.. 마눌님과 자주 가던 영화관이었는데... 여긴 뭐가 있었는데... 란 추억도 떠올리며 기분좋게 감. 공연장은 좀 협소한 편이었고, 인천의 쥐똥나무 보다는 약간 크고... 인천 ...