Programim dhe zhvillim, javascript, python, php, html

Si mund të ngarkoj të dhënat e migrimit në rritje nga PostgresSQL në HDFS?

Unë kam një bazë të dhënash postgresql që e përdor për një server prodhimi. Unë dua të krijoj një grup Hadoop/Spark për të ekzekutuar punët e mapreduce. Për ta bërë këtë, më duhet të ngarkoj të dhënat nga baza ime e të dhënave postgres në hdfs. Qasja naive është të kesh një punë grupore që një herë në ditë hedh përmbajtjen e bazës së të dhënave (120 GB) në HDFS. Kjo do të ishte e kotë dhe e kushtueshme. Meqenëse shumica e të dhënave nuk do të ndryshojnë nga një ditë në tjetrën, teorikisht mund të jetë shumë më e lirë dhe më efikase të dërgohen vetëm ndryshimet çdo ditë. A është e mundur kjo?

Kam lexuar pak për sqoop dhe duket se ofron funksionalitetin që dua, por kërkon të bëj ndryshime në bazën e të dhënave dhe aplikacionin. A ka ndonjë mënyrë që nuk kërkon të bësh ndonjë ndryshim në bazën e të dhënave?


  • Ju nuk mund të merrni ndryshime shtesë nga PostgreSQL para versionit 9.4 pa shtuar nxitës për të regjistruar ndryshimet. Në PostgreSQL 9.4 kjo do të jetë e mundur duke përdorur dekodimin logjik, por ju' d duhet të shkruajë kodin që merr rrjedhën e ndryshimit të deshifrimit logjik dhe e përshtat atë për konsum nga Hadoop. 02.12.2014

Përgjigjet:


1
  • Apache Sqoop mund të lidhet me bazën e të dhënave postgreSQL.

    Sqoop ofron një modalitet importi në rritje i cili mund të përdoret për të tërhequr vetëm rreshta më të rinj se disa grupe rreshtash të importuar më parë, d.m.th., ju mund të merrni përditësimet e tabelës që kanë ndodhur midis ekzekutimit të mëparshëm dhe ekzekutimit aktual.

  • Nuk kërkohen ndryshime në bazën e të dhënave.

Duke përdorur lidhësin Sqoop postgreSQL, mund të lidhni Sqoop me bazën e të dhënave tuaja dhe të merrni importet në rritje pa ndonjë ndryshim të bazës së të dhënave.

02.12.2014
  • sipas dokumentacionit të sqoop këtu: sqoop.apache.org/docs/1.4 .5/ Më duhet të kem një kolonë në çdo tabelë që tregon nëse është modifikuar apo jo. Unë nuk e kam atë. A ka ndonjë mënyrë që sqoop ta zbulojë këtë automatikisht, ngjashëm me mënyrën se si përditësohen bazat e të dhënave skllav? 02.12.2014
  • Materiale të reja

    Masterclass Coroutines: Kapitulli-3: Anulimi i korutinave dhe trajtimi i përjashtimeve.
    Mirë se vini në udhëzuesin gjithëpërfshirës mbi Kotlin Coroutines! Në këtë seri artikujsh, unë do t'ju çoj në një udhëtim magjepsës, duke filluar nga bazat dhe gradualisht duke u thelluar në..

    Faketojeni derisa ta arrini me të dhënat false
    A e gjeni ndonjëherë veten duke ndërtuar një aplikacion të ri dhe keni nevojë për të dhëna testimi që duken dhe duken më realiste ose një grup i madh të dhënash për performancën e ngarkesës...

    Si të përdorni kërkesën API në Python
    Kërkesë API në GitHub për të marrë depot e përdoruesve duke përdorur Python. Në këtë artikull, unë shpjegoj procesin hap pas hapi për të trajtuar një kërkesë API për të marrë të dhëna nga..

    Një udhëzues hap pas hapi për të zotëruar React
    Në këtë artikull, do të mësoni se si të krijoni aplikacionin React, do të mësoni se si funksionon React dhe konceptet thelbësore që duhet të dini për të ndërtuar aplikacione React. Learning..

    AI dhe Psikologjia — Pjesa 2
    Në pjesën 2 të serisë sonë të AI dhe Psikologji ne diskutojmë se si makineritë mbledhin dhe përpunojnë të dhëna për të mësuar emocione dhe ndjenja të ndryshme në mendjen e njeriut, duke ndihmuar..

    Esencialet e punës ditore të kodit tim VS
    Shtesat e mia të preferuara - Git Graph 💹 Kjo shtesë është vërtet e mahnitshme, e përdor përpara se të filloj të punoj për të kontrolluar dy herë ndryshimet dhe degët më të fundit, mund të..

    Pse Python? Zbulimi i fuqisë së gjithanshme të një gjiganti programues
    Në peizazhin gjithnjë në zhvillim të gjuhëve të programimit, Python është shfaqur si një forcë dominuese. Rritja e tij meteorike nuk është rastësi. Joshja e Python qëndron në thjeshtësinë,..