আমি INSERT...SELECT
জেডিবিসির সাথে মাইএসকিউএলে মোটামুটি বড় কার্যকর করার চেষ্টা করছিলাম এবং আমি নিম্নলিখিত ব্যতিক্রম পেয়েছি:
Exception in thread "main" java.sql.SQLException: Out of memory (Needed 1073741824 bytes)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073)
যেহেতু আমি আসলে কোনও রেজাল্টসেট বস্তুটি ফিরিয়ে দিচ্ছি না, তাই আমি ভেবেছিলাম জাভা হ্যাপের জায়গাটি কোনও সমস্যা হওয়া উচিত নয়। যাইহোক, আমি যাইহোক এটি চেষ্টা করার চেষ্টা করেছিলাম এবং এটি কোনও কার্যকর হয়নি good আমি তখন মাইএসকিউএল ওয়ার্কবেঞ্চে বিবৃতিটি কার্যকর করার চেষ্টা করেছি এবং মূলত আমি একই জিনিস পেয়েছি:
Error Code 5: Out of memory (Needed 1073741816 bytes)
এই ক্রিয়াকলাপগুলি সম্পন্ন করার জন্য আমার প্রচুর পরিমাণে র্যাম থাকা উচিত (আমি যে নির্বাচন করে তা পুরো টেবিলের সাথে ফিট করে নিই) তবে আমি অনুমান করছি যে আমার সমস্ত স্মৃতির সার্থকতা অবলম্বন করার জন্য আমাকে টুইঙ্ক করতে হবে বিভিন্ন সেটিংস রয়েছে। আমি একটি উইন্ডোজ সার্ভার ২০০৮ এএমআই এর সাথে একটি অ্যামাজন ইসি 2 হাই মেমোরি ডাবল অতিরিক্ত বড় ইনস্ট্যান্স চালাচ্ছি । আমি আরও ভাল সেটিংস ব্যবহার করার জন্য my.ini ফাইলটি দিয়ে ফিড করার চেষ্টা করেছি, তবে সবার জন্য আমি জানি আমি সম্ভবত জিনিসগুলিকে আরও খারাপ করে দিয়েছি। এখানে সেই ফাইলটির একটি ডাম্প রয়েছে:
[client]
port=3306
[mysql]
default-character-set=latin1
[mysqld]
port=3306
basedir="C:/Program Files/MySQL/MySQL Server 5.5/"
datadir="C:/ProgramData/MySQL/MySQL Server 5.5/Data/"
character-set-server=latin1
default-storage-engine=INNODB
sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
max_connections=100
query_cache_size=1024M
table_cache=256
tmp_table_size=25G
thread_cache_size=8
myisam_max_sort_file_size=100G
myisam_repair_threads = 2
myisam_sort_buffer_size=10G
key_buffer_size=5000M
bulk_insert_buffer_size = 4000M
read_buffer_size=8000M
read_rnd_buffer_size=8000M
sort_buffer_size=1G
innodb_additional_mem_pool_size=26M
innodb_flush_log_at_trx_commit=2
innodb_log_buffer_size=13M
innodb_buffer_pool_size=23G
innodb_log_file_size=622M
innodb_thread_concurrency=18
innodb_file_per_table=TRUE
join_buffer_size=4G
max_heap_table_size = 10G
সুতরাং এটি কি কেবল আমার পরিবেশের জন্য আরও ভালভাবে কাজ করতে উপরের সেটিংসটি পরিবর্তন করার বিষয়? যদি তা হয় তবে আমার কোন সেটিংস ব্যবহার করা উচিত? আমিই একমাত্র যিনি এই উদাহরণটি ব্যবহার করেন; আমি এটি আমার ব্যক্তিগত শখের প্রকল্পের জন্য ব্যবহার করি যাতে বড় ডেটাসেটের পরিসংখ্যান বিশ্লেষণ জড়িত। এর মতো, আমি এটিকে আমার নিজের প্রশ্নের জন্য সমস্ত উপলভ্য সংস্থান গ্রহণ করতে দিতে মুক্ত।
যদি এই সেটিংগুলি পরিবর্তন করার বিষয়টি না হয় তবে সমস্যা কী? আপনি কীভাবে সবকিছুকে আরও ভালভাবে কনফিগার করতে পারেন তার জন্য যে কোনও সহায়তা দেওয়ার জন্য আপনাকে ধন্যবাদ জানাতে ধন্যবাদ।