60 年の 2024 件以上のデータ エンジニアの面接の質問と回答
新人向けのデータ エンジニア面接の質問
1) データエンジニアリングについて説明します。
データエンジニアリングはビッグデータで使用される用語です。 データ収集と研究の応用に焦点を当てています。 さまざまなソースから生成されたデータは単なる生データです。 データ エンジニアリングは、この生データを有用な情報に変換するのに役立ちます。
2) データモデリングとは何ですか?
データモデリング 複雑なソフトウェア設計を図として文書化し、誰でも簡単に理解できるようにする手法です。さまざまなデータ オブジェクトとルール間に関連付けられたデータ オブジェクトの概念的表現です。
3) データモデリングのさまざまなタイプの設計スキーマをリストする
データ モデリングには主に 1 種類のスキーマがあります: 2) スター スキーマと XNUMX) スノーフレーク スキーマ。
4) 構造化データと非構造化データを区別する
構造化データと非構造化データの違いは次のとおりです。
構造化データ | 非構造化データ | |
---|---|---|
Storage | DBMS | 管理されていないファイル構造 |
スタンダード | ADO.net、ODBC、SQL | STMP、XML、CSV、SMS |
統合ツール | ELT (抽出、変換、ロード) | コードを含む手動データ入力またはバッチ処理 |
スケーリング | スキーマのスケーリングが難しい | スケーリングは非常に簡単です。 |
5) Hadoop アプリケーションのすべてのコンポーネントについて説明する
- Hadoop 共通: これは、Hadoop で使用されるユーティリティとライブラリの一般的なセットです。
- HDFS: この Hadoop アプリケーションは、Hadoop データが保存されるファイル システムに関連しています。 高帯域幅を備えた分散ファイル システムです。
- Hadoop MapReduce: 大規模なデータ処理を提供するためのアルゴリズムに基づいています。
- Hadoop YARN: Hadoop クラスター内のリソース管理に使用されます。また、ユーザーのタスクのスケジュール設定にも使用できます。
6) ネームノードとは何ですか?
これは HDFS の中心です。HDFS のデータを格納し、クラスター全体のさまざまなファイルを追跡します。ここでは実際のデータは格納されません。データは DataNode に格納されます。
7) Hadoop ストリーミングを定義する
これは、マップの作成とジョブの削減を可能にし、特定のクラスターに送信するユーティリティです。
8) HDFS の完全な形式は何ですか?
HDFS は Hadoop 分散ファイル システムの略です。
9) HDFS でのブロックとブロック スキャナーの定義
ブロックはデータ ファイルの最小単位です。 Hadoop は、巨大なファイルを自動的に小さな部分に分割します。
ブロック スキャナーは、データノード上に表示されるブロックのリストを検証します。
10) ブロック スキャナーが破損したデータ ブロックを検出した場合、どのような手順が実行されますか?
ブロック スキャナーが破損したデータ ブロックを検出したときに実行される手順は次のとおりです。
1) まず、ブロック スキャナーが破損したデータ ブロックを検出すると、DataNode が NameNode に報告します。
2) NameNode は、破損したブロックのレプリカを使用して新しいレプリカを作成するプロセスを開始します。
3) 正しいレプリカの複製数が複製係数と一致するように試行します。 一致が見つかった場合、破損したデータ ブロックは削除されません。
11) NameNode が DataNode から取得する XNUMX つのメッセージに名前を付けますか?
NameNode が DataNode から取得するメッセージは 1 つあります。 それは、2) ブロックレポートと XNUMX) ハートビートです。
12) Hadoop のさまざまな XML 構成ファイルを列挙しますか?
Hadoop には XNUMX つの XML 構成ファイルがあります。
- マップレッドサイト
- コアサイト
- HDFS サイト
- 糸の現場
13) ビッグデータの XNUMX つの V とは何ですか?
ビッグデータの XNUMX つの V は次のとおりです。
- 速度
- 多様
- 出来高
- 真実
14) Hadoopの特徴を説明する
Hadoop の重要な機能は次のとおりです。
- これは、フリーウェアとして利用できるオープンソースのフレームワークです。
- Hadoop は多くの種類のハードウェアと互換性があり、特定のノード内の新しいハードウェアに簡単にアクセスできます。
- Hadoop は、データの高速分散処理をサポートします。
- データはクラスターに保存され、他の操作からは独立しています。
- Hadoop では、異なるノードを持つブロックごとに 3 つのレプリカを作成できます。
15) Reducerの主なメソッドを説明する
- setup(): 入力データのサイズや分散キャッシュなどのパラメータを設定するために使用されます。
- cleanup(): このメソッドは、一時ファイルをクリーンアップするために使用されます。
- reduce(): これは、関連付けられた縮小タスクとともにキーごとに XNUMX 回呼び出されるリデューサーの中心です。
16) COSHH の略語は何ですか?
COSHH の略語は、異機種 Hadoop システム向けの分類および最適化ベースのスケジュールです。
17) スタースキーマの説明
スタースキーマ スター結合スキーマは、最も単純なタイプのデータ ウェアハウス スキーマです。 構造が星のようなので、スター スキーマと呼ばれます。 スター スキーマでは、スターの中心に XNUMX つのファクト テーブルと複数の関連ディメンション テーブルがある場合があります。 このスキーマは、大規模なデータ セットのクエリに使用されます。
18) ビッグデータ ソリューションを導入するにはどうすればよいですか?
ビッグデータ ソリューションを展開するには、次の手順に従います。
1) RDBMSなどのデータソースを使用してデータを統合する SAP, MySQL, Salesforce
2) データ抽出されたデータを NoSQL データベースまたは HDFS に保存します。
3) Pig などの処理フレームワークを使用してビッグ データ ソリューションを展開します。 Spark、MapReduce。
19) FSCKの説明
ファイル システム チェック (FSCK) は、HDFS で使用されるコマンドです。 FSCKコマンドは、ファイルの不整合や問題をチェックするために使用されます。
20) スノーフレークスキーマの説明
A スノーフレークスキーマ はスター スキーマの拡張であり、追加の次元が追加されます。 図が雪の結晶に似ていることからスノーフレークと呼ばれています。 ディメンション テーブルは正規化されており、データが追加のテーブルに分割されます。
21) スタースキーマとスノーフレークスキーマを区別する
星 | スノーフレーク スキーマ |
ディメンション階層はディメンション テーブルに保存されます。 | 各階層は個別のテーブルに保存されます。 |
データの冗長性が高い可能性が高い | データの冗長性が存在する可能性は低いです。 |
非常にシンプルなDB設計です | 複雑なDB設計 |
キューブ処理の高速化方法を提供する | 複雑な結合のため、キューブの処理が遅くなります。 |
22) Hadoop分散ファイルシステムについて説明する
Hadoop は、S3、HFTP FS、FS、HDFS などのスケーラブルな分散ファイル システムで動作します。Hadoop 分散ファイル システムは、Google ファイル システム上に作成されています。このファイル システムは、コンピュータ システムの大規模なクラスターで簡単に実行できるように設計されています。
23) データ エンジニアの主な責任を説明する
データ エンジニアには多くの責任があります。データのソース システムを管理します。データ エンジニアは複雑なデータ構造を簡素化し、データの重複を防ぎます。多くの場合、ELT とデータ変換も提供します。
24) YARN の完全な形は何ですか?
YARN の完全な形式は、Yet Another Resource Negotiator です。
25) Hadoop のさまざまなモードをリストする
Hadoop のモードは、1) スタンドアロン モード、2) 擬似分散モード、3) 完全分散モードです。
26) Hadoop でセキュリティを実現するにはどうすればよいですか?
Hadoop でセキュリティを実現するには、次の手順を実行します。
1) 最初のステップは、サーバーに対するクライアントの認証チャネルを保護することです。 タイムスタンプをクライアントに提供します。
2) XNUMX 番目のステップでは、クライアントは受信したタイムスタンプを使用して TGS にサービス チケットを要求します。
3) 最後のステップで、クライアントはサービス チケットを使用して特定のサーバーに対する自己認証を行います。
27) Hadoop のハートビートとは何ですか?
Hadoop では、NameNode と DataNode が相互に通信します。 ハートビートは、DataNode の存在を示すために DataNode によって NameNode に定期的に送信される信号です。
28) Hadoop での NAS と DAS の区別
NAS | DAS |
収納容量は10個9 10へ12 バイトで。 | 収納容量は10個9 バイトで。 |
GB あたりの管理コストは中程度です。 | GBあたりの管理コストが高い。 |
Ethernet または TCP/IP を使用してデータを送信します。 | IDE/SCSI を使用してデータを送信する |
29) データ エンジニアが使用する重要なフィールドまたは言語をリストする
データ エンジニアが使用するフィールドまたは言語をいくつか示します。
- 確率と線形代数
- 機械学習
- 傾向分析と回帰
- Hive QL および SQL データベース
30) ビッグデータとは何ですか?
これは大量の構造化データと非構造化データであり、従来のデータ保存方法では簡単に処理できません。 データ エンジニアは Hadoop を使用してビッグ データを管理しています。
経験者向けのデータ エンジニアの面接の質問
31) FIFO スケジューリングとは何ですか?
これは、Hadoop ジョブ スケジューリング アルゴリズムです。 この FIFO スケジューリングでは、レポーターはワーク キューからジョブを、最も古いジョブから順に選択します。
32) Hadoop でタスク トラッカー、ネームノード、ジョブ トラッカーが実行されるデフォルトのポート番号を示します。
Hadoop でタスク トラッカー、NameNode、ジョブ トラッカーが実行されるデフォルトのポート番号は次のとおりです。
- タスク トラッカーは 50060 ポートで実行されます
- NameNode は 50070 ポートで実行されます
- Job Tracker は 50030 ポートで実行されます
33) HDFS データ ノードでブロック スキャナーを無効にする方法
HDFS データ ノードでブロック スキャナーを無効にするには、dfs.datanode.scan.period.hours を 0 に設定します。
34) Hadoop で XNUMX つのノード間の距離を定義するにはどうすればよいですか?
距離は、最も近いノードまでの距離の合計に等しくなります。 getDistance() メソッドは、XNUMX つのノード間の距離を計算するために使用されます。
35) Hadoop で汎用ハードウェアを使用する理由は何ですか?
汎用ハードウェアは入手しやすく、手頃な価格です。に対応したシステムです Windows、MS-DOS、または Linux。
36) HDFS でのレプリケーション係数の定義
レプリケーション係数は、システム内のファイルのレプリカの総数です。
37) NameNode にはどのようなデータが保存されますか?
Namenode は、ブロック情報や名前空間情報などの HDFS のメタデータを保存します。
38) ラック認識とはどういう意味ですか?
Haddop クラスターでは、Namenode は、読み取りまたは書き込み要求に対して近くのラックに近いファイルを読み書きする際のネットワーク トラフィックを改善するために Datanode を使用します。Namenode は、ラック情報を取得するために各 DataNode のラック ID を維持します。この概念は、Hadoop ではラック認識と呼ばれます。
39) セカンダリネームノードの機能は何ですか?
セカンダリ ネームノードの機能は次のとおりです。
- EditLog と FsImage ファイルのコピーを保存する FsImage。
- NameNode のクラッシュ: NameNode がクラッシュした場合、セカンダリ NameNode の FsImage を使用して NameNode を再作成できます。
- チェックポイント: HDFS でデータが破損していないことを確認するために、セカンダリ ネームノードによって使用されます。
- 更新: EditLog および FsImage ファイルを自動的に更新します。 これは、セカンダリ NameNode 上の FsImage ファイルを最新の状態に保つのに役立ちます。
40) NameNode がダウンし、ユーザーが新しいジョブを送信するとどうなりますか?
NameNode は Hadoop の単一障害点であるため、ユーザーは新しいジョブを送信できず、実行できません。 NameNode がダウンしている場合、このユーザーはジョブを実行する前に NameNode が再起動するまで待つ必要があるため、ジョブが失敗する可能性があります。
41) Hadoop のリデューサーの基本フェーズは何ですか?
Hadoop には、Reducer の XNUMX つの基本フェーズがあります。
1. シャッフル: ここで、Reducer は Mapper からの出力をコピーします。
2. 並べ替え: 並べ替えでは、Hadoop は同じキーを使用して Reducer への入力を並べ替えます。
3. 削減: このフェーズでは、キーに関連付けられた出力値が削減され、データが最終出力に統合されます。
42) Hadoop が Context オブジェクトを使用する理由は何ですか?
Hadoop フレームワークは、残りのシステムと対話するために、Mapper クラスで Context オブジェクトを使用します。Context オブジェクトは、コンストラクターでシステム構成の詳細とジョブを取得します。
setup()、cleanup()、map() メソッドで情報を渡すために Context オブジェクトを使用します。このオブジェクトにより、マップ操作中に重要な情報を利用できるようになります。
43) Hadoop でコンバイナーを定義する
これは Map と Reduce の間のオプションのステップです。Combiner は Map 関数からの出力を受け取り、キーと値のペアを作成し、Hadoop Reducer に送信します。Combiner のタスクは、Map からの最終結果を、同一のキーを持つ要約レコードに要約することです。
44) HDFS で利用可能なデフォルトのレプリケーション係数は何ですか? それは何を示していますか?
HDFS で使用できるデフォルトのレプリケーション係数は XNUMX です。 デフォルトのレプリケーション係数は、各データのレプリカが XNUMX つ存在することを示します。
45) Hadoop におけるデータの局所性とは何ですか?
ビッグ データ システムでは、データのサイズが巨大であるため、ネットワーク上でデータを移動することは意味がありません。 現在、Hadoop は計算をデータに近づけようとしています。 このようにして、データは保存された場所に対してローカルなままになります。
46) HDFS でバランサーを定義する
HDFS では、バランサーは、データノード全体でデータのバランスを再調整し、過剰に使用されているノードから十分に使用されていないノードにブロックを移動するために管理スタッフによって使用される管理機能です。
47) HDFS のセーフ モードについて説明する
これは、クラスター内の NameNode の読み取り専用モードです。最初、NameNode はセーフモードです。セーフモードでは、ファイルシステムへの書き込みが防止されます。この時点で、すべての DataNode からデータと統計が収集されます。
48) Apache Hadoop における分散キャッシュの重要性は何ですか?
Hadoop には、アプリケーションが使用するファイルをキャッシュすることでジョブのパフォーマンスを向上させる、分散キャッシュと呼ばれる便利なユーティリティ機能があります。 アプリケーションは、JobConf 構成を使用してキャッシュ用のファイルを指定できます。
Hadoop フレームワークは、タスクを実行する必要があるノードにこれらのファイルのレプリカを作成します。 これはタスクの実行が開始される前に行われます。 分散キャッシュは、読み取り専用ファイル、zip、jar ファイルの配布をサポートします。
49) Hive のメタストアとは何ですか?
スキーマと Hive テーブルの場所が保存されます。
Hive テーブルの定義、マッピング、およびメタストアに保存されるメタデータ。 JPOXがサポートするRDBMSに格納できます。
50) Hive の SerDe とはどういう意味ですか?
SerDe は、Serializer または Deserializer の短縮名です。 Hive では、SerDe を使用して、テーブルから特定のフィールドにデータを読み取ったり、任意の形式で特定のフィールドに書き込むことができます。
51) Hive データ モデルで利用可能なコンポーネントをリストする
Hive データ モデルには次のコンポーネントがあります。
- テーブル類
- パーティション
- バケット
52) Hadoop エコシステムにおける Hive の使用法を説明する。
Hive は、Hadoop エコシステムに保存されたデータを管理するためのインターフェイスを提供します。Hive は、HBase テーブルのマッピングと操作に使用されます。Hive クエリは、MapReduce ジョブの作成と実行に関連する複雑さを隠すために、MapReduce ジョブに変換されます。
53) Hive でサポートされているさまざまな複雑なデータ型/コレクションを一覧表示します。
Hive は次の複雑なデータ型をサポートしています。
- 地図
- ストラクト
- 配列
- Union
54) Hive の .hiverc ファイルがどのように使用されるかを説明してください。
Hive では、.hiverc が初期化ファイルです。 このファイルは、Hive のコマンド ライン インターフェイス (CLI) を起動するときに最初に読み込まれます。 .hiverc ファイルでパラメータの初期値を設定できます。
55) Hive で XNUMX つのデータ ファイルに対して複数のテーブルを作成することは可能ですか?
はい、データ ファイルに対して複数のテーブル スキーマを作成できます。 Hive はスキーマを Hive メタストアに保存します。 このスキーマに基づいて、同じデータから異なる結果を取得できます。
56) Hive で利用可能なさまざまな SerDe 実装について説明する
Hive には多くの SerDe 実装が用意されています。独自のカスタム SerDe 実装を作成することもできます。次に、有名な SerDe 実装をいくつか示します。
- OpenCSVSerde
- 正規表現
- 区切り文字付きJSONSerDe
- ByteStreamTypedSerDe
57) Hive で利用可能なリストテーブル生成関数
以下はテーブル生成関数のリストです。
- 分解(配列)
- JSON_タプル()
- スタック()
- 爆発(マップ)
58) Hive の Skewed テーブルとは何ですか?
歪んだテーブルは、より頻繁に列値を含むテーブルです。 Hive では、作成時にテーブルを SKEWED として指定すると、歪んだ値が別のファイルに書き込まれ、残りの値は別のファイルに書き込まれます。
59) create ステートメントで作成されたオブジェクトをリストします。 MySQL.
create ステートメントによって作成されたオブジェクト MySQL 以下の通り:
- データベース
- 目次
- 表
- ユーザー
- 手順
- トリガー
- イベント
- 表示
- 演算
60) データベース構造の見方 MySQL?
データベース構造を確認するには MySQLは、使用することができます
DESCRIBEコマンド。 このコマンドの構文は次のとおりです DESCRIBE Table name;
.
データ エンジニア向けの SQL 面接の質問
61) 特定の文字列を検索する方法 MySQL テーブルの列?
正規表現演算子を使用して文字列を検索します MySQL カラム。ここでは、さまざまな種類の正規表現を定義し、正規表現を使用して検索することもできます。
62) データ分析とビッグデータがどのように企業の収益を増加させることができるかを説明しますか?
データ分析とビッグデータによって企業の収益を増やす方法は次のとおりです。
- データを効率的に使用してビジネスの成長を確実にします。
- 顧客価値を高めます。
- 分析を活用して人員配置レベルの予測を改善します。
- 組織の生産コストを削減する。
これらの面接の質問は、あなたの活力(口頭)にも役立ちます