загрузка данных в redshift с помощью nodejs

#amazon-web-services #amazon-s3 #amazon-redshift

Вопрос:

Я проследовал по ссылке https://walkingtree.tech/loading-data-to-redshift-using-nodejs/ и выполните шаг, который создает index.js файл. Тем не менее, я не понимаю, как приложение code.post ( » / » ,) Код, который я изменяю, выглядит следующим образом

 app.post('/', function (request, response) {
// console.log(request.body);
// var body = [];
// var body = JSON.stringify(request.body);
// body.push(request.body.test) ;
var file_name = 'items.txt';
// csvbody = [Object.values(request.body)];
// console.log(body);
csvbody = ["abc","lalala"];
console.log(csvbody);
 

правильно ли синтаксис, что csvbody = [«abc»,»lalala»]; для загрузки в s3 ? и локальный хост 3001 показал, что не может получить /. Что мне делать дальше?

Комментарии:

1. На этой странице написано: «Сервер будет доступен на локальном хосте:3001, который вы можете проверить у почтальона, передав 2 пары значений ключей (первое число и второй символ в соответствии со структурой нашей таблицы test1). Это сначала отправит данные в S3 в виде csv-файла и, наконец, вставит данные в таблицу redshift test1.» Итак, он предназначен для загрузки данных, отправляемых по URL-адресу, но вы, похоже, хотите изменить его для загрузки из файла? Если да, то как вы хотите запустить загрузку? Возможно, это не очень хороший пример программы для копирования.

2. это нормально, чтобы перейти по URL-адресу ‘/’ или загрузить через файл. В настоящее время я загружаю файл, чтобы проверить, может ли он нормально работать.

3. Лучший способ загрузить массовые данные в базу данных Amazon Redshift-это использовать COPY команду для загрузки файла из Amazon S3. Если у вас уже есть файл, вам следует поместить этот файл в S3, а затем вызвать команду КОПИРОВАНИЯ со ссылкой на этот файл. Есть ли какая-то особая причина, по которой вы хотите это сделать? Node.js код? Что будет инициировать вашу загрузку?

4. да, я уже использовал команду КОПИРОВАТЬ, чтобы загрузить файл из Amazon S3 и загрузить его в redshift. Причина, по которой я хотел бы использовать nodejs, заключается в том, что позже я хотел бы создать онлайн-форму для ввода информации пользователями и загрузить отдельные введенные данные в redshift.

5. Если вы вставляете одну строку данных (или несколько строк), проще просто создать INSERT инструкцию и отправить ее в Redshift (вместо COPY инструкции). Это позволит избежать необходимости использовать S3.