Überprüfen Sie die Qualität, ohne die Registrierkasse zu verlassen



Je günstiger die Produktionsmittel sind, desto akuter ist das Problem der Fälschungen. Und wenn das Produkt massiv und leicht zu fälschen ist, ist die Fälschungswelle fast garantiert. Um dieser Geißel entgegenzuwirken, entwickeln wir, das Zentrum für die Entwicklung fortschrittlicher Technologien, ein System zur Kennzeichnung und Verfolgung von Produkten. Sie bekam den Namen Honest SIGN . Der Hersteller gibt jeder Einheit seiner Produkte einen eindeutigen DataMatrix-Code. An diesem Code können Kunden erkennen, ob sich das Produkt davor befindet, wer es hergestellt hat und wie es auf den Tresen gelangt ist.

Mit diesem Einführungsbeitrag in unserem Blog möchten wir Ihnen das System und seine Funktionsprinzipien vorstellen. In den folgenden Artikeln werden wir die technische Struktur und die Entwicklungsfunktionen ausführlicher beschreiben.

Wer wir sind und was wir tun


Wir sind das Unternehmen CRPT , Zentrum für die Entwicklung fortschrittlicher Technologien. Eine der Richtungen unserer Tätigkeit ist die Entwicklung, Implementierung und Entwicklung eines digitalen Systems zur Kennzeichnung und Rückverfolgung von Waren. Es wird benötigt, damit jeder Käufer direkt im Geschäft sicher sein kann, ob eine Fälschung vor ihm liegt.

Heute sind russische Hersteller von Zigaretten, Schuhen und Medikamenten mit unserer Datenbank verbunden. Die aktivsten Konsumenten sind bislang Vertreter der Tabakindustrie - die obligatorische Kennzeichnung aller im Land hergestellten und importierten Produkte hat in dieser Gruppe bereits begonnen. Bereits durch das System gehen bis zu 50 Millionen Packungen pro Tag. Die Leichtindustrie, Hersteller von Milch, Reifen, Kameras und andere Branchen, die die Technologie noch im Pilotmodus erarbeiten, schließen sich ebenfalls aktiv an.

Wie das Markierungssystem funktioniert


Die russische Regierung entscheidet über die Notwendigkeit eines Pilotetikettierungsprojekts für eine bestimmte Warengruppe. In der Regel erfolgt diese Entscheidung auf Initiative von Unternehmensvertretern. Wir starten ein Pilotprojekt, bei dem Hersteller ein für sie geeignetes Kennzeichnungsformat und zusätzliche Informationen für jede Wareneinheit auswählen, die in die Datenbank aufgenommen und mit eindeutigen Kennzeichnungscodes verschlüsselt werden - DataMatrix. Diese zusätzlichen Informationen können sehr unterschiedlich sein - zum Beispiel der empfohlene Verkaufspreis oder das Ablaufdatum. Anschließend führen die Hersteller Software ein, mit der sie DataMatrix auf Pakete setzen können, und wir als Systembetreiber stellen ihnen kostenlose Geräte zur Verfügung - Emissionsregistrierungsstellen, die für die Übertragung digitaler Codes über sichere Kommunikationskanäle benötigt werden.

Während des laufenden Pilotprojekts unterstützen wir die Teilnehmer beim Debuggen von Markierungs- und Informationsaustauschprozessen. Und wenn alles fertig ist, ist die Teilnahme anderer Hersteller aus dieser Branche an unserem System obligatorisch.

Während die Waren vom Hersteller in die Regale gelangen, senden alle Teilnehmer der Kette verschiedene Informationen an das Honest SIGN:



Infolgedessen sammeln wir alle Informationen über die Herkunft und Bewegung jedes von den Systemteilnehmern hergestellten Produkts und stellen sie Herstellern, Einzelhändlern und Kunden zur Verfügung. Wenn Sie in den Laden kommen, können Sie vor dem Schalter die Honest SIGN Mobile App ( AppStore , Google Play ) aufrufen, den Code auf der Verpackung scannen und sofort das Land, die Stadt und die Produktionsadresse herausfinden. Das heißt, Sie werden sofort wissen, ob die Fälschung vor Ihnen liegt oder nicht.

Sicher fragen Sie: "Und was verhindert, dass Ihre Codes gefälscht werden?" Tatsache ist, dass jeder Markierungscode von einem kleinen geschützten Teil, einem Kryptocode, signiert ist. Und der gefälschte Code besteht den Scheck im System weder während der Anwendung noch beim Scannen durch den Käufer oder an der Kasse.

Woher kommen die Codes? Es gibt zwei Möglichkeiten, sie zu erhalten:

  • Oder wir generieren selbst vollständig eindeutige, nicht reproduzierbare Codes und stellen sie den Herstellern zur Verfügung.
  • Oder der Hersteller gibt den seriellen Teil des Codes selbst aus, damit die Kennzeichnung mit seinen Buchhaltungssystemen bequemer verwendet werden kann, und fügt den von uns generierten kryptografischen Teil hinzu.

Wie unser System funktioniert


Das grundlegende Arbeitsschema sieht folgendermaßen aus:



Es enthält fünf Blöcke.

Das „Eingangstor“ zum System ist Routing - eine Art Gateway. Alle Informationen von jedem Teilnehmer der Handelskette finden Sie hier: Hersteller, Groß- und Einzelhändler. Das Routing bereichert die eingehenden Daten mit zusätzlichen Attributen und entscheidet, welche Pipeline diese oder jene Informationen verarbeiten soll.

Bei der Verarbeitung werden alle eingehenden Informationen verarbeitet, gefiltert und mit Routing angereichert. Jede Branche zeichnet sich durch ihre Geschäftsprozesse aus, die wir ständig automatisieren. Bei Tabak handelt es sich beispielsweise um Verbrauchsteuern, bei Milch um ein Verfallsdatum.

Das Speichersystem basiert auf einer verteilten Schlüsselwertbasis. Dort legen wir alle Informationen zu jedem Beschriftungsfeld ab, zu jedem Dokument, das die Änderung des Status dieses Codes beeinflusst hat. Jede große Produktgruppe hat ihre eigene Basis, da die Menge an Informationen, die gesichert und skaliert werden muss, sehr groß ist.

Wir verwenden das Data Warehouse auf verschiedene Arten: Wir treffen eine Auswahl, bilden eine grafische Anzeige der Informationen in Ihrem persönlichen Konto und geben sie über eine externe API an die Teilnehmer des Systems weiter.

Systemkomponenten führen eine Reihe von Aufgaben aus: Authentifizierung, Autorisierung, dienstübergreifende Interaktion. Mit anderen Worten, alles, was mit der Überprüfung von Zugriffsrechten und der Interaktion von Systemkomponenten untereinander zusammenhängt.

Schließlich ist das persönliche Konto eine grafische Oberfläche für die Systemteilnehmer: Hersteller, Großhändler und Einzelhandelsorganisationen. Das heißt, für Unternehmen, die im Verkauf, Ruhestand und Verkauf an den Endverbraucher tätig sind. In Ihrem persönlichen Konto werden Berichte und Grafiken in praktischer Form darüber erstellt, wie viele Codes das Unternehmen gesendet hat, für welchen Zeitraum, für welche Produktkategorien, wie viele Waren bereits im Einzelhandel verkauft wurden usw.

Wie fließen Informationen durch das System?


Der Hersteller generiert eine Reihe von Codes und sendet uns oder erstellt eine Bestellung zum Empfang von Codes. Als Antwort senden wir entweder die Ergebnisse der Überprüfung von Codes anhand von Vorlagen oder eine Liste vorgefertigter Codes. Danach gibt der Hersteller diese Codes ein und meldet, dass sie im Produktionsprozess verwendet wurden oder verloren gegangen sind, dh die Waren mit dem Code werden abgelehnt. Diese Informationen werden vom Routing zur Verarbeitung übertragen, die direkt mit dem Data Warehouse interagiert. Außerdem arbeiten mit ihm persönliche Konten, in denen die Geschäftslogik für Systemteilnehmer geschützt ist.

Mit anderen Worten, wir erhalten Daten von Teilnehmern:

  • Welche Codes werden auf die Waren angewendet?
  • Welche zusätzlichen Produktinformationen müssen den Endbenutzern angezeigt werden?

Darüber hinaus aggregieren wir diese Daten, um die Eindeutigkeit und Sicherheit der Codes vor Fälschungen zu gewährleisten, und stellen sie in praktischer Form allen Benutzern über mobile Anwendungen zur Verfügung. Unternehmensvertreter können jederzeit Berichte über alle in ihrem System verfügbaren Informationen zu ihren Produkten erhalten.

Technologie


Da wir ein nationales Kennzeichnungssystem schaffen, werden täglich Informationen zu allen im Land hergestellten Waren „verdaut“ und an zig Millionen Benutzer weitergegeben. Aus diesem Grund haben wir Technologien ausgewählt, die nicht nur eine hohe Leistung bieten, sondern auch eine schnelle Skalierung des Systems ermöglichen.

Heute verarbeiten wir bis zu 300 verkaufte Wareneinheiten pro Sekunde und mit ungefähr derselben Häufigkeit - Aufzeichnungen von Waren, die die Phasen „freigegeben“, „Code“ und „von einem Teilnehmer auf einen anderen übertragen“ durchlaufen. Allein für Tabakerzeugnisse werden monatlich etwa eine Milliarde Datensätze in das System eingegeben, und die Gesamtinformationsmenge erreicht mehrere zehn TB.

Alle Dienste im System - und es gibt ungefähr 250 davon - werden in einem Kubernetes-Cluster bereitgestellt, sodass wir die Kapazität und das Speichervolumen nach Bedarf leise erhöhen.

Das System ist größtenteils in Java 11 geschrieben und die Verarbeitung erfolgt in Scala. Für die Kommunikation zwischen Servern haben wir Kafka gewählt. Beschriftungscodes selbst werden in Hbase gespeichert, und zugehörige Informationen werden in PostgreSQL gespeichert. Wir packen den Systemcode in Docker-Container, liefern Helm an Kubernetes-Cluster, überwachen Prometheus und überwachen den Zustand in Grafana.

Wir haben die von uns entwickelten Analyseserver mit den Data Warehouses verbunden, die Berichte für die Teilnehmer des Systems erstellen. Bisher basieren die Server auf Hbase, aber wir experimentieren sehr aktiv mit ClickHouse.

Systementwicklung


Viele Teilnehmer erwarten Feedback von uns - erhalten wir alle gesendeten Informationen, gibt es Probleme bei der Verarbeitung des Dokuments, hat der Teilnehmer im System die übertragenen Codes? Ein solcher Rückkopplungsmechanismus sollte durchgängig sein, ohne Speicher zu verwenden, um Informationen nicht zu duplizieren und das System nicht zusätzlich zu laden. Daher werden wir uns von Zwischen-Repositorys entfernen und arbeiten bereits an der Implementierung von End-to-End-Transaktionen durch Routing, Verarbeitung und umgekehrt.

In den folgenden Veröffentlichungen werden wir detailliert beschreiben, wie jeder der fünf Architekturblöcke implementiert wird, über unser System, unsere Technologien und die Personen, die es erstellen.

Das Material wurde mit Unterstützung von Dmitry Poluyanov, Leiter des Entwicklungsteams (Java) des MDCT, erstellt.

Source: https://habr.com/ru/post/de467851/


All Articles