Считать n строк из объекта s3 с помощью AWS - PullRequest
0 голосов
/ 11 января 2019

В моей лямбде я пытаюсь проанализировать содержимое документа из корзины s3. Документ, который я обрабатываю, представляет собой текстовый файл размером более 100 МБ. Мне нужно разобрать только первую строку файла. Каков наилучший рентабельный способ чтения файла?

В настоящее время я беру содержимое с помощью метода getObjectContent () и беру 1-ую строку из него, как показано ниже.

private AmazonS3 s3 =  AmazonS3ClientBuilder.standard().build ();
GetObjectRequest getObjectRequest = new GetObjectRequest(bucket, key);
S3Object s3Object = s3.getObject(getObjectRequest);


BufferedReader reader = new BufferedReader(new InputStreamReader(s3Object.getObjectContent()));
String firstLine;
try {
  while ((firstLine = reader.readLine()) != null) {
    logger.log("META PROCESSOR | FIRST LINE OF FILE : " + firstLine);
    break;
  }
} catch (IOException e) {
  logger.log("META PROCESSOR | FAILED TO LOAD FIRST LINE ");
  return null;
}

Это хороший способ прочитать весь контент, просто прочитав первую строку? Есть ли какой-либо метод для чтения n строк из файла или n байтов из файла?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...