আমি এমন একটি প্রকল্পে কাজ করছি যেখানে আমি কোনও স্ট্যান্ডার্ড এসকিউএল রিলেশনাল ডাটাবেস বা কোনও ইভেন্ট বা ক্রিয়াকলাপ সম্পর্কে ডেটা সঞ্চয় করতে JSON অবজেক্ট ব্যবহার করার মধ্যে সিদ্ধান্ত নেওয়ার চেষ্টা করছি।
প্রকল্পটি একাধিক ইভেন্টের ধরণের ডেটা সঞ্চয় করবে তাই আমি এই প্রশ্নের জন্য কেবল একটি ইভেন্টের ধরণ বর্ণনা করার সিদ্ধান্ত নিয়েছি।
লাইভ মিউজিক ইভেন্ট (এই প্রশ্নের নীচে JSON স্কিমা ব্যবহার করে সম্পূর্ণ বর্ণিত) এমন একটি বস্তু যা ডেটা সংরক্ষণ করে যেখানে ইভেন্টটি কোথায় হবে, ইভেন্টের সময় / তারিখ এবং ইভেন্টের ব্যয়। লাইভ মিউজিক ইভেন্টের সামগ্রীতে এক-এক-এক (ইভেন্ট -> নাম, ইভেন্ট -> বিবরণ) এবং একাধিক (ইভেন্ট -> স্থানগুলি, ইভেন্ট -> তারিখ, ইভেন্ট -> টিকিটের ধরণের উভয়ই রয়েছে) ) সম্পর্ক। তদতিরিক্ত, ইভেন্ট অবজেক্টে এক বা একাধিক পারফর্মার আইডি থাকতে পারে, যা পারফর্মার অবজেক্টের সাথে লিঙ্ক করে। পারফর্মার অবজেক্ট লাইভ মিউজিক ইভেন্টে পারফর্ম করে এমন সংগীতীদের ডেটা সঞ্চয় করে।
ব্যবহারকারীরা সহজ ("x 'নাম দিয়ে আমাকে ইভেন্টগুলি সন্ধান করুন") এবং জটিল ("আমার বর্তমান থেকে' জেড 'এর ব্যাসার্ধের মধ্যে' এক্স 'সংগীত জেনার এবং' y 'ব্যয়ের সাথে আমার ইভেন্টগুলি সন্ধান করে ব্যবহারকারীরা ডেটা অনুসন্ধান করবে) অবস্থান ") জিজ্ঞাসা। ব্যবহারকারীরা ওয়েব ফর্ম ব্যবহার করে ডেটা জমা দেবেন।
আপনি সম্ভবত সংজ্ঞায়িত জেএসএন স্কিমা থেকে বলতে পারেন যে আমি এই ডেটা সংরক্ষণ করার জন্য আমি মূলত JSON অবজেক্টগুলি ব্যবহার করতে যাচ্ছিলাম তবে আমি এমন কিছু লোকের কাছ থেকে শুনেছি যারা বলে যে আমার ডেটা নিখুঁতভাবে সম্পর্কযুক্ত, তাই আমার পুরানো পদ্ধতিগুলির সাথে লেগে থাকা উচিত।
আমার প্রয়োজন অনুসারে প্রতিটি পদ্ধতির উপকারিতা এবং বুদ্ধি সম্পর্কে যে কোনও ধারণার প্রশংসা করব। আপনার যদি কিছু পরিষ্কার করার প্রয়োজন হয় তবে নির্দ্বিধায় জিজ্ঞাসা করুন।
{
"event": {
"eventID":{
"type":"string"
},
"eventType":{
"type":"array",
"eventTypeItem":{
"type":"string"
}
},
"eventName":{
"type":"string"
},
"eventDescription":{
"type":"string"
},
"eventVenueList":{
"type":"array",
"eventVenueListID":{
"type":"integer"
}
},
"eventURL":{
"type":"string"
},
"eventTwitter":{
"type":"string"
},
"eventFB":{
"type":"string"
},
"eventInstagram":{
"type":"string"
},
"eventEmail":{
"type":"string",
"format":"email"
},
"eventContactPerson":{
"type":"string"
},
"eventDoorTime": {
"type":"string",
"format":"date-time"
},
"eventPerformerIDList":{
"type":"array",
"liveMusicPerformerID":{
"type":"integer"
}
},
"eventSetList":{
"type":"array",
"eventPerformerID":{
"type":"integer"
},
"eventPerformerStartTime":{
"type":"string",
"format":"date-time"
},
"eventPerformerEndTime":{
"type":"string",
"format":"date-time"
}
},
"eventDateList": {
"type":"array",
"eventDateItem": {
"type":"string",
"format":"date-time"
}
},
"eventDateStartTime": {
"type":"string",
"format":"date-time"
},
"eventDateEndTime": {
"type":"string",
"format":"date-time"
},
"eventTicket":{
"type":"array",
"eventTicketType":{
"type":"string"
},
"eventTicketLowPrice":{
"type":"number"
},
"eventTicketHighPrice":{
"type":"number"
},
"eventDatesAdvancePrice": {
"type":"number"
}
}
},
"performer": {
"performerID": {
"type":"integer"
},
"performerType": {
"type":"string"
},
"performerName": {
"type":"string"
},
"performerAlternateName": {
"type":"array",
"performerAlterateNameItem":{
"type":"string"
}
},
"performerGenreList": {
"type":"array",
"performerGenreItem":{
"type":"string"
}
},
"performerURL": {
"type":"string"
}
}
}