엘라스틱 서치 대시보드로 유명한 녀석이죠 ㅋ
키바나…
그냥.. local 서버에 설치한 기념으로…ㅋ
(키바나 설치후 첫화면ㅋ)
대시보드를 잘 활용하면..
데이터 분석, 로그분석 등등 유용하게…ㅋ
쓸수있겠죠잉…
다음엔 el, kibana 설치과정 정리해서 포스팅 예정.(오늘은 귀찮..)
Alto ventos est coeptis utque fecit. Phoebe sine circumfuso arce. Tanto aliis. Matutinis cornua origo formaeque animal mundo. Chaos: fabricator. Natura mundo caesa addidit. Cuncta habendum meis omni ille formaeque emicuit septemque et. Lege fecit aethere porrexerat gentes horrifer formas.
엘라스틱 서치 대시보드로 유명한 녀석이죠 ㅋ
키바나…
그냥.. local 서버에 설치한 기념으로…ㅋ
(키바나 설치후 첫화면ㅋ)
대시보드를 잘 활용하면..
데이터 분석, 로그분석 등등 유용하게…ㅋ
쓸수있겠죠잉…
다음엔 el, kibana 설치과정 정리해서 포스팅 예정.(오늘은 귀찮..)
Hapi(Http API Server)
Hapi(Http API Server)는 Express와 같은 Node.js 기반의 웹 프레임웍으로 월마트 연구실의 Eran Hammer와 그의 팀에 의해 개발되었다.
Express로 뭔가를 만들다가 Express에 실망하고 빡쳐서 ‘더 좋은걸 만들거야 하고!!’ 만들었다나 뭐라나 ^^;
Eran Hammer는 다음과 같은 생각으로 Hapi 개발을 결심했다고 한다.
– 설정이 코드보다 낫다.
(정말 설정을 많이 하는 것이 코드를 작성하는 것보다 나은지에 대한 의견이 분분하다고 한다)
– business logic과 transport layer는 분리되어야 한다.
– buffer, stream과 같은 native node 구성들은 첫번째 클래스 객체로 제공되어야 한다.
서버를 생성하는 간단한 샘플코드는 다음과 같다.
var express = require('express'); var app = express(); var server = app.listen(3000, function(){ console.log('Server start'); });
var hapi = require('hapi'); var server = new hapi.Server(3000); server.start(function () { console.log('Server start'); });
json라이브러리중에 GSON 라이브러리를 사용해서
Array 형태의 JSON String을 ArrayList
1. JSON
[ { title:'초보를 위한 Java' , author:'홍길동' , isbn : 'A000022200f' } , { title:'Java 개발자' , author:'이몽룡' , isbn : 'A1111100ff0' } ]
2, JAVA
class Book { private String title; private String author; private String isbn; }
3, JSON To ArrayList
Gson gson = new Gson(); Type type = new TypeToken<list<book>>() {}.getType(); List<book> bookList = gson.fromJson(jsonString, type); </book></list<book>
http://www.nextree.co.kr/p2129/
좀 오래된 글이지만
메이븐+젠킨스 로 릴리즈를 간편하게 쓸수있는 글이다…
요즘은
gradle 를 이용해서도 빌드를 많이 하던데..
이것도 익혀두면 좋을것 같다
참고 링크
http://www.nextree.co.kr/p2437
Explain 정보보는법
인덱스가 적절히 사용되고 있는지 검토
나열된 순서는 MYSQL 이 쿼리처리에 사용하는 순서대로 출력
EXPLAIN 의 각 행 설명
1. id : SELECT 번호, 쿼리내의 SELECT 의 구분번호
2. select_type : SELECT 의 타입
3. table : table명
4. type : 조인타입, 우수한 순서대로… 뒤로갈수록 나쁜 조인형태
5. possible_keys : MySQL 이 해당 테이블의 검색에 사용할수 있는 인덱스들
possible_keys 에 나타난 인덱스들이 결과에 나타난 테이블 순서에서 실제 사용할 수 없을수도 있음
6. key : MySQL 이 실제 사용한 key(index)
7. key_len : MySQL 이 사용한 인덱스의 길이, key 컬럼값이 NULL 이면 이값도 NULL
key_len 값으로 MySQL 이 실제 복수컬럼 키중 얼마나 많은 부분을 사용할 것인지 알 수 있음
8. ref : 행을 추출하는데 키와 함께 사용된 컬럼이나 상수값
9. rows : 쿼리 수행에서 MySQL 이 예상하는 검색해야할 행수
10. Extra : MySQL 이 쿼리를 해석한 추가적인 정보를 나타냄
초기화 파라미터인 OPTIMIZER_MODE는 오라클 인스턴스가 최적의 Access 경로를 선택하는 기본 설정이 된다. 즉 옵티마이저가 어떠한 기준으로 최적화된 Access 경로를 추출 하는지 결정하는 방법에 대해 제시 한다고 볼 수 있다.
MODE | 장점 | 단점 |
---|---|---|
RULE | Analyze작업이 불필요, 일정한 응답속도를 기대 |
전문가에게 의존도가 매우 높음, 옵티마이저 대부분의 기능을 사용 못함 |
CHOOSE | 옵티마이저 기능을 최대한 활용 | 주기적인 Analyze작업이 필요, 비효율적인 실행계획수립 발생 |
FIRST_ROWS | Nested Loop 위주의 실행계획수립 | 일부 Hash Join으로 바꾸는 작업 필요 |
ALL_ROWS | Hash Join 위주의 실행계획 수립 | 일부를 Nested Loop로 바꾸는 작업 필요 |
/*+ CHOOSE */ |
SELECT DISTINCT B.CLASS, COUNT(B.CLASS) // DISTINCT는 아래의 GROUP BY에 의해 의미가 없음 |
SELECT ename |
현재는 아무런 인덱스가 없으며 분석되지 않았으며, 비용기반이 아님
SQL> ANALYZE TABLE emp COMPUTE STATISTICS; |
분석 이후 Cost, Card, Byte등이 출력됨. (Cost가 큰 수일수록 비효율적임)
SQL> CREATE INDEX EMP_DEMPTNO_IDX ON EMP(DEPTNO); |
초기의 COST보다 18이 줄은 값이 나옴 인덱스 사용이 미사용보다 COST가 높았다면 인덱스를 사용하지 않았을 것임
SQL>conn / as sysdba |
select sql_text, optimizer_mode, optimizer_cost, parsing_schema_name |
ERROR Method printIn(java.lang.String)(메소드명) not found in class java.io.PrintStream(클래스명)
발생되는 경우 자신이 사용한 클래스의 메소드가 맞지 않는(=없는)경우
조 언 자신이 사용한 클래스의 메소드가 맞지 않는(=없는) 경우에 발생하는 에러이므로
API를 통해서 사용하고자 하는 클래스와 메소드를 다시 한번 확인해 봅니다.
보통 이경우 메소드의 철자나 대소문자를 잘못 쓴 경우가 많으니 그점을 유심히 살표봅니다.
마지막으로 철자와 대소문자도 맞는다면 메소드의 인자의 객체형을 맞게 주었는지 확인해보면 됩니다.
ERROR java.lang.ClassNotFoundException: org.gjt.mm.mysql.Driver(드라이버명)
발생되는 경우 JDBC로 데이터 베이스에 연결하는 중 드라이버를 찾지 못할 경우
조 언 JDBC를 연결하는 중에 드라이버를 찾지 못할 경우에 발생하는 에러이므로
각 데이터 베이스에 맞는 드라이버가 제대로 다운로드 되었는지 확인해 보시고
드라이버의 위치가 클래스 패스에 잡혀 있는지 확인해주시면 됩니다.
ERROR Error opening registry key ‘Software\JavaSoft\Java Runtime Environment’
Error: could not find java.dll
Error: could not find Java 2 Runtime Environment
발생되는 경우 중복설치 등으로 인해 레지스트리 키값이 잘못되어 있는 경우
조 언 중복설치 등으로 인해 레지스트리 키값이 잘못되어 있는 경우에 발생하는 에러이므로
레지스트리 편집기를 열어서 HKEY_LOCAL_MACHINE -> SOFTWARE -> JavaSoft에
보시면 3개의 키가 있을 겁니다. 그중에서 첫번째 키인 Java 런타임 환경 을 마우스
오른쪽 버튼으로 클릭하여 Java Runtime Environment로 이름을 바꿔주시면 됩니다.