Serwer SFTP ogólnego pliku danych umożliwia przesyłanie wielu typów plików danych na jeden serwer SFTP w każdym środowisku. Z tego przewodnika dowiesz się, jak korzystać z ogólnego serwera SFTP, i znajdziesz linki do odpowiednich przewodników dotyczących poszczególnych plików danych, których zamierzasz używać.
(Więcej informacji znajdziesz w sekcji Eksportowanie plików danych (od początku do końca) lub Pliki danych (dla początkujących) w dokumentacji).Ogólny serwer SFTP wymaga 2 osobnych przesyłań:
- Plik deskryptora: opisuje typ pliku danych, który będziesz przesyłać.
- Pliki danych: zawartość rzeczywistego pliku danych.
Struktura pola opisu
Plik deskryptora jest przesyłany, aby poinformować nasz system o typie przesyłanego pliku danych. Dzięki temu możemy prawidłowo zweryfikować i przetworzyć plik danych. Plik deskryptora należy przesłać przed zawartością pliku danych. Musi on spełniać te wymagania dotyczące nazewnictwa:
- Plik deskryptora musi mieć rozszerzenie
.filesetdesc.json. - Nazwa każdego pliku deskryptora musi być unikalna i nie można jej użyć ponownie w przypadku kolejnych przesłanych plików. Zalecamy umieszczenie w nazwie pliku sygnatury czasowej generowania i nazwy pliku danych.
- Przykład: offers_1524606581.filesetdesc.json
- Każdy plik deskryptora musi zawierać listę wszystkich plików danych w najnowszym pliku danych dla odpowiedniej nazwy pliku danych.
message FilesetDescriptor {
// The timestamp at which this feed was generated, in Unix time format
// (seconds since the epoch). (required)
int64 generation_timestamp = 1;
// Identifies the name of this feed. (required)
string name = 2;
// Paths (relative to the dropbox root) specifying data files included in this
// feed. (required)
repeated string data_file = 3;
}Możliwe wartości pola name to:
Przykładowy plik deskryptora JSON dla pliku danych z ofertami z 2 fragmentami znajdziesz poniżej:
{
"generation_timestamp": 1524606581,
"name": "promote.offer",
"data_file": [
"offers_1524606581_1.json",
"offers_1524606581_2.json"
]
}Struktura treści kanału
Po przesłaniu pliku deskryptora prześlij wszystkie pliki danych dla typu danych pliku danych odpowiadającego plikowi konfiguracyjnemu pliku danych o nazwie podanej w pliku deskryptora. Nazwy plików i ścieżki (względne w serwerze SFTP) muszą być dokładnie takie same jak te podane w polu data_file. Jeśli brakuje jakiegoś pliku, ma on nieprawidłową nazwę lub został przesłany do innej lokalizacji, cały plik danych nie zostanie przetworzony.
Zawartość tych plików danych pliku danych musi być zgodna z odpowiednią specyfikacją pliku danych podaną w pliku deskryptora.
Każda nazwa pliku danych musi być unikalna i nie może być używana ponownie w różnych przesłanych plikach. Zalecamy uwzględnienie w nazwie pliku sygnatury czasowej generowania i numeru fragmentu (identyfikatora w postaci kolejnej liczby).
- Przykład: offers_1524606581_1.json
Rozmiary plików danych i częstotliwość przesyłania
- Rozmiar pliku danych (po skompresowaniu) nie może przekraczać 200 MB.
- Rozmiar każdego rozpakowanego pliku danych powinien być mniejszy niż 2 GB.
- Większość integracji będzie wymagać tylko jednego fragmentu. Używaj jak najmniejszej liczby fragmentów. Każdy plik danych może zawierać maksymalnie 1000 fragmentów.
- Poszczególne rekordy wysłane w jednym fragmencie nie muszą być wysyłane w przyszłych plikach danych w tym samym numerze fragmentu.
- Aby uzyskać lepszą wydajność, równomiernie rozdziel dane między fragmenty, tak aby wszystkie pliki fragmentów miały podobny rozmiar.
- W razie potrzeby skompresuj pliki danych za pomocą gzip. Zrób to jednak w przypadku każdego fragmentu pliku danych.
Rozwiązywanie problemów i debugowanie
Po przesłaniu plików (pliku opisu i pliku danych) otwórz Przeglądarkę przesyłania (dokumentacja) w Portalu partnerów (kliknij Przesyłanie > Historia), aby śledzić postęp przesyłania pliku danych.
W kolumnie „Nazwa pliku danych” znajdź plik danych, wyszukując wpisany w pliku deskryptora symbol name.
Gdy plik danych zostanie przetworzony (stan to Success lub Fail), możesz kliknąć jego wiersz, aby wyświetlić szczegóły błędów i ostrzeżeń.