사용자가 입력 한 길이가 약 10,000자인 많은 텍스트 문자열을 처리한다고 가정 해보십시오. 자동으로 페이지에 쓰거나 데이터베이스의 테이블에 입력하는 것이 더 효율적입니까? 그 질문이 충분히 분명하기를 바랍니다 ...텍스트를 파일 또는 DB에 저장하는 것이 더 효율적입니까?
답변
그것은 당신이 목표로하는 "효율성"의 종류에 달려 있습니다.
- 당신은 텍스트 문자열의 내용을 변경하는 것입니다 : 여기
은 무슨 뜻입니까?
- 어떤 종류의 검색을 수행 하시겠습니까?
- 텍스트를 추출 할 때 그 텍스트로 무엇을합니까?
제 생각에는 내용을 많이 변경하지 않거나 많은 분석을 수행하지 않는다면 데이터베이스를 사용하는 것이 좋습니다.
어떻게 액세스하고 있는가에 따라 다르지만 일반적으로 FS를 사용하면 성능이 향상됩니다. 그것은 DB가 FS의 최상위에 구축 된 또 다른 계층이고, FS를 직접 사용하는 이유입니다. 예를 들어 특별한 처리를하지 않고도 엄청난 처리가 없다고 가정하면 (예를 들어, 큰 파일이 아닌 100 개의 파일이 필요합니다. 구문 분석), DBMS 조작을 저장합니다.
에 동의하지만, _ 그것이 반드시 다릅니다. 가장 중요한 것은 정적 페이지를 다시 디자인해야하는지 여부입니다. – rmeador
rmeador가 맞습니다. 질문은 데이터를 찾고 데이터를 읽는 것에 관한 것이라고 가정했습니다. TrippyD 또한 포인트가있었습니다 - 10K 레코드는 실제 차이가 나는 데이터를 충분히 크지 않습니다. – synhershko
10k는 특별히 크지 않으므로 어느 쪽도 좋습니다. 나는 당신이 쉽게 검색 할 수 있도록 개인적으로 데이터베이스를 사용할 것이다.
저는 SQLite가 두 세계에서 가장 좋을지, 아니면 적어도 그 규모의 작업에 가장 적합한 데이터베이스인지 궁금합니다.
진짜 대답은 그녀가이 문자열로 무엇을 할 것인가입니다.
데이터베이스는 특정 레코드를 신속하게 반환 할 수 있도록 만들어졌습니다. SELECT * FROM Table로 가서 모두 연결하면 데이터베이스 사용에 아무런 포인트가 없습니다.
그러나 검색 할 수있는 데이터 사이에 관계가있는 경우 데이터베이스가 더 효율적입니다.
E.G., 날짜 집합에있는 사용자 집합에서 모든 텍스트 레코드를 가져올 수 있도록 하시겠습니까? 일부 레코드와 일치하는 사용자의 모든 레코드를 찾으십니까?
이러한 종류의로드는 순진한 구현보다 더 효율적일 수 있으며 일부 액세스 계층을 피할 수있는 경우에도 적절한로드보다 더 빠를 것입니다.
많은 고려 사항이 있습니다. 다른 사람들이 말했듯이, 어느 쪽의 접근 방식이든 적은 수의 10k 행 (수천)에 대해서는 잘 작동합니다.
하지만 나머지 앱은 무엇을합니까? 데이터베이스에서 모든 작업을 수행한다면이 작업을 수행 할 수 있습니다. 그 반대도 사실입니다.
그리고 어떻게 이것을 선택 하시겠습니까? 복잡한 텍스트 검색이 필요합니까? 그렇다면 데이터베이스가 좋지 않을 수 있습니다. 또는 새로운 속성을 추가하거나 속성을 검색하거나 다른 테이블의 데이터와 일치 시키시겠습니까? 이 일반적인 경우 데이터베이스가 더 좋을 것입니다.
데이터가 실제로 방대한 경우 (수백만 개의 10k 행) 성능 요구 사항이 너무 높지 않은 경우 파일 시스템을 압축하여 파일 시스템에 저장할 수 있습니다.
마지막으로 데이터 품질이 얼마나 중요합니까? 좋은 데이터베이스의 기능을 감안할 때 데이터베이스로 좋은 데이터 품질을 보장하는 것이 훨씬 쉽습니다.
- 1. mysql 데이터베이스에서 어떤 방법으로 권한을 저장하는 것이 더 효율적입니까?
- 2. 1MB 파일을 지속적으로 편집하는 것이 더 효율적입니까?
- 3. 이미지를 DB에 저장하는 것이 좋습니다.
- 4. 지도의지도 또는 매우 큰지도를 갖는 것이 더 효율적입니까?
- 5. 어떤 SQL 문이 조인 또는 존재하는 것이 더 효율적입니까?
- 6. 하나의 쿼리가 많은 데이터를로드하는 것이 더 효율적입니까, 아니면 더 작은 청크를로드하는 여러 쿼리가 더 효율적입니까?
- 7. sendRedirect 또는 요청 배송이 더 효율적입니까?
- 8. +가 concat보다 더 효율적입니까?
- 9. 데이터베이스 또는 파일에 플랫폼 구성을 저장하는 것이 더 좋습니까?
- 10. 데이터베이스 또는 파일을 사용하여 저장하는 것이 더 안전합니까?
- 11. 파일 IO 중복 검사가 더 효율적입니까?
- 12. 세션 또는 DB에 Viewstate를 저장하는 함정은 무엇입니까
- 13. C# Data Collection v 데이터베이스 조회 - 어느 것이 더 효율적입니까?
- 14. 변경 사항을 파일로 보거나 중복으로 파일을 쿼리하는 것이 더 효율적입니까?
- 15. 사용자가 업로드 한 문서를 phymyadmin에 저장하는 것이 더 좋습니까? 아니면 폴더에 저장하는 것이 더 좋습니까?
- 16. 외부 XML을 구문 분석하거나 데이터베이스를 조회하는 것이 더 효율적입니까?
- 17. NSManagedObjects 또는 NSManagedObjectIDs의 NSArray를 저장하는 것이 더 좋습니까?
- 18. 데이터베이스에 URL 인코딩 텍스트를 저장하는 것이 좋습니다.
- 19. DB에 슬러그를 저장하거나 동적으로 생성하는 것이 더 낫습니까?
- 20. 응용 프로그램 변수에 CFC를 저장하거나 페이지 호출시 CFC를 저장하는 것이 더 효율적입니까 (성능)?
- 21. 큰 그래프를 저장하는 데 SBCL이 얼마나 효율적입니까?
- 22. 모든 레코드를 검사하는 것보다 명확하고 대체하는 것이 더 효율적입니까?
- 23. 캔버스로 이미지를 그리는 것이 브라우저에서 렌더링하는 것보다 더 효율적입니까?
- 24. Errno = 13 및 어떻게 디버깅하는 것이 더 효율적입니까?
- 25. Android - 어느 쪽이 더 효율적입니까?
- 26. 두 개의 쿼리가 더 효율적입니까?
- 27. DB에 길이를 저장하는 방법
- 28. List 또는 Collection을 사용하는 것이 더 좋습니까?
- 29. 도시 목록과 같은 것을 DB에 저장하는 것이 좋습니까?
- 30. 업로드 파일을 SQL Server에 저장하는 것이 더 좋습니까?
+1 정확히 OP가 데이터를 가지고 무엇을하고 싶은지 물어 보는 질문. 그러나 나는 당신이 내용을 바꾸거나 많은 것을 분석하려고한다면 파일 시스템이 더 좋을 것이라고 생각했을 것입니다. –
콘텐츠를 자주 편집하고 문자열의 개별 비트를 검색 할 계획입니다. 한 번에 전체 텍스트 블록을 추출 할 것입니다. – Robbie
내용이 자주 바뀌면 OP는 파일 시스템에서 더 나을 것입니다. 나는 그 사실을 분명히 알았습니다! –