2013-07-19 2 views
1

저는 파이썬으로 작업 중이며, MS SQL Server 데이터베이스로부터 엄청난 양의 데이터를 가져 와서 그래프를 만드는 데 필요한 것들을 처리합니다.빅 데이터 용 SQL 쿼리 또는 프로그래밍 방식 필터?

진짜 문제는 내가 쿼리에서 DISTINCT 등을 선택 WHERE하고 반복적으로 같은 속성을 사용 (SQL 쿼리 pyodbc 사용) 데이터를 필터링하는 쿼리를 수행하는 것이 좋습니다 것입니다 여부를 알고 싶어한다는 것입니다

또는

데이터를 가져 와서 목록 내포물을 사용하여 Python의 기능을 매핑하고 필터링하여 코드 자체의 데이터를 필터링합니다.

이전 버전을 선택하면 내 파이썬 코드의로드가 줄어들어 약 1k 쿼리가 수행됩니다. 그렇지 않으면 후자를 선택하면 한 번 쿼리하고 모든 레코드를 거치기 위해 여러 함수를 추가합니다 나는 거의 같은 회수 (1k)를 가져왔다.

파이썬은 순전히 기능적이지 않습니다. (필자가 묻는다면, 지금은 수백 번 완료하고 테스트 한 것입니다).

사람들 중 어떤 사람에게 추천 하시겠습니까?

참고로 Python 2.7을 사용하고 있습니다. 정보 원천을 제공 할 수 있다면 매우 높이 평가 될 것입니다. 또한 공간은 전체 데이터를 가져 오는 데 문제가되지 않습니다.

감사

+0

필요한 수식어와 함께 하나의 쿼리를 사용할 수없는 이유는 무엇입니까? – user2357112

+0

사양 목록에 따라 데이터를 필터링하기 때문에. 따라서 목록의 각 사양에 대해 데이터를 정제해야합니다. 트리 정보의 모음으로 생각할 수 있습니다. 이제 내가 원하는 것은 다른 나무와 하위 트리입니다. 그래서 각 하위 트리/나무에는 서로 다른 부모와 자식이 관련되어 있습니다. 그게 왜. –

답변

0

구울 대역폭을 가지고 있고, SQL에 Python을 선호하는 경우, 가서 파이썬에서 하나 개의 큰 쿼리 및 필터를 않습니다.

그렇지 않으면 아마 여러 쿼리를 사용하는 것이 좋습니다.

죄송합니다. 여기에 참고가 없습니다.^_^

+0

어떤 중요한 이점이 있습니까? 나는 그 중 하나를 할 수있다. 성능이 병목 일 경우 어떤 방법을 사용하는지 알고 싶습니다. 추가하면 데이터베이스의 데이터가 매일 증가합니다. –

+0

큰 차이점은 네트워크를 통해 전송되는 데이터의 양이라는 것입니다. – dstromberg

+0

그래서 필터링 된 데이터 전송을 야기하기 때문에 여러 개의 쿼리가 더 빨리 처리해야합니까? –