Наборы данных Spark — строгая типизация

Что такое строго типизированный API и нетипизированный API по отношению к наборам данных Spark?

Чем наборы данных похожи/отличаются от фреймов данных?


person Arvind Kumar    schedule 09.11.2016    source источник
comment
Кто-нибудь может ответить на этот вопрос.   -  person Arvind Kumar    schedule 23.11.2016
comment
Ссылка объяснила разницу между набором данных и кадром данных. stackoverflow.com/questions/31508083/   -  person Arvind Kumar    schedule 25.11.2016


Ответы (1)


API-интерфейсы Dataframe являются нетипизированными API, поскольку тип будет известен только во время выполнения. Принимая во внимание, что API наборов данных — это типизированные API, для которых тип будет известен во время компиляции.

df.select("device").where("signal > 10")      // using untyped APIs   
ds.filter(_.signal > 10).map(_.device)         // using typed APIs
person Vignesh I    schedule 01.10.2017
comment
прекрасный пример @vignesh-i - person Sandeep Samal; 04.06.2019
comment
Поправьте меня, если я ошибаюсь, но разве это не разница между динамической и статической типизацией? Строгая типизация означает, что вы не можете выполнять какие-либо операции с любым типом. Например, вы не можете привести логическое значение к типу int или добавить логическое значение и строку. Вот ссылка, объясняющая, о чем я думаю: typed" title="в чем разница между строго типизированным языком и статически типизированным"> stackoverflow.com/questions/2690544/) - person vi_ral; 04.06.2020
comment
Кроме того, чтобы быть справедливым, ни у кого на самом деле нет стандартного определения строго типизированного и статически типизированного, похоже, что это обсуждалось очень долго: D - person vi_ral; 04.06.2020