Создать большие объемы данных выборки в S3 для потребления Spark? - PullRequest
0 голосов
/ 03 апреля 2019

У меня есть текущий искровой конвейер, который работает с относительно небольшим количеством данных. Тестирование производительности для такого количества данных только поможет мне, и в идеале я хотел бы протестировать конвейер зажигания на большом количестве данных.

Существуют ли какие-либо методологии или инструменты для имитации или имитации большого количества входных данных для обработки искрой, особенно когда ввод поступает из Amazon S3? Я не хочу, чтобы искра загорелась, когда я начну получать больше данных.

У меня есть схема JSON, которой должны следовать входные данные, если это поможет.

Я не против, если решение включает в себя генерацию ложных входных данных в самой искре или генерацию ложных входных данных на s3.

1 Ответ

0 голосов
/ 03 апреля 2019

Генерировать поддельные данные с помощью искры довольно просто, используя функцию range.

Вот как я буду строить случайные данные с предсказуемой меткой с шумом (но вы можете определить любую логику), если вам нравится Машинное обучение.

val numberOfLines = 4 // or much more ;-)
val numberOfColumns = 4 // or 100
spark.range(numberOfLines)
   .select((0 until numberOfColumns).map(i => rand() as s"c_$i") :_*)
   .withColumn("label", 'c_0 + 'c_1*3 - 'c_2*6 + 9 + rand())
   .show
+-------------------+-------------------+-------------------+------------------+------------------+
|                c_0|                c_1|                c_2|               c_3|             label|
+-------------------+-------------------+-------------------+------------------+------------------+
|0.15187732653071206|0.26585053576672046| 0.9224023831542573|  0.71091441935634| 5.360791420252281|
| 0.2808748382324112|0.14308527032596263|0.18822196601676966|0.5838190107539017| 9.077521940396766|
| 0.7039634202215999| 0.9957351040685353| 0.7726957405440454|  0.98430608640107| 8.095422483235922|
|0.38721961100842617|0.47386287403626837|  0.856405481902437|0.3888408784723435|6.1446425516061955|
+-------------------+-------------------+-------------------+------------------+------------------+

Чтобы проверить чтение с S3, вы можете записать этот фрейм данных и прочитать его обратно.

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