[쿼리 관련 문의] 본의 아니게 작업하다가 난제가 발생하여 문의
글쓴이: price / 작성시간: 수, 2005/07/06 - 11:06오후
현재 중고차사이트 개발중 검색 부분에서 시간이 너무 걸려 이렇게 문의 합니다.
db 테이블이 회원정보(member_table) 부분과 자동차 부분(car_bbs)이 있습니다.
뿌려주는 형식은 자동차 부분에서 검색을 통해 회원정보를 뿌려 주는겁니다.
select car_bbs.no, car_bbs.woodae, car_bbs.brandcode, car_bbs.brandname,car_bbs.car_name, car_bbs.year, car_bbs.DAY, car_bbs.gear, car_bbs.price, car_bbs.code1, car_bbs.file1, car_bbs.area, car_bbs.consultant, car_bbs.fuel, car_bbs.con, car_bbs.iso1, car_bbs.s_km, car_bbs.impan, car_bbs.poomz, car_bbs.fast_car, car_bbs.i_lpg, car_bbs.i_safe, car_bbs.name1, car_bbs.id, car_bbs.petime, car_bbs.modify_date, car_bbs.hit from car_bbs, member_table where car_bbs.id = member_table.U_ID and member_table.hidd !='Y' ";
위 쿼리문은 db상에서는 0.01초 정도 걸리는데 웹상에서는 1~2초 정도 걸립니다.
검색 조건은 brandcode(제조사) / brandname(차종) / car_name(차량명) / area(지역) 입니다.
검색은 스크립트를 통해서 되어있습니다.
db상에서는 속도가 나오는데 웹상에서 왜 이렇게 늦게 뿌려지는지 알수가 없네요..... 혹 힌트라도 주시면 도움이 되겠습니다.
(자동차 자료는 한 3~4만건 정도 됩니다)
참고로 첨부파일을 첨부합니다.
File attachments:
첨부 | 파일 크기 |
---|---|
car_search3.txt | 21.36 KB |
Forums:
query 가 참 길군요. as 키워드 이용법을 익히시면 코딩에 도움이
query 가 참 길군요. as 키워드 이용법을 익히시면 코딩에 도움이 될 듯 하네요.
질문은 php 와 mysql 을 사용하신건가요? 그렇다고 내 마음대로 가정하고 말씀드리면...
위의 db 시간이 0.01 초라는건 mysql client 프로그램에서 찍어주는 시간을 보고 이야기 하신건가요? ( 이시간은 server 와 client 간 통신 시간은 포함되어 있지 않는 걸로 알고 있습니다. )
그리고 웹에서 1~2초 라는건 어떻게 해서 잰건가여? (server 와 client 간 통신시간이 포함되는 함수(mysql_query())를 사용하신게 아닌지요? mysql_unbuffered_query() 라는 함수를 참고해 보세요.)
그리고 query 최적화를 하고 싶으시다면 explain 이라는 query 키워드를 이용해 보시는 것도 좋습니다.
속도가 느리다면 가장 먼저 인덱스를 타는지 검사해보시는게 좋겠네요. 그런
속도가 느리다면 가장 먼저 인덱스를 타는지 검사해보시는게 좋겠네요. 그런데 속도가 0.01초 정도라면 저 쿼리 자체에서는 느려진 것은 아니라고 생각되네요.
그 데이터를 가져와서 뿌려주는 곳에 문제가 있을 수도 있습니다. 쿼리를 보니 게시판에서 데이터를 가져오는 것 같은데 이 쿼리는 전체 데이터를 가져오고 그 일부분을 출력하는 쿼리이니.. offset, limit를 이용해 필요한 일부분 만 가져오는 것이 좋을 듯 합니다.
select하는 쿼리와 그것을 뿌려주는 코드 두 부분에 속도 측정을 한번 해보시지요..
What do you want to eat?
DB상조회가 문제가 없다면 DB나 쿼리문제가 아닙니다.웹프로그램(
DB상조회가 문제가 없다면 DB나 쿼리문제가 아닙니다.
웹프로그램(CGI)의 문제이거나 다른 환경적인문제입니다.
----------------------------------------------------------------------------
댓글 달기