200 likes | 351 Views
Technische Universität Ilmenau, Fachgebiet Rechnerarchitekturen. Diplomarbeit. Verteiltes Nutzer- und Content-Matching in mobilen Kommunikationssystemen im Umfeld des PotatoSystems. Bearbeiter: Mario Kubek Fachgebiet: Rechnerarchitekturen
E N D
Technische Universität Ilmenau, Fachgebiet Rechnerarchitekturen Diplomarbeit Verteiltes Nutzer- und Content-Matching in mobilen Kommunikationssystemen im Umfeld des PotatoSystems Bearbeiter: Mario Kubek Fachgebiet: Rechnerarchitekturen verantw. Professor: Prof. Dr.-Ing. habil. Wolfgang Fengler Hochschulbetreuer: Dr.-Ing. Jürgen Nützel Datum: 19.09.2005
Gliederung • Motivation • Das PotatoSystem • Der „Mobile Music Messenger“ (MMM) • Die Architektur von JXME • Rahmen eines mobilen P2P-Systems • Das Matching-Verfahren • Konzeption • Komponenten • Umsetzung • Zusammenfassung und Ausblick Diplomarbeit M. Kubek, 19.09.2005 2
1. Motivation • Erstellung eines mobilen Empfehlungssystems • Verteiltes User-Matching im PotatoSystem • Empfehlungsberechnung durch dezentrale Algorithmen • Einbettung in den „Mobile Music Messenger“ (MMM) • Programmierung in Java für mobile Endgeräte (J2ME) • Skalierbarkeit des Systems im mobilen Kontext • Variierende Teilnehmeranzahl • Nachrichtenanzahl • Nachrichtengröße • Mobile Datenhaltung Diplomarbeit M. Kubek, 19.09.2005 3
2. Das PotatoSystem (http://www.potatosystem.com) • Gemeinschaftsprojekt der 4FO AG und Fraunhofer IDMT • ermöglicht legalen Verkauf digitaler Daten über das Internet • Spezialisierung auf Musikvertrieb für Künstler und Labels • keine Kopierschutz-mechanismen • Nutzer-Homepage zum Musikverkauf • Käufer erhalten neben Musik ein Wiederverkaufs-recht • User-Matching im Waren-korb • Liste TOP-10-Downloads Diplomarbeit M. Kubek, 19.09.2005 4
3. Der „Mobile Music Messenger“ (MMM) • Mobile Erweiterung des PotatoSystems • J2ME-Programm für aktuelle Mobiltelefone • Kommunikation mittels P2P-System JXME 1.0 • Funktionen: • Verwaltung einer Buddy-Liste • Musik-Chat • Verwaltung eines persönlichen Musik-Profils (PMP) in Links • Versand der Musik-Links innerhalb der Community • Unterscheidung der Links nach Kaufinformation • Vorhören der Musik • Kauf von Songs durch WAP 2.0 Browser Diplomarbeit M. Kubek, 19.09.2005 5
4. Die Architektur von JXME 1.0 („JXTA für J2ME“) • Komponenten des P2P-Systems: • Mobile Peers • Relay-Peers • Rendezvous-Peers • Kommunikation: • Relays als Vermittler zwischen JXME-Peers • Nachrichenaustausch in JXTA-Binärformat über HTTP-Protokoll • Binärformat enthält keine XML-Strukturen • Pipes: virtuelle Kommunikationskanäle Diplomarbeit M. Kubek, 19.09.2005 6
5. Rahmen eines mobilen P2P-Systems • Mobile Datensitzungen: • meist kurz und möglicherweise instabil • Verteiltes Wissen: • Wissen der Peers durch Dynamik mobiler Communities oft nicht verfügbar • Skalierbarkeit: • Einbeziehung möglichst vieler Teilnehmer • Stabilität des Systems bei großer Nutzeranzahl und Nachrichtenmenge • Beschränkung der Größe ausgetauschter Nachrichten sinnvoll • Mobile Datenhaltung: • Persistenz in aktuellen Mobiltelefonen möglich • J2ME bietet: RMS (mind. 8 kByte) oder FileConnection-Klassen • effiziente Strukturierung der Daten nötig Diplomarbeit M. Kubek, 19.09.2005 7
6. Das Matching-Verfahren (Konzeption) • Idee: • Mobiles, dezentrales User-Matching im MMM • Lieblingssongs des PMP als Auftrag (Künstler und Titel pro Link) • Verteilte Empfehlungsberechnung durch angefragte Peers • Erweiterung: Nutzung gesicherter Auftragsdaten • Ansatz: • Ber. lokaler PMP-Ähnlichkeit und Ähnlichkeit gesicherter Auftragsdaten • Matching-Mengen: exaktes Matching, Künstler-Matching und Restmenge • Profilähnlichkeit durch Schwellwerte bestimmt: • Empfehlungen: neben Peer-Kennungen max. vier Songs des PMP und jeweils max. zwei Songs der höchstens drei ähnlichsten Peers Diplomarbeit M. Kubek, 19.09.2005 8
6. Das Matching-Verfahren (Komponenten) • Teilnehmer pro Auftrag: • ein Auftraggeber • n Auftragnehmer • Nachrichten (Nutzdaten) pro Auftrag: • ein Empfehlungsauftrag • max. 10 Empfehlungsnachrichten • Komponenten des Verfahrens: • Auftragserstellung • Auftragsbearbeitung • Empfehlungsbehandlung • RMS zur Datensicherung elementare Peer-Aktivitäten pro Auftrag Diplomarbeit M. Kubek, 19.09.2005 9
6. Das Matching-Verfahren (Umsetzung) • Auftragserstellung (anfragender Peer): • Max. fünf PMP-Einträge als Auftrag • Bestimmung der Suchart (Nutzer oder Musik) • Auftragsnummer enthalten • Auftragsversand an Propagate-Pipe (Multicast) • Auftragsbehandlung (angefragte Peers): • Sicherung der Auftragsdaten im RMS • Ähnlichkeitsberechnung und Empfehlungsauswahl • Speicherung der Empfehlung nach Auftragsnummer bis Versand • Öffnung einer Pipe (FlagPipe) mit Auftragsnummer als Namen • Empfehlungsbehandlung (anfragender Peer): • Hilfs-Peer: Anforderung von max. 10 Empfehlungen durch FlagPipes • Empfehlungsdarstellung ohne Duplikate Diplomarbeit M. Kubek, 19.09.2005 10
6. Das Matching-Verfahren (Auftragsversand) Peer3 PMP-Einträge: Auftraggeber MMM-Programm Peer1 PMP-Einträge: gesicherte Anfragen: JXTA-Relay Peer4 PMP-Einträge: Hilfs-Peer inaktiv gesicherte Anfragen: Song K1T1…Titel T1 des Künstlers K1 Diplomarbeit M. Kubek, 19.09.2005 11
6. Das Matching-Verfahren (Auftragsversand) Peer3 PMP-Einträge: Auftraggeber MMM-Programm K1T1, K2T2 (Auftragsnr.) Peer1 PMP-Einträge: K1T1, K2T2 gesicherte Anfragen: (Auftragsnr.) JXTA-Relay Peer4 PMP-Einträge: K1T1, K2T2 (Auftragsnr.) Hilfs-Peer wartet gesicherte Anfragen: Diplomarbeit M. Kubek, 19.09.2005 11
6. Das Matching-Verfahren (Auftragsversand) Peer3 PMP-Einträge: Auftraggeber MMM-Programm Peer1 PMP-Einträge: gesicherte Anfragen: JXTA-Relay Peer4 PMP-Einträge: Hilfs-Peer wartet gesicherte Anfragen: Diplomarbeit M. Kubek, 19.09.2005 11
6. Das Matching-Verfahren (Empfehlungsberechnung) Peer3 PMP-Einträge: Auftraggeber MMM-Programm Empf. berechnet (FlagPipe öffnen) Peer1 PMP-Einträge: gesicherte Anfragen: JXTA-Relay Peer4 PMP-Einträge: Empf. berechnet (FlagPipe öffnen) Empf. berechnet Hilfs-Peer aktiv (FlagPipes) gesicherte Anfragen: Diplomarbeit M. Kubek, 19.09.2005 12
6. Das Matching-Verfahren (Empfehlungsversand) Peer3 PMP-Einträge: Auftraggeber MMM-Programm Empf. anfordern Peer1 PMP-Einträge: gesicherte Anfragen: JXTA-Relay Peer4 PMP-Einträge: Empf. anfordern Empf. anfordern Hilfs-Peer aktiv gesicherte Anfragen: Diplomarbeit M. Kubek, 19.09.2005 13
6. Das Matching-Verfahren (Empfehlungsversand) Peer3 PMP-Einträge: Auftraggeber MMM-Programm Peer3: K1T3, K2T4 Peer6: K1T2 Empfehlungen Peer1 PMP-Einträge: gesicherte Anfragen: JXTA-Relay Peer4 PMP-Einträge: Peer4: K4T3, K2T5 Peer6: K1T2, K4T5 Hilfs-Peer inaktiv gesicherte Anfragen: Diplomarbeit M. Kubek, 19.09.2005 13
6. Das Matching-Verfahren (Empfehlungsbehandlung) • Auswertung der maximal 10 Empfehlungen: • Duplikatefilterung gefundener Nutzer und Songs • getrennte Nutzer- und Song-Darstellung • unterschiedliche Darstellung empfohlener Nutzer und Songs nach Kategorie Diplomarbeit M. Kubek, 19.09.2005 14
7. Zusammenfassung und Ausblick • Zusammenfassung: • mobiles, skalierbares Empfehlungssystem auf JXME-Basis • komplett verteilte Empfehlungsberechnung • Wissen in der Community durch Sicherung der Auftragsdaten vergrößert • Einbettung als Komponente in den MMM • Zukünftige Entwicklungen: • Nutzung weiterer Metadaten zur Empfehlungsberechnung • effizientere Kommunikation ohne HTTP-Protokoll in JXME 2.0 • Empfehlungsversand per SMS an nicht erreichbare Teilnehmer durch PushRegistry der J2ME Diplomarbeit M. Kubek, 19.09.2005 15