Splinterlands und die verlorenen Daten - Mit einem Wisch, sind die Daten weg... oder nicht?

in #deutsch5 years ago

Soeben wurde ich auf einen Link aufmerksam gemacht, der mich mal wieder ein wenig zum Grübeln veranlasst. Es geht um den Beitrag von @splinterlands, wo es um die Restriktion der API-Calls geht. https://steemit.com/steemmonsters/@splinterlands/splinterlands-public-api-policy-and-upcoming-change

Ich kann mir auch eigentlich schon ganz genau vorstellen, warum es immer wieder zu höheren Auslastungen der API kommt. Verschiedenste Bots und Services fragen ständig die Werte für z.B. die Spieler oder die Kartenpreise ab. Das ist natürlich auch gut so - sonst würde so ein grandioser Service wie Peakmonsters von @jarvie und @asgarth gar nicht funktionieren! Aber mal etwas anders gedacht... Würde man sämtliche Daten die nötig sind um die Werte auf der Webseite auszugeben, lokal abspeichern und diese dann verwenden - müsste man ja dennoch diese Daten einmal bei Splinterlands und dessen API abholen. Würde man die eigene Datenbank an Infos verwenden, wären die Daten nicht zu 100% Aktuell gemäß dem Geschehen auf der Spielewebsite. Wie dem auch sei... Wo wir dann nun auch schon die Spiele-Seite als Thema haben... Habt ihr schon mal versucht, ein Match, welches ihr gespielt habt abzufragen? z.B. ein Match von @louis88 gegen @goodasgold welches ich vorhin gespielt habe...

image.png
Das kann man ja ganz einfach unter der Url: https://splinterlands.io?p=battle&id=da658f13bfb45ed75b3f8b564afdaf22fc7a5960&ref=louis88 abrufen und schon sieht man die Monster sich ihre Waffen um die Ohren hauen... Naja wie dem auch sei - das eigentliche Spiel sollte hier in dem Beitrag erstmal nicht das Thema sein - sondern eher die Daten und die API die hinter diesen Matches steckt.

Diese Daten zum Match, wie zum Beispiel das Datum, die Uhrzeit, die Battle-ID, Wer gegen Wen, welches Monster hittet wann gegen den anderen etc.PP - kann man alles wunderbar via der API von Splinterlands abrufen. Für das o.g. Match wäre der API Call der folgende und beinhaltet so richtig geil viele Daten: https://steemmonsters.com/battle/result?id=da658f13bfb45ed75b3f8b564afdaf22fc7a5960

image.png

Anhand der Daten, die man so pro Match auslesen kann, kann man natürlich wunderbar Statistiken erstellen. Aber man kann ja auch seinen Link, zum Match in anderen Sozialen Netzwerken teilen. Das teilen ist ein gutes Mittel dazu, sich ein älteres Match nochmal anzusehen um ggf. aus seinen eigenen Fehlern zu lernen oder seinen Freunden ein richtig coolen Win nochmal zeigen möchte. Wie dem ganzen auch sei... dabei sind wir aber nun schon direkt am Knackpunkt angekommen und der Anlass, warum ich diesen Beitrag erstelle!

1 Monat darfst du dir deine Matches ansehen - Dann sind deine Daten weg!

Ja, ihr lest richtig. Habt ihr schon mal versucht, ein Spiel erneut zu öffnen, das älter als 1 Monat ist? Ihr findet keins? Hier ein Beispiel https://splinterlands.io/?p=battle&id=0b44e4e056a4ff06a5638f825f0c087fa1e8d61e Ein Spiel von @schneegecko gegen @th12-hal gespielt am 16.12.2019 um 00:03:54 wo der Gewinner @schneegecko ist. Man kann diese Infos ja leider nicht mehr per API abrufen oder gar geschweige das Match nochmal abzuspielen. Diese Infos hab ich lediglich bei uns aus dem Discord - wo wir uns ab und zu mal ein paar Interessante Matches teilen:

image.png

Und dann Frage ich euch mal - Ist euch Wichtig, das ihr nochmal an ältere Infos (älter als 1 Monat) nochmal dran kommt? Schließlich sind dort wertvolle Informationen vorhanden.


Jetzt kann man sich natürlich die Frage stellen - Warum speichert Splinterlands diese Daten nicht für uns, um uns ein vernüftiges Customer Experience zu bieten? Es kann durch aus sein, das Splinterlands und deren Entwickler dahinter mit Absicht die Daten nicht speichern, die älter als 1 Monat als sind... Es sind schließlich einges an Daten... Das habe ich mit einem Kollegen vor ein paar Tagen selber herausfinden können. Insgesamt haben wir...

  • ... 170215 Matches aus der API gespeichert.

  • ... eine Mongo Datenbank mit einer Größe von 2,4 Gigabyte.

  • ... eine durchschnittliche Größe eines Match-Eintrags von ca. 14Kb

Da kann man sich ja selbst die Frage stellen, wenn alleine 170.000 Matches ca. 2,4 Gigabyte an reinen Match-Informationen beanspruchen (Dabei haben wir nicht einmal einen halben Monat importiert) - Wie groß sollen sämtliche Kampfdaten von Splinterlands sein?!

Ich selber finde es einfach nicht gut, das nur 1 Monat der Daten gespeichert werden. Oder werden die Daten dennoch gespeichert und nur die API begrenzt uns auf max. 1 Monat zurück? Das kann uns nur Splinterlands beantworten.


Wie ist eure Meinung dazu? Sollten wir mehr Daten haben? Sollte jedes Match bei einem Blockchain-Game direkt und undlöschbar auf die Blockchain geschrieben werden anstatt Zentral bei Splinterlands zu bleiben?

Mich würde eure Meinung dazu gerne Interessieren!

Also - Bis dahin und viele Grüße
@louis88

Sort:  

Skandal :-) - aus Storage Gründen verständlich, bin aber Deiner Meinung.

Du hast ein Upvote von mir bekommen, diese soll die Deutsche Community unterstützen. Wenn du mich unterstützten möchtest, dann sende mir eine Delegation. Egal wie klein die Unterstützung ist, Du hilfst damit der Community. DANKE!

Hello @louis88 you where manual choosen for a 100% of @helpie-caster. Your Post will be mentioned in our weekly Upvote report .
We didn't think the database would be this big. 1 month is really a little bit small, but unfortunately storage space costs money :(

Hi @louis88!

Your post was upvoted by @steem-ua, new Steem dApp, using UserAuthority for algorithmic post curation!
Your UA account score is currently 5.338 which ranks you at #751 across all Steem accounts.
Your rank has not changed in the last three days.

In our last Algorithmic Curation Round, consisting of 77 contributions, your post is ranked at #58.

Evaluation of your UA score:
  • You've built up a nice network.
  • The readers appreciate your great work!
  • Try to work on user engagement: the more people that interact with you via the comments, the higher your UA score!

Feel free to join our @steem-ua Discord server

Hi, @louis88!

You just got a 0.56% upvote from SteemPlus!
To get higher upvotes, earn more SteemPlus Points (SPP). On your Steemit wallet, check your SPP balance and click on "How to earn SPP?" to find out all the ways to earn.
If you're not using SteemPlus yet, please check our last posts in here to see the many ways in which SteemPlus can improve your Steem experience on Steemit and Busy.

Coin Marketplace

STEEM 0.18
TRX 0.15
JST 0.029
BTC 63191.06
ETH 2551.41
USDT 1.00
SBD 2.65