Доступ к данным Google BigQuery из local Jupyter Notebooks
Я получил несколько ноутбуков и иду на DataLab. Я хотел бы, по разным причинам получить доступ к тем же данным из местных ноутбука Jupyter на моей машине.
этот вопрос предложено несколько подходов, которые до сих пор я не могу получить работу.
в частности, библиотека Gcloud:
from gcloud import bigquery
client = bigquery.Client()
Дайте мне трассировку стека, последняя строка которого:
ContextualVersionConflict: (protobuf 2.6.1 (/usr/local/lib/python2.7/dist-packages), Requirement.parse('protobuf!=3.0.0.b2.post1,>=3.0.0b2'), set(['gcloud']))
библиотека Pandas многообещающее:
df=pd.io.gbq.read_gbq('SELECT CCS_Category_ICD9, Gender, Admit_Month FROM [xxxxxxxx-xxxxx:xxxx_100MB_newform.xxxxxx_100MB_newform]ORDER by CCS_Category_ICD9',
project_id='xxxxxxxx-xxxxx')
также дает мне трассировку стека:
IOError: [Errno 2] No such file or directory: '/usr/local/lib/python2.7/dist-packages/httplib2-0.9.1.dist-info/METADATA'
возможно, у меня есть проблема auth на подходе Pandas, хотя мой браузер в настоящее время Auth'D к проекту? или мне не хватает зависимости?
любые предложения или рекомендации приветствуются..
каков наилучший способ доступа к источнику данных BigQuery из локального ноутбука Jupyter?
3 ответов
на основе ошибки от gbq.read()
, похоже, что httplib2 может быть установлен неправильно. На панд установка, есть несколько дополнительных зависимостей, которые необходимы для поддержки Google BigQuery (httplib2 является одним из них).
Чтобы переустановить / восстановить установку, попробуйте:
pip install httplib2 --ignore-installed
после установки дополнительных зависимостей для поддержки Google BigQuery должен работать следующий код:
from pandas.io import gbq
df = gbq.read_gbq('SELECT * FROM MyDataset.MyTable', project_id='my-project-id')
Если вы использовали специфические для Datalab способы доступа к GCP, то вы можете попробовать использовать https://github.com/googledatalab/datalab вместо этого. Это даст вам Datalab-совместимую функциональность в ноутбуке Jupyter.
У меня была та же проблема, но мне удалось решить ее, установив версию conda gbq, я уже установил дистрибутив Anaconda python, поэтому я думаю, что, возможно, какая-то ссылка отсутствует, если вы используете pip
стадион conda установки панды-ГБК --стадион conda-Фордж канал эта команда сделала свое дело