Heim  >  Fragen und Antworten  >  Hauptteil

Java – MySQL-Einzeltabellen-Pipeline, 500-W-Datenlösung für mehrdimensionale Statistiken

Es gibt jetzt eine Flow-Table-Struktur im Projekt, die ungefähr wie folgt aussieht:
id sdkVersion jarVersion CountryCode imei createTime

Die vorherige Anforderung bestand darin, die Gesamtzahl durch Gruppieren von sdkVersion, jarVersion und CountryCode zu ermitteln und die Gesamtzahl nach der IMEI-Sortierung wie folgt zu ermitteln:

select sdkVersion,jarVersion,countryCode,count(*),count(distinct imei) from xxx 
where createTime = 'xxxx-xx-xx'
group by sdkVersion,jarVersion,countryCode

Finden Sie alle Daten des Vortages heraus und fassen Sie sie in einer Tabelle zusammen. Der Aufbau ist ungefähr wie folgt:

id sdkVersion jarVersion CountryCode count(*) count(distinct imei) createTime

Dann besteht die aktuelle Anforderung darin, die Kombination eines beliebigen Breitengrads abzufragen, d um viele Tabellen für verschiedene Breitengradkombinationen zu erstellen. Gibt es eine gute Lösung für dieses Problem? Oder kann es mit einem speziellen statistischen Rahmen gelöst werden?

黄舟黄舟2711 Tage vor858

Antworte allen(4)Ich werde antworten

  • 仅有的幸福

    仅有的幸福2017-05-19 10:09:03

    楼主可以去看看PipelineDB流式数据库

    Antwort
    0
  • 黄舟

    黄舟2017-05-19 10:09:03

    apache kylin, 亚秒级olap

    Antwort
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-05-19 10:09:03

    每日汇总的话,实时性要求并不高,500W 记录也还在可以处理的范围内,视图 + 定时计划,可以满足要求,不需要建多表。
    题主最好能说明一下有什么瓶颈或者痛点,毕竟 mysql 是个成熟产品,换用新锐技术有一定风险。

    Antwort
    0
  • 黄舟

    黄舟2017-05-19 10:09:03

    写存储过程,每天定时跑就行了

    Antwort
    0
  • StornierenAntwort