Membuat set data

Dokumen ini menjelaskan cara membuat set data di BigQuery.

Anda dapat membuat set data dengan cara berikut:

  • Menggunakan Konsol Google Cloud.
  • Menggunakan kueri SQL.
  • Menggunakan perintah bq mk di alat command line bq.
  • Memanggil metode API datasets.insert.
  • Menggunakan library klien.
  • Menyalin set data yang sudah ada.

Untuk mengetahui langkah-langkah menyalin set data, termasuk di berbagai region, lihat Menyalin set data.

Dokumen ini menjelaskan cara menggunakan set data reguler yang menyimpan data di BigQuery. Untuk mempelajari cara menggunakan set data eksternal Spanner, lihat Membuat set data eksternal Spanner. Untuk mempelajari cara menggunakan set data gabungan AWS Glue, lihat Membuat set data gabungan AWS Glue.

Untuk mempelajari cara mengkueri tabel di set data publik, lihat Membuat kueri set data publik dengan Konsol Google Cloud.

Batasan set data

Set data BigQuery memiliki batasan berikut:

  • Lokasi data set hanya dapat ditetapkan pada waktu pembuatan. Setelah set data dibuat, lokasinya tidak dapat diubah.
  • Semua tabel yang direferensikan dalam kueri harus disimpan dalam set data di lokasi yang sama.
  • Set data eksternal tidak mendukung habis masa berlaku tabel, replika, perjalanan waktu, pengurutan default, mode pembulatan default, atau opsi untuk mengaktifkan atau menonaktifkan nama tabel yang tidak peka huruf besar/kecil.

  • Saat Anda menyalin tabel, set data yang berisi tabel sumber dan tabel tujuan harus berada di lokasi yang sama.

  • Nama set data untuk setiap project harus unik.

  • Jika Anda mengubah model penagihan penyimpanan set data, Anda harus menunggu 14 hari sebelum dapat mengubah model penagihan penyimpanan lagi.

  • Anda tidak dapat mendaftarkan set data dalam penagihan penyimpanan fisik jika memiliki komitmen slot tarif tetap lama yang berada di region yang sama dengan set data.

Sebelum memulai

Berikan peran Identity and Access Management (IAM) yang memberi pengguna izin yang diperlukan untuk melakukan setiap tugas dalam dokumen ini.

Izin yang diperlukan

Untuk membuat set data, Anda memerlukan izin IAM bigquery.datasets.create.

Setiap peran IAM yang telah ditetapkan berikut mencakup izin yang Anda perlukan untuk membuat set data:

  • roles/bigquery.dataEditor
  • roles/bigquery.dataOwner
  • roles/bigquery.user
  • roles/bigquery.admin

Untuk mengetahui informasi selengkapnya tentang peran IAM di BigQuery, lihat Peran dan izin yang telah ditetapkan.

Menamai set data

Saat Anda membuat set data di BigQuery, nama set data untuk setiap project harus unik. Nama set data dapat berisi hal berikut:

  • Maksimal 1,024 karakter.
  • Huruf (huruf besar atau huruf kecil), angka, dan garis bawah.

Nama set data peka huruf besar/kecil secara default. mydataset dan MyDataset dapat berdampingan dalam project yang sama, kecuali jika salah satunya menonaktifkan kepekaan huruf besar/kecil.

Nama set data tidak boleh berisi spasi atau karakter khusus seperti -, &, @, atau %.

Set data tersembunyi

Set data tersembunyi adalah set data yang namanya dimulai dengan garis bawah. Anda bisa melakukan kueri tabel dan tabel virtual di set data tersembunyi dengan cara yang sama seperti yang Anda lakukan pada set data lainnya. Set data tersembunyi memiliki batasan berikut:

  • Set data tersebut disembunyikan dari panel Explorer di Konsol Google Cloud.
  • Set data tersebut tidak muncul di tabel virtual INFORMATION_SCHEMA mana pun.
  • Set data tersembunyi tidak dapat digunakan dengan set data tertaut.
  • Set data tersebut tidak muncul di Data Catalog.

Membuat set data

Untuk membuat set data:

Konsol

  1. Buka halaman BigQuery di konsol Google Cloud.

    Buka halaman BigQuery

  2. Di panel Explorer, pilih project tempat Anda ingin membuat set data.

  3. Luaskan opsi Actions, lalu klik Create dataset:

    Gunakan menu tindakan project untuk membuat set data.

  4. Di halaman Create dataset:

    • Untuk Dataset ID, masukkan nama set data yang unik.
    • Untuk Location type, pilih lokasi geografis untuk set data. Setelah set data dibuat, lokasi tidak dapat diubah.

    • Opsional: Jika menginginkan masa berlaku tabel dalam set data ini berakhir, pilih Enable table expiration, lalu tentukan Default maximum table age dalam hari.

    • Opsional: Jika Anda ingin menggunakan kunci enkripsi yang dikelola pelanggan (CMEK), luaskan Advanced options, lalu pilih Customer-managed encryption key (CMEK).

    • Opsional: Jika Anda ingin menggunakan nama tabel yang tidak peka huruf besar/kecil, luaskan Advanced options, lalu pilih Enable case insensitive table names.

    • Opsional: Jika Anda ingin menggunakan kolasi default, luaskan Advanced options, pilih Enable default collation, lalu pilih Default Collation.

    • Opsional: Jika Anda ingin menggunakan mode pembulatan default, luaskan Advanced options, lalu pilih Default Rounding Mode.

    • Opsional: Jika Anda ingin mengaktifkan model penagihan penyimpanan fisik, luaskan Advanced options, lalu pilih Enable physical storage billing model

      Jika Anda mengubah model penagihan set data, perlu waktu 24 jam agar perubahan diterapkan.

      Setelah mengubah model penagihan penyimpanan set data, Anda harus menunggu 14 hari sebelum dapat mengubah model penagihan penyimpanan lagi.

    • Opsional: Jika Anda ingin menetapkan periode perjalanan waktu set data, luaskan Advanced options, lalu pilih Time travel window yang akan digunakan.

    • Klik Buat set data.

SQL

Gunakan pernyataan CREATE SCHEMA.

Untuk membuat set data di project selain project default Anda, tambahkan project ID ke ID set data dalam format berikut: PROJECT_ID.DATASET_ID.

  1. Di Konsol Google Cloud, buka halaman BigQuery.

    Buka BigQuery

  2. Di editor kueri, masukkan pernyataan berikut:

    CREATE SCHEMA PROJECT_ID.DATASET_ID
      OPTIONS (
        default_kms_key_name = 'KMS_KEY_NAME',
        default_partition_expiration_days = PARTITION_EXPIRATION,
        default_table_expiration_days = TABLE_EXPIRATION,
        description = 'DESCRIPTION',
        labels = [('KEY_1','VALUE_1'),('KEY_2','VALUE_2')],
        location = 'LOCATION',
        max_time_travel_hours = HOURS,
        storage_billing_model = BILLING_MODEL);

    Ganti kode berikut:

    • PROJECT_ID: project ID Anda
    • DATASET_ID: ID set data yang Anda buat
    • KMS_KEY_NAME: nama kunci Cloud Key Management Service default yang digunakan untuk melindungi tabel yang baru dibuat dalam set data ini, kecuali jika kunci yang berbeda diberikan pada saat pembuatannya. Anda tidak dapat membuat tabel yang dienkripsi Google dalam set data yang menetapkan parameter ini.
    • PARTITION_EXPIRATION: masa aktif default (dalam hari) untuk partisi dalam tabel berpartisi yang baru dibuat. Akhir masa berlaku partisi default tidak memiliki nilai minimum. Waktu habis masa berlaku mengevaluasi tanggal partisi ditambah nilai bilangan bulat. Setiap partisi yang dibuat dalam tabel berpartisi di set data akan dihapus PARTITION_EXPIRATION hari setelah tanggal partisi. Jika Anda menyediakan opsi time_partitioning_expiration saat membuat atau memperbarui tabel berpartisi, akhir masa berlaku partisi pada tingkat tabel lebih diutamakan daripada akhir masa berlaku partisi default pada tingkat set data.
    • TABLE_EXPIRATION: masa aktif default (dalam hari) untuk tabel yang baru dibuat. Nilai minimumnya adalah 0,042 hari (satu jam). Waktu habis masa berlaku mengevaluasi waktu saat ini ditambah dengan nilai bilangan bulat. Setiap tabel yang dibuat dalam set data akan dihapus TABLE_EXPIRATION hari setelah waktu pembuatannya. Nilai ini diterapkan jika Anda tidak menetapkan akhir masa berlaku tabel saat membuat tabel.
    • DESCRIPTION: deskripsi set data
    • KEY_1:VALUE_1: key-value pair yang ingin Anda tetapkan sebagai label pertama di set data ini
    • KEY_2:VALUE_2: key-value pair yang ingin Anda tetapkan sebagai label kedua
    • LOCATION: lokasi set data. Setelah set data dibuat, lokasi tidak dapat diubah.
    • HOURS: durasi dalam jam pada periode perjalanan waktu untuk set data baru. Nilai HOURS harus berupa bilangan bulat yang dinyatakan dalam kelipatan 24 (48, 72, 96, 120, 144, 168) antara 48 (2 hari) dan 168 (7 hari). Jika opsi ini tidak ditentukan, nilai defaultnya adalah 168 jam.
    • BILLING_MODEL: menetapkan model penagihan penyimpanan untuk set data. Tetapkan nilai BILLING_MODEL ke PHYSICAL untuk menggunakan byte fisik saat menghitung biaya penyimpanan, atau ke LOGICAL untuk menggunakan byte logika. LOGICAL adalah defaultnya.

      Jika Anda mengubah model penagihan set data, perlu waktu 24 jam agar perubahan diterapkan.

      Setelah mengubah model penagihan penyimpanan set data, Anda harus menunggu 14 hari sebelum dapat mengubah model penagihan penyimpanan lagi.

  3. Klik Run.

Untuk informasi selengkapnya tentang cara menjalankan kueri, lihat Menjalankan kueri interaktif.

bq

Untuk membuat set data baru, gunakan perintah bq mk dengan flag --location. Untuk daftar lengkap parameter yang mungkin, lihat referensi perintah bq mk --dataset.

Untuk membuat set data dalam project selain project default Anda, tambahkan project ID ke nama set data dalam format berikut: PROJECT_ID:DATASET_ID.

bq --location=LOCATION mk \
    --dataset \
    --default_kms_key=KMS_KEY_NAME \
    --default_partition_expiration=PARTITION_EXPIRATION \
    --default_table_expiration=TABLE_EXPIRATION \
    --description="DESCRIPTION" \
    --label=KEY_1:VALUE_1 \
    --label=KEY_2:VALUE_2 \
    --add_tags=KEY_3:VALUE_3[,...] \
    --max_time_travel_hours=HOURS \
    --storage_billing_model=BILLING_MODEL \
    PROJECT_ID:DATASET_ID

Ganti kode berikut:

  • LOCATION: lokasi set data. Setelah set data dibuat, lokasi tidak dapat diubah. Anda dapat menetapkan nilai default untuk lokasi menggunakan file .bigqueryrc.

  • KMS_KEY_NAME: nama kunci Cloud Key Management Service default yang digunakan untuk melindungi tabel yang baru dibuat dalam set data ini, kecuali jika kunci yang berbeda diberikan pada saat pembuatannya. Anda tidak dapat membuat tabel yang dienkripsi Google dalam set data yang menetapkan parameter ini.

  • PARTITION_EXPIRATION: masa aktif default (dalam detik) untuk partisi dalam tabel berpartisi yang baru dibuat. Akhir masa berlaku partisi default tidak memiliki nilai minimum. Waktu habis masa berlaku mengevaluasi tanggal partisi ditambah nilai bilangan bulat. Setiap partisi yang dibuat dalam tabel berpartisi di set data akan dihapus PARTITION_EXPIRATION detik setelah tanggal partisi. Jika Anda menyediakan --time_partitioning_expiration flag saat membuat atau memperbarui tabel berpartisi, akhir masa berlaku partisi pada tingkat tabel lebih diutamakan daripada akhir masa berlaku partisi default pada tingkat set data.

  • TABLE_EXPIRATION: masa aktif default (dalam detik) untuk tabel yang baru dibuat. Nilai minimumnya adalah 3.600 detik (satu jam). Waktu habis masa berlaku mengevaluasi waktu saat ini ditambah dengan nilai bilangan bulat. Setiap tabel yang dibuat dalam set data akan dihapus TABLE_EXPIRATION detik setelah waktu pembuatannya. Nilai ini diterapkan jika Anda tidak menetapkan akhir masa berlaku tabel saat membuat tabel.

  • DESCRIPTION: deskripsi set data

  • KEY_1:VALUE_1: key-value pair yang ingin Anda tetapkan sebagai label pertama di set data ini, dan KEY_2:VALUE_2 adalah key-value pair yang ingin Anda tetapkan sebagai label kedua.

  • KEY_3:VALUE_3: key-value pair yang ingin Anda tetapkan sebagai tag pada set data. Tambahkan beberapa tag di bawah tanda yang sama dengan koma di antara pasangan kunci:nilai.

  • HOURS: durasi dalam jam pada periode perjalanan waktu untuk set data baru. Nilai HOURS harus berupa bilangan bulat yang dinyatakan dalam kelipatan 24 (48, 72, 96, 120, 144, 168) antara 48 (2 hari) dan 168 (7 hari). Jika opsi ini tidak ditentukan, nilai defaultnya adalah 168 jam.

  • BILLING_MODEL: menetapkan model penagihan penyimpanan untuk set data. Tetapkan nilai BILLING_MODEL ke PHYSICAL untuk menggunakan byte fisik saat menghitung biaya penyimpanan, atau ke LOGICAL untuk menggunakan byte logika. LOGICAL adalah defaultnya.

    Jika Anda mengubah model penagihan set data, perlu waktu 24 jam agar perubahan diterapkan.

    Setelah mengubah model penagihan penyimpanan set data, Anda harus menunggu 14 hari sebelum dapat mengubah model penagihan penyimpanan lagi.

  • PROJECT_ID: project ID Anda.

  • DATASET_ID: ID set data yang Anda buat.

Misalnya, perintah berikut membuat set data bernama mydataset dengan lokasi data ditetapkan ke US, akhir masa berlaku tabel defaultnya adalah 3.600 detik (1 jam), dan deskripsi This is my dataset. Perintah ini menggunakan pintasan -d, bukan flag --dataset. Jika Anda menghapus -d dan --dataset, perintah defaultnya adalah membuat set data.

bq --location=US mk -d \
    --default_table_expiration 3600 \
    --description "This is my dataset." \
    mydataset

Untuk mengonfirmasi bahwa set data telah dibuat, masukkan perintah bq ls. Selain itu, Anda dapat membuat tabel saat membuat set data baru menggunakan format berikut: bq mk -t dataset.table. Untuk mengetahui informasi selengkapnya tentang cara membuat tabel, lihat Membuat tabel.

Terraform

Gunakan resource google_bigquery_dataset.

Untuk melakukan autentikasi ke BigQuery, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.

Membuat set data

Contoh berikut akan membuat set data bernama mydataset:

resource "google_bigquery_dataset" "default" {
  dataset_id                      = "mydataset"
  default_partition_expiration_ms = 2592000000  # 30 days
  default_table_expiration_ms     = 31536000000 # 365 days
  description                     = "dataset description"
  location                        = "US"
  max_time_travel_hours           = 96 # 4 days

  labels = {
    billing_group = "accounting",
    pii           = "sensitive"
  }
}

Saat Anda membuat set data menggunakan resourcegoogle_bigquery_dataset, resource tersebut akan otomatis memberikan akses untuk set data ke semua akun yang merupakan anggota peran dasar pada level project. Jika Anda menjalankan terraform show perintah setelah membuat set data, blok access untuk set data akan terlihat mirip dengan berikut ini:

Blok akses untuk set data yang dibuat menggunakan Terraform.

Untuk memberikan akses ke set data, sebaiknya gunakan salah satu resource google_bigquery_iam, seperti ditunjukkan pada contoh berikut, kecuali jika Anda berencana untuk membuat objek yang diotorisasi, seperti tabel virtual yang diotorisasi, dalam set data. Dalam hal ini, gunakan resource google_bigquery_dataset_access. Lihat dokumentasi tersebut untuk mengetahui contohnya.

Membuat set data dan memberikan akses ke set data tersebut

Contoh berikut membuat set data bernama mydataset, lalu menggunakan resource google_bigquery_dataset_iam_policy untuk memberikan akses ke set data tersebut.

resource "google_bigquery_dataset" "default" {
  dataset_id                      = "mydataset"
  default_partition_expiration_ms = 2592000000  # 30 days
  default_table_expiration_ms     = 31536000000 # 365 days
  description                     = "dataset description"
  location                        = "US"
  max_time_travel_hours           = 96 # 4 days

  labels = {
    billing_group = "accounting",
    pii           = "sensitive"
  }
}

# Update the user, group, or service account
# provided by the members argument with the
# appropriate principals for your organization.
data "google_iam_policy" "default" {
  binding {
    role = "roles/bigquery.dataOwner"
    members = [
      "user:raha@altostrat.com",
    ]
  }
  binding {
    role = "roles/bigquery.admin"
    members = [
      "user:raha@altostrat.com",
    ]
  }
  binding {
    role = "roles/bigquery.user"
    members = [
      "group:analysts@altostrat.com",
    ]
  }
  binding {
    role = "roles/bigquery.dataViewer"
    members = [
      "serviceAccount:bqcx-1234567891011-abcd@gcp-sa-bigquery-condel.iam.gserviceaccount.com",
    ]
  }
}

resource "google_bigquery_dataset_iam_policy" "default" {
  dataset_id  = google_bigquery_dataset.default.dataset_id
  policy_data = data.google_iam_policy.default.policy_data
}

Membuat set data dengan kunci enkripsi yang dikelola pelanggan

Contoh berikut membuat set data bernama mydataset, dan juga menggunakan google_kms_crypto_key dan resource google_kms_key_ring untuk menentukan kunci Cloud Key Management Service bagi set data. Anda harus mengaktifkan Cloud Key Management Service API sebelum menjalankan contoh ini.

resource "google_bigquery_dataset" "default" {
  dataset_id                      = "mydataset"
  default_partition_expiration_ms = 2592000000  # 30 days
  default_table_expiration_ms     = 31536000000 # 365 days
  description                     = "dataset description"
  location                        = "US"
  max_time_travel_hours           = 96 # 4 days

  default_encryption_configuration {
    kms_key_name = google_kms_crypto_key.crypto_key.id
  }

  labels = {
    billing_group = "accounting",
    pii           = "sensitive"
  }
  depends_on = [google_project_iam_member.service_account_access]
}

resource "google_kms_crypto_key" "crypto_key" {
  name     = "example-key"
  key_ring = google_kms_key_ring.key_ring.id
}

resource "random_id" "default" {
  byte_length = 8
}

resource "google_kms_key_ring" "key_ring" {
  name     = "${random_id.default.hex}-example-keyring"
  location = "us"
}

# Enable the BigQuery service account to encrypt/decrypt Cloud KMS keys
data "google_project" "project" {
}

resource "google_project_iam_member" "service_account_access" {
  project = data.google_project.project.project_id
  role    = "roles/cloudkms.cryptoKeyEncrypterDecrypter"
  member  = "serviceAccount:bq-${data.google_project.project.number}@bigquery-encryption.iam.gserviceaccount.com"
}

Untuk menerapkan konfigurasi Terraform di project Google Cloud, selesaikan langkah-langkah di bagian berikut.

Menyiapkan Cloud Shell

  1. Luncurkan Cloud Shell.
  2. Tetapkan project Google Cloud default tempat Anda ingin menerapkan konfigurasi Terraform.

    Anda hanya perlu menjalankan perintah ini sekali per project, dan dapat dijalankan di direktori mana pun.

    export GOOGLE_CLOUD_PROJECT=PROJECT_ID

    Variabel lingkungan akan diganti jika Anda menetapkan nilai eksplisit dalam file konfigurasi Terraform.

Menyiapkan direktori

Setiap file konfigurasi Terraform harus memiliki direktorinya sendiri (juga disebut modul root).

  1. Di Cloud Shell, buat direktori dan file baru di dalam direktori tersebut. Nama file harus memiliki ekstensi .tf—misalnya main.tf. Dalam tutorial ini, file ini disebut sebagai main.tf.
    mkdir DIRECTORY && cd DIRECTORY && touch main.tf
  2. Jika mengikuti tutorial, Anda dapat menyalin kode contoh di setiap bagian atau langkah.

    Salin kode contoh ke dalam main.tf yang baru dibuat.

    Atau, salin kode dari GitHub. Tindakan ini direkomendasikan jika cuplikan Terraform adalah bagian dari solusi menyeluruh.

  3. Tinjau dan ubah contoh parameter untuk diterapkan pada lingkungan Anda.
  4. Simpan perubahan Anda.
  5. Lakukan inisialisasi Terraform. Anda hanya perlu melakukan ini sekali per direktori.
    terraform init

    Secara opsional, untuk menggunakan versi penyedia Google terbaru, sertakan opsi -upgrade:

    terraform init -upgrade

Menerapkan perubahan

  1. Tinjau konfigurasi dan pastikan resource yang akan dibuat atau diupdate oleh Terraform sesuai yang Anda inginkan:
    terraform plan

    Koreksi konfigurasi jika diperlukan.

  2. Terapkan konfigurasi Terraform dengan menjalankan perintah berikut dan memasukkan yes pada prompt:
    terraform apply

    Tunggu hingga Terraform menampilkan pesan "Apply complete!".

  3. Buka project Google Cloud Anda untuk melihat hasilnya. Di Konsol Google Cloud, buka resource Anda di UI untuk memastikan bahwa Terraform telah membuat atau mengupdatenya.

API

Panggil metode datasets.insert dengan resource set data yang ditentukan.

C#

Sebelum mencoba contoh ini, ikuti petunjuk penyiapan C# di Panduan memulai BigQuery menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi BigQuery C# API.

Untuk melakukan autentikasi ke BigQuery, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.


using Google.Apis.Bigquery.v2.Data;
using Google.Cloud.BigQuery.V2;

public class BigQueryCreateDataset
{
    public BigQueryDataset CreateDataset(
        string projectId = "your-project-id",
        string location = "US"
    )
    {
        BigQueryClient client = BigQueryClient.Create(projectId);
        var dataset = new Dataset
        {
            // Specify the geographic location where the dataset should reside.
            Location = location
        };
        // Create the dataset
        return client.CreateDataset(
            datasetId: "your_new_dataset_id", dataset);
    }
}

Go

Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Go di Panduan memulai BigQuery menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi BigQuery Go API.

Untuk melakukan autentikasi ke BigQuery, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.

import (
	"context"
	"fmt"

	"cloud.google.com/go/bigquery"
)

// createDataset demonstrates creation of a new dataset using an explicit destination location.
func createDataset(projectID, datasetID string) error {
	// projectID := "my-project-id"
	// datasetID := "mydataset"
	ctx := context.Background()

	client, err := bigquery.NewClient(ctx, projectID)
	if err != nil {
		return fmt.Errorf("bigquery.NewClient: %v", err)
	}
	defer client.Close()

	meta := &bigquery.DatasetMetadata{
		Location: "US", // See https://cloud.google.com/bigquery/docs/locations
	}
	if err := client.Dataset(datasetID).Create(ctx, meta); err != nil {
		return err
	}
	return nil
}

Java

Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Java di Panduan memulai BigQuery menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi BigQuery Java API.

Untuk melakukan autentikasi ke BigQuery, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.

import com.google.cloud.bigquery.BigQuery;
import com.google.cloud.bigquery.BigQueryException;
import com.google.cloud.bigquery.BigQueryOptions;
import com.google.cloud.bigquery.Dataset;
import com.google.cloud.bigquery.DatasetInfo;

public class CreateDataset {

  public static void runCreateDataset() {
    // TODO(developer): Replace these variables before running the sample.
    String datasetName = "MY_DATASET_NAME";
    createDataset(datasetName);
  }

  public static void createDataset(String datasetName) {
    try {
      // Initialize client that will be used to send requests. This client only needs to be created
      // once, and can be reused for multiple requests.
      BigQuery bigquery = BigQueryOptions.getDefaultInstance().getService();

      DatasetInfo datasetInfo = DatasetInfo.newBuilder(datasetName).build();

      Dataset newDataset = bigquery.create(datasetInfo);
      String newDatasetName = newDataset.getDatasetId().getDataset();
      System.out.println(newDatasetName + " created successfully");
    } catch (BigQueryException e) {
      System.out.println("Dataset was not created. \n" + e.toString());
    }
  }
}

Node.js

Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Node.js di Panduan memulai BigQuery menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi BigQuery Node.js API.

Untuk melakukan autentikasi ke BigQuery, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.

// Import the Google Cloud client library and create a client
const {BigQuery} = require('@google-cloud/bigquery');
const bigquery = new BigQuery();

async function createDataset() {
  // Creates a new dataset named "my_dataset".

  /**
   * TODO(developer): Uncomment the following lines before running the sample.
   */
  // const datasetId = "my_new_dataset";

  // Specify the geographic location where the dataset should reside
  const options = {
    location: 'US',
  };

  // Create a new dataset
  const [dataset] = await bigquery.createDataset(datasetId, options);
  console.log(`Dataset ${dataset.id} created.`);
}
createDataset();

PHP

Sebelum mencoba contoh ini, ikuti petunjuk penyiapan PHP di Panduan memulai BigQuery menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi BigQuery PHP API.

Untuk melakukan autentikasi ke BigQuery, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.

use Google\Cloud\BigQuery\BigQueryClient;

/** Uncomment and populate these variables in your code */
// $projectId = 'The Google project ID';
// $datasetId = 'The BigQuery dataset ID';

$bigQuery = new BigQueryClient([
    'projectId' => $projectId,
]);
$dataset = $bigQuery->createDataset($datasetId);
printf('Created dataset %s' . PHP_EOL, $datasetId);

Python

Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Python di Panduan memulai BigQuery menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi BigQuery Python API.

Untuk melakukan autentikasi ke BigQuery, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.

from google.cloud import bigquery

# Construct a BigQuery client object.
client = bigquery.Client()

# TODO(developer): Set dataset_id to the ID of the dataset to create.
# dataset_id = "{}.your_dataset".format(client.project)

# Construct a full Dataset object to send to the API.
dataset = bigquery.Dataset(dataset_id)

# TODO(developer): Specify the geographic location where the dataset should reside.
dataset.location = "US"

# Send the dataset to the API for creation, with an explicit timeout.
# Raises google.api_core.exceptions.Conflict if the Dataset already
# exists within the project.
dataset = client.create_dataset(dataset, timeout=30)  # Make an API request.
print("Created dataset {}.{}".format(client.project, dataset.dataset_id))

Ruby

Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Ruby di Panduan memulai BigQuery menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi BigQuery Ruby API.

Untuk melakukan autentikasi ke BigQuery, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.

require "google/cloud/bigquery"

def create_dataset dataset_id = "my_dataset", location = "US"
  bigquery = Google::Cloud::Bigquery.new

  # Create the dataset in a specified geographic location
  bigquery.create_dataset dataset_id, location: location

  puts "Created dataset: #{dataset_id}"
end

Keamanan set data

Untuk mengontrol akses ke set data di BigQuery, lihat Mengontrol akses ke set data. Untuk informasi tentang enkripsi data, lihat Enkripsi dalam penyimpanan.

Langkah selanjutnya

Coba sendiri

Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa BigQuery dalam skenario dunia nyata. Pelanggan baru mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.

Coba BigQuery gratis