Heim  >  Fragen und Antworten  >  Hauptteil

mysql – Problem mit der Aufteilung der Datenbank in Tabellen und Datenbanken?

Nehmen Sie als einfaches Beispiel das Bestellformular.

Zum Beispiel:
1 Händler.
Die UIDs der 10 Benutzer sind [1,2...,10].
10 Bestellungen von 10 Benutzern befinden sich in einer Datentabelle A.
Jetzt müssen wir die Tabellen entsprechend der UID horizontal unterteilen und die 10 Bestellungen in 10 Tabellen aufteilen, das heißt, es gibt 10 Tabellen A0, A1 ... A9.

Frage 1: Gibt es nützliche Tools für Untertabellen und Unterdatenbanken (oder zugehörige Anleitungsmaterialien)? Bitte empfehlen Sie es weiter.

Frage 2: Nachdem die Tabellenpartitionierung abgeschlossen ist, hat der Benutzer kein Problem damit, die Bestelltabelle abzufragen. Wie fragt der Händler diese Bestellungen ab (d. h. die Verknüpfung zwischen den partitionierten Tabellen oder wie werden die Tabellen partitioniert, um diese Art zu vermeiden?). des Partitionierungs-Joins)?

PS: Ich weiß nicht, ob meine Aussage klar ist. Wenn etwas unklar ist, weisen Sie mich bitte rechtzeitig darauf hin. Vielen Dank.

Abschließend noch eine einfache Tabellenstruktur:

Bestellformular:

order_id Flüssigkeit shop_id
Bestell-ID Benutzer-ID Händler-ID

Benutzertabelle:

Flüssigkeit Spitzname shop_id
Benutzer-UID Spitzname Händler-ID
为情所困为情所困2710 Tage vor548

Antworte allen(1)Ich werde antworten

  • 为情所困

    为情所困2017-05-18 10:51:13

    问题一:
    1、金山的Kingshard
    https://github.com/flike/king...

    2、百度的heisenberg
    https://github.com/brucexx/he...

    3、58同城的Oceanus
    https://github.com/58code/Oce...

    4、淘宝toddle(不维护)
    https://github.com/alibaba/tb...

    5、当当网的sharding-jdbc
    https://github.com/dangdangdo...

    问题二:
    没有表结构,不过一般情况下都是这样的。订单表里包含订单信息和订单人的编号,人员表里包含人员编号和人员姓名,然后做连接查询:

    1select 订单信息 from 订单表 join 人员表 on 订单表人员编号=人员表人员编号
    2where 人员表人员姓名='xxx'

    Antwort
    0
  • StornierenAntwort