안녕하세요...
하나의 파일에 30만건 정도의 데이타가 존재합니다.(30만 라인)
이 파일을 정렬하려고 합니다.
단순히 sort file.txt 할 경우 아무 문제 없이 정렬이 되나요???
데이타가 너무 많을 경우 정렬에 실패한다는 말을 들은 적이 있어서 질문드립니다.
답변 부탁드립니다.
직접 해보시면 될 것 같은데요...
30만 건이 그리 큰 데이터는 아니지만, 안 된다면 sqlite같이 작고 가벼운 dbms로 정렬하셔도 될법하고요.
한 줄의 영문 문자열이라면, 한번에 읽어서 벡터에 넣으세요.
stl sort로 정렬하세요. 아마 1~2초도 안 걸릴꺼예요.
clique 님//
물론 해보았지요.
성공은 했지만 정렬이 안될 경우에 대해서 여쭤본겁니다. ^^;;
아마 이런 경우가 없을것 같지만요..ㅎㅎ
답변 감사합니다.
phonon 님//
답변 감사합니다. 좋은 아이디어네요 ^^
너무 커서 실패한다면 메모리 문제일테니 '한번에 읽는 모든 방법'은 안되겠지요. 시도해 볼 방법 중 가장 간단해 보이는 것이 dbms 군요. 저라면 sqlite 는 아무래도 server 가 아니라서 postgresql 로 시도할 것 같습니다.
emerge moneyhttp://wiki.kldp.org/wiki.php/GentooInstallSimple - 명령어도 몇 개 안돼요~http://xenosi.de/
https://xenosi.de/
30만 라인이면 많은게 아닐텐데요.
버퍼사이즈와 압축 등을 잘 조정하면 큰 문제가 없을껍니다.
------------------------------------------------------------------------------------------------ Life is in 다즐링
GNU coreutils의 sort 프로그램은 꽤 복잡합니다. 30만이 아니라 3000만이라도 메모리 모자라도 알아서 임시 파일 만들면서 오프라인 머지 소트합니다.
그럼 애초에 가정이 틀린거네요. 아무리 커도 맘놓고 sort 하면 되겠군요.
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
...
직접 해보시면 될 것 같은데요...
30만 건이 그리 큰 데이터는 아니지만, 안 된다면 sqlite같이 작고 가벼운 dbms로 정렬하셔도 될법하고요.
텍스트 화일을 한번에 읽어서
한 줄의 영문 문자열이라면,
한번에 읽어서 벡터에 넣으세요.
stl sort로 정렬하세요.
아마 1~2초도 안 걸릴꺼예요.
답변 감사합니다.
clique 님//
물론 해보았지요.
성공은 했지만 정렬이 안될 경우에 대해서 여쭤본겁니다. ^^;;
아마 이런 경우가 없을것 같지만요..ㅎㅎ
답변 감사합니다.
phonon 님//
답변 감사합니다. 좋은 아이디어네요 ^^
너무 커서
너무 커서 실패한다면 메모리 문제일테니 '한번에 읽는 모든 방법'은 안되겠지요.
시도해 볼 방법 중 가장 간단해 보이는 것이 dbms 군요.
저라면 sqlite 는 아무래도 server 가 아니라서 postgresql 로 시도할 것 같습니다.
emerge money
http://wiki.kldp.org/wiki.php/GentooInstallSimple - 명령어도 몇 개 안돼요~
http://xenosi.de/
https://xenosi.de/
30만 라인이면 많은게
30만 라인이면 많은게 아닐텐데요.
버퍼사이즈와 압축 등을 잘 조정하면 큰 문제가 없을껍니다.
------------------------------------------------------------------------------------------------
Life is in 다즐링
------------------------------------------------------------------------------------------------
Life is in 다즐링
GNU coreutils의 sort
GNU coreutils의 sort 프로그램은 꽤 복잡합니다. 30만이 아니라 3000만이라도 메모리 모자라도 알아서 임시 파일 만들면서 오프라인 머지 소트합니다.
그럼 애초에 가정이
그럼 애초에 가정이 틀린거네요.
아무리 커도 맘놓고 sort 하면 되겠군요.
emerge money
http://wiki.kldp.org/wiki.php/GentooInstallSimple - 명령어도 몇 개 안돼요~
http://xenosi.de/
https://xenosi.de/
댓글 달기