동일 데이터를 파일에서 읽어오는 것과 데이터베이스에서 읽어오는 것이 차이가 있을까요?

viper9의 이미지

이런저런 공부를 하며 웹서버를 한번 설계해보면서 이런 생각이 들었습니다.

너무 초보적인 생각일지 모르겠습니다만...

HTML 내용을 파일에서 읽어오는 것이 아니라 디비에서 읽어오면 더 속도가 빨라질까? 하는 의문이 듭니다.

동일한 내용의 HTML을...

.html 파일로 두고 파일을 읽어서 클라이언트로 보내는 것과,
MySQL이나 오라클 디비에 넣고 디비에 접속해서 읽어서 클라이언트로 보내는 것과,

두 방법이 속도나 성능에서 차이가 있는지요?

어차피 디비도 결국 파일에서 읽고 쓰는 것이니 차이가 없을 것 같기도한데 정확히 모르겠습니다.

속도나 성능상에 잇점이 있다면 한번 만들어서 실험해보고자 합니다.

(사용언어는 C++입니다.)

snowall의 이미지

DB든 파일이든 읽어오는 속도에 영향을 주는건 램에 있느냐 디스크에 있느냐의 차이겠죠. 이게 가장 큰 영향을 줍니다.

만약 둘 다 같은 곳에 있다면, 검색할 필요가 없는 경우에는 파일이 더 빠르고, 검색해서 보내야 하는 경우에는 DB가 더 빠를 수 있겠죠.

속도나 성능보다는 공부한다고 생각하고 시도해보세요.

피할 수 있을때 즐겨라! http://melotopia.net/b

klyx의 이미지

DB가 무엇인지를 생각하시면 답이 나올 듯합니다.
영문위키에는 다음과 같이 설명되어있습니다.

A database is an organized collection of data, today typically in digital form. The data are typically organized to model relevant aspects of reality (for example, the availability of rooms in hotels), in a way that supports processes requiring this information (for example, finding a hotel with vacancies).

DB는 일련의 데이터에서 필요한 정보를 효율적으로 뽑아내기위한 것입니다.
snowall님께서 말씀하신 거처럼 DB는 검색에 걸리는 부하를 줄여주는거지 IO의 부하를 줄여주는 게 아닙니다.

academic의 이미지

웹에서 부하가 많이 걸리는 부분은 일반적으로 DB 쪽입니다.

남들은 DB 튜닝을 해서 DB쪽 부담을 덜어주느라 고생하고 있는데,

파일로 처리해도 되는 것을 DB 쪽에 짐을 더 얹는 거라...

개발 단계에서는 모르겠지만, 사용량이 늘어나면 시스템 전체적인 퍼포먼스는 안 좋아질 겁니다.

----
academic은 제 고등학교 때 동아리 이름입니다.
academic, 아주 가끔은 저도 이랬으면 좋겠습니다.

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <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].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <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].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <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].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <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].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.