Обзор

В этом посте вы узнаете, как импортировать данные CSV в базу данных Firestore с помощью GCP.

Цели

  • Что такое GCP
  • Что такое Firestore
  • Настройка GCP
  • Настроить Firestore в GCP
  • Написать код импорта базы данных
  • Загрузите файл CSV в GCP
  • Импортируйте данные в Firestore
  • Просмотр сохраненных данных в Firestore

1. Что такое GCP?

Google Cloud Platform (GCP) - это набор сервисов общедоступных облачных вычислений, предоставляемых Google. Платформа включает ряд размещенных сервисов для вычислений, хранения и приложений, которые работают на оборудовании Google.

Доступ к сервисам Google Cloud Platform могут получить разработчики программного обеспечения, администраторы облачных служб и другие ИТ-специалисты предприятия через общедоступный Интернет или через выделенное сетевое соединение.

2. Что такое Firestore?

Cloud Firestore - это быстрая, полностью управляемая, бессерверная, облачная база данных документов NoSQL, которая упрощает хранение, синхронизацию и запросы данных для ваших мобильных, веб-приложений и приложений Интернета вещей в глобальном масштабе.

Его клиентские библиотеки обеспечивают синхронизацию в реальном времени и офлайн-поддержку, а его функции безопасности и интеграция с Firebase и Google Cloud Platform (GCP) ускоряют создание действительно бессерверных приложений.

3. Настройка GCP

Откройте Google Cloud Console и примите условия, если вы новый пользователь. Затем создайте новый проект с именем RainfallCSV (вы можете назвать свой собственный).

4. Настройте Firestore в GCP.

После создания проекта щелкните значок меню, прокрутите вниз до «Хранилище» и щелкните FireStore.

После щелчка по данным выберите режим Native Mode.

После выбора основного режима выберите, где хранить данные (выберите ближайший регион), а затем нажмите Создать базу данных.

После создания базы данных вы увидите экран, как показано ниже.

Теперь щелкните значок облачной оболочки, как показано ниже.

После создания оболочки мы настроим идентификатор проекта с помощью следующей команды, чтобы проверить, настроен ли проект или нет.

gcloud config list project

Теперь установите идентификатор проекта, используя команду ниже.

gcloud config set project PROEJCTID
gcloud config set project rainfallcsv

После того, как проект настроен, пора написать логику для чтения данных CSV и импорта их в Firestore.

Щелкните "Запустить редактор".

5. Напишите код импорта базы данных.

После открытия редактора создайте в терминале новый каталог с именем rainfall, а затем смените каталог.

mkdir rainfall
cd rainfall

Инициализируйте npm с помощью приведенной ниже команды в терминале и заполните данные.

npm init

Нажмите Enter для всех параметров, и вы должны увидеть файл package.json, созданный с указанными ниже данными.

{  
   "name": "rainfallcsvexport",  
   "version": "1.0.0",  
   "description": "Rainfall Data conversion",  
   "main": "index.js",  
   "scripts": {    "test": "echo \"Error: no test specified\" && exit 1"  },  
   "author": "Nidhin",  
   "license": "ISC"
}

Установить зависимости

Установите следующие зависимости.

npm install @google-cloud/firestore
npm install csv-parse

Создайте новый файл с именем rainfallDataExport.js, используя команду в терминале (вы можете назвать его как угодно).

touch rainfallDataExport.js

Скопируйте приведенный ниже код и вставьте в файл.

Объяснение

В приведенном выше коде мы сделали

  • Чтение содержимого из файла CSV и передача его writeToFirestore()
  • writeToFirestore() использует пакетный процесс, в котором каждая из записей обрабатывается по очереди, и устанавливает ссылку на документ на основе добавленного идентификатора. В конце функции содержимое пакета записывается в базу данных.
var docRef = db.collection('rainfall').doc(record.SUBDIVISION);

6. Загрузите файл CSV в GCP.

Теперь загрузим CSV-файл, который собираемся обработать. Щелкните ссылку, чтобы загрузить CSV-файл Rainfall.

Загрузите файл CSV в папку дождя, щелкнув имя папки правой кнопкой мыши.

После того, как файл загружен в каталог, пора обработать данные.

7. Импортируйте данные в Firestore.

В терминале выполните следующую команду.

Syntax:
node javascript-filename.js  csv-filename.csv

Так что наши будут такими:

node rainfallDataExport.js rainfall.csv

Нажмите Enter сейчас, и вы должны увидеть, что данные импортируются. В консоли вы получите сообщение, подобное приведенному ниже:

Wrote 4117 records

8. Просмотрите сохраненные данные в Firestore.

Как только вы увидите указанное выше сообщение в консоли, нажмите кнопку MenuButton - ›Firestore -› Data, и вы должны увидеть импортированные данные.

Вы также можете просмотреть данные из консоли firebase. Перейдите в консоль Firebase и нажмите «Создать новый проект», затем выберите имя проекта из раскрывающегося списка (то, которое мы создали в консоли GCP) и нажмите «Создать».

Перейдите в базу данных и нажмите Firestore, чтобы увидеть данные:

Поздравляю!

Вы узнали, как экспортировать данные CSV в Firestore с помощью GCP.

Удачного обучения :)