मजकुराकडे जा

डेटा मांडणी

bae ची नोंदवही साधी SQLite आहे, coven ला सारणी-दर-सारणी घोषित केलेली: समक्रमित सारण्या मतभेद घड्याळ घेतात आणि प्रत्येक साधनावर जातात; न घोषित सारण्या साधन सोडत नाहीत. हा विभाग माहिती मांडणीतील सर्वात भारवाहक निर्णय आहे, म्हणून हे पृष्ठ त्याभोवती मांडले आहे.

नोंदवहीचा आलेख

या विभागाची लिंक

आराखड्याचे समक्रमित केंद्र:

  • artists, albums, works: गटबद्धीकरण थर. अल्बम त्याच्या आवृत्त्या एकत्र करतो आणि प्राथमिक आवृत्तीकडे दाखवतो; रचना शास्त्रीय रचनेसाठी पालक/अपत्य आलेख बनवतात.
  • ** releases **: केंद्रीय घटक, प्रति दाब एक ओळ. दाबण्याची माहिती (लेबल, कॅटलॉग क्रमांक, बारकोड, देश, स्वरूप, वर्ष), वैकल्पिक मेटाडेटा स्रोत, आयात केलेले संचयीका विषयी हॅश, आणि मोजलेले अल्बम आवाज. स्रोत नाही म्हणजे मेटाडेटा थेट प्रविष्ट केले गेले आहे; बाह्य स्रोत निश्चित स्त्रोत रिलीजचे नाव आहे, तर फाइल टॅग स्थानीय स्नैपशॉट स्त्रोत नोंदवितो.
  • ** release_identities **: एक रिलीज * आहे * साठी अचूक बाह्य ओळख. ओळी नाही याचा अर्थ बाह्य ओळख नाही. प्रत्येक ओळ नाव MusicBrainz किंवा Discogs रिलीज आणि रिलीज गट आहे, आणि एक रिलीज दोन्ही स्त्रोतांमध्ये ओळख एकाच वेळी ठेवू शकते. हे provenance पासून वेगळे आहे: ओळख बदलू शकते, त्या स्त्रोतातून वर्तमान संपादनजोगी मेटाडेटा रीसेट केली गेली आहे असे म्हणत नाही.
  • tracks, track_artists, तसेच release_artist_roles आणि track_artist_roles: गाण्यांच्या याद्या आणि श्रेय, प्रत्येक श्रेय त्याच्या स्रोतासह खूण केलेले.
  • track_works, work_parts, work_artists: ते सादर करतात त्या रचनांशी जोडलेली ध्वनिमुद्रणे.
  • audio_formats आणि audio_format_segments: वाजवण्याचे तपशील. प्रत्येक गाणे: codec, नमुना दर, बिट खोली, वाहिन्या, मोजलेला मोठेपणा आणि शिखर, आणि pregap लांबी. भाग गाणे त्याच्या स्रोत संचिकांच्या क्रमबद्ध बाइट आणि नमुना खिडक्यांवर मांडतात, ज्यामुळे CUE rip चे गाणे, pregap सह, एका मोठ्या संचिकेच्या भागांत किंवा अनेक संचिकांमध्ये पसरू शकते.
  • release_files, covers, artist_images: द्वयी वस्तू असलेल्या सारण्या. ओळी नोंदवही नोंदी आहेत; बाइट्स coven च्या द्वयी वस्तू थरात राहतात (खाली पहा).

समक्रमित, अट-लावलेले, स्थानिक

या विभागाची लिंक

वरील सगळे समक्रमित होते, पण बिनशर्त नाही. releases त्याच्या remote स्तंभावर अट-लावलेला मूळ घटक म्हणून घोषित आहे: आवृत्ती ओळ आणि तिचे संपूर्ण उपझाड (गाणी, संचिका, श्रेय, स्वरूपे, मुखपृष्ठ) फक्त remote true असताना, म्हणजे आवृत्ती क्लाउड-व्यवस्थापित असताना समक्रमित होते. आवृत्ती व्यवस्थापित केल्यावर उपझाड प्रकाशित होते; न व्यवस्थापित आवृत्ती पूर्णपणे आयात करणाऱ्या साधनावर राहते, जरी तिचा आराखडा समक्रमित असला तरी. पूर्वज सारण्या (artists, albums, works) फक्त एखादी समक्रमित आवृत्ती अजून त्यांना निर्देश करत असेल तोवर समक्रमित होतात, त्यामुळे साधनाला खाली काहीच नसलेला कलाकार कधी मिळत नाही.

पूर्ण स्थानिक सारण्या, coven ला कधीही घोषित नाहीत:

  • playback_state: सध्याचे गाणे, स्थान, रांग, आवाज, क्रमभंग आणि पुनरावृत्ती. वाजवणे ही साधनाची गोष्ट आहे.
  • imports: आयात प्रक्रिया मागोवा.
  • ** source_release_payloads **: MusicBrainz आणि Discogs पासून आर्काइव्ह केलेले कच्चे JSON, स्थानिक रिलीजऐवजी पुरवठादार रिलीजद्वारे किड केले गेले. त्याचे समर्थन सिन्क्ड कॅटलॉग ग्राफ बदलविण्याशिवाय अचूक रीसेट आणि पुन्हा-अनुवाद करण्यास समर्थन देते.

प्रत्येक समक्रमित सारणी _updated_at मिश्र-तार्किक-घड्याळ स्तंभ घेते, ज्यावरून coven चे क्षेत्रानुसार जुळवणे समांतर संपादने क्रमबद्ध करते; समक्रमित संच आणि घड्याळ असलेला संच अगदी समान आहेत हे चाचणी लागू करते.

द्वयी वस्तू

या विभागाची लिंक

ध्वनी आणि प्रतिमा coven च्या द्वयी वस्तू थरातून तीन नामक्षेत्रांत जातात, प्रत्येकाचा स्वतःचा साधन साठा मापदंड असतो: release_files (20 GiB), covers (512 MiB), artist_images (256 MiB).

आवृत्ती संचिका वापरकर्त्याने दिलेल्या आणि गरजेपुरत्या साठवल्या जातात: न व्यवस्थापित आवृत्तीसाठी द्वयी वस्तू म्हणजे वापरकर्त्याच्या संचिकेच्या मूळ मार्गाकडे बाह्य निर्देश; व्यवस्थापित आवृत्तीसाठी तो चढवलेला घटक आहे जो पहिल्या वाचनावर साठ्यात आणला जातो. मुखपृष्ठे आणि कलाकार प्रतिमा यजमानाने पुरवलेल्या आणि आधीच साठवलेल्या असतात: bae बाइट्स तयार करते (मुखपृष्ठे जास्तीत जास्त 600px रुंद JPEG लघुप्रतिमा म्हणून पुन्हा उमटतात), आणि प्रत्येक साधन ओढणीवर ती आणते जेणेकरून जाळ्या स्थानिकरीत्या उमटतील.

अपारदर्शक घरावर, द्वयी वस्तू अर्थहीन आशय कळांखाली चढवल्या जातात. पाहता येणाऱ्या घरावर प्रत्येक द्वयी वस्तू ओळ वाचनीय क्लाउड मार्ग नोंदवते ({artist}/{album}/{filename} ध्वनीसाठी, {album}/{release}/cover.{ext} मुखपृष्ठांसाठी), चढवणीवेळी एकदाच मोजलेला, त्यामुळे नंतर नाव बदलल्यावर घटक हलत नाही.

releases.content_hash हा आयात केलेल्या संचयिकेच्या संचिका रचनेवरचा SHA-256 आहे (सापेक्ष मार्ग आणि आकार), संचयिका डिस्कवर कुठे आहे यापासून स्वतंत्र. पाहिलेल्या संचयिकेत आधीच आयात झालेला rip पुन्हा दिसल्यावर bae त्याला याने ओळखते, आणि त्याच rip च्या पुनरायाती नक्कल करण्याऐवजी बदलायची आधीची आवृत्ती शोधतात.