Я новичок в науке о данных - поэтому извиняюсь за мои основные вопросы ...
Я работаю над небольшим проектом, где я извлекаю данные из Elasticsearch и хотел бы работать с ними в Jupyter.
Для подключения к Elasticsearch я использую
docs = spark.read.format('org.elasticsearch.spark.sql').options(**options).load('syscalls*/doc')
Соединение работает нормально, даже для извлечения данных требуется около 40 000 000 документов.
Что я хотел сделать дальше:
В целях тестирования я хотел бы поработать над небольшим набором данных, содержащим только один столбец
testcnr = docs.select('test_nr').withColumn("test_nr", docs["test_nr"].cast("int"))
Это прекрасно работает.Когда я пытаюсь создать небольшой набор сэмплов с помощью
test_sample = testcnr.sample(False, 0.000001, seed=0)
, кажется, что jupyter продолжает работать над всем набором данных (testcnr), потому что для этого требуется столько же времени, сколько и для запроса только образца DataFrame (проба).Где я не прав?