중복라인삭제.

- notepad++ 에서 적용

- 조건은 아래 정규식으로, 바꿀내용은 빈공백으로.

^(.*?)$\s+?^(?=.*^\1$)

 

end.

728x90

 

1. Chart FX 8

- main link: https://support.softwarefx.com/Chart_FX_8  

- API Reference: http://support.softwarefx.com/Chart_FX_8/api

- Programmer's Guide & Samples: http://support.softwarefx.com/Chart_FX_8/article/2501002

- Samples: http://support.softwarefx.com/Chart_FX_8/samples

- 한국어 퀵가이드: http://download.softwarefx.com/CfxNet80/Chart_FX_8_Quick_Guide_Korean.pdf

 

2. Chart FX 7

- main link: https://support.softwarefx.com/Chart_FX_7/

- API Reference: https://support.softwarefx.com/Chart_FX_7/api

- Programmer's Guide & Samples: https://support.softwarefx.com/Chart_FX_7/article/2501002

- Samples: https://support.softwarefx.com/Chart_FX_7/samples

 

end.

 

728x90

'Programming Language > C#' 카테고리의 다른 글

NLog 사용 샘플  (0) 2020.04.25
[펌] Correlation of two arrays in C#  (0) 2020.02.06
remove comments with C#  (0) 2019.10.14
excel upload faster  (0) 2019.10.14
c# 관련사이트  (0) 2019.10.14

mac 2011 early 버전에 windows 10 인스톨

 

1.설치 문제점

- Apple에서 공식적으로 windows 10 설치를 지원하지 않음

- EFI 모드로 어렵게 설치되나, 오디오와 듀얼 디스플레이 안됨. USB로 어렵게 설치했으나 헛수가 됨.

 결국, 마지막에 찾은 방법은, Boot Camp 지원프로그램의 환경정보를 수정해서 windows 10설치 제약을 없애고, DVD CD로 windows 10을 설치하면 오디오 및 디스플레 문제 없음. 단, 설치 후 windows용 Boot Camp설치해야 오디오까지 정상 작동함.

 

2.windows 10 설치순서

 1) windows 10을 iso양식으로 다운로드해서, DVD cd에 구움.

 - 웃긴게 mac에서 받으면 용량이 5.3G, windows에서 받으면 3.7G 로 사이즈가 다르네요. 몇번의 설치 로 windows 10용량이 4G정도인 걸 알았기 때문에 windows 에서 다시 받아서, DVD(4.7G)로 구웠습니다. DVD에 넣고 보니 4.2G정도 되네요.


 2) 복구모드로 부팅 후 루트리스(Rootless) 비활성화 하기 —> 설치후 복원? 확인할것

  - 부팅할 때 command + R 키 눌러주면 복구모드로 진입합니다.

  - 복구모드에서 메뉴에 텔렛눌러서 명령어 실행합니다. (텔넷 단축키: Shift + F10 ??? <-- 확인필요 )

    실행 후 메시지 확인. Sucessfully disabled System integrity Protection. Please restart the Machine for the changes to take efffects.

$ csrtutil disable


 3) 리스타트 후 Boop Camp 파일 편집하기

 - Boot Camp 아이콘 오르쪽 클릭 후 "패키지 내용 보기" 선택. find에서 info.plist 파일을 수정해서, 맨 아래 쯤 windows 10미지원 목록(SupporedNonWin10Models)에서 해당 노트북 모델을 삭제함. 가능하면 해당모델 mac pro, mac air 모델들 단위로 삭제.

 - info.plist 파일을 해당 디렉토리에서 바로 수정이 안되므로, 다른 곳을 복사 후, 수정하고 다시 복사하는 방법으로 함.


 4) Boot Camp 지원 실행

  - windows 지원 드라이버 선택, 이미 있으면 산택안해도 됨, 다음 화면에서 저장할 USB 드라이버 선택.

 

 5) 파티션 조정 후 설치

 

 6) 잠시 후 재부팅되면 듀얼 모니터와 동시에 윈도창이 보이며 windows 10 설치가 시작됩니다.

 

3.windows 10설치 후 작업

 1) USB에 담긴 windows지원로그램 Boot Camp를 실행합니다. 하고나면 오디오 까지 나옵니다.

 

 2) windows 10 최신으로 업데이트 - 제어판 / 업데이트 에서 최신으로 업데이트 함


 3) 설치 후 “Apple Software Update” 프로그램이 설치되는데 실행 후, 관련 소프트웨어를 최신 업데이트 합니다.

 

end.

 

728x90

 

1. 필요한 컬러만 사용. 와일드 카드(*) 사용 금지.

[GOOD]: SELECT time,user,host FROM tbl
[BAD]:  SELECT * FROM tbl

2. 항상 시간 조건 사용

 - 조건은 정수용으로하고 실수로 하면, 파티션키가 타지 않음. 날짜 연사자를 사용할 것.

 

3. Group by 최적화

 - GROUP BY는 GROUP BY를 한 칼럼을 기반으로, 각 행을 메모리의 GROUP BY 값에 보유하는 작업자 노드에 배포합니다. 행을 처리 할 때 GROUP BY 칼럼을 메모리에서 조회하고 값을 비교합니다. GROUP BY 열이 일치하면 그 값은 함께 집계됩니다. 따라서, 쿼리에서 GROUP BY를 사용하는 경우 분산성이 가장 높은 카디널리티 (Cardinality 즉, 고유 값의 대부분이 균등하게 분산)별로 칼럼을 정렬합니다

[GOOD]: SELECT GROUP BY uid, gender
[BAD]:  SELECT GROUP BY gender, uid

4. Order by 최적화 

 - ORDER BY를 사용하려면 모든 행을 단일 작업자에게 전송한 다음 정렬해야합니다. 이로 인해 Presto에 대한 메모리 부담이 발생할 수 있으며 이로 인해 쿼리 실행 시간이 오래 걸릴 수 있으며 쿼리가 실패할 수도 있음.

상위 또는 하위 N 레코드를 조회하려면 정렬 비용 및 메모리 부담을 줄일 수있는 LIMIT를 사용ORDER BY 절을 사용하여 위 또는 아래 N 값을 확인하는 경우, LIMIT 절을 사용하면 단일 작업을 수행하는 대신 정렬 작업을 수행하여 개별 작업자를 제한하여 정렬 비용을 크게 줄일 수 있습니다.

[GOOD]: SELECT * FROM tbl ORDER BY time LIMIT 100
[BAD]:  SELECT * FROM tbl ORDER BY time

5. Like 최적화

 - 문자열 열에서 여러 값을 필터링 할 때는 일반적으로 LIKE 보다 여러 번 RegEx를 사용하는 것이 좋습니다. LIKE 할 내용이 많고, 문자열 열이 클수록 RegEx를 사용하면 절약 효과가 커집니다.

SELECT
  ...
FROM
  access
WHERE
  regexp_like(method, 'GET|POST|PUT|DELETE')

 

6. join 절에서 큰 테이블을 먼저 지정

두 테이블을 Join 할 때 Join 왼쪽에 큰 테이블을 지정하고 오른쪽에 작은 테이블을 지정하십시오. Presto는 오른쪽 테이블을 작업자 노드에 배포 한 다음, 테이블을 왼쪽으로 스트리밍하여 조인을 수행합니다. 오른쪽에 있는 표가 더 작으면 사용되는 메모리가 적어지고 조회가 더 빨리 실행됩니다. (기본:브로드 캐스트 조인). 이 유형의 조인은 오른쪽 테이블이 한 노드 (일반적으로 2GB 미만) 내에 들어갈만큼 작을 때 작동합니다. 'Exceeded max memory xxGB'오류가 표시되면 오른쪽 테이블이 너무 큽니다. Presto는 자동 조인 재정렬을 수행하지 않으므로 큰 테이블이 모든 조인 절에서 작은 테이블보다 우선합니다

 

6.1 Turning on the distributed hash join

If you still see the memory issue, try a distributed hash join. This algorithm partitions both the left and right tables using the hash values of the join keys. So the distributed join works even if the right-hand side table is large, but the performance might be slower because the join increases the number of network data transfers. To turn on the distributed join, embed the following session property as an SQL comment:

-- set session distributed_join = 'true'
SELECT ... FROM large_table l, small_table s WHERE l.id = s.id

 

 

Presto 성능향상 Tip 참조링크

 - https://support.treasuredata.com/hc/en-us/articles/360001450908-Presto-Performance-Tuning

 - https://aws.amazon.com/ko/blogs/korea/top-10-performance-tuning-tips-for-amazon-athena/

 

728x90

+ Recent posts