Apache Spark е рамка клъстерни изчисления с отворен код който предоставя интерфейс за клъстерно програмиране в комплект с Implicit Data Parallelism and Fault Tolerance, която кодовата база на проекта Spark е дарена на Apache Software Foundation, която отговаря за нейната поддръжка.
Апачи Спарк може да се счита за универсална, ориентирана към скорост клъстерна изчислителна система.
Предоставете API в Java, Scala, Python и R, плюс също така осигурява оптимизиран двигател който поддържа изпълнението на графики като цяло.
също поддържа богат и богат набор от инструменти на високо ниво сред които знам включват Spark SQL (за базирана на SQL структурирана обработка на данни), MLlib за внедряване на машинно обучение, GraphX за обработка на графики и Spark Streaming.
Spark SQL е модулът Апачи Спарк за работа със структурирани данни и е много популярен в приложенията Spark. Според Databricks, компанията, основана от създателите на Apache Spark, дори разработчиците на Python и Scala вършат голяма част от работата си с Spark SQL двигателя.
Днес Spark е де факто рамката за обработка на големи данни, наука за данни, машинно обучение и анализ на данни.
Относно Apache Spark 3.0
Сега рамката е в нейната версия 3.0 и сред най-важните нови функции, трябва да се отбележи, че Spark 3.0 е два пъти по-бърз от предишната версия, разчитайки на TPC-DS, наред с други.
Това увеличение на производителността беше постигнато чрез подобрения като например изпълнение на адаптивни заявки, подрязване на динамични дялове и други оптимизации. Съответствието със стандарта ANSI SQL също е подобрено.
Spark 3.0 е основна версия с повече от 3400 разрешени билета, но само в рамките на основните промени Те се ограничават до основните нови функции за SQL и Python, наред с други.
Apache Spark 3.0 укрепва тази позиция чрез значително подобряване на поддръжката за SQL и Python, двата най-широко използвани езика със Spark днес и чрез предоставяне на много оптимизации на всички нива.
PySpark, Spark API за Python, има повече от 5 милиона изтегляния месечно на PyPI, индекса на пакета на Python. Много разработчици на Python Те използват API за анализ на данни, въпреки че той е ограничен до обработка на един възел.
Следователно Python беше ключова област на развитие за Spark 3.0. Развитието на API на Apache Spark е ускорено, за да направи учените по данни по-продуктивни при работа с големи данни в разпределени среди.
Koalas елиминира необходимостта от създаване на много функции (напр. графична поддръжка) в PySpark, за по-добра производителност в клъстер.
Засега можем да кажем, че ролята на Spark често е ограничена до ролята на ETL (Extract Transform Load).
Това по-специално води до значителни подобрения на API, включително подсказки от тип Python и допълнителни UDF-та за панди (дефинирани от потребителя функции).
Spark 3.0 предлага по-добро обработване на грешки в Python, и повикванията към дефинирани от потребителя функции R са до 40 пъти по-бързи.
Трябва също да се отбележи, че в Spark 3.0, 46% от всички корекции са за SQL функционалност, който е подобрил както производителността, така и ANSI съвместимостта.
Това каза, трите най-важни нови функции в Spark SQL engine са изпълнението на адаптивни заявки.
Методите за оптимизация Заявките обикновено се фокусират върху статичната оптимизация на заявките.
Поради разделянето на съхранението и обработката в Spark, пристигането на данни може да бъде непредсказуемо. Поради тези причини адаптивното изпълнение на заявки става по-важно за Spark, отколкото за традиционните системи.
Има много други функции, които можете да проверите в бележките за изданието. Функции, обхващащи източници на данни, екосистеми, мониторинг, отстраняване на грешки и др.
Можете да проверите бележката за изданието като отидете на следната връзка.
Fuente: https://spark.apache.org/