0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

データの保存方法について

Posted at

現状

下記2つをGCSのバケットで管理している。

  • データロック済みのデータcsv
  • 上記から解析対象をマート化したデータcsv

課題

  • マート化したデータ処理の紐づけ(現状はjupyter notebook)
  • データ内容の理解が属人化している

AIの回答で試そうと思っている案

データカタログ:

GCSに保存されたデータの内容を管理するために、データカタログ(例: Google Cloud Data Catalog)の利用を検討してください。

各CSVファイルについて、試験名、データ取得日、カラムの説明、分析における注意点などを記述しておくことで、チームでの共有や再利用が容易になります。

メタデータ管理:

ファイル名だけでなく、GCSのメタデータを利用して、データに関する情報を付与することも有効です。例えば、content-typeにtext/csvを指定したり、カスタムメタデータとして、データの説明やデータ作成者などを記述できます。

アクセス制御:

権限管理は最小限の権限原則に従い、必要な人にのみアクセス権を付与します。
GCSのIAMを使用し、分析者には読み取り権限のみを付与し、データ管理者には書き込み権限を付与します。

ファイル命名規則への紐付け:

前述の通り、ファイル名に試験名、日付、バージョンなどの情報を含めることで、どの分析コードがどのデータに対応しているかを推測しやすくします。

例えば、trial_A_20231027_v1.csvに対応する分析コードをanalyze_trial_A_v1.pyのように命名することで、紐付けが容易になります。

メタデータによる紐付け:

GCSのメタデータや、データカタログのメタデータに、分析コードのファイル名やGitのコミットハッシュなどを記載することで、より正確な紐付けが可能です。

例えば、analyzed_byというメタデータにanalyze_trial_A_v1.pyを指定したり、analysis_commitというメタデータにGitのコミットハッシュを指定します

bigqueryで保存してbigqueryからデータをpython dfにダウンロード

from google.cloud import bigquery
import pandas as pd

# サービスアカウントのJSONキーファイルのパスを指定
client = bigquery.Client.from_service_account_json('path/to/your/service-account.json')

# SQLクエリを実行
query = """
    SELECT
        trial_id,
        age,
        gender,
        diagnosis
    FROM
        `your-project.your_dataset.your_table`
    WHERE
        age >= 18
    LIMIT 1000
"""

query_job = client.query(query)

# クエリ結果をpandas DataFrameに変換
df = query_job.to_dataframe()

# DataFrameの内容を表示
print(df)

# DataFrameの情報を表示
df.info()

# DataFrameの最初の5行を表示
print(df.head())

結果

Coming soon

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?