SlideShare una empresa de Scribd logo
1 de 18
Descargar para leer sin conexión
API-MÁGIA
MILLIÓ SORNYI ADAT ÚJRARENDEZÉSE

Előadó: Jaksa Zsombor, drungli.com
MIRŐL FOG SZÓLNI AZ ELŐADÁS?

•

Hogyan működik a drungli.com?#

•

Adatok gyűjtése, stratégiák#

•

Ha marad időm… még mesélek
HOGYAN MŰKÖDIK A DRUNGLI.COM?
“kaland generátor spontán utazóknak, az utazástervezés igazán
felhasználóbarát módja”"
VAGYIS#
Repülőtársaságoktól adatokat gyűjtünk, feldolgozzuk 

és különböző keresési megoldásokat, javaslatokat kínálunk a
felhasználóknak egy egyszerű felületen keresztül, szűrési
lehetőségekkel#
Cél: ezt minél gyorsabban és pontosabban (?)
HOGYAN MŰKÖDIK A DRUNGLI.COM?

I know when
A felhasználó csak a kiindulási várost és az időintervallumot
adja meg, tőlünk vár ajánlatot , hogy hova szeretne utazni"
•

legolcsóbb járatokat kapja "

•

különböző szűrési lehetőségekkel"

•

olcsó algoritmus
HOGYAN MŰKÖDIK A DRUNGLI.COM?

I know where
A felhasználó megadja a kiindulási és a célvárost, az
időintervallumot és azt, hogy mennyi időt 

szeretne a célállomáson tölteni"
•

sok kombináció adódhat (pl. london all) "

•

sok a “kötetlen” paraméter"

•

drága algoritmus
ADATOK BEGYŰJTÉSE
JAVA környezetben írt kliens-szerver alkalmazás"
"
"

szerver feladata: begyűjtés ütemezése (feladatok " "
kiosztása), adatok mentése, validálása"

"

"

"

"
"

kliensek feladata: ők kommunikálnak a légitársaságokkal " "
és " gyéb külső partnerek szervereivel"
e

"

Egy kliens forgalma ~ 50-100 GB / nap körül mozog
ADATOK BEGYŰJTÉSE
Milyen adatokat gyűjtünk be a járatokról?#
•

Honnan indul? Hova megy?"

•

Mikor száll fel és le?"

•

Mennyibe kerül a jegy? (pénznem)"

•

Üzemeltető légitársaság"

Szükségünk van a lehetséges útvonalakra is 

(összesen és légitársaságokra lebontva)
ADATOK BEGYŰJTÉSE
Milyen adatokat adunk hozzá?#
•

címkézés szűrésekhez (pl. regionális sajátosságok)"

•

városok összekapcsolása"

•

szabályszerűségek felismerése "
(pl. kedvezményes jegyek)"

""
•

egyéb meta adatok (pl. távolság , GPS koordináta)
ADATOK BEGYŰJTÉSE
Hogyan jutunk a járatok adataihoz?#
•

kapunk API-t az adatbázis lekérdezésekhez"

•

nem kapunk API-t az adatbázis lekérdezésekhez
ADATOK LEKÉRDEZÉSE
VAN API #
Előny: ritkán változik, kevesebb karbantartást igényel"
Hátrány: sokszor lassabb a lekérdezés sebessége, 

limitált a lekérdezések száma, foglaláshoz kötött#
ADATOK LEKÉRDEZÉSE
NINCS API #
HTTP REQUEST-eken keresztül 

eljutunk a járatokat tartalmazó eredményoldalra, melynek
feldolgozásával kinyerhetőek a megfelelő adatok"
•

Fontos az adatok folyamatos visszaellenőrzése"

•

Állandó karbantartást igényel
ADATOK BEGYŰJTÉSE
Van egy harmadik eset is:#
Adatokat vásárolunk harmadik féltől"
•

nincsenek kötegelt lekérési 

lehetőségeink"

•

mire felépítenénk a keresési 

gráfot a felhasználó megunná a várakozást"

•

nem tudjuk tényleg a legolcsóbb 

járatokat megtalálni #
GYŰJTÉSI STRATÉGIA
Lekérdezések mennyisége#
•

Van olyan légitársaság ami közel 

50 ezer útvonalra kínál járatokat"

•

Adatbázisunkban jelenleg 90 napra előre lehet keresni"

•

Ha naponta csak kétszer frissítenénk az adatbázist, akkor

ez közel 1 millió lekérdezést jelentene"

•

jelenleg átlagosan 500-600 ezer járat van 

az adatbázisban
GYŰJTÉSI STRATÉGIA
Milyen stratégiákkal minimalizálható a lekérdezések
mennyisége?#
1. Útvonalak súlyozása"
2. Árváltozások figyelése
GYŰJTÉSI STRATÉGIA
Útvonalak súlyozása#
A kevésbé fontos útvonalakat ritkábban, a fontosabbakat
gyakrabban frissítjük."
Mitől függ egy útvonal súlya?#
•

Mennyien keresnek rá, illetve 

hányszor jelenik meg az eredmények között"

•

Mennyi vásárlás történik egy adott útvonalra
GYŰJTÉSI STRATÉGIA
Árváltozások figyelése#
Tanuló algoritmus az árváltozási tendenciák 

figyelésére járatonként, illetve útvonalanként egy-egy társaságon
belül. "
Bizonyos útvonalakon közlekedő járatok árai 

sokkal ritkábban változnak"
A frissítés gyakorisága ennek megfelelően történik.#
MESÉLJ MÉG …
1. Hogyan adtok hozzá új légitársaságot?"
2. Mondj valamit a kereső algoritmusról!"
3. Alkalmazás felépítése?
KÖSZÖNÖM A
FIGYELMET!
ESETLEG KÉRDÉS VAN ?

Más contenido relacionado

Destacado

Elimringi moshi code of the illuminat (www.forgottenbooks.org)
Elimringi moshi  code of the illuminat (www.forgottenbooks.org)Elimringi moshi  code of the illuminat (www.forgottenbooks.org)
Elimringi moshi code of the illuminat (www.forgottenbooks.org)Elimringi Moshi
 
Elimringi Moshi-Jerusalem the Holly city...............................071411...
Elimringi Moshi-Jerusalem the Holly city...............................071411...Elimringi Moshi-Jerusalem the Holly city...............................071411...
Elimringi Moshi-Jerusalem the Holly city...............................071411...Elimringi Moshi
 
LinkedIn: Where business happens - Fredrik Bernsel (Linkedin EMEA)
LinkedIn: Where business happens -  Fredrik Bernsel (Linkedin EMEA)LinkedIn: Where business happens -  Fredrik Bernsel (Linkedin EMEA)
LinkedIn: Where business happens - Fredrik Bernsel (Linkedin EMEA)Social .Lab
 
Funny presentation 3
Funny presentation 3Funny presentation 3
Funny presentation 3Sushil Dhiman
 
The bible and the moon elimringi moshi
The bible and the moon  elimringi moshiThe bible and the moon  elimringi moshi
The bible and the moon elimringi moshiElimringi Moshi
 
Elimringi moshi--------Moshi monsters???
Elimringi moshi--------Moshi monsters???Elimringi moshi--------Moshi monsters???
Elimringi moshi--------Moshi monsters???Elimringi Moshi
 

Destacado (12)

Natural art
Natural artNatural art
Natural art
 
Elimringi moshi code of the illuminat (www.forgottenbooks.org)
Elimringi moshi  code of the illuminat (www.forgottenbooks.org)Elimringi moshi  code of the illuminat (www.forgottenbooks.org)
Elimringi moshi code of the illuminat (www.forgottenbooks.org)
 
Elimringi Moshi-Jerusalem the Holly city...............................071411...
Elimringi Moshi-Jerusalem the Holly city...............................071411...Elimringi Moshi-Jerusalem the Holly city...............................071411...
Elimringi Moshi-Jerusalem the Holly city...............................071411...
 
Neha sharma
Neha sharmaNeha sharma
Neha sharma
 
759 28-out-2016
759 28-out-2016759 28-out-2016
759 28-out-2016
 
LinkedIn: Where business happens - Fredrik Bernsel (Linkedin EMEA)
LinkedIn: Where business happens -  Fredrik Bernsel (Linkedin EMEA)LinkedIn: Where business happens -  Fredrik Bernsel (Linkedin EMEA)
LinkedIn: Where business happens - Fredrik Bernsel (Linkedin EMEA)
 
Funny presentation 3
Funny presentation 3Funny presentation 3
Funny presentation 3
 
Dragonball
DragonballDragonball
Dragonball
 
Ms office 2013
Ms office 2013Ms office 2013
Ms office 2013
 
760 4-11-nov-2016
760 4-11-nov-2016760 4-11-nov-2016
760 4-11-nov-2016
 
The bible and the moon elimringi moshi
The bible and the moon  elimringi moshiThe bible and the moon  elimringi moshi
The bible and the moon elimringi moshi
 
Elimringi moshi--------Moshi monsters???
Elimringi moshi--------Moshi monsters???Elimringi moshi--------Moshi monsters???
Elimringi moshi--------Moshi monsters???
 

HWSW App konferencia 2013 - Drungli, API-MÁGIA millió sornyi adat újrarendezése

  • 1. API-MÁGIA MILLIÓ SORNYI ADAT ÚJRARENDEZÉSE Előadó: Jaksa Zsombor, drungli.com
  • 2. MIRŐL FOG SZÓLNI AZ ELŐADÁS? • Hogyan működik a drungli.com?# • Adatok gyűjtése, stratégiák# • Ha marad időm… még mesélek
  • 3. HOGYAN MŰKÖDIK A DRUNGLI.COM? “kaland generátor spontán utazóknak, az utazástervezés igazán felhasználóbarát módja”" VAGYIS# Repülőtársaságoktól adatokat gyűjtünk, feldolgozzuk 
 és különböző keresési megoldásokat, javaslatokat kínálunk a felhasználóknak egy egyszerű felületen keresztül, szűrési lehetőségekkel# Cél: ezt minél gyorsabban és pontosabban (?)
  • 4. HOGYAN MŰKÖDIK A DRUNGLI.COM? I know when A felhasználó csak a kiindulási várost és az időintervallumot adja meg, tőlünk vár ajánlatot , hogy hova szeretne utazni" • legolcsóbb járatokat kapja " • különböző szűrési lehetőségekkel" • olcsó algoritmus
  • 5. HOGYAN MŰKÖDIK A DRUNGLI.COM? I know where A felhasználó megadja a kiindulási és a célvárost, az időintervallumot és azt, hogy mennyi időt 
 szeretne a célállomáson tölteni" • sok kombináció adódhat (pl. london all) " • sok a “kötetlen” paraméter" • drága algoritmus
  • 6. ADATOK BEGYŰJTÉSE JAVA környezetben írt kliens-szerver alkalmazás" " " szerver feladata: begyűjtés ütemezése (feladatok " " kiosztása), adatok mentése, validálása" " " " " " kliensek feladata: ők kommunikálnak a légitársaságokkal " " és " gyéb külső partnerek szervereivel" e " Egy kliens forgalma ~ 50-100 GB / nap körül mozog
  • 7. ADATOK BEGYŰJTÉSE Milyen adatokat gyűjtünk be a járatokról?# • Honnan indul? Hova megy?" • Mikor száll fel és le?" • Mennyibe kerül a jegy? (pénznem)" • Üzemeltető légitársaság" Szükségünk van a lehetséges útvonalakra is 
 (összesen és légitársaságokra lebontva)
  • 8. ADATOK BEGYŰJTÉSE Milyen adatokat adunk hozzá?# • címkézés szűrésekhez (pl. regionális sajátosságok)" • városok összekapcsolása" • szabályszerűségek felismerése " (pl. kedvezményes jegyek)" "" • egyéb meta adatok (pl. távolság , GPS koordináta)
  • 9. ADATOK BEGYŰJTÉSE Hogyan jutunk a járatok adataihoz?# • kapunk API-t az adatbázis lekérdezésekhez" • nem kapunk API-t az adatbázis lekérdezésekhez
  • 10. ADATOK LEKÉRDEZÉSE VAN API # Előny: ritkán változik, kevesebb karbantartást igényel" Hátrány: sokszor lassabb a lekérdezés sebessége, 
 limitált a lekérdezések száma, foglaláshoz kötött#
  • 11. ADATOK LEKÉRDEZÉSE NINCS API # HTTP REQUEST-eken keresztül 
 eljutunk a járatokat tartalmazó eredményoldalra, melynek feldolgozásával kinyerhetőek a megfelelő adatok" • Fontos az adatok folyamatos visszaellenőrzése" • Állandó karbantartást igényel
  • 12. ADATOK BEGYŰJTÉSE Van egy harmadik eset is:# Adatokat vásárolunk harmadik féltől" • nincsenek kötegelt lekérési 
 lehetőségeink" • mire felépítenénk a keresési 
 gráfot a felhasználó megunná a várakozást" • nem tudjuk tényleg a legolcsóbb 
 járatokat megtalálni #
  • 13. GYŰJTÉSI STRATÉGIA Lekérdezések mennyisége# • Van olyan légitársaság ami közel 
 50 ezer útvonalra kínál járatokat" • Adatbázisunkban jelenleg 90 napra előre lehet keresni" • Ha naponta csak kétszer frissítenénk az adatbázist, akkor
 ez közel 1 millió lekérdezést jelentene" • jelenleg átlagosan 500-600 ezer járat van 
 az adatbázisban
  • 14. GYŰJTÉSI STRATÉGIA Milyen stratégiákkal minimalizálható a lekérdezések mennyisége?# 1. Útvonalak súlyozása" 2. Árváltozások figyelése
  • 15. GYŰJTÉSI STRATÉGIA Útvonalak súlyozása# A kevésbé fontos útvonalakat ritkábban, a fontosabbakat gyakrabban frissítjük." Mitől függ egy útvonal súlya?# • Mennyien keresnek rá, illetve 
 hányszor jelenik meg az eredmények között" • Mennyi vásárlás történik egy adott útvonalra
  • 16. GYŰJTÉSI STRATÉGIA Árváltozások figyelése# Tanuló algoritmus az árváltozási tendenciák 
 figyelésére járatonként, illetve útvonalanként egy-egy társaságon belül. " Bizonyos útvonalakon közlekedő járatok árai 
 sokkal ritkábban változnak" A frissítés gyakorisága ennek megfelelően történik.#
  • 17. MESÉLJ MÉG … 1. Hogyan adtok hozzá új légitársaságot?" 2. Mondj valamit a kereső algoritmusról!" 3. Alkalmazás felépítése?