조금은 황당한 질문.. 데이터 검색 속도에 관해서...
글쓴이: sadrove / 작성시간: 목, 2005/07/28 - 3:21오후
1문장이 대충 50글자라고 치면, 약 100바이트..
10MB에 1십만 문장을 저장할 수 있다고 가정할 때..
이 데이터를 갖고 하는 일은 특정 단어나 문장을 검색해서 가져오는 일이나 저장하는 일이라고 할 때요..
text파일에 저장된 문장을 모두 읽어들여서 배열이나 기타 방법으로 램상에 올려놓고 조작하는 방법과..
데이터베이스를 이용하는 방법 중 어떤게 더 빠를까요..?..
램에서 조작하는게 더 빠를꺼라는 생각이 들지만 실제로 그럴까하는 생각도 들고요...
어떨까요..?
Forums:
DBMS 역시 파일에 저장된 데이터를 램(메모리)으로 읽어들이는 절차가
DBMS 역시 파일에 저장된 데이터를 램(메모리)으로 읽어들이는 절차가 있습니다
디스크 I/O라고 표현하도록 하죠
다만 일반 파일을 사용할 것이냐, DBMS를 사용할 것이냐의 차이는 데이터의 탐색을 위한 자료구조와 인덱스 구조를 어떻게 하느냐에 있게 됩니다
단순히 파일 하나에 저장된 데이터는 별도의 인덱스 구조를 가지지 못하기 때문에 모든 데이터를 읽어들여야 하지만, DBMS를 이용할 경우에는 별도의 인덱스 데이터를 먼저 탐색하여 필요한 데이터만 읽어들입니다
디스크(파일)에 저장된 데이터를 매번 읽어들이는 것과 한번에 메모리에 로딩한 후 처리하는 것과는 엄청난 속도의 차이가 있습니다
당연히 메모리에서 처리하는 것이 훨씬 빠르죠
다만 님의 고민은 데이터의 로딩여부가 문제가 아니라 빠른 탐색을 하기 위해 데이터의 인덱스를 어떻게 구조적으로 설정하느냐로부터 시작되어야 할 것 같습니다
전체 문장을 메모리에 올려두고 하시려는거면,DBMS 의 temp(he
전체 문장을 메모리에 올려두고 하시려는거면,
DBMS 의 temp(heap) 타입으로 하시면 되겠네요.
https://xenosi.de/
DBMS가 사용한 검색알고리즘 보다 나은(?) 접근이라면, 당연히, 메모
DBMS가 사용한 검색알고리즘 보다 나은(?) 접근이라면, 당연히, 메모리에 놓고 하는것이 빠르지요.
DBMS는 일반적인 목적을 위해 다소 복잡한 기능이 보다 많이 들어가 있습니다.
특정 목적을 위해 사용한다면, 하나 만들어 쓰는게...
댓글 달기