Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 理解大型查询表_Node.js_Google Cloud Platform_Google Bigquery - Fatal编程技术网

Node.js 理解大型查询表

Node.js 理解大型查询表,node.js,google-cloud-platform,google-bigquery,Node.js,Google Cloud Platform,Google Bigquery,我仍在学习大查询,对于数据集和表是如何工作的,我有一些问题。我运行了一个查询并将结果保存到一个BigQuery表中。现在,这个表是我提取的数据的快照,还是在新数据与原始查询相匹配时会更新该表 如果是快照。任何人都可以提供一些帮助,使用Nodejs以编程方式更新/替换BigQuery表中的数据 感谢您的帮助该表是一个“快照”,不会自动更新。关于使用Node以编程方式更新/替换表,我建议为其创建一个单独的问题,并尝试提供尽可能多的详细信息。但是,上的示例可能足以让您开始: 该表是一个“快照”,不会自

我仍在学习大查询,对于数据集和表是如何工作的,我有一些问题。我运行了一个查询并将结果保存到一个BigQuery表中。现在,这个表是我提取的数据的快照,还是在新数据与原始查询相匹配时会更新该表

如果是快照。任何人都可以提供一些帮助,使用Nodejs以编程方式更新/替换BigQuery表中的数据

感谢您的帮助

该表是一个“快照”,不会自动更新。关于使用Node以编程方式更新/替换表,我建议为其创建一个单独的问题,并尝试提供尽可能多的详细信息。但是,上的示例可能足以让您开始:

该表是一个“快照”,不会自动更新。关于使用Node以编程方式更新/替换表,我建议为其创建一个单独的问题,并尝试提供尽可能多的详细信息。但是,上的示例可能足以让您开始:


听起来不错,谢谢。我将提出另一个问题。我确实看到了你提供的文件。这实际上是产生这个问题的原因。使用此代码,我可以从通过GCP UI创建的表中导出CSV,但由于该表是“快照”,如果我想定期导出CSV,我需要在导出之前更新/替换该表。但我不知道如何使用node来实现这一点。太好了。当答案对你有帮助时,接受它们是很重要的。您可以为自动化创建另一个问题:)听起来不错,谢谢。我将提出另一个问题。我确实看到了你提供的文件。这实际上是产生这个问题的原因。使用此代码,我可以从通过GCP UI创建的表中导出CSV,但由于该表是“快照”,如果我想定期导出CSV,我需要在导出之前更新/替换该表。但我不知道如何使用node来实现这一点。太好了。当答案对你有帮助时,接受它们是很重要的。您可以为自动化创建另一个问题:)
function loadCSVFromGCS(datasetId, tableId, projectId) {
  // [START bigquery_load_table_gcs_csv]
  // Imports the Google Cloud client libraries
  const {BigQuery} = require('@google-cloud/bigquery');
  const {Storage} = require('@google-cloud/storage');

  /**
   * TODO(developer): Uncomment the following lines before running the sample.
   */
  // const projectId = "your-project-id";
  // const datasetId = "my_dataset";
  // const tableId = "my_table";

  /**
   * This sample loads the CSV file at
   * https://storage.googleapis.com/cloud-samples-data/bigquery/us-states/us-states.csv
   *
   * TODO(developer): Replace the following lines with the path to your file.
   */
  const bucketName = 'cloud-samples-data';
  const filename = 'bigquery/us-states/us-states.csv';

  // Instantiates clients
  const bigquery = new BigQuery({
    projectId: projectId,
  });

  const storage = new Storage({
    projectId: projectId,
  });

  // Configure the load job. For full list of options, see:
  // https://cloud.google.com/bigquery/docs/reference/rest/v2/jobs#configuration.load
  const metadata = {
    sourceFormat: 'CSV',
    skipLeadingRows: 1,
    schema: {
      fields: [
        {name: 'name', type: 'STRING'},
        {name: 'post_abbr', type: 'STRING'},
      ],
    },
  };

  // Loads data from a Google Cloud Storage file into the table
  bigquery
    .dataset(datasetId)
    .table(tableId)
    .load(storage.bucket(bucketName).file(filename), metadata)
    .then(results => {
      const job = results[0];

      // load() waits for the job to finish
      console.log(`Job ${job.id} completed.`);

      // Check the job's status for errors
      const errors = job.status.errors;
      if (errors && errors.length > 0) {
        throw errors;
      }
    })
    .catch(err => {
      console.error('ERROR:', err);
    });
  // [END bigquery_load_table_gcs_csv]
}