2009-07-17 2 views
1

내 이전 질문과 관련 : PHP and Databases: Views, Functions and Stored Procedures performance 그냥 큰 SELECT 쿼리에 관한 더 구체적인 질문을합니다.PHP & Postgres :보기와 SELECT, 언제보기를 사용합니까?

대신 코드에서 SELECT 쿼리를 작성하고 호출하는 뷰를 사용하는 것이 더 편리 할 것입니다 때 :

$connector->query($sql)->fetchAll(); 

를 사용하기 위해 최선 어떠했는지를 결정할 때 고려해야 할 요소는 무엇인가 보거나 그대로 두십시오. 여러 테이블을 합치면 특정 양의 데이터를 선택하십시오.

큰 웹 응용 프로그램 (PHP & Postgres)의 컨텍스트에서 질문하고 성능 및 최적화를 찾고 있습니다.

답변

1

당신이 PHP 소스 코드 + (대신에만 PHP 소스 코드의) 뷰를 사용할 때 고려해야 할 한 가지 당신은 지금 당신이 당신의 응용 프로그램을 업데이트 할 때 수정 소스의 두 종류가 있다는 것입니다 :

  • 을 ... 서버
  • 에 새로운 PHP 소스를 삽입해야하고 전망

를 업데이트해야합니다 그리고 당신은 가끔 정확히 같은 시간에 당신이 당신의 응용 프로그램이 충돌하지 않으려면 그렇게해야한다 또는 응용 프로그램을 실행해야한다는 생각을 프로그램해야합니다. 구식 /보다 최근 버전의보기 (몇 초 동안).

당신이 고려해야 할 다른 것은 버전 관리입니다. PHP 스크립트의 버전을 지정하는 것은 쉽습니다. SVN과 그 모든 것을 텍스트 파일처럼 사용하십시오. 뷰를 사용하면 같은 종류의 버전 관리를 얻으려면 텍스트 파일 (DB 프로덕션 서버에서 업데이트하기 전에 SVN에서 커밋)을 작성해야하며 DB 서버와 동기화해야합니다. 당신이 비상 패치를 프로덕션으로 보내야 할 때가 아닙니다. ^^

Personnaly, 필자는 실제로 diffenrence를 생성 할 때 뷰/저장 프로 시저를 사용합니다. 예를 들어, 계산에 수천 개의 SQL 쿼리가 필요할 경우 , PHP에서 수천 건의 호출, 응답을 기다리는 것 등) 또는 두 개의 서버간에 너무 많은 데이터 교환을 할 수 있습니다. 저장된 proc을 사용하면 정말 좋습니다!

(게시물 글자는 사용되지 않았지만 아이디어는 다른 제품과 동일 함)