Casssandra Select Json

Casssandra Select Json

Apache Cassandra gir en naturlig støtte for å sette inn og hente dataene fra en tabell ved hjelp av JSON -format. JSON er et populært og verdifullt datautvekslingsformat som er mye brukt i APIer og databaser.

I denne artikkelen lærer du hvordan du velger rader fra en Cassandra -tabell i JSON -format.

Opprette eksempeldata

La oss starte med å sette opp en eksempeldata for illustrasjonsformål:

Lag KeySpace

Før vi setter opp eksempeldata, trenger vi en database for å lagre dataene. Vi kan gjøre dette ved å lage et eksempler.

Spørringen er som gitt i følgende:

CQLSH> Create KeySpace Store med Replication = 'Class': 'SimpleStrategy', 'Replication_Factor': 3;

Den forrige spørringen oppretter en enkel nøkkelpace kalt butikk med en replikasjon_faktor på 3. Hvis du ikke er kjent med Cassandra KeySpaces, kan du sjekke opplæringen vår om emnet for å lære mer.

Når vi er opprettet, kan vi bytte til KeySpace med følgende kommando:

CQLSH> Bruk butikk;

Lag tabell

Neste trinn er å lage en tabell som inneholder strukturen for dataene våre. Husk at Cassandra kan håndtere ustrukturerte data. For enkelhets skyld vil vi imidlertid prøve å bruke en bordstruktur.

Vi kan kjøre spørringen som vist:

CQLSH: Lagre> Opprett tabellbeholdning (PRODUCT_ID INT, PRODUCT_NAME Tekst, Mengde int, Price Int, tilgjengelighet Boolean, Primary Key (Product_ID));

Den forrige spørringen skal opprette en varelager med de spesifiserte kolonnene og datatypene.

CQLSH: Lagre> sett inn i varelager (produkt_id, produktnavn, mengde, pris, tilgjengelighet)
... verdier (1, 'Meta Quest', 5, 399, True);
CQLSH: Lagre> sett inn i varelager (produkt_id, produktnavn, mengde, pris, tilgjengelighet) verdier (2, 'ekko dot', 10, 27, true);
CQLSH: Lagre> sett inn i varelager (produkt_id, produktnavn, mengde, pris, tilgjengelighet) verdier (3, 'Tile Pro', 10, 26, falsk);
CQLSH: Lagre> sett inn i varelager (produkt_id, produktnavn, mengde, pris, tilgjengelighet) verdier (4, 'skjerm', 100, 499, falsk);
CQLSH: Lagre> sett inn i varelager (produkt_id, produktnavn, mengde, pris, tilgjengelighet) verdier (5, 'laptop', 87, 700, true);

Vi kan deretter spørre tabellen som:

Velg * fra Inventory;

Den forrige spørringen skal returnere postene som er lagret i tabellen som vist:

Spørringsdata som JSON

For å hente dataene fra en tabell i JSON -format, kan vi bruke JSON -nøkkelordet med SELECT -setningen som vist i følgende syntaks:

Velg JSON Column_Names fra Table_Name;

For å hente postene fra varelager -tabellen som JSON, kan vi for eksempel kjøre følgende spørsmål:

CQLSH: Lagre> Velg JSON * fra Inventory;

Den forrige spørringen returnerer alle radene fra bordet som JSON.

Produksjon:

[JSON]
----------------------------------------------------------------------
"Product_id": 5, "Tilgjengelighet": True, "Price": 700, "Product_name": "Laptop", "Quantity": 87
"Product_id": 1, "Tilgjengelighet": True, "Price": 399, "Product_name": "Meta Quest", "Quantity": 5
"Product_id": 2, "Tilgjengelighet": True, "Price": 27, "Product_name": "Echo Dot", "Quantity": 10
"Product_id": 4, "Tilgjengelighet": falsk, "Pris": 499, "Produktnavn": "Monitor", "Mengde": 100
"Product_id": 3, "Tilgjengelighet": False, "Price": 26, "Product_name": "Tile Pro", "Mengde": 10
(5 rader)

Konklusjon

I denne artikkelen lærte du hvordan du bruker JSON -nøkkelordet i CQL for å velge postene fra en tabell i JSON -format. For å lære hvordan du velger spesifikke kolonner fra en tabell som JSON, må du sjekke opplæringen vår på TOJSON () -funksjonen.

Takk for at du leste!