प्रौद्योगिकी साझेदारी

mysql उच्च समवर्ती डिजाइन

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

mysql उच्च समवर्ती डिजाइन

1. परिनियोजनयोजना

https://blog.csdn.net/weixin_37519752/लेख/विवरण/138728036

विकल्पः १ : द्वयस्वामिनः

image.png
1. लाभाः
लेखन-मापनीयता : द्वयोः नोड्-योः लेखन-क्रियाः सम्भालितुं शक्यते, येन लेखन-क्रियाणां मापनीयतायां सुधारः भवति ।
उच्च उपलब्धता : यदि कोऽपि नोड् विफलः भवति तर्हि अन्यः नोड् अद्यापि लेखनक्रियाः सहितं सेवां निरन्तरं प्रदातुं शक्नोति ।
फेलओवरः : द्वयोः नोड्-योः सक्रियत्वात् कोऽपि जटिल-फेलओवर-तन्त्रस्य आवश्यकता नास्ति ।
2. हानिः
आँकडा-सङ्गतिः : आँकडा-सङ्गतिं निर्वाहयितुम् जटिल-द्वन्द्व-परिचय-निराकरण-तन्त्राणां आवश्यकता भवति ।
संजालस्य आवश्यकताः : संजालस्थिरतायाः विलम्बस्य च उच्चाः आवश्यकताः सन्ति, यतः नोड्स् मध्ये वास्तविकसमयसमन्वयनं संजालगुणवत्तायाः प्रति संवेदनशीलं भवति ।
अतिरिक्त-ओवरहेडः : वास्तविक-समय-समन्वयनस्य कारणेन अतिरिक्तं संजालस्य तथा डिस्क-I/O-ओवरहेडः ।
3. प्रयोज्यपरिदृश्यानि
वितरित-अनुप्रयोगाः : एतादृशाः अनुप्रयोगाः येषु भिन्न-भिन्न-भौगोलिक-स्थानेषु लेखन-क्षमतायाः आवश्यकता भवति ।
उच्चलेखनभारः : एतादृशाः परिदृश्याः यत्र कार्यप्रदर्शनस्य उन्नयनार्थं लेखनभारस्य प्रसारणस्य आवश्यकता भवति ।
वास्तविकसमयदत्तांशस्य आवश्यकताः : एतादृशाः अनुप्रयोगाः येषु बहुषु नोड्षु दत्तांशस्य वास्तविकसमयसमन्वयनस्य आवश्यकता भवति ।

विकल्पः २ : स्वामी-दासप्रतिकृतिः

एकः स्वामी एकः दासः च, अथवा एकः स्वामी बहु दासः च mysql5.7 अथवा ततः उपरि समर्थिताः

image.png
1. लाभाः
आँकडा-अतिरिक्तता : आँकडानां उष्ण-बैकअपं प्रदाति, यत् आँकडा-हानिस्य जोखिमं न्यूनीकरोति ।
कार्यप्रदर्शनसुधारः : एकः गुरुः बहुदासश्च, भिन्नाः उपयोक्तारः भिन्नदत्तांशकोशात् पठन्ति, कार्यक्षमता च उन्नतिः भवति ।
मापनीयता : यदा यातायातस्य वृद्धिः भवति तदा प्रणाल्याः उपयोगं प्रभावितं विना दाससर्वरः सुलभतया योजयितुं शक्यते ।
भारसन्तुलनम् : एकः गुरुः बहुदासश्च होस्ट् कार्याणि साझेदारी कृत्वा भारसन्तुलनं कर्तुं समकक्षः भवति ।
2. हानिः
दत्तांशविलम्बता : प्रतिकृतिः अतुल्यकालिकः भवति इति कारणतः दत्तांशप्रतिकृतिविलम्बस्य जोखिमः भवति ।
जटिलता वर्धिता : प्रणालीजटिलतायाः वर्धने अधिकं अनुरक्षणं प्रबन्धनं च आवश्यकं भवति ।
अतिरिक्तसंसाधनस्य उपभोगः : दाससर्वरस्य परिनियोजनाय अतिरिक्तहार्डवेयरसंसाधनानाम् आवश्यकता भवति ।
लेखनप्रदर्शनप्रभावः : सर्वाणि लेखनक्रियाः मुख्यसर्वरस्य उपरि क्रियन्ते तथा च कार्यप्रदर्शनस्य अटङ्कः भवितुम् अर्हति ।
3. प्रयोज्यपरिदृश्यानि
पठन-लेखन-पृथक्करणम् : यत्र लेखन-क्रियाणाम् अपेक्षया दूरं अधिकानि पठन-क्रियाः सन्ति तत्र परिदृश्यानां कृते उपयुक्तम् ।
Data Backup: data हानिं निवारयितुं data इत्यस्य वास्तविकसमये backup कृते उपयुज्यते ।
उच्चउपलब्धतायाः आवश्यकताः : महत्त्वपूर्णाः अनुप्रयोगाः येषां सेवानिरन्तरताम् सुनिश्चित्य आवश्यकता वर्तते

2. mysql प्रदर्शन अनुकूलनम्

1. अनुक्रमणिकस्य उपयोगं कुर्वन्तु
सारणीषु दत्तांशस्य कुशलप्रश्नार्थं अनुक्रमणिकाः प्रमुखाः सन्ति ।MySQL मध्ये, भवान् क्वेरी-सञ्चालनस्य त्वरिततायै B-Tree index अथवा hash index इत्यस्य उपयोगं कर्तुं शक्नोति
उदाहरण:

CREATE INDEX index_name ON table_name (column1, column2, ...);
  • 1

2. प्रश्नकथनानां अनुकूलनं कुर्वन्तु
प्रश्नानां अनुकूलनं MySQL कार्यक्षमतां सुधारयितुम् अर्हति ।समुचितप्रश्नवक्तव्यैः, अनुक्रमणिकाभिः, संग्रहणतन्त्रैः च क्वेरीनिष्पादनसमयं न्यूनीकर्तुं शक्यते, तथा च पूर्णसारणीस्कैन्, अनावश्यकदत्तांशसञ्चालनं च परिहर्तुं शक्यते
उदाहरण:

# 通过使用索引和合适的查询语句
SELECT * FROM table_name WHERE column1 = "value" AND column2 = "value";

# 避免使用通配符查询,可以使用索引来加速查询
SELECT * FROM table_name WHERE column1 LIKE "value%";

# 避免在查询条件中使用函数,函数会导致索引失效
SELECT * FROM table_name WHERE DATE(column1) > "2021-01-01";
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

3. कैश अनुकूलनम्
MySQL इत्यस्य संग्रहणतन्त्रं प्रश्नप्रदर्शने सुधारं कर्तुं शक्नोति । क्वेरी कैश तथा सिस्टम् कैशे समुचितरूपेण सेट् कृत्वा, भवान् डिस्क IO कार्याणि न्यूनीकर्तुं प्रश्ननिष्पादनं च त्वरितुं शक्नोति ।MySQL इत्यस्य क्वेरी कैश, InnoDB इत्यस्य बफर पूल इत्यादीनां उपयोगं कुर्वन्तु ।

# 启用查询缓存
query_cache_type = 1
query_cache_size = 64M
  • 1
  • 2
  • 3

4. विभाजनसारणी
यदा दत्तांशस्य परिमाणं अतीव विशालं भवति तदा प्रश्नप्रदर्शनस्य उन्नयनार्थं विभाजनस्य सारणीनां च उपयोगं विचारयितुं शक्नुवन्ति । विभाजनेन दत्तांशः लघुतार्किकभागेषु विभज्यते, येषु प्रत्येकं स्वतन्त्रतया पृच्छितुं, परिपालयितुं च शक्यते । सारणीविभाजनं विशालं सारणीं बहुषु लघुसारणीषु विभक्तुं भवति, प्रत्येकं लघुसारणी दत्तांशस्य भागं संगृह्णाति ।

# 分区
CREATE TABLE table_name (
    ...
)
PARTITION BY RANGE (column_name) (
    PARTITION p1 VALUES LESS THAN (value1),
    PARTITION p2 VALUES LESS THAN (value2),
    ...
)

# 分表
CREATE TABLE table_name (
    ...
)
PARTITION BY HASH (column_name) PARTITIONS 4;
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

5. पैरामीटर् ट्यूनिङ्ग्
https://blog.51cto.com/u_12196/6967500
https://blog.51cto.com/u_13259/6936668
6. संयोजनपूलप्रबन्धनम्
कनेक्शन् पूलिंग् इति दत्तांशकोशसंयोजनानां प्रबन्धनार्थं प्रौद्योगिकी यत् प्रभावीरूपेण संयोजनानां निर्माणस्य नाशस्य च व्ययस्य न्यूनीकरणं कर्तुं शक्नोति । उच्च-समवर्ती-वातावरणे संयोजन-पूलः पूर्वमेव निश्चितसङ्ख्यायाः संयोजनानि निर्माय संयोजन-पूले रक्षितुं शक्नोति । यदा नूतनः अनुरोधः आगच्छति तदा प्रतिवारं संयोजनस्य पुनः निर्माणस्य आवश्यकतां विना संयोजनकुण्डात् संयोजनं प्राप्तुं शक्यते । एतेन समवर्तीप्रक्रियाक्षमतासु महती उन्नतिः भवितुम् अर्हति ।
7. हार्डवेयर अनुकूलनम् : १.
उच्च-प्रदर्शन-हार्डवेयर-यन्त्राणां उपयोगं कुर्वन्तु, यथा उच्च-गति-CPU, बृहत्-क्षमता-स्मृतिः, उच्च-गति-डिस्क् च, दत्तांशकोश-संसाधन-क्षमतासु सुधारं कर्तुं