2014-04-16 8 views
1

문구가 어려운 질문이므로 설명해 드리겠습니다.계산 : 삽입 전에 잘리는 것이 더 좋고, 아니면 MySQL이 잘리는가?

RSS 캐싱 시스템의 일부로 DB에 많은 행을 삽입하고 있습니다. 하루에 여러 번. RSS 피드의 description 노드에 대한 열 중 하나가 'snippet'입니다.

해당 노드가 "작은 텍스트"유형 (최대 255 자)이기 때문에이 노드는 내가 원하는 것보다 훨씬 길다. 저를 삽입하기 전에 PHP를 통해 절단, 아니면 그냥 는 절단을 MySQL로 전체, 너무 긴 문자열을 공급하고있는 데

그래서, 계산/메모리의 측면에서, 는 더 나은 무엇입니까?

물론 둘 다 잘 작동하는지 궁금해했습니다.

+0

절대적으로 필요하지 않으면 절사를 허용하는 것이 결코 바람직하지 않습니다. 삽입하기 전에 데이터베이스 외부에서 잘라내기를 권합니다. 그러나 사용하는 프로그램에 따라 달라집니다. 테스트하는 것이 가장 좋습니다. 그것을 찾아 내십시오. – Lucas

+0

제게는 PHP에서 데이터를 먼저 조정하는 것이 더 좋습니다. PHP는 소켓 연결을 통해 MySQL과 통신합니다. PHP에서 MySQL로 더 긴 데이터 값을 전달하면 전송 중에 불필요하게 추가 리소스를 소비하게됩니다. –

+0

mysql이 한계를 벗어나 단어를 구분할 수 있습니다. 나중에 "멋진"읽을 수있는 텍스트를 원하면 PHP에서 텍스트가 끝나는 곳을 제어 할 수있는 잘라내기를 수행해야합니다. –

답변

3

이와 같은 경우에는 측정하는 것이 가장 좋습니다. 차이를 느끼지 않으면 문제가되지 않습니다.

내 직감에 따르면 스 니펫 크기가 매우 작고 일반 텍스트가 매우 클 수 있기 때문에 손보다 먼저 잘라내는 것이 좋습니다. PHP로 성능에 치중하십시오. MySQL에 큰 쿼리를 보내는 데 많은 시간을 소비하지 마십시오.

가독성과 코드 명료성을 위해 PHP에서 잘리는 것이 더 명확 할 수 있으므로 PHP에서 잘라내는 것이 좋습니다. 단어 나 문장으로 잘자를 수도 있습니다.

+1

@Utkanos : 단어로 자르면 외에도 "..."을 추가 할 수 있으므로 쉽게 알 수 있습니다. – wallyk