Амазон Далай вангийн анхны сэтгэгдэл

Сайн байцгаана уу, Хабаровскийн оршин суугчид. Хичээл эхлэхийг хүлээж байна "Хөгжүүлэгчдэд зориулсан AWS" Бид сонирхолтой материалын орчуулгыг бэлдлээ.

Амазон Далай вангийн анхны сэтгэгдэл

Ихэнх тохиолдолд бидний дуртай байдаг bakdataҮйлчлүүлэгчдийнхээ вэбсайтаас харахад холбогдох мэдээлэл нь аж ахуйн нэгжүүдийн хоорондын холболт, тухайлбал, хэрэглэгчдийн хоорондын харилцаа, элементүүдийн хоорондын хамаарал, мэдрэгч хоорондын холболтыг шинжлэхэд нуугдаж байдаг. Ийм хэрэглээний тохиолдлуудыг ихэвчлэн график дээр загварчилдаг. Энэ оны эхээр Амазон өөрийн шинэ график мэдээллийн сан болох Далай вангаа гаргасан. Энэ нийтлэлд бид анхны санаа, сайн туршлагууд болон цаг хугацааны явцад юуг сайжруулж болох талаар хуваалцахыг хүсч байна.

Бидэнд Амазоны Далай ван яагаад хэрэгтэй байсан бэ?

График өгөгдлийн сан нь өндөр холбогдсон өгөгдлийн багцыг тэдгээрийн харьцах эквивалентаас илүү сайн зохицуулахыг амлаж байна. Ийм өгөгдлийн багцад холбогдох мэдээллийг ихэвчлэн объект хоорондын харилцаанд хадгалдаг. Бид Далай ван гарагийг туршихын тулд гайхалтай нээлттэй мэдээллийн төслийг ашигласан MusicBrainz. MusicBrainz нь уран бүтээлчид, дуунууд, цомог гаргасан эсвэл концертын тухай мэдээлэл, мөн дууны ард байгаа уран бүтээлч хэнтэй хамтран ажилласан, цомог аль улсад хэзээ гарсан зэрэг төсөөлж болох бүх төрлийн хөгжмийн мета өгөгдлийг цуглуулдаг. MusicBrainz нь хөгжмийн салбартай ямар нэгэн байдлаар холбогдсон байгууллагуудын асар том сүлжээ гэж үзэж болно.

MusicBrainz өгөгдлийн багц нь харилцааны мэдээллийн сангийн CSV хаягдал хэлбэрээр өгөгдсөн. Нийтдээ овоолго нь 93 хүснэгтийн 157 сая орчим мөрийг агуулдаг. Эдгээр хүснэгтүүдийн зарим нь уран бүтээлчид, үйл явдал, бичлэг, хувилбар эсвэл дуу гэх мэт үндсэн өгөгдлийг агуулдаг бол бусад нь холбоос хүснэгтүүд — уран бүтээлчид болон бичлэг, бусад уран бүтээлчид эсвэл хувилбаруудын хоорондын харилцааг хадгалах гэх мэт... Тэд өгөгдлийн багцын график бүтцийг харуулдаг. Өгөгдлийн багцыг RDF гурвалсан болгон хөрвүүлэхдээ бид ойролцоогоор 500 сая тохиолдол авсан.

Бид хамтран ажилладаг төслийн түншүүдийн туршлага, сэтгэгдэл дээр үндэслэн энэхүү мэдлэгийн санг шинэ мэдээлэл олж авахад ашигладаг орчинг танилцуулж байна. Нэмж дурдахад бид үүнийг шинэ хувилбаруудыг нэмэх эсвэл бүлгийн гишүүдийг шинэчлэх зэргээр байнга шинэчлэгдэж байх болно гэж найдаж байна.

тохируулга

Хүлээгдэж буйгаар Amazon Neptune-г суулгах нь энгийн зүйл юм. Тэр нэлээд нарийвчилсан баримтжуулсан. Та хэдхэн товшилтоор график мэдээллийн санг ажиллуулж болно. Гэсэн хэдий ч, илүү нарийвчилсан тохиргооны тухай ярихад, шаардлагатай мэдээлэл олоход хэцүү. Тиймээс бид нэг тохиргооны параметрийг зааж өгөхийг хүсч байна.

Амазон Далай вангийн анхны сэтгэгдэл
Параметр бүлгүүдийн тохиргооны дэлгэцийн агшин

Амазон хэлэхдээ Далай ван нь хоцрогдол багатай гүйлгээний ажлын ачаалалд анхаарлаа хандуулдаг тул хүсэлтийн үндсэн хугацаа 120 секунд байдаг. Гэсэн хэдий ч бид энэ хязгаарт тогтмол хүрч байсан олон аналитик хэрэглээний тохиолдлыг туршиж үзсэн. Далай вангийн шинэ параметрийн бүлгийг үүсгэж, тохиргоо хийснээр энэ хугацааг өөрчилж болно neptune_query_timeout холбогдох хязгаарлалт.

Өгөгдлийг ачаалж байна

Доор бид MusicBrainz өгөгдлийг Далай ван руу хэрхэн ачаалсан талаар дэлгэрэнгүй ярилцах болно.

Гурав дахь харилцаа

Эхлээд бид MusicBrainz өгөгдлийг RDF гурвалсан болгон хөрвүүлсэн. Тиймээс бид хүснэгт бүрийн хувьд багана бүрийг гурвалсан хэлбэрээр хэрхэн төлөөлөхийг тодорхойлсон загварыг тодорхойлсон. Энэ жишээнд гүйцэтгэгчийн хүснэгтийн мөр бүрийг арван хоёр RDF гурвалсан байдлаар дүрсэлсэн.

<http://musicbrainz.foo/artist/${id}> <http://musicbrainz.foo/gid> "${gid}"^^<http://www.w3.org/2001/XMLSchema#string> .
 
 
<http://musicbrainz.foo/artist/${id}> <http://musicbrainz.foo/name> "${name}"^^<http://www.w3.org/2001/XMLSchema#string> .
 
<http://musicbrainz.foo/artist/${id}> <http://musicbrainz.foo/sort-name> "${sort_name}"^^<http://www.w3.org/2001/XMLSchema#string> .
 
<http://musicbrainz.foo/artist/${id}> <http://musicbrainz.foo/begin-date> "${begin_date_year}-${begin_date_month}-${begin_date_day}"^^xsd:<http://www.w3.org/2001/XMLSchema#date> .
 
<http://musicbrainz.foo/artist/${id}> <http://musicbrainz.foo/end-date> "${end_date_year}-${end_date_month}-${end_date_day}"^^xsd:<http://www.w3.org/2001/XMLSchema#date> .
 
<http://musicbrainz.foo/artist/${id}> <http://musicbrainz.foo/type> <http://musicbrainz.foo/artist-type/${type}> .
 
<http://musicbrainz.foo/artist/${id}> <http://musicbrainz.foo/area> <http://musicbrainz.foo/area/${area}> .
 
<http://musicbrainz.foo/artist/${id}> <http://musicbrainz.foo/gender> <http://musicbrainz.foo/gender/${gender}> .
 
<http://musicbrainz.foo/artist/${id}> <http://musicbrainz.foo/comment> "${comment}"^^<http://www.w3.org/2001/XMLSchema#string> .
 
<http://musicbrainz.foo/artist/${id}> <http://musicbrainz.foo/edits-pending> "${edits_pending}"^^<http://www.w3.org/2001/XMLSchema#int> .
 
<http://musicbrainz.foo/artist/${id}> <http://musicbrainz.foo/last-updated> "${last_updated}"^^<http://www.w3.org/2001/XMLSchema#dateTime> .
 
<http://musicbrainz.foo/artist/${id}> <http://musicbrainz.foo/ended> "${ended}"^^<http://www.w3.org/2001/XMLSchema#boolean> .

бөөнөөр байршуулах

Далай ван руу их хэмжээний өгөгдөл ачаалах санал болгож буй арга бол S3-ээр дамжуулан бөөнөөр нь байршуулах процесс юм. Гурвалсан файлуудаа S3-д байршуулсны дараа та POST хүсэлтийг ашиглан байршуулж эхэлнэ. Манайд 24 сая гурван ихэр төрөхөд ойролцоогоор 500 цаг зарцуулсан. Бид илүү хурдан болно гэж найдаж байсан.

curl -X POST -H 'Content-Type: application/json' http://your-neptune-cluster:8182/loader -d '{
 
 
 "source" : "s3://your-s3-bucket",
 
 "format" : "ntriples",
 
 "iamRoleArn" : "arn:aws:iam::your-iam-user:role/NeptuneLoadFromS3",
 
 "region" : "eu-west-1",
 
 "failOnError" : "FALSE"
 
}'

Бид Далай ван гарагийг хөөргөх бүртээ ийм урт процессоос зайлсхийхийн тулд эдгээр гурвалсануудыг аль хэдийн ачаалсан байсан агшин зуурын зургийг сэргээхээр шийдсэн. Хормын хувилбараас гүйх нь хамаагүй хурдан боловч Далай ван хүсэлт гаргахад нэг цаг орчим хугацаа шаардагдана.

Далай ван руу гурвалсан амьтдыг анх ачаалах үед бид янз бүрийн алдаатай тулгарсан.

{
 
 
 "errorCode" : "PARSING_ERROR",
 
 "errorMessage" : "Content after '.' is not allowed",
 
 "fileName" : [...],
 
 "recordNum" : 25
 
}

Тэдгээрийн зарим нь дээр үзүүлсэн шиг задлан шинжлэлийн алдаа байсан. Өнөөдрийг хүртэл бид яг юу нь буруу болсныг олж хараагүй байна. Бага зэрэг дэлгэрэнгүй мэдээлэл энд мэдээж хэрэг болно. Оруулсан гурвалсан хүмүүсийн ойролцоогоор 1%-д энэ алдаа гарсан. Гэхдээ Далай вангийн туршилтын хувьд бид MusicBrainz-ийн мэдээллийн зөвхөн 99% -тай ажилладаг гэдгээ хүлээн зөвшөөрсөн.

Хэдийгээр энэ нь SPARQL-ийг мэддэг хүмүүст хялбар боловч RDF гурвалсан дээр тодорхой өгөгдлийн төрлөөр тэмдэглэсэн байх ёстой бөгөөд энэ нь дахин алдаа үүсгэж болзошгүйг анхаарна уу.

Дамжуулж татаж авах

Дээр дурдсанчлан бид Далай ваныг статик мэдээллийн сан болгон ашиглахыг хүсэхгүй, харин уян хатан, хөгжиж буй мэдлэгийн сан болгон ашиглахыг хүсч байна. Тиймээс бид мэдлэгийн сан өөрчлөгдөх үед, жишээлбэл, шинэ цомог хэвлэгдсэн үед эсвэл олж авсан мэдлэгээ бодит болгохыг хүссэн үед шинэ гурвалсан хувилбаруудыг нэвтрүүлэх арга замыг хайж олох хэрэгтэй болсон.

Нептун нь SPARQL асуулгаар дамжуулан оролтын операторуудыг түүхий болон дээж дээр тулгуурлан дэмждэг. Доор бид хоёр аргыг хоёуланг нь авч үзэх болно.

Бидний зорилгын нэг бол өгөгдөл дамжуулах хэлбэрээр оруулах явдал байв. Шинэ улсад цомог гаргах талаар бодож үзээрэй. MusicBrainz-ийн үүднээс авч үзвэл цомог, сингл, EP гэх мэтийг багтаасан хувилбарын хувьд хүснэгтэд шинэ оруулга нэмэгдэнэ гэсэн үг юм. суллах улс. RDF-д бид энэ мэдээллийг хоёр шинэ гурвалсантай тааруулдаг.

INSERT DATA { <http://musicbrainz.foo/release-country/737041> <http://musicbrainz.foo/release> <http://musicbrainz.foo/release/435759> };INSERT DATA { <http://musicbrainz.foo/release-country/737041> <http://musicbrainz.foo/date-year> "2018"^^<http://www.w3.org/2001/XMLSchema#int> };

Өөр нэг зорилго бол графикаас шинэ мэдлэг олж авах явдал байв. Уран бүтээлч бүрийн карьертаа нийтэлсэн бүтээлийн тоог авахыг хүсч байна гэж бодъё. Ийм асуулга нь нэлээд төвөгтэй бөгөөд Далай ван гаригт 20 минутаас илүү хугацаа шаардагддаг тул бид энэ шинэ мэдлэгийг бусад асуулгад дахин ашиглахын тулд үр дүнг бодит болгох хэрэгтэй. Тиймээс бид энэ мэдээлэлтэй гурвыг дахин график дээр нэмж, дэд асуулгын үр дүнг оруулна.

INSERT {
 
 
  ?artist_credit <http://musicbrainz.foo/number-of-releases> ?number_of_releases
 
} WHERE {
 
  SELECT ?artist_credit (COUNT(*) as ?number_of_releases)
 
  WHERE {
 
     ?artist_credit <http://musicbrainz.foo/rdftype> <http://musicbrainz.foo/artist-credit> .
 
     ?release_group <http://musicbrainz.foo/artist-credit> ?artist_credit .
 
     ?release_group <http://musicbrainz.foo/rdftype> <http://musicbrainz.foo/release-group> .
 
     ?release_group <http://musicbrainz.foo/name> ?release_group_name .
 
  }
 
  GROUP BY ?artist_credit
 
}

График дээр нэг гурвалсан тоог нэмэхэд хэдэн миллисекунд шаардлагатай байдаг бол дэд асуулгын үр дүнг оруулахад гүйцэтгэх хугацаа нь тухайн дэд асуулгын гүйцэтгэлийн хугацаанаас хамаарна.

Хэдийгээр бид үүнийг байнга ашигладаггүй байсан ч Далай ван нь дээж эсвэл тодорхой өгөгдөл дээр үндэслэн гурвалсан хүүхдийг устгах боломжийг олгодог бөгөөд энэ нь мэдээллийг шинэчлэхэд ашиглагдана.

SPARQL асуулга

Уран бүтээлч бүрийн гаргасан тоог буцаадаг өмнөх дэд дээжийг танилцуулснаар бид Далай ван гарагийг ашиглан хариулахыг хүсч буй эхний төрлийн асуулга аль хэдийн танилцуулсан. Далай вант асуулга үүсгэх нь амархан - доор үзүүлсэн шиг SPARQL төгсгөлийн цэг рүү POST хүсэлт илгээнэ үү.

curl -X POST --data-binary 'query=SELECT ?artist ?p ?o where {?artist <http://musicbrainz.foo/name> "Elton John" . ?artist ?p ?o . }' http://your-neptune-cluster:8182/sparql

Нэмж дурдахад бид тэдний нэр, нас, гарал үүслийн улсын талаарх мэдээллийг агуулсан уран бүтээлчийн профайлыг буцаах хайлтыг хэрэгжүүлсэн. Жүжигчид нь хувь хүмүүс, хамтлаг, найрал хөгжим байж болно гэдгийг санаарай. Нэмж дурдахад бид энэ мэдээллийг тухайн жилийн хугацаанд уран бүтээлчдийн гаргасан бүтээлийн тоогоор нэмж оруулав. Мөн гоцлол уран бүтээлчдийн хувьд жил бүр оролцож байсан уран бүтээлчдийн талаар мэдээлэл оруулдаг.

SELECT
 
 
 ?artist_name ?year
 
 ?releases_in_year ?releases_up_year
 
 ?artist_type_name ?releases
 
 ?artist_gender ?artist_country_name
 
 ?artist_begin_date ?bands
 
 ?bands_in_year
 
WHERE {
 
 # Bands for each artist
 
 {
 
   SELECT
 
     ?year
 
     ?first_artist
 
     (group_concat(DISTINCT ?second_artist_name;separator=",") as ?bands)
 
     (COUNT(DISTINCT ?second_artist_name) AS ?bands_in_year)     
 
   WHERE {
 
     VALUES ?year {
 
       1960 1961 1962 1963 1964 1965 1966 1967 1968 1969
 
       1970 1971 1972 1973 1974 1975 1976 1977 1978 1979
 
       1980 1981 1982 1983 1984 1985 1986 1987 1988 1989
 
       1990 1991 1992 1993 1994 1995 1996 1997 1998 1999
 
       2000 2001 2002 2003 2004 2005 2006 2007 2008 2009
 
       2010 2011 2012 2013 2014 2015 2016 2017 2018
 
     }   
 
     ?first_artist <http://musicbrainz.foo/name> "Elton John" .
 
     ?first_artist <http://musicbrainz.foo/rdftype> <http://musicbrainz.foo/artist> .
 
     ?first_artist <http://musicbrainz.foo/type> ?first_artist_type .
 
     ?first_artist <http://musicbrainz.foo/name> ?first_artist_name .
 

 
 
     ?second_artist <http://musicbrainz.foo/rdftype> <http://musicbrainz.foo/artist> .
 
     ?second_artist <http://musicbrainz.foo/type> ?second_artist_type .
 
     ?second_artist <http://musicbrainz.foo/name> ?second_artist_name .
 
     optional { ?second_artist <http://musicbrainz.foo/begin-date-year> ?second_artist_begin_date_year . }
 
     optional { ?second_artist <http://musicbrainz.foo/end-date-year> ?second_artist_end_date_year . }
 

 
 
     ?l_artist_artist <http://musicbrainz.foo/entity0> ?first_artist .
 
     ?l_artist_artist <http://musicbrainz.foo/entity1> ?second_artist .
 
     ?l_artist_artist <http://musicbrainz.foo/link> ?link .
 

 
 
     optional { ?link <http://musicbrainz.foo/begin-date-year> ?link_begin_date_year . }
 
     optional { ?link <http://musicbrainz.foo/end-date-year> ?link_end_date_year . }
 

 
 
     FILTER (!bound(?link_begin_date_year) || ?link_begin_date_year <= ?year)
 
     FILTER (!bound(?link_end_date_year) || ?link_end_date_year >= ?year)
 
     FILTER (!bound(?second_artist_begin_date_year) || ?second_artist_begin_date_year <= ?year)
 
     FILTER (!bound(?second_artist_end_date_year) || ?second_artist_end_date_year >= ?year)
 
     FILTER (?first_artist_type NOT IN (<http://musicbrainz.foo/artist-type/2>, <http://musicbrainz.foo/artist-type/5>, <http://musicbrainz.foo/artist-type/6>))
 
     FILTER (?second_artist_type IN (<http://musicbrainz.foo/artist-type/2>, <http://musicbrainz.foo/artist-type/5>, <http://musicbrainz.foo/artist-type/6>))
 
   }
 
   GROUP BY ?first_artist ?year
 
 }
 
 # Releases up to a year
 
 {
 
   SELECT
 
     ?artist
 
     ?year
 
     (group_concat(DISTINCT ?release_name;separator=",") as ?releases)
 
     (COUNT(*) as ?releases_up_year)
 
   WHERE {
 
     VALUES ?year {
 
       1960 1961 1962 1963 1964 1965 1966 1967 1968 1969
 
       1970 1971 1972 1973 1974 1975 1976 1977 1978 1979
 
       1980 1981 1982 1983 1984 1985 1986 1987 1988 1989
 
       1990 1991 1992 1993 1994 1995 1996 1997 1998 1999
 
       2000 2001 2002 2003 2004 2005 2006 2007 2008 2009
 
       2010 2011 2012 2013 2014 2015 2016 2017 2018 
 
     }
 

 
 
     ?artist <http://musicbrainz.foo/name> "Elton John" .
 

 
 
     ?artist_credit_name <http://musicbrainz.foo/artist-credit> ?artist_credit .
 
     ?artist_credit_name <http://musicbrainz.foo/rdftype> <http://musicbrainz.foo/artist-credit-name> .
 
     ?artist_credit_name <http://musicbrainz.foo/artist> ?artist .
 
     ?artist_credit <http://musicbrainz.foo/rdftype> <http://musicbrainz.foo/artist-credit> .
 

 
 
     ?release_group <http://musicbrainz.foo/artist-credit> ?artist_credit .
 
     ?release_group <http://musicbrainz.foo/rdftype> <http://musicbrainz.foo/release-group> .
 
     ?release_group <http://musicbrainz.foo/name> ?release_group_name .
 
     ?release <http://musicbrainz.foo/release-group> ?release_group .
 
     ?release <http://musicbrainz.foo/name> ?release_name .
 
     ?release_country <http://musicbrainz.foo/release> ?release .
 
     ?release_country <http://musicbrainz.foo/date-year> ?release_country_year .
 

 
 
     FILTER (?release_country_year <= ?year)
 
   }
 
   GROUP BY ?artist ?year
 
 }
 
 # Releases in a year
 
 {
 
   SELECT ?artist ?year (COUNT(*) as ?releases_in_year)
 
   WHERE {
 
     VALUES ?year {
 
       1960 1961 1962 1963 1964 1965 1966 1967 1968 1969
 
       1970 1971 1972 1973 1974 1975 1976 1977 1978 1979
 
       1980 1981 1982 1983 1984 1985 1986 1987 1988 1989
 
       1990 1991 1992 1993 1994 1995 1996 1997 1998 1999
 
       2000 2001 2002 2003 2004 2005 2006 2007 2008 2009
 
       2010 2011 2012 2013 2014 2015 2016 2017 2018 
 
     }
 

 
 
     ?artist <http://musicbrainz.foo/name> "Elton John" .
 

 
 
     ?artist_credit_name <http://musicbrainz.foo/artist-credit> ?artist_credit .
 
     ?artist_credit_name <http://musicbrainz.foo/rdftype> <http://musicbrainz.foo/artist-credit-name> .
 
     ?artist_credit_name <http://musicbrainz.foo/artist> ?artist .
 
     ?artist_credit <http://musicbrainz.foo/rdftype> <http://musicbrainz.foo/artist-credit> .
 

 
 
     ?release_group <http://musicbrainz.foo/artist-credit> ?artist_credit .
 
     ?release_group <http://musicbrainz.foo/rdftype> <http://musicbrainz.foo/release-group> .
 
     ?release_group <http://musicbrainz.foo/name> ?release_group_name .
 
     ?release <http://musicbrainz.foo/release-group> ?release_group .
 
     ?release_country <http://musicbrainz.foo/release> ?release .
 
     ?release_country <http://musicbrainz.foo/date-year> ?release_country_year .
 

 
 
     FILTER (?release_country_year = ?year)
 
   }
 
   GROUP BY ?artist ?year
 
 }
 
 # Master data
 
 {
 
   SELECT DISTINCT ?artist ?artist_name ?artist_gender ?artist_begin_date ?artist_country_name
 
   WHERE {
 
     ?artist <http://musicbrainz.foo/name> ?artist_name .
 
     ?artist <http://musicbrainz.foo/name> "Elton John" .
 
     ?artist <http://musicbrainz.foo/gender> ?artist_gender_id .
 
     ?artist_gender_id <http://musicbrainz.foo/name> ?artist_gender .
 
     ?artist <http://musicbrainz.foo/area> ?birth_area .
 
     ?artist <http://musicbrainz.foo/begin-date-year> ?artist_begin_date.
 
     ?birth_area <http://musicbrainz.foo/name> ?artist_country_name .
 

 
 
     FILTER(datatype(?artist_begin_date) = xsd:int)
 
   }

Ийм асуулгын нарийн төвөгтэй байдлаас шалтгаалан бид зөвхөн Элтон Жон гэх мэт тодорхой зураачдад зориулж цэгийн асуулга хийх боломжтой байсан ч бүх уран бүтээлчдэд биш. Далай ван нь шүүлтүүрүүдийг дэд сонголтууд руу оруулснаар ийм хайлтыг оновчтой болгохгүй байх шиг байна. Тиймээс сонголт бүрийг уран бүтээлчийн нэрээр гараар шүүсэн байх ёстой.

Нептун нь цагийн болон оролт гаралтын цэнэгтэй. Туршилтын хувьд бид хамгийн багадаа Далай вангийн жишээг ашигласан бөгөөд энэ нь цагт 0,384 долларын үнэтэй байдаг. Нэг ажилтны профайлыг тооцдог дээрх асуулгын хувьд Амазон биднээс хэдэн арван мянган оролт/гаралтын үйлдлүүдийг төлдөг бөгөөд энэ нь 0.02 долларын өртөгтэй гэсэн үг юм.

дүгнэлт

Нэгдүгээрт, Амазон Далай ван амлалтаа биелүүлдэг. Удирдлагатай үйлчилгээний хувьд энэ нь суулгахад маш хялбар график мэдээллийн сан бөгөөд олон тохиргоо хийлгүйгээр ажиллах боломжтой. Энд бидний таван гол дүгнэлт байна:

  • Бөөн байршуулах нь хялбар боловч удаан. Гэхдээ энэ нь тийм ч тус болохгүй алдааны мэдэгдлүүдийн улмаас төвөгтэй болж магадгүй юм.
  • Урсгал татаж авах нь бидний хүлээж байсан бүх зүйлийг дэмждэг бөгөөд маш хурдан байсан
  • Асуултууд нь энгийн боловч аналитик асуулга явуулахад хангалттай интерактив биш юм
  • SPARQL асуулга нь гараар оновчтой байх ёстой
  • SPARQL асуулгаар сканнердсан өгөгдлийн хэмжээг тооцоолоход хэцүү байдаг тул Amazon-ийн төлбөрийг тооцоолоход хэцүү байдаг.

Тэгээд л болоо. Бүртгүүлэх "Ачааллыг тэнцвэржүүлэх" сэдвээр үнэгүй вэбинар.


Эх сурвалж: www.habr.com

сэтгэгдэл нэмэх