데이터웨어 하우스의 메시지 데이터가 포함 된 1 억 5 천만 행을 EC2 인스턴스로 가져 오려고합니다. 내 디스크에 90GB의 여유 공간이 있습니다. 나는 실행 내 쿼리를 넣을 때, 다음과 같은 오류가 내가 얻을 수 있습니다 :PyODBC : /tmp/odbc.log 파일이 90GB를 초과하여 데이터웨어 하우스에서 데이터 가져 오기를 중지합니다.
Traceback (most recent call last):
File "/usr/local/anaconda/lib/python3.5/site-packages/sqlalchemy/engine/result.py", line 964, in fetchall
l = self.process_rows(self._fetchall_impl())
File "/usr/local/anaconda/lib/python3.5/site-packages/sqlalchemy/engine/result.py", line 915, in _fetchall_impl
return self.cursor.fetchall()
pyodbc.Error: ('08S01', '[08S01] [FreeTDS][SQL Server]Read from the server failed (20004) (SQLFetch)')
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "en_str.py", line 45, in <module>
INNER JOIN notified.Message m ON c.MessageID = m.MessageID where c.CreateDate>'2016-01-01 00:00:00.0';''',db007_cnxn)
File "/usr/local/anaconda/lib/python3.5/site-packages/pandas/io/sql.py", line 331, in read_sql_query
parse_dates=parse_dates, chunksize=chunksize)
File "/usr/local/anaconda/lib/python3.5/site-packages/pandas/io/sql.py", line 1092, in read_query
data = result.fetchall()
File "/usr/local/anaconda/lib/python3.5/site-packages/sqlalchemy/engine/result.py", line 970, in fetchall
self.cursor, self.context)
File "/usr/local/anaconda/lib/python3.5/site-packages/sqlalchemy/engine/base.py", line 1341, in _handle_dbapi_exception
exc_info
File "/usr/local/anaconda/lib/python3.5/site-packages/sqlalchemy/util/compat.py", line 202, in raise_from_cause
reraise(type(exception), exception, tb=exc_tb, cause=cause)
File "/usr/local/anaconda/lib/python3.5/site-packages/sqlalchemy/util/compat.py", line 185, in reraise
raise value.with_traceback(tb)
File "/usr/local/anaconda/lib/python3.5/site-packages/sqlalchemy/engine/result.py", line 964, in fetchall
l = self.process_rows(self._fetchall_impl())
File "/usr/local/anaconda/lib/python3.5/site-packages/sqlalchemy/engine/result.py", line 915, in _fetchall_impl
return self.cursor.fetchall()
sqlalchemy.exc.DBAPIError: (pyodbc.Error) ('08S01', '[08S01] [FreeTDS][SQL Server]Read from the server failed (20004) (SQLFetch)')
내 디스크 공간이 90기가바이트 공간을 복용 TMP 폴더에 완전하고 odbc.log 파일을 가져옵니다. 100TB 공간이있는 다른 마운트 된 디스크가 있지만 odbc.log는 tmp 폴더에서만 생성됩니다. 이것에 대한 해결책은 무엇입니까? 이 문제가 어떻게 해결 될 수 있는지에 대한 생각은? 또는 100 바이트 공간 디스크에서 100 TB 공간의 디스크로 odbc.log 파일 위치를 변경하는 방법은 무엇입니까?
또한 ec2 인스턴스 위치를 제공하는 대신 s3 버킷 위치를 지정하면이 odbc.log 파일을 피할 수 있습니까?
도움이 될 것입니다.