Inleiding tot Spark Vragen en antwoorden over sollicitatiegesprekken
Apache Spark is een open-source framework. Spark, omdat het een open-sourceplatform is, kunnen we meerdere programmeertalen gebruiken, zoals Java, Python, Scala, R. In vergelijking met Map-Reduce-procesprestaties helpt spark bij het verbeteren van de uitvoering. Het biedt ook 100 keer snellere uitvoering in het geheugen dan Map-Reduce. Vanwege de verwerkingskracht van vonkjes geven industrieën tegenwoordig de voorkeur aan vonk.
Dus je hebt eindelijk je droombaan in Spark gevonden, maar je vraagt je af hoe je het Spark Interview kunt kraken en wat de waarschijnlijke Spark Interview-vragen voor 2018 kunnen zijn. Elk interview is anders en de reikwijdte van een baan is ook anders. Met dit in gedachten hebben we de meest voorkomende Spark Interview-vragen en -antwoorden voor 2018 ontworpen om u te helpen succes te behalen in uw interview.
Deze vragen zijn verdeeld in twee delen
Deel 1 - Spark Interview-vragen (basis)
Dit eerste deel behandelt fundamentele Spark interviewvragen en antwoorden
1. Wat is Spark?
Antwoord:
Apache Spark is een open-source framework. Het verbetert de uitvoeringsprestaties dan het Map-Reduce-proces. Het is een open platform waar we meerdere programmeertalen kunnen gebruiken zoals Java, Python, Scala, R. Spark biedt uitvoering in het geheugen dat 100 keer sneller is dan Map-Reduce. Het maakt gebruik van het concept van RDD. RDD is een veerkrachtige gedistribueerde gegevensset waarmee gegevens op een transparante manier in het geheugen kunnen worden opgeslagen en alleen op schijf kunnen worden bewaard als dat nodig is. Dit is waar het de tijd verkort om toegang te krijgen tot de gegevens uit het geheugen in plaats van naar Schijf. Vandaag geeft Industry de voorkeur aan Spark vanwege zijn verwerkingskracht.
2. Verschil tussen Hadoop en Spark?
Antwoord:
Kenmerkcriteria | Apache Spark | Hadoop |
Snelheid | 10 tot 100 keer sneller dan Hadoop | Normale snelheid |
Verwerken | Real-time & Batch-verwerking, in het geheugen, caching | Alleen batchverwerking, schijfafhankelijk |
moeilijkheid | Eenvoudig vanwege modules op hoog niveau | Moeilijk om te leren |
Herstel | Staat herstel van partities toe met behulp van RDD | Fouttolerante |
interactiviteit | Heeft interactieve, interactieve modi | Geen interactieve modus behalve Pig & Hive, geen iteratieve modus |
Normale Hadoop-architectuur volgt basis Map-Reduce, voor hetzelfde proces zorgt spark voor uitvoering in het geheugen. In plaats van lezen en schrijven vanaf de harde schijf voor Map-Reduce, biedt vonken lezen en schrijven vanuit virtueel geheugen.
Laten we doorgaan naar de volgende Spark Interview-vragen
3. Wat zijn de kenmerken van Spark?
Antwoord:
- Zorg voor integratiefaciliteit met Hadoop en bestanden op HDFS. Spark kan bovenop Hadoop lopen met behulp van YARN resource clustering. Spark heeft de capaciteit om de Map-Reduce-engine van de Hadoop te vervangen.
- Polyglot: Spark Zorg voor een API op hoog niveau voor Java, Python, Scala en R. Spark Code kan in elk van deze vier talen worden geschreven. IT biedt een onafhankelijke schaal voor schaal (de taal waarin Spark is geschreven) en een python-interpreter. Wat zal helpen om te communiceren met de vonkenmotor? Scala shell is toegankelijk via ./bin/spark-shell en Python shell via ./bin/pyspark vanuit de geïnstalleerde map.
- Snelheid: Spark-engine is 100 keer sneller dan Hadoop Map-Reduce voor grootschalige gegevensverwerking. Snelheid wordt bereikt door partitionering voor parallellisatie van gedistribueerde gegevensverwerking met minimaal netwerkverkeer. Spark Zorg voor RDD's (Resilient Distributed Datasets), die in de cache kunnen worden opgeslagen op computerknooppunten in een cluster
- Meerdere indelingen: Spark heeft een gegevensbron-API. Het biedt een mechanisme voor toegang tot gestructureerde gegevens via Spark SQL. Gegevensbronnen kunnen van alles zijn, Spark maakt gewoon een mechanisme om de gegevens te converteren en naar de vonk te trekken. Spark ondersteunt meerdere gegevensbronnen zoals Hive, HBase, Cassandra, JSON, Parquet, ORC.
- Spark biedt een aantal ingebouwde bibliotheken om meerdere taken uit dezelfde kern uit te voeren, zoals batchverwerking, stomen, machinaal leren, interactieve SQL-query's. Hadoop ondersteunt echter alleen batchverwerking. Spark Zorg voor MLIb (machine learning libraries) die nuttig kunnen zijn voor Big-Data Developer om de gegevens te verwerken. Dit helpt om afhankelijkheden van meerdere tools voor verschillende doeleinden te verwijderen. Spark biedt een gemeenschappelijk krachtig platform voor data-ingenieurs en data-wetenschappers met zowel snelle prestaties als eenvoudig te gebruiken.
- Apache Spark vertraagt de uitvoering van het proces totdat de actie noodzakelijk is. Dit is een van de belangrijkste kenmerken van vonk. Spark voegt elke transformatie toe aan DAG (Direct Acyclic Graph) voor uitvoering, en wanneer actie wil worden uitgevoerd, zal de DAG daadwerkelijk worden geactiveerd.
- Real-time streaming: Apache Spark Biedt real-time berekeningen en lage latentie, vanwege uitvoering in het geheugen. Spark is ontworpen voor grote schaalbaarheid zoals een duizendknoop van het cluster en verschillende modellen voor berekeningen.
4. Wat is GAREN?
Antwoord:
Dit zijn de standaard Spark Interview-vragen die in een interview worden gesteld. YARN (Yet Another Resource Negotiator) is de Resource manager. Spark is een platform dat snelle uitvoering biedt. Spark zal YARN gebruiken voor de uitvoering van de taak naar het cluster, in plaats van de eigen ingebouwde manager. Er zijn enkele configuraties om Garen uit te voeren. Ze omvatten master, deploy-mode, driver-geheugen, executor-geheugen, executor-cores en wachtrij. Dit zijn de algemene Spark Interview-vragen die in een interview hieronder worden gesteld, zijn de voordelen van spark:
Voordelen van Spark ten opzichte van Map-Reduce
Spark heeft de volgende voordelen ten opzichte van Map-Reduce: -
Vanwege het vermogen van het In-memory-proces kan Spark 10 tot 100 keer sneller uitvoeren dan Map-Reduce. Waar Map-Reduce kan worden gebruikt voor persistentie van gegevens in het Map and Reduce-stadium.
Apache Spark biedt een hoog niveau van ingebouwde bibliotheken om meerdere taken tegelijkertijd te verwerken als batchverwerking, Real-time streaming, Spark-SQL, Structured Streaming, MLib, etc. Zelfde tijd biedt Hadoop alleen batchverwerking.
Het Hadoop Map-Reduce-proces is schijfafhankelijk, waarbij Spark Caching en In-Memory biedt.
Spark heeft zowel iteratief, voert meerdere berekeningen uit op dezelfde dataset als interactief, voert berekeningen uit tussen verschillende datasets waarbij Hadoop iteratieve berekeningen niet ondersteunt.
5. Welke taal ondersteunt Spark?
Antwoord:
Spark ondersteunt scala, Python, R en Java. In de markt geeft big data-ontwikkelaar vooral de voorkeur aan scala en python. Voor een schaal om de code te compileren hebben we Set Path of scale / bin directory nodig of om een jar-bestand te maken.
6. Wat is RDD?
Antwoord:
RDD is een abstractie van veerkrachtige gedistribueerde gegevensset, die een verzameling elementen biedt die zijn verdeeld over alle knooppunten van het cluster en waarmee meerdere processen parallel kunnen worden uitgevoerd. Het gebruik van RDD-ontwikkelaar kan de gegevens in het geheugen of in het cachegeheugen opslaan, zodat deze opnieuw kunnen worden gebruikt voor parallelle uitvoering van bewerkingen. RDD kan gemakkelijk worden hersteld na een knooppuntfout.
Deel 2 - Spark Interview-vragen (geavanceerd)
Laten we nu eens kijken naar de geavanceerde Spark Interview-vragen.
7. Wat zijn de factoren die verantwoordelijk zijn voor de uitvoering van Spark?
Antwoord:
1. Spark biedt uitvoering in het geheugen in plaats van afhankelijk van de schijf, zoals Hadoop Map-Reduce.
2.RDD veerkrachtig gedistribueerde gegevensset, een verantwoorde parallelle uitvoering van meerdere bewerkingen op alle knooppunten van een cluster.
3. Spark biedt een gedeelde variabele functie voor parallelle uitvoering. Deze variabelen helpen om de gegevensoverdracht tussen knooppunten te verminderen en een kopie van alle knooppunten te delen. Er zijn twee variabelen.
4.Broadcast-variabele: deze variabele kan worden gebruikt om een waarde in het geheugen op alle knooppunten in het cachegeheugen op te slaan
5.Accumulatorenvariabele: deze variabele wordt alleen “toegevoegd”, zoals tellers en bedragen.
8. Wat is executorgeheugen?
Antwoord:
Dit zijn de veelgestelde Spark Interview-vragen in een interview. Het is de heapgrootte die is toegewezen aan de vonkuitvoerder. Deze eigenschap kan worden bestuurd door de eigenschap spark.executor.memory van de vlag –executor-memory. Elke Spark-toepassing heeft één uitvoerder voor elk werkknooppunt. Deze eigenschap verwijst naar hoeveel geheugen van de werkknooppunten wordt toegewezen voor een toepassing.
9. Hoe gebruik je Spark Stream? Uitleg Eén use case?
Antwoord:
Spark Stream is een van de functies die handig zijn voor een realtime gebruik. We kunnen hiervoor goot, Kafka met een vonk gebruiken. Flume activeert de gegevens van een bron. Kafka bewaart de gegevens in Onderwerp. Van Kafka Spark haalt de gegevens op met behulp van de stream en het zal de gegevens D-streamen en de transformatie uitvoeren.
We kunnen dit proces gebruiken voor een realtime verdachte transactie, realtime aanbiedingen, etc.
Laten we doorgaan naar de volgende Spark Interview-vragen
10. Kunnen we Spark gebruiken voor het ETL-proces?
Antwoord:
Ja, we kunnen het vonkenplatform gebruiken voor het ETL-proces.
11. Wat is Spark SQL?
Antwoord:
Het is een speciale component van Spark die SQL-query's ondersteunt.
12. Welke luie evaluatie?
Antwoord:
Wanneer we met een vonk werken, worden transformaties niet geëvalueerd totdat u een actie uitvoert. Dit helpt de algehele gegevensverwerkingsworkflow te optimaliseren. Bij het definiëren van transformatie wordt deze toegevoegd aan de DAG (Direct Acyclic Graph). En op het moment van actie begint het stapsgewijze transformaties uit te voeren. Dit is de nuttige Spark Interview-vraag die in een interview wordt gesteld.
Aanbevolen artikel
Dit is een handleiding voor de lijst met sollicitatievragen en antwoorden voor Spark, zodat de kandidaat deze Spark-interviewvragen gemakkelijk kan beantwoorden. U kunt ook de volgende artikelen bekijken voor meer informatie-
- Java versus Node JS vereenvoudigt de verschillen
- Vragen tijdens solliciteren bij Mongo Database | Handig en meest gevraagd
- 15 meest succesvolle R sollicitatievragen en antwoorden
- Vragen en antwoorden over sollicitatiegesprekken bij Perl
- Sollicitatievragen voor SAS-systeem - Top 10 nuttige vragen