Как ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ, Π²Ρ‹Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ ΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ большиС Π΄Π°Π½Π½Ρ‹Π΅ Π΄Ρ‘ΡˆΠ΅Π²ΠΎ ΠΈ быстро? Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pushdown-оптимизация?

Π›ΡŽΠ±Π°Ρ опСрация с большими Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… мощностСй. ΠžΠ±Ρ‹Ρ‡Π½ΠΎΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· Π±Π°Π·Ρ‹ Π½Π° Hadoop ΠΌΠΎΠΆΠ΅Ρ‚ Π΄Π»ΠΈΡ‚ΡŒΡΡ нСдСлями ΠΈΠ»ΠΈ ΡΡ‚ΠΎΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊ ΠΊΡ€Ρ‹Π»ΠΎ самолёта. НС Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΆΠ΄Π°Ρ‚ΡŒ ΠΈ Ρ‚Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ? БбалансируйтС Π½Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ Π½Π° Ρ€Π°Π·Π½Ρ‹Π΅ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹. Один ΠΈΠ· способов – pushdown-оптимизация.

Π― попросил Π²Π΅Π΄ΡƒΡ‰Π΅Π³ΠΎ Π² России Ρ‚Ρ€Π΅Π½Π΅Ρ€Π° ΠΏΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΈ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ² Informatica АлСксСя АнаньСва Ρ€Π°ΡΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ pushdown-ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ Π² Informatica Big Data Management (BDM). Когда-Ρ‚ΠΎ ΡƒΡ‡ΠΈΠ»ΠΈΡΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°ΠΌΠΈ Informatica? Π‘ΠΊΠΎΡ€Π΅Π΅ всСго ΠΈΠΌΠ΅Π½Π½ΠΎ АлСксСй рассказывал Π²Π°ΠΌ Π°Π·Ρ‹ PowerCenter ΠΈ объяснял, ΠΊΠ°ΠΊ ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΌΠ°ΠΏΠΏΠΈΠ½Π³ΠΈ.

АлСксСй АнаньСв, Ρ€ΡƒΠΊΠΎΠ²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒ направлСния ΠΏΠΎ ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΡŽ DIS Group

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pushdown?

МногиС ΠΈΠ· вас ΡƒΠΆΠ΅ Π·Π½Π°ΠΊΠΎΠΌΡ‹ с Informatica Big Data Management (BDM). ΠŸΡ€ΠΎΠ΄ΡƒΠΊΡ‚ ΡƒΠΌΠ΅Π΅Ρ‚ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ большиС Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· Ρ€Π°Π·Π½Ρ‹Ρ… источников, ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ ΠΈΡ… ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ систСмами, обСспСчиваСт ΠΊ Π½ΠΈΠΌ Π»Ρ‘Π³ΠΊΠΈΠΉ доступ, позволяСт ΠΏΡ€ΠΎΡ„ΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄Ρ€ΡƒΠ³ΠΎΠ΅.
Π’ ΡƒΠΌΠ΅Π»Ρ‹Ρ… Ρ€ΡƒΠΊΠ°Ρ… BDM способСн Ρ‚Π²ΠΎΡ€ΠΈΡ‚ΡŒ чудСса: Π·Π°Π΄Π°Ρ‡ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ быстро ΠΈ с ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ рСсурсами.

Π’ΠΎΠΆΠ΅ Ρ‚Π°ΠΊ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅? ΠΠ°ΡƒΡ‡ΠΈΡ‚Π΅ΡΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ pushdown Π² BDM для распрСдСлСния Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°ΠΌΠΈ. ВСхнология pushdown позволяСт ΠΏΡ€Π΅Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ ΠΌΠ°ΠΏΠΏΠΈΠ½Π³ Π² скрипт ΠΈ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ срСду, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ этот скрипт Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒΡΡ. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΎΠ³ΠΎ Π²Ρ‹Π±ΠΎΡ€Π° позволяСт ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΡΠΈΠ»ΡŒΠ½Ρ‹Π΅ стороны Ρ€Π°Π·Π½Ρ‹Ρ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ ΠΈ Π΄ΠΎΡΡ‚ΠΈΠ³Π°Ρ‚ΡŒ ΠΈΡ… максимальной ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.

Для настройки срСды исполнСния скрипта Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏ pushdown. Π‘ΠΊΡ€ΠΈΠΏΡ‚ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π·Π°ΠΏΡƒΡ‰Π΅Π½ Π½Π° Hadoop ΠΈΠ»ΠΈ частично распрСдСлСн ΠΌΠ΅ΠΆΠ΄Ρƒ источником ΠΈ ΠΏΡ€ΠΈΠ΅ΠΌΠ½ΠΈΠΊΠΎΠΌ. Π•ΡΡ‚ΡŒ 4 Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… Ρ‚ΠΈΠΏΠ° pushdown. Маппинг ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒ Π² скрипт (native). Маппинг ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ максимально Π½Π° источникС (source) ΠΈΠ»ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π½Π° источникС (full). Π’Π°ΠΊΠΆΠ΅ ΠΌΠ°ΠΏΠΏΠΈΠ½Π³ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π² скрипт Hadoop (none).

Pushdown-оптимизация

ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½Π½Ρ‹Π΅ 4 Ρ‚ΠΈΠΏΠ° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ – ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ pushdown ΠΏΠΎΠ΄ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Π΅ Π½ΡƒΠΆΠ΄Ρ‹ систСмы. НапримСр, часто цСлСсообразнСС ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, примСняя Π΅Ρ‘ собствСнныС возмоТности. А ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ – силами Hadoop, Ρ‡Ρ‚ΠΎΠ±Ρ‹ саму Π±Π°Π·Ρƒ Π½Π΅ ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ.

Π”Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим случай, ΠΊΠΎΠ³Π΄Π° ΠΈ источник, ΠΈ ΠΏΡ€ΠΈΠ΅ΠΌΠ½ΠΈΠΊ находятся Π² Π‘Π”, Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ исполнСния ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ: Π² зависимости ΠΎΡ‚ настроСк это Π±ΡƒΠ΄Π΅Ρ‚ Informatica, сСрвСр Π‘Π” ΠΈΠ»ΠΈ Hadoop. Π’Π°ΠΊΠΎΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΡ‡Π½ΠΎ ΠΏΠΎΠ½ΡΡ‚ΡŒ Ρ‚Π΅Ρ…Π½ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ сторону Ρ€Π°Π±ΠΎΡ‚Ρ‹ этого ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ°. ЕстСствСнно, Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΉ ΠΆΠΈΠ·Π½ΠΈ, такая ситуация Π½Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚, Π½ΠΎ для дСмонстрации Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π° ΠΎΠ½Π° ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ Π½Π°ΠΈΠ»ΡƒΡ‡ΡˆΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ.

Π’ΠΎΠ·ΡŒΠΌΡ‘ΠΌ ΠΌΠ°ΠΏΠΏΠΈΠ½Π³ для чтСния Π΄Π²ΡƒΡ… Ρ‚Π°Π±Π»ΠΈΡ† Π² Π΅Π΄ΠΈΠ½ΠΎΠΉ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… Oracle. А Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ чтСния ΠΏΡƒΡΡ‚ΡŒ Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π² этой ΠΆΠ΅ Π±Π°Π·Π΅. Π‘Ρ…Π΅ΠΌΠ° ΠΌΠ°ΠΏΠΏΠΈΠ½Π³Π° Π±ΡƒΠ΄Π΅Ρ‚ такая:

Как ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ, Π²Ρ‹Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ ΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ большиС Π΄Π°Π½Π½Ρ‹Π΅ Π΄Ρ‘ΡˆΠ΅Π²ΠΎ ΠΈ быстро? Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pushdown-оптимизация?

Π’ Π²ΠΈΠ΄Π΅ ΠΌΠ°ΠΏΠΏΠΈΠ½Π³Π° Π½Π° Informatica BDM 10.2.1 это выглядит Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

Как ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ, Π²Ρ‹Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ ΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ большиС Π΄Π°Π½Π½Ρ‹Π΅ Π΄Ρ‘ΡˆΠ΅Π²ΠΎ ΠΈ быстро? Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pushdown-оптимизация?

Π’ΠΈΠΏ pushdown – native

Если ΠΌΡ‹ Π²Ρ‹Π±Π΅Ρ€Π΅ΠΌ Ρ‚ΠΈΠΏ pushdown native, Ρ‚ΠΎ ΠΌΠ°ΠΏΠΏΠΈΠ½Π³ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ Π½Π° сСрвСрС Informatica. Π”Π°Π½Π½Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΡ€ΠΎΡ‡Ρ‚Π΅Π½Ρ‹ с сСрвСра Oracle, пСрСнСсСны Π½Π° сСрвСр Informatica, трансформированы Ρ‚Π°ΠΌ ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Ρ‹ Π² Hadoop. Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ ETL-процСсс.

Π’ΠΈΠΏ pushdown – source

ΠŸΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ Ρ‚ΠΈΠΏΠ° source ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°ΡΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ наш процСсс ΠΌΠ΅ΠΆΠ΄Ρƒ сСрвСром Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… (Π‘Π”) ΠΈ Hadoop. ΠŸΡ€ΠΈ исполнСнии процСсса с этой настройкой Π² Π±Π°Π·Ρƒ полСтят запросы Π½Π° Π²Ρ‹Π±ΠΎΡ€ΠΊΡƒ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ†. А ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ Π² Π²ΠΈΠ΄Π΅ шагов Π½Π° Hadoop.
Π‘Ρ…Π΅ΠΌΠ° исполнСния Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ Ρ‚Π°ΠΊ:

Как ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ, Π²Ρ‹Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ ΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ большиС Π΄Π°Π½Π½Ρ‹Π΅ Π΄Ρ‘ΡˆΠ΅Π²ΠΎ ΠΈ быстро? Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pushdown-оптимизация?

НиТС – ΠΏΡ€ΠΈΠΌΠ΅Ρ€ настройки срСды исполнСния.

Как ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ, Π²Ρ‹Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ ΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ большиС Π΄Π°Π½Π½Ρ‹Π΅ Π΄Ρ‘ΡˆΠ΅Π²ΠΎ ΠΈ быстро? Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pushdown-оптимизация?

Π’ этом случаС ΠΌΠ°ΠΏΠΏΠΈΠ½Π³ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ Π² Π΄Π²Π° шага. Π’ Π΅Π³ΠΎ настройках ΠΌΡ‹ ΡƒΠ²ΠΈΠ΄ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ прСвратился Π² скрипт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΏΡ€Π°Π²Π»Π΅Π½ Π½Π° источник. ΠŸΡ€ΠΈΡ‡Π΅ΠΌ объСдинСниС Ρ‚Π°Π±Π»ΠΈΡ† ΠΈ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… выполнится Π² Π²ΠΈΠ΄Π΅ ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ запроса Π½Π° источникС.
На ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ΅ Π½ΠΈΠΆΠ΅, ΠΌΡ‹ Π²ΠΈΠ΄ΠΈΠΌ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΌΠ°ΠΏΠΏΠΈΠ½Π³ Π½Π° BDM, Π° Π½Π° источникС – ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ запрос.

Как ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ, Π²Ρ‹Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ ΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ большиС Π΄Π°Π½Π½Ρ‹Π΅ Π΄Ρ‘ΡˆΠ΅Π²ΠΎ ΠΈ быстро? Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pushdown-оптимизация?

Роль Hadoop Π² Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ свСдСтся ΠΊ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΡŽ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠΌ Π΄Π°Π½Π½Ρ‹Ρ… – Π΄ΠΈΡ€ΠΈΠΆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ ΠΈΠΌΠΈ. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ запроса Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ Π² Hadoop. ПослС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ чтСния Ρ„Π°ΠΉΠ» ΠΈΠ· Hadoop Π±ΡƒΠ΄Π΅Ρ‚ записан Π² ΠΏΡ€ΠΈΠ΅ΠΌΠ½ΠΈΠΊ.

Π’ΠΈΠΏ pushdown – full

ΠŸΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ Ρ‚ΠΈΠΏΠ° full ΠΌΠ°ΠΏΠΏΠΈΠ½Π³ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ Π² запрос Π½Π° Π‘Π”. А Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ запроса Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ Π½Π° Hadoop. Π‘Ρ…Π΅ΠΌΠ° Ρ‚Π°ΠΊΠΎΠ³ΠΎ процСсса прСдставлСна Π½ΠΈΠΆΠ΅.

Как ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ, Π²Ρ‹Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ ΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ большиС Π΄Π°Π½Π½Ρ‹Π΅ Π΄Ρ‘ΡˆΠ΅Π²ΠΎ ΠΈ быстро? Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pushdown-оптимизация?

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ настройки прСдставлСн Π½ΠΈΠΆΠ΅.

Как ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ, Π²Ρ‹Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ ΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ большиС Π΄Π°Π½Π½Ρ‹Π΅ Π΄Ρ‘ΡˆΠ΅Π²ΠΎ ΠΈ быстро? Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pushdown-оптимизация?

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΌΠ°ΠΏΠΏΠΈΠ½Π³ ΠΏΠΎΡ…ΠΎΠΆΠΈΠΉ Π½Π° ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΉ. Π Π°Π·Π½ΠΈΡ†Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ вся Π»ΠΎΠ³ΠΈΠΊΠ° ΠΏΠ΅Ρ€Π΅Π½ΠΎΡΠΈΡ‚ΡŒΡΡ Π½Π° ΠΏΡ€ΠΈΠ΅ΠΌΠ½ΠΈΠΊ Π² Π²ΠΈΠ΄Π΅ пСрСопрСдСлСния Π΅Π³ΠΎ вставки. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΌΠ°ΠΏΠΏΠΈΠ½Π³Π° прСдставлСн Π½ΠΈΠΆΠ΅.

Как ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ, Π²Ρ‹Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ ΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ большиС Π΄Π°Π½Π½Ρ‹Π΅ Π΄Ρ‘ΡˆΠ΅Π²ΠΎ ΠΈ быстро? Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pushdown-оптимизация?

Π—Π΄Π΅ΡΡŒ, ΠΊΠ°ΠΊ ΠΈ Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌ случаС, Hadoop выполняСт Ρ€ΠΎΠ»ΡŒ Π΄ΠΈΡ€ΠΈΠΆΡ‘Ρ€Π°. Но здСсь Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ источника ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Ρ†Π΅Π»ΠΈΠΊΠΎΠΌ, Π° дальшС Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΏΡ€ΠΈΠ΅ΠΌΠ½ΠΈΠΊΠ° выполняСтся Π»ΠΎΠ³ΠΈΠΊΠ° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ….

Π’ΠΈΠΏ pushdown – null

Ну ΠΈ послСдний Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ – Ρ‚ΠΈΠΏ pushdown, Π² Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ наш ΠΌΠ°ΠΏΠΏΠΈΠ½Π³ прСвратится Π² скрипт Π½Π° Hadoop.

ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΌΠ°ΠΏΠΏΠΈΠ½Π³ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ Ρ‚Π°ΠΊ:

Как ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ, Π²Ρ‹Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ ΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ большиС Π΄Π°Π½Π½Ρ‹Π΅ Π΄Ρ‘ΡˆΠ΅Π²ΠΎ ΠΈ быстро? Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pushdown-оптимизация?

Π—Π΄Π΅ΡΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· Ρ„Π°ΠΉΠ»ΠΎΠ²-источников сначала Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΡ€ΠΎΡ‡Ρ‚Π΅Π½Ρ‹ Π½Π° Hadoop. Π—Π°Ρ‚Π΅ΠΌ Π΅Π³ΠΎ ΠΆΠ΅ срСдствами эти Π΄Π²Π° Ρ„Π°ΠΉΠ»Π° Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½Π΅Π½Ρ‹. ПослС этого Π΄Π°Π½Π½Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½Ρ‹ ΠΈ Π²Ρ‹Π³Ρ€ΡƒΠΆΠ΅Π½Ρ‹ Π² Π‘Π”.

Понимая ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ pushdown-ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‡Π΅Π½ΡŒ эффСктивно ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ процСссы Ρ€Π°Π±ΠΎΡ‚Ρ‹ с большими Π΄Π°Π½Π½Ρ‹ΠΌΠΈ. Π’Π°ΠΊ, совсСм Π½Π΅Π΄Π°Π²Π½ΠΎ ΠΎΠ΄Π½Π° крупная компания всСго Π·Π° нСсколько нСдСль Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΈΠ»Π° ΠΈΠ· Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π° Π² Hadoop большиС Π΄Π°Π½Π½Ρ‹Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎ этого собирала нСсколько Π»Π΅Ρ‚.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: habr.com

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ